From cc4abfe797c751ff8abf4da8baa4aae96931e96e Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 31 Jul 2024 10:14:04 -0700 Subject: [PATCH 01/78] TSP - search service --- specification/search/Azure.Search/client.tsp | 14 + specification/search/Azure.Search/main.tsp | 40 + .../search/Azure.Search/models-index.tsp | 1058 ++ .../search/Azure.Search/models-service.tsp | 8910 +++++++++++++++++ .../search/Azure.Search/models-shared.tsp | 74 + .../search/Azure.Search/routes-index.tsp | 597 ++ .../search/Azure.Search/routes-service.tsp | 931 ++ 7 files changed, 11624 insertions(+) create mode 100644 specification/search/Azure.Search/client.tsp create mode 100644 specification/search/Azure.Search/main.tsp create mode 100644 specification/search/Azure.Search/models-index.tsp create mode 100644 specification/search/Azure.Search/models-service.tsp create mode 100644 specification/search/Azure.Search/models-shared.tsp create mode 100644 specification/search/Azure.Search/routes-index.tsp create mode 100644 specification/search/Azure.Search/routes-service.tsp diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp new file mode 100644 index 000000000000..20372e872b1b --- /dev/null +++ b/specification/search/Azure.Search/client.tsp @@ -0,0 +1,14 @@ +import "@azure-tools/typespec-client-generator-core"; +import "@typespec/versioning"; +import "./main.tsp"; + +using TypeSpec.Versioning; +using Azure.ClientGenerator.Core; +using SearchClient;; + +@TypeSpec.Versioning.useDependency(SearchClient.Versions.v2024_07_01) +namespace Azure.Search.Documents.Indexes{ + +} + +@@access(VectorSearchAlgorithmKind, Access.public); \ No newline at end of file diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp new file mode 100644 index 000000000000..12b52ac5808b --- /dev/null +++ b/specification/search/Azure.Search/main.tsp @@ -0,0 +1,40 @@ +/** + * PLEASE DO NOT REMOVE - USED FOR CONVERTER METRICS + * Generated by package: @autorest/openapi-to-typespec + * Version: 0.8.2 + * Date: 2024-07-30T18:07:11.236Z + */ +import "@typespec/rest"; +import "@typespec/http"; +import "./routes-service.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using TypeSpec.Versioning; +/** + * Client that can be used to manage and query indexes and documents, as well as + * manage other resources, on a search service. + */ +@service({ + title: "SearchClient", +}) +@versioned(Versions) +@server( + "{endpoint}", + "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", + { + endpoint: string, + } +) +namespace SearchClient; + +/** + * The available API versions. + */ +enum Versions { + /** + * The 2024-07-01 API version. + */ + @useDependency(Azure.Core.Versions.v1_0_Preview_1) + v2024_07_01: "2024-07-01", +} diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp new file mode 100644 index 000000000000..305388725a11 --- /dev/null +++ b/specification/search/Azure.Search/models-index.tsp @@ -0,0 +1,1058 @@ +import "@typespec/rest"; +import "@typespec/http"; +import "@azure-tools/typespec-azure-core"; +import "./models-shared.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; +namespace SearchClient; + +/** + * Allows the user to choose whether a semantic call should fail completely, or to + * return partial results. + */ +union SemanticErrorMode { + string, + + /** + * If the semantic processing fails, partial results still return. The definition + * of partial results depends on what semantic step failed and what was the reason + * for failure. + */ + Partial: "partial", + + /** + * If there is an exception during the semantic processing step, the query will + * fail and return the appropriate HTTP code depending on the error. + */ + Fail: "fail", +} + +/** + * This parameter is only valid if the query type is `semantic`. If set, the query + * returns answers extracted from key passages in the highest ranked documents. + * The number of answers returned can be configured by appending the pipe + * character `|` followed by the `count-` option after the + * answers parameter value, such as `extractive|count-3`. Default count is 1. The + * confidence threshold can be configured by appending the pipe character `|` + * followed by the `threshold-` option after the answers + * parameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7. + */ +union QueryAnswerType { + string, + + /** + * Do not return answers for the query. + */ + None: "none", + + /** + * Extracts answer candidates from the contents of the documents returned in + * response to a query expressed as a question in natural language. + */ + Extractive: "extractive", +} + +/** + * This parameter is only valid if the query type is `semantic`. If set, the query + * returns captions extracted from key passages in the highest ranked documents. + * When Captions is set to `extractive`, highlighting is enabled by default, and + * can be configured by appending the pipe character `|` followed by the + * `highlight-` option, such as `extractive|highlight-true`. Defaults + * to `None`. + */ +union QueryCaptionType { + string, + + /** + * Do not return captions for the query. + */ + None: "none", + + /** + * Extracts captions from the matching documents that contain passages relevant to + * the search query. + */ + Extractive: "extractive", +} + +/** + * The kind of vector query being performed. + */ +union VectorQueryKind { + string, + + /** + * Vector query where a raw vector value is provided. + */ + Vector: "vector", + + /** + * Vector query where a text value that needs to be vectorized is provided. + */ + Text: "text", +} + +/** + * Determines whether or not filters are applied before or after the vector search + * is performed. + */ +union VectorFilterMode { + string, + + /** + * The filter will be applied after the candidate set of vector results is + * returned. Depending on the filter selectivity, this can result in fewer results + * than requested by the parameter 'k'. + */ + PostFilter: "postFilter", + + /** + * The filter will be applied before the search query. + */ + PreFilter: "preFilter", +} + +/** + * Reason that a partial response was returned for a semantic ranking request. + */ +union SemanticErrorReason { + string, + + /** + * If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration + * exceeded that value. Only the base results were returned. + */ + MaxWaitExceeded: "maxWaitExceeded", + + /** + * The request was throttled. Only the base results were returned. + */ + CapacityOverloaded: "capacityOverloaded", + + /** + * At least one step of the semantic process failed. + */ + Transient: "transient", +} + +/** + * Type of partial response that was returned for a semantic ranking request. + */ +union SemanticSearchResultsType { + string, + + /** + * Results without any semantic enrichment or reranking. + */ + BaseResults: "baseResults", + + /** + * Results have been reranked with the reranker model and will include semantic + * captions. They will not include any answers, answers highlights or caption + * highlights. + */ + RerankedResults: "rerankedResults", +} + +/** + * Specifies the syntax of the search query. The default is 'simple'. Use 'full' + * if your query uses the Lucene query syntax. + */ +enum QueryType { + /** + * Uses the simple query syntax for searches. Search text is interpreted using a + * simple query language that allows for symbols such as +, * and "". Queries are + * evaluated across all searchable fields by default, unless the searchFields + * parameter is specified. + */ + Simple: "simple", + + /** + * Uses the full Lucene query syntax for searches. Search text is interpreted + * using the Lucene query language which allows field-specific and weighted + * searches, as well as other advanced features. + */ + Full: "full", + + /** + * Best suited for queries expressed in natural language as opposed to keywords. + * Improves precision of search results by re-ranking the top search results using + * a ranking model trained on the Web corpus. + */ + Semantic: "semantic", +} + +/** + * Specifies whether any or all of the search terms must be matched in order to + * count the document as a match. + */ +enum SearchMode { + /** + * Any of the search terms must be matched in order to count the document as a + * match. + */ + Any: "any", + + /** + * All of the search terms must be matched in order to count the document as a + * match. + */ + All: "all", +} + +/** + * A value that specifies whether we want to calculate scoring statistics (such as + * document frequency) globally for more consistent scoring, or locally, for lower + * latency. The default is 'local'. Use 'global' to aggregate scoring statistics + * globally before scoring. Using global scoring statistics can increase latency + * of search queries. + */ +enum ScoringStatistics { + /** + * The scoring statistics will be calculated locally for lower latency. + */ + Local: "local", + + /** + * The scoring statistics will be calculated globally for more consistent scoring. + */ + Global: "global", +} + +/** + * The operation to perform on a document in an indexing batch. + */ +enum IndexActionType { + /** + * Inserts the document into the index if it is new and updates it if it exists. + * All fields are replaced in the update case. + */ + Upload: "upload", + + /** + * Merges the specified field values with an existing document. If the document + * does not exist, the merge will fail. Any field you specify in a merge will + * replace the existing field in the document. This also applies to collections of + * primitive and complex types. + */ + Merge: "merge", + + /** + * Behaves like merge if a document with the given key already exists in the + * index. If the document does not exist, it behaves like upload with a new + * document. + */ + MergeOrUpload: "mergeOrUpload", + + /** + * Removes the specified document from the index. Any field you specify in a + * delete operation other than the key field will be ignored. If you want to + * remove an individual field from a document, use merge instead and set the field + * explicitly to null. + */ + Delete: "delete", +} + +/** + * Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' + * to get shingles and 'oneTermWithContext' to use the current context in + * producing autocomplete terms. + */ +enum AutocompleteMode { + /** + * Only one term is suggested. If the query has two terms, only the last term is + * completed. For example, if the input is 'washington medic', the suggested terms + * could include 'medicaid', 'medicare', and 'medicine'. + */ + OneTerm: "oneTerm", + + /** + * Matching two-term phrases in the index will be suggested. For example, if the + * input is 'medic', the suggested terms could include 'medicare coverage' and + * 'medical assistant'. + */ + TwoTerms: "twoTerms", + + /** + * Completes the last term in a query with two or more terms, where the last two + * terms are a phrase that exists in the index. For example, if the input is + * 'washington medic', the suggested terms could include 'washington medicaid' and + * 'washington medical'. + */ + OneTermWithContext: "oneTermWithContext", +} + +/** + * Response containing search results from an index. + */ +model SearchDocumentsResult { + /** + * The total count of results found by the search operation, or null if the count + * was not requested. If present, the count may be greater than the number of + * results in this response. This can happen if you use the $top or $skip + * parameters, or if the query can't return all the requested documents in a + * single response. + */ + @visibility("read") + @encodedName("application/json", "@odata.count") + count?: int64; + + /** + * A value indicating the percentage of the index that was included in the query, + * or null if minimumCoverage was not specified in the request. + */ + @visibility("read") + @encodedName("application/json", "@search.coverage") + coverage?: float64; + + /** + * The facet query results for the search operation, organized as a collection of + * buckets for each faceted field; null if the query did not include any facet + * expressions. + */ + @visibility("read") + @encodedName("application/json", "@search.facets") + facets?: Record; + + /** + * The answers query results for the search operation; null if the answers query + * parameter was not specified or set to 'none'. + */ + @visibility("read") + @encodedName("application/json", "@search.answers") + answers?: QueryAnswerResult[]; + + @doc(""" + Continuation JSON payload returned when the query can't return all the + requested results in a single response. You can use this JSON along with + @odata.nextLink to formulate another POST Search request to get the next part + of the search response. + """) + @visibility("read") + @encodedName("application/json", "@search.nextPageParameters") + nextPageParameters?: SearchRequest; + + /** + * The sequence of results returned by the query. + */ + @visibility("read") + @encodedName("application/json", "value") + results: SearchResult[]; + + /** + * Continuation URL returned when the query can't return all the requested results + * in a single response. You can use this URL to formulate another GET or POST + * Search request to get the next part of the search response. Make sure to use + * the same verb (GET or POST) as the request that produced this response. + */ + @visibility("read") + @encodedName("application/json", "@odata.nextLink") + nextLink?: string; + + /** + * Reason that a partial response was returned for a semantic ranking request. + */ + @visibility("read") + @encodedName("application/json", "@search.semanticPartialResponseReason") + semanticPartialResponseReason?: SemanticErrorReason; + + /** + * Type of partial response that was returned for a semantic ranking request. + */ + @visibility("read") + @encodedName("application/json", "@search.semanticPartialResponseType") + semanticPartialResponseType?: SemanticSearchResultsType; +} + +/** + * A single bucket of a facet query result. Reports the number of documents with a + * field value falling within a particular range or having a particular value or + * interval. + */ +model FacetResult { + ...Record; + + /** + * The approximate count of documents falling within the bucket described by this + * facet. + */ + @visibility("read") + count?: int64; +} + +/** + * An answer is a text passage extracted from the contents of the most relevant + * documents that matched the query. Answers are extracted from the top search + * results. Answer candidates are scored and the top answers are selected. + */ +model QueryAnswerResult { + ...Record; + + /** + * The score value represents how relevant the answer is to the query relative to + * other answers returned for the query. + */ + @visibility("read") + score?: float64; + + /** + * The key of the document the answer was extracted from. + */ + @visibility("read") + key?: string; + + /** + * The text passage extracted from the document contents as the answer. + */ + @visibility("read") + text?: string; + + /** + * Same text passage as in the Text property with highlighted text phrases most + * relevant to the query. + */ + @visibility("read") + highlights?: string; +} + +/** + * Parameters for filtering, sorting, faceting, paging, and other search query + * behaviors. + */ +model SearchRequest { + /** + * A value that specifies whether to fetch the total count of results. Default is + * false. Setting this value to true may have a performance impact. Note that the + * count returned is an approximation. + */ + @encodedName("application/json", "count") + includeTotalResultCount?: boolean; + + /** + * The list of facet expressions to apply to the search query. Each facet + * expression contains a field name, optionally followed by a comma-separated list + * of name:value pairs. + */ + facets?: string[]; + + /** + * The OData $filter expression to apply to the search query. + */ + filter?: string; + + /** + * The comma-separated list of field names to use for hit highlights. Only + * searchable fields can be used for hit highlighting. + */ + @encodedName("application/json", "highlight") + highlightFields?: string; + + /** + * A string tag that is appended to hit highlights. Must be set with + * highlightPreTag. Default is </em>. + */ + highlightPostTag?: string; + + /** + * A string tag that is prepended to hit highlights. Must be set with + * highlightPostTag. Default is <em>. + */ + highlightPreTag?: string; + + /** + * A number between 0 and 100 indicating the percentage of the index that must be + * covered by a search query in order for the query to be reported as a success. + * This parameter can be useful for ensuring search availability even for services + * with only one replica. The default is 100. + */ + minimumCoverage?: float64; + + /** + * The comma-separated list of OData $orderby expressions by which to sort the + * results. Each expression can be either a field name or a call to either the + * geo.distance() or the search.score() functions. Each expression can be followed + * by asc to indicate ascending, or desc to indicate descending. The default is + * ascending order. Ties will be broken by the match scores of documents. If no + * $orderby is specified, the default sort order is descending by document match + * score. There can be at most 32 $orderby clauses. + */ + @encodedName("application/json", "orderby") + orderBy?: string; + + /** + * A value that specifies the syntax of the search query. The default is 'simple'. + * Use 'full' if your query uses the Lucene query syntax. + */ + queryType?: QueryType; + + /** + * A value that specifies whether we want to calculate scoring statistics (such as + * document frequency) globally for more consistent scoring, or locally, for lower + * latency. The default is 'local'. Use 'global' to aggregate scoring statistics + * globally before scoring. Using global scoring statistics can increase latency + * of search queries. + */ + scoringStatistics?: ScoringStatistics; + + /** + * A value to be used to create a sticky session, which can help getting more + * consistent results. As long as the same sessionId is used, a best-effort + * attempt will be made to target the same replica set. Be wary that reusing the + * same sessionID values repeatedly can interfere with the load balancing of the + * requests across replicas and adversely affect the performance of the search + * service. The value used as sessionId cannot start with a '_' character. + */ + sessionId?: string; + + /** + * The list of parameter values to be used in scoring functions (for example, + * referencePointParameter) using the format name-values. For example, if the + * scoring profile defines a function with a parameter called 'mylocation' the + * parameter string would be "mylocation--122.2,44.8" (without the quotes). + */ + scoringParameters?: string[]; + + /** + * The name of a scoring profile to evaluate match scores for matching documents + * in order to sort the results. + */ + scoringProfile?: string; + + /** + * A full-text search query expression; Use "*" or omit this parameter to match + * all documents. + */ + @encodedName("application/json", "search") + searchText?: string; + + /** + * The comma-separated list of field names to which to scope the full-text search. + * When using fielded search (fieldName:searchExpression) in a full Lucene query, + * the field names of each fielded search expression take precedence over any + * field names listed in this parameter. + */ + searchFields?: string; + + /** + * A value that specifies whether any or all of the search terms must be matched + * in order to count the document as a match. + */ + searchMode?: SearchMode; + + /** + * The comma-separated list of fields to retrieve. If unspecified, all fields + * marked as retrievable in the schema are included. + */ + select?: string; + + /** + * The number of search results to skip. This value cannot be greater than + * 100,000. If you need to scan documents in sequence, but cannot use skip due to + * this limitation, consider using orderby on a totally-ordered key and filter + * with a range query instead. + */ + skip?: int32; + + /** + * The number of search results to retrieve. This can be used in conjunction with + * $skip to implement client-side paging of search results. If results are + * truncated due to server-side paging, the response will include a continuation + * token that can be used to issue another Search request for the next page of + * results. + */ + top?: int32; + + /** + * The name of a semantic configuration that will be used when processing + * documents for queries of type semantic. + */ + semanticConfiguration?: string; + + /** + * Allows the user to choose whether a semantic call should fail completely + * (default / current behavior), or to return partial results. + */ + semanticErrorHandling?: SemanticErrorMode; + + /** + * Allows the user to set an upper bound on the amount of time it takes for + * semantic enrichment to finish processing before the request fails. + */ + @minValue(700) + semanticMaxWaitInMilliseconds?: int32; + + /** + * Allows setting a separate search query that will be solely used for semantic + * reranking, semantic captions and semantic answers. Is useful for scenarios + * where there is a need to use different queries between the base retrieval and + * ranking phase, and the L2 semantic phase. + */ + semanticQuery?: string; + + /** + * A value that specifies whether answers should be returned as part of the search + * response. + */ + answers?: QueryAnswerType; + + /** + * A value that specifies whether captions should be returned as part of the + * search response. + */ + captions?: QueryCaptionType; + + /** + * The query parameters for vector and hybrid search queries. + */ + vectorQueries?: VectorQuery[]; + + /** + * Determines whether or not filters are applied before or after the vector search + * is performed. Default is 'preFilter' for new indexes. + */ + vectorFilterMode?: VectorFilterMode; +} + +/** + * The query parameters for vector and hybrid search queries. + */ +@discriminator("kind") +model VectorQuery { + /** + * Number of nearest neighbors to return as top hits. + */ + k?: int32; + + /** + * Vector Fields of type Collection(Edm.Single) to be included in the vector + * searched. + */ + fields?: string; + + /** + * When true, triggers an exhaustive k-nearest neighbor search across all vectors + * within the vector index. Useful for scenarios where exact matches are critical, + * such as determining ground truth values. + */ + exhaustive?: boolean; + + /** + * Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling' + * parameter configured in the index definition. It can be set only when + * 'rerankWithOriginalVectors' is true. This parameter is only permitted when a + * compression method is used on the underlying vector field. + */ + oversampling?: float64; + + /** + * Relative weight of the vector query when compared to other vector query and/or + * the text query within the same search request. This value is used when + * combining the results of multiple ranking lists produced by the different + * vector queries and/or the results retrieved through the text query. The higher + * the weight, the higher the documents that matched that query will be in the + * final ranking. Default is 1.0 and the value needs to be a positive number + * larger than zero. + */ + weight?: float32; +} + +/** + * Contains a document found by a search query, plus associated metadata. + */ +model SearchResult { + ...Record; + + /** + * The relevance score of the document compared to other documents returned by the + * query. + */ + @visibility("read") + @encodedName("application/json", "@search.score") + score: float64; + + /** + * The relevance score computed by the semantic ranker for the top search results. + * Search results are sorted by the RerankerScore first and then by the Score. + * RerankerScore is only returned for queries of type 'semantic'. + */ + @visibility("read") + @encodedName("application/json", "@search.rerankerScore") + rerankerScore?: float64; + + /** + * Text fragments from the document that indicate the matching search terms, + * organized by each applicable field; null if hit highlighting was not enabled + * for the query. + */ + @visibility("read") + @encodedName("application/json", "@search.highlights") + highlights?: Record; + + /** + * Captions are the most representative passages from the document relatively to + * the search query. They are often used as document summary. Captions are only + * returned for queries of type 'semantic'. + */ + @visibility("read") + @encodedName("application/json", "@search.captions") + captions?: QueryCaptionResult[]; +} + +/** + * Captions are the most representative passages from the document relatively to + * the search query. They are often used as document summary. Captions are only + * returned for queries of type `semantic`. + */ +model QueryCaptionResult { + ...Record; + + /** + * A representative text passage extracted from the document most relevant to the + * search query. + */ + @visibility("read") + text?: string; + + /** + * Same text passage as in the Text property with highlighted phrases most + * relevant to the query. + */ + @visibility("read") + highlights?: string; +} + +/** + * Response containing suggestion query results from an index. + */ +model SuggestDocumentsResult { + /** + * The sequence of results returned by the query. + */ + @visibility("read") + @encodedName("application/json", "value") + results: SuggestResult[]; + + /** + * A value indicating the percentage of the index that was included in the query, + * or null if minimumCoverage was not set in the request. + */ + @visibility("read") + @encodedName("application/json", "@search.coverage") + coverage?: float64; +} + +/** + * A result containing a document found by a suggestion query, plus associated + * metadata. + */ +model SuggestResult { + ...Record; + + /** + * The text of the suggestion result. + */ + @visibility("read") + @encodedName("application/json", "@search.text") + text: string; +} + +/** + * Parameters for filtering, sorting, fuzzy matching, and other suggestions query + * behaviors. + */ +model SuggestRequest { + /** + * An OData expression that filters the documents considered for suggestions. + */ + filter?: string; + + /** + * A value indicating whether to use fuzzy matching for the suggestion query. + * Default is false. When set to true, the query will find suggestions even if + * there's a substituted or missing character in the search text. While this + * provides a better experience in some scenarios, it comes at a performance cost + * as fuzzy suggestion searches are slower and consume more resources. + */ + @encodedName("application/json", "fuzzy") + useFuzzyMatching?: boolean; + + /** + * A string tag that is appended to hit highlights. Must be set with + * highlightPreTag. If omitted, hit highlighting of suggestions is disabled. + */ + highlightPostTag?: string; + + /** + * A string tag that is prepended to hit highlights. Must be set with + * highlightPostTag. If omitted, hit highlighting of suggestions is disabled. + */ + highlightPreTag?: string; + + /** + * A number between 0 and 100 indicating the percentage of the index that must be + * covered by a suggestion query in order for the query to be reported as a + * success. This parameter can be useful for ensuring search availability even for + * services with only one replica. The default is 80. + */ + minimumCoverage?: float64; + + /** + * The comma-separated list of OData $orderby expressions by which to sort the + * results. Each expression can be either a field name or a call to either the + * geo.distance() or the search.score() functions. Each expression can be followed + * by asc to indicate ascending, or desc to indicate descending. The default is + * ascending order. Ties will be broken by the match scores of documents. If no + * $orderby is specified, the default sort order is descending by document match + * score. There can be at most 32 $orderby clauses. + */ + @encodedName("application/json", "orderby") + orderBy?: string; + + /** + * The search text to use to suggest documents. Must be at least 1 character, and + * no more than 100 characters. + */ + @encodedName("application/json", "search") + searchText: string; + + /** + * The comma-separated list of field names to search for the specified search + * text. Target fields must be included in the specified suggester. + */ + searchFields?: string; + + /** + * The comma-separated list of fields to retrieve. If unspecified, only the key + * field will be included in the results. + */ + select?: string; + + /** + * The name of the suggester as specified in the suggesters collection that's part + * of the index definition. + */ + suggesterName: string; + + /** + * The number of suggestions to retrieve. This must be a value between 1 and 100. + * The default is 5. + */ + top?: int32; +} + +/** + * Contains a batch of document write actions to send to the index. + */ +model IndexBatch { + /** + * The actions in the batch. + */ + @encodedName("application/json", "value") + actions: IndexAction[]; +} + +/** + * Represents an index action that operates on a document. + */ +model IndexAction { + ...Record; + + /** + * The operation to perform on a document in an indexing batch. + */ + @encodedName("application/json", "@search.action") + actionType?: IndexActionType; +} + +/** + * Response containing the status of operations for all documents in the indexing + * request. + */ +model IndexDocumentsResult { + /** + * The list of status information for each document in the indexing request. + */ + @visibility("read") + @encodedName("application/json", "value") + results: IndexingResult[]; +} + +/** + * Status of an indexing operation for a single document. + */ +model IndexingResult { + /** + * The key of a document that was in the indexing request. + */ + @visibility("read") + key: string; + + /** + * The error message explaining why the indexing operation failed for the document + * identified by the key; null if indexing succeeded. + */ + @visibility("read") + errorMessage?: string; + + /** + * A value indicating whether the indexing operation succeeded for the document + * identified by the key. + */ + @visibility("read") + @encodedName("application/json", "status") + succeeded: boolean; + + /** + * The status code of the indexing operation. Possible values include: 200 for a + * successful update or delete, 201 for successful document creation, 400 for a + * malformed input document, 404 for document not found, 409 for a version + * conflict, 422 when the index is temporarily unavailable, or 503 for when the + * service is too busy. + */ + @visibility("read") + statusCode: int32; +} + +/** + * The result of Autocomplete query. + */ +model AutocompleteResult { + /** + * A value indicating the percentage of the index that was considered by the + * autocomplete request, or null if minimumCoverage was not specified in the + * request. + */ + @visibility("read") + @encodedName("application/json", "@search.coverage") + coverage?: float64; + + /** + * The list of returned Autocompleted items. + */ + @visibility("read") + @encodedName("application/json", "value") + results: AutocompleteItem[]; +} + +/** + * The result of Autocomplete requests. + */ +model AutocompleteItem { + /** + * The completed term. + */ + @visibility("read") + text: string; + + /** + * The query along with the completed term. + */ + @visibility("read") + queryPlusText: string; +} + +/** + * Parameters for fuzzy matching, and other autocomplete query behaviors. + */ +model AutocompleteRequest { + /** + * The search text on which to base autocomplete results. + */ + @encodedName("application/json", "search") + searchText: string; + + /** + * Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' + * to get shingles and 'oneTermWithContext' to use the current context while + * producing auto-completed terms. + */ + autocompleteMode?: AutocompleteMode; + + /** + * An OData expression that filters the documents used to produce completed terms + * for the Autocomplete result. + */ + filter?: string; + + /** + * A value indicating whether to use fuzzy matching for the autocomplete query. + * Default is false. When set to true, the query will autocomplete terms even if + * there's a substituted or missing character in the search text. While this + * provides a better experience in some scenarios, it comes at a performance cost + * as fuzzy autocomplete queries are slower and consume more resources. + */ + @encodedName("application/json", "fuzzy") + useFuzzyMatching?: boolean; + + /** + * A string tag that is appended to hit highlights. Must be set with + * highlightPreTag. If omitted, hit highlighting is disabled. + */ + highlightPostTag?: string; + + /** + * A string tag that is prepended to hit highlights. Must be set with + * highlightPostTag. If omitted, hit highlighting is disabled. + */ + highlightPreTag?: string; + + /** + * A number between 0 and 100 indicating the percentage of the index that must be + * covered by an autocomplete query in order for the query to be reported as a + * success. This parameter can be useful for ensuring search availability even for + * services with only one replica. The default is 80. + */ + minimumCoverage?: float64; + + /** + * The comma-separated list of field names to consider when querying for + * auto-completed terms. Target fields must be included in the specified + * suggester. + */ + searchFields?: string; + + /** + * The name of the suggester as specified in the suggesters collection that's part + * of the index definition. + */ + suggesterName: string; + + /** + * The number of auto-completed terms to retrieve. This must be a value between 1 + * and 100. The default is 5. + */ + top?: int32; +} + +/** + * The query parameters to use for vector search when a raw vector value is + * provided. + */ +model VectorizedQuery extends VectorQuery { + /** + * The vector representation of a search query. + */ + vector: float32[]; + + /** + * The kind of vector query being performed. + */ + kind: "vector"; +} + +/** + * The query parameters to use for vector search when a text value that needs to + * be vectorized is provided. + */ +model VectorizableTextQuery extends VectorQuery { + /** + * The text to be vectorized to perform a vector search query. + */ + text: string; + + /** + * The kind of vector query being performed. + */ + kind: "text"; +} diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp new file mode 100644 index 000000000000..a1a7a2b8baec --- /dev/null +++ b/specification/search/Azure.Search/models-service.tsp @@ -0,0 +1,8910 @@ +import "@typespec/rest"; +import "@typespec/http"; +import "@azure-tools/typespec-azure-core"; +import "./models-shared.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using Azure.Core; + +namespace SearchClient; + +union Enum0 { + string, + `return=representation`: "return=representation", +} + +/** + * Defines the type of a datasource. + */ +union SearchIndexerDataSourceType { + string, + + /** + * Indicates an Azure SQL datasource. + */ + AzureSql: "azuresql", + + /** + * Indicates a CosmosDB datasource. + */ + CosmosDb: "cosmosdb", + + /** + * Indicates an Azure Blob datasource. + */ + AzureBlob: "azureblob", + + /** + * Indicates an Azure Table datasource. + */ + AzureTable: "azuretable", + + /** + * Indicates a MySql datasource. + */ + MySql: "mysql", + + /** + * Indicates an ADLS Gen2 datasource. + */ + AdlsGen2: "adlsgen2", +} + +/** + * Represents the parsing mode for indexing from an Azure blob data source. + */ +union BlobIndexerParsingMode { + string, + + /** + * Set to default for normal file processing. + */ + Default: "default", + + /** + * Set to text to improve indexing performance on plain text files in blob storage. + */ + Text: "text", + + /** + * Set to delimitedText when blobs are plain CSV files. + */ + DelimitedText: "delimitedText", + + /** + * Set to json to extract structured content from JSON files. + */ + Json: "json", + + /** + * Set to jsonArray to extract individual elements of a JSON array as separate + * documents. + */ + JsonArray: "jsonArray", + + /** + * Set to jsonLines to extract individual JSON entities, separated by a new line, + * as separate documents. + */ + JsonLines: "jsonLines", +} + +/** + * Specifies the data to extract from Azure blob storage and tells the indexer + * which data to extract from image content when "imageAction" is set to a value + * other than "none". This applies to embedded image content in a .PDF or other + * application, or image files such as .jpg and .png, in Azure blobs. + */ +union BlobIndexerDataToExtract { + string, + + /** + * Indexes just the standard blob properties and user-specified metadata. + */ + StorageMetadata: "storageMetadata", + + /** + * Extracts metadata provided by the Azure blob storage subsystem and the + * content-type specific metadata (for example, metadata unique to just .png files + * are indexed). + */ + AllMetadata: "allMetadata", + + /** + * Extracts all metadata and textual content from each blob. + */ + ContentAndMetadata: "contentAndMetadata", +} + +/** + * Determines how to process embedded images and image files in Azure blob + * storage. Setting the "imageAction" configuration to any value other than + * "none" requires that a skillset also be attached to that indexer. + */ +union BlobIndexerImageAction { + string, + + /** + * Ignores embedded images or image files in the data set. This is the default. + */ + None: "none", + + /** + * Extracts text from images (for example, the word "STOP" from a traffic stop + * sign), and embeds it into the content field. This action requires that + * "dataToExtract" is set to "contentAndMetadata". A normalized image refers to + * additional processing resulting in uniform image output, sized and rotated to + * promote consistent rendering when you include images in visual search results. + * This information is generated for each image when you use this option. + */ + GenerateNormalizedImages: "generateNormalizedImages", + + /** + * Extracts text from images (for example, the word "STOP" from a traffic stop + * sign), and embeds it into the content field, but treats PDF files differently + * in that each page will be rendered as an image and normalized accordingly, + * instead of extracting embedded images. Non-PDF file types will be treated the + * same as if "generateNormalizedImages" was set. + */ + GenerateNormalizedImagePerPage: "generateNormalizedImagePerPage", +} + +/** + * Determines algorithm for text extraction from PDF files in Azure blob storage. + */ +union BlobIndexerPDFTextRotationAlgorithm { + string, + + /** + * Leverages normal text extraction. This is the default. + */ + None: "none", + + /** + * May produce better and more readable text extraction from PDF files that have + * rotated text within them. Note that there may be a small performance speed + * impact when this parameter is used. This parameter only applies to PDF files, + * and only to PDFs with embedded text. If the rotated text appears within an + * embedded image in the PDF, this parameter does not apply. + */ + DetectAngles: "detectAngles", +} + +/** + * Specifies the environment in which the indexer should execute. + */ +union IndexerExecutionEnvironment { + string, + + /** + * Indicates that the search service can determine where the indexer should + * execute. This is the default environment when nothing is specified and is the + * recommended value. + */ + standard: "standard", + + /** + * Indicates that the indexer should run with the environment provisioned + * specifically for the search service. This should only be specified as the + * execution environment if the indexer needs to access resources securely over + * shared private link resources. + */ + private: "private", +} + +/** + * Defines behavior of the index projections in relation to the rest of the + * indexer. + */ +union IndexProjectionMode { + string, + + /** + * The source document will be skipped from writing into the indexer's target + * index. + */ + SkipIndexingParentDocuments: "skipIndexingParentDocuments", + + /** + * The source document will be written into the indexer's target index. This is + * the default pattern. + */ + IncludeIndexingParentDocuments: "includeIndexingParentDocuments", +} + +/** + * Defines the data type of a field in a search index. + */ +union SearchFieldDataType { + string, + + /** + * Indicates that a field contains a string. + */ + String: "Edm.String", + + /** + * Indicates that a field contains a 32-bit signed integer. + */ + Int32: "Edm.Int32", + + /** + * Indicates that a field contains a 64-bit signed integer. + */ + Int64: "Edm.Int64", + + /** + * Indicates that a field contains an IEEE double-precision floating point number. + */ + Double: "Edm.Double", + + /** + * Indicates that a field contains a Boolean value (true or false). + */ + Boolean: "Edm.Boolean", + + /** + * Indicates that a field contains a date/time value, including timezone + * information. + */ + DateTimeOffset: "Edm.DateTimeOffset", + + /** + * Indicates that a field contains a geo-location in terms of longitude and + * latitude. + */ + GeographyPoint: "Edm.GeographyPoint", + + /** + * Indicates that a field contains one or more complex objects that in turn have + * sub-fields of other types. + */ + Complex: "Edm.ComplexType", + + /** + * Indicates that a field contains a single-precision floating point number. This + * is only valid when used with Collection(Edm.Single). + */ + Single: "Edm.Single", + + /** + * Indicates that a field contains a half-precision floating point number. This is + * only valid when used with Collection(Edm.Half). + */ + Half: "Edm.Half", + + /** + * Indicates that a field contains a 16-bit signed integer. This is only valid + * when used with Collection(Edm.Int16). + */ + Int16: "Edm.Int16", + + /** + * Indicates that a field contains a 8-bit signed integer. This is only valid when + * used with Collection(Edm.SByte). + */ + SByte: "Edm.SByte", + + /** + * Indicates that a field contains a 8-bit unsigned integer. This is only valid + * when used with Collection(Edm.Byte). + */ + Byte: "Edm.Byte", +} + +/** + * Defines the names of all text analyzers supported by the search engine. + */ +union LexicalAnalyzerName { + string, + + /** + * Microsoft analyzer for Arabic. + */ + ArMicrosoft: "ar.microsoft", + + /** + * Lucene analyzer for Arabic. + */ + ArLucene: "ar.lucene", + + /** + * Lucene analyzer for Armenian. + */ + HyLucene: "hy.lucene", + + /** + * Microsoft analyzer for Bangla. + */ + BnMicrosoft: "bn.microsoft", + + /** + * Lucene analyzer for Basque. + */ + EuLucene: "eu.lucene", + + /** + * Microsoft analyzer for Bulgarian. + */ + BgMicrosoft: "bg.microsoft", + + /** + * Lucene analyzer for Bulgarian. + */ + BgLucene: "bg.lucene", + + /** + * Microsoft analyzer for Catalan. + */ + CaMicrosoft: "ca.microsoft", + + /** + * Lucene analyzer for Catalan. + */ + CaLucene: "ca.lucene", + + /** + * Microsoft analyzer for Chinese (Simplified). + */ + ZhHansMicrosoft: "zh-Hans.microsoft", + + /** + * Lucene analyzer for Chinese (Simplified). + */ + ZhHansLucene: "zh-Hans.lucene", + + /** + * Microsoft analyzer for Chinese (Traditional). + */ + ZhHantMicrosoft: "zh-Hant.microsoft", + + /** + * Lucene analyzer for Chinese (Traditional). + */ + ZhHantLucene: "zh-Hant.lucene", + + /** + * Microsoft analyzer for Croatian. + */ + HrMicrosoft: "hr.microsoft", + + /** + * Microsoft analyzer for Czech. + */ + CsMicrosoft: "cs.microsoft", + + /** + * Lucene analyzer for Czech. + */ + CsLucene: "cs.lucene", + + /** + * Microsoft analyzer for Danish. + */ + DaMicrosoft: "da.microsoft", + + /** + * Lucene analyzer for Danish. + */ + DaLucene: "da.lucene", + + /** + * Microsoft analyzer for Dutch. + */ + NlMicrosoft: "nl.microsoft", + + /** + * Lucene analyzer for Dutch. + */ + NlLucene: "nl.lucene", + + /** + * Microsoft analyzer for English. + */ + EnMicrosoft: "en.microsoft", + + /** + * Lucene analyzer for English. + */ + EnLucene: "en.lucene", + + /** + * Microsoft analyzer for Estonian. + */ + EtMicrosoft: "et.microsoft", + + /** + * Microsoft analyzer for Finnish. + */ + FiMicrosoft: "fi.microsoft", + + /** + * Lucene analyzer for Finnish. + */ + FiLucene: "fi.lucene", + + /** + * Microsoft analyzer for French. + */ + FrMicrosoft: "fr.microsoft", + + /** + * Lucene analyzer for French. + */ + FrLucene: "fr.lucene", + + /** + * Lucene analyzer for Galician. + */ + GlLucene: "gl.lucene", + + /** + * Microsoft analyzer for German. + */ + DeMicrosoft: "de.microsoft", + + /** + * Lucene analyzer for German. + */ + DeLucene: "de.lucene", + + /** + * Microsoft analyzer for Greek. + */ + ElMicrosoft: "el.microsoft", + + /** + * Lucene analyzer for Greek. + */ + ElLucene: "el.lucene", + + /** + * Microsoft analyzer for Gujarati. + */ + GuMicrosoft: "gu.microsoft", + + /** + * Microsoft analyzer for Hebrew. + */ + HeMicrosoft: "he.microsoft", + + /** + * Microsoft analyzer for Hindi. + */ + HiMicrosoft: "hi.microsoft", + + /** + * Lucene analyzer for Hindi. + */ + HiLucene: "hi.lucene", + + /** + * Microsoft analyzer for Hungarian. + */ + HuMicrosoft: "hu.microsoft", + + /** + * Lucene analyzer for Hungarian. + */ + HuLucene: "hu.lucene", + + /** + * Microsoft analyzer for Icelandic. + */ + IsMicrosoft: "is.microsoft", + + /** + * Microsoft analyzer for Indonesian (Bahasa). + */ + IdMicrosoft: "id.microsoft", + + /** + * Lucene analyzer for Indonesian. + */ + IdLucene: "id.lucene", + + /** + * Lucene analyzer for Irish. + */ + GaLucene: "ga.lucene", + + /** + * Microsoft analyzer for Italian. + */ + ItMicrosoft: "it.microsoft", + + /** + * Lucene analyzer for Italian. + */ + ItLucene: "it.lucene", + + /** + * Microsoft analyzer for Japanese. + */ + JaMicrosoft: "ja.microsoft", + + /** + * Lucene analyzer for Japanese. + */ + JaLucene: "ja.lucene", + + /** + * Microsoft analyzer for Kannada. + */ + KnMicrosoft: "kn.microsoft", + + /** + * Microsoft analyzer for Korean. + */ + KoMicrosoft: "ko.microsoft", + + /** + * Lucene analyzer for Korean. + */ + KoLucene: "ko.lucene", + + /** + * Microsoft analyzer for Latvian. + */ + LvMicrosoft: "lv.microsoft", + + /** + * Lucene analyzer for Latvian. + */ + LvLucene: "lv.lucene", + + /** + * Microsoft analyzer for Lithuanian. + */ + LtMicrosoft: "lt.microsoft", + + /** + * Microsoft analyzer for Malayalam. + */ + MlMicrosoft: "ml.microsoft", + + /** + * Microsoft analyzer for Malay (Latin). + */ + MsMicrosoft: "ms.microsoft", + + /** + * Microsoft analyzer for Marathi. + */ + MrMicrosoft: "mr.microsoft", + + /** + * Microsoft analyzer for Norwegian (Bokmål). + */ + NbMicrosoft: "nb.microsoft", + + /** + * Lucene analyzer for Norwegian. + */ + NoLucene: "no.lucene", + + /** + * Lucene analyzer for Persian. + */ + FaLucene: "fa.lucene", + + /** + * Microsoft analyzer for Polish. + */ + PlMicrosoft: "pl.microsoft", + + /** + * Lucene analyzer for Polish. + */ + PlLucene: "pl.lucene", + + /** + * Microsoft analyzer for Portuguese (Brazil). + */ + PtBrMicrosoft: "pt-BR.microsoft", + + /** + * Lucene analyzer for Portuguese (Brazil). + */ + PtBrLucene: "pt-BR.lucene", + + /** + * Microsoft analyzer for Portuguese (Portugal). + */ + PtPtMicrosoft: "pt-PT.microsoft", + + /** + * Lucene analyzer for Portuguese (Portugal). + */ + PtPtLucene: "pt-PT.lucene", + + /** + * Microsoft analyzer for Punjabi. + */ + PaMicrosoft: "pa.microsoft", + + /** + * Microsoft analyzer for Romanian. + */ + RoMicrosoft: "ro.microsoft", + + /** + * Lucene analyzer for Romanian. + */ + RoLucene: "ro.lucene", + + /** + * Microsoft analyzer for Russian. + */ + RuMicrosoft: "ru.microsoft", + + /** + * Lucene analyzer for Russian. + */ + RuLucene: "ru.lucene", + + /** + * Microsoft analyzer for Serbian (Cyrillic). + */ + SrCyrillicMicrosoft: "sr-cyrillic.microsoft", + + /** + * Microsoft analyzer for Serbian (Latin). + */ + SrLatinMicrosoft: "sr-latin.microsoft", + + /** + * Microsoft analyzer for Slovak. + */ + SkMicrosoft: "sk.microsoft", + + /** + * Microsoft analyzer for Slovenian. + */ + SlMicrosoft: "sl.microsoft", + + /** + * Microsoft analyzer for Spanish. + */ + EsMicrosoft: "es.microsoft", + + /** + * Lucene analyzer for Spanish. + */ + EsLucene: "es.lucene", + + /** + * Microsoft analyzer for Swedish. + */ + SvMicrosoft: "sv.microsoft", + + /** + * Lucene analyzer for Swedish. + */ + SvLucene: "sv.lucene", + + /** + * Microsoft analyzer for Tamil. + */ + TaMicrosoft: "ta.microsoft", + + /** + * Microsoft analyzer for Telugu. + */ + TeMicrosoft: "te.microsoft", + + /** + * Microsoft analyzer for Thai. + */ + ThMicrosoft: "th.microsoft", + + /** + * Lucene analyzer for Thai. + */ + ThLucene: "th.lucene", + + /** + * Microsoft analyzer for Turkish. + */ + TrMicrosoft: "tr.microsoft", + + /** + * Lucene analyzer for Turkish. + */ + TrLucene: "tr.lucene", + + /** + * Microsoft analyzer for Ukrainian. + */ + UkMicrosoft: "uk.microsoft", + + /** + * Microsoft analyzer for Urdu. + */ + UrMicrosoft: "ur.microsoft", + + /** + * Microsoft analyzer for Vietnamese. + */ + ViMicrosoft: "vi.microsoft", + + /** + * Standard Lucene analyzer. + */ + StandardLucene: "standard.lucene", + + /** + * Standard ASCII Folding Lucene analyzer. See + * https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers + */ + StandardAsciiFoldingLucene: "standardasciifolding.lucene", + + /** + * Treats the entire content of a field as a single token. This is useful for data + * like zip codes, ids, and some product names. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html + */ + Keyword: "keyword", + + /** + * Flexibly separates text into terms via a regular expression pattern. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html + */ + Pattern: "pattern", + + /** + * Divides text at non-letters and converts them to lower case. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html + */ + Simple: "simple", + + /** + * Divides text at non-letters; Applies the lowercase and stopword token filters. + * See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html + */ + Stop: "stop", + + /** + * An analyzer that uses the whitespace tokenizer. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html + */ + Whitespace: "whitespace", +} + +/** + * The encoding format for interpreting vector field contents. + */ +union VectorEncodingFormat { + string, + + /** + * Encoding format representing bits packed into a wider data type. + */ + PackedBit: "packedBit", +} + +/** + * The algorithm used for indexing and querying. + */ +union VectorSearchAlgorithmKind { + string, + + /** + * HNSW (Hierarchical Navigable Small World), a type of approximate nearest + * neighbors algorithm. + */ + Hnsw: "hnsw", + + /** + * Exhaustive KNN algorithm which will perform brute-force search. + */ + ExhaustiveKnn: "exhaustiveKnn", +} + +/** + * The vectorization method to be used during query time. + */ +union VectorSearchVectorizerKind { + string, + + /** + * Generate embeddings using an Azure OpenAI resource at query time. + */ + AzureOpenAI: "azureOpenAI", + + /** + * Generate embeddings using a custom web endpoint at query time. + */ + CustomWebApi: "customWebApi", +} + +/** + * The compression method used for indexing and querying. + */ +union VectorSearchCompressionKind { + string, + + /** + * Scalar Quantization, a type of compression method. In scalar quantization, the + * original vectors values are compressed to a narrower type by discretizing and + * representing each component of a vector using a reduced set of quantized + * values, thereby reducing the overall data size. + */ + ScalarQuantization: "scalarQuantization", + + /** + * Binary Quantization, a type of compression method. In binary quantization, the + * original vectors values are compressed to the narrower binary type by + * discretizing and representing each component of a vector using binary values, + * thereby reducing the overall data size. + */ + BinaryQuantization: "binaryQuantization", +} + +/** + * Defines the names of all tokenizers supported by the search engine. + */ +union LexicalTokenizerName { + string, + + /** + * Grammar-based tokenizer that is suitable for processing most European-language + * documents. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html + */ + Classic: "classic", + + /** + * Tokenizes the input from an edge into n-grams of the given size(s). See + * https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html + */ + EdgeNGram: "edgeNGram", + + /** + * Emits the entire input as a single token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html + */ + Keyword: "keyword_v2", + + /** + * Divides text at non-letters. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html + */ + Letter: "letter", + + /** + * Divides text at non-letters and converts them to lower case. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html + */ + Lowercase: "lowercase", + + /** + * Divides text using language-specific rules. + */ + MicrosoftLanguageTokenizer: "microsoft_language_tokenizer", + + /** + * Divides text using language-specific rules and reduces words to their base + * forms. + */ + MicrosoftLanguageStemmingTokenizer: "microsoft_language_stemming_tokenizer", + + /** + * Tokenizes the input into n-grams of the given size(s). See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html + */ + NGram: "nGram", + + /** + * Tokenizer for path-like hierarchies. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html + */ + PathHierarchy: "path_hierarchy_v2", + + /** + * Tokenizer that uses regex pattern matching to construct distinct tokens. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html + */ + Pattern: "pattern", + + /** + * Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter + * and stop filter. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html + */ + Standard: "standard_v2", + + /** + * Tokenizes urls and emails as one token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html + */ + UaxUrlEmail: "uax_url_email", + + /** + * Divides text at whitespace. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html + */ + Whitespace: "whitespace", +} + +/** + * Defines the names of all token filters supported by the search engine. + */ +union TokenFilterName { + string, + + /** + * A token filter that applies the Arabic normalizer to normalize the orthography. + * See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html + */ + ArabicNormalization: "arabic_normalization", + + /** + * Strips all characters after an apostrophe (including the apostrophe itself). + * See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html + */ + Apostrophe: "apostrophe", + + /** + * Converts alphabetic, numeric, and symbolic Unicode characters which are not in + * the first 127 ASCII characters (the "Basic Latin" Unicode block) into their + * ASCII equivalents, if such equivalents exist. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html + */ + AsciiFolding: "asciifolding", + + /** + * Forms bigrams of CJK terms that are generated from the standard tokenizer. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html + */ + CjkBigram: "cjk_bigram", + + /** + * Normalizes CJK width differences. Folds fullwidth ASCII variants into the + * equivalent basic Latin, and half-width Katakana variants into the equivalent + * Kana. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html + */ + CjkWidth: "cjk_width", + + /** + * Removes English possessives, and dots from acronyms. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html + */ + Classic: "classic", + + /** + * Construct bigrams for frequently occurring terms while indexing. Single terms + * are still indexed too, with bigrams overlaid. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html + */ + CommonGram: "common_grams", + + /** + * Generates n-grams of the given size(s) starting from the front or the back of + * an input token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html + */ + EdgeNGram: "edgeNGram_v2", + + /** + * Removes elisions. For example, "l'avion" (the plane) will be converted to + * "avion" (plane). See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html + */ + Elision: "elision", + + /** + * Normalizes German characters according to the heuristics of the German2 + * snowball algorithm. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html + */ + GermanNormalization: "german_normalization", + + /** + * Normalizes text in Hindi to remove some differences in spelling variations. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html + */ + HindiNormalization: "hindi_normalization", + + /** + * Normalizes the Unicode representation of text in Indian languages. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html + */ + IndicNormalization: "indic_normalization", + + /** + * Emits each incoming token twice, once as keyword and once as non-keyword. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html + */ + KeywordRepeat: "keyword_repeat", + + /** + * A high-performance kstem filter for English. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html + */ + KStem: "kstem", + + /** + * Removes words that are too long or too short. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html + */ + Length: "length", + + /** + * Limits the number of tokens while indexing. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html + */ + Limit: "limit", + + /** + * Normalizes token text to lower case. See + * https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html + */ + Lowercase: "lowercase", + + /** + * Generates n-grams of the given size(s). See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html + */ + NGram: "nGram_v2", + + /** + * Applies normalization for Persian. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html + */ + PersianNormalization: "persian_normalization", + + /** + * Create tokens for phonetic matches. See + * https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html + */ + Phonetic: "phonetic", + + /** + * Uses the Porter stemming algorithm to transform the token stream. See + * http://tartarus.org/~martin/PorterStemmer + */ + PorterStem: "porter_stem", + + /** + * Reverses the token string. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html + */ + Reverse: "reverse", + + /** + * Normalizes use of the interchangeable Scandinavian characters. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html + */ + ScandinavianNormalization: "scandinavian_normalization", + + /** + * Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also + * discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just + * the first one. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html + */ + ScandinavianFoldingNormalization: "scandinavian_folding", + + /** + * Creates combinations of tokens as a single token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html + */ + Shingle: "shingle", + + /** + * A filter that stems words using a Snowball-generated stemmer. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html + */ + Snowball: "snowball", + + /** + * Normalizes the Unicode representation of Sorani text. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html + */ + SoraniNormalization: "sorani_normalization", + + /** + * Language specific stemming filter. See + * https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters + */ + Stemmer: "stemmer", + + /** + * Removes stop words from a token stream. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html + */ + Stopwords: "stopwords", + + /** + * Trims leading and trailing whitespace from tokens. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html + */ + Trim: "trim", + + /** + * Truncates the terms to a specific length. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html + */ + Truncate: "truncate", + + /** + * Filters out tokens with same text as the previous token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html + */ + Unique: "unique", + + /** + * Normalizes token text to upper case. See + * https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html + */ + Uppercase: "uppercase", + + /** + * Splits words into subwords and performs optional transformations on subword + * groups. + */ + WordDelimiter: "word_delimiter", +} + +/** + * Defines the names of all character filters supported by the search engine. + */ +union CharFilterName { + string, + + /** + * A character filter that attempts to strip out HTML constructs. See + * https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html + */ + HtmlStrip: "html_strip", +} + +/** + * Defines flags that can be combined to control how regular expressions are used + * in the pattern analyzer and pattern tokenizer. + */ +union RegexFlags { + string, + + /** + * Enables canonical equivalence. + */ + CanonEq: "CANON_EQ", + + /** + * Enables case-insensitive matching. + */ + CaseInsensitive: "CASE_INSENSITIVE", + + /** + * Permits whitespace and comments in the pattern. + */ + Comments: "COMMENTS", + + /** + * Enables dotall mode. + */ + DotAll: "DOTALL", + + /** + * Enables literal parsing of the pattern. + */ + Literal: "LITERAL", + + /** + * Enables multiline mode. + */ + Multiline: "MULTILINE", + + /** + * Enables Unicode-aware case folding. + */ + UnicodeCase: "UNICODE_CASE", + + /** + * Enables Unix lines mode. + */ + UnixLines: "UNIX_LINES", +} + +/** + * The similarity metric to use for vector comparisons. It is recommended to + * choose the same similarity metric as the embedding model was trained on. + */ +union VectorSearchAlgorithmMetric { + string, + + /** + * Measures the angle between vectors to quantify their similarity, disregarding + * magnitude. The smaller the angle, the closer the similarity. + */ + Cosine: "cosine", + + /** + * Computes the straight-line distance between vectors in a multi-dimensional + * space. The smaller the distance, the closer the similarity. + */ + Euclidean: "euclidean", + + /** + * Calculates the sum of element-wise products to gauge alignment and magnitude + * similarity. The larger and more positive, the closer the similarity. + */ + DotProduct: "dotProduct", + + /** + * Only applicable to bit-packed binary data types. Determines dissimilarity by + * counting differing positions in binary vectors. The fewer differences, the + * closer the similarity. + */ + Hamming: "hamming", +} + +/** + * The quantized data type of compressed vector values. + */ +union VectorSearchCompressionTarget { + string, + Int8: "int8", +} + +/** + * The Azure Open AI model name that will be called. + */ +union AzureOpenAIModelName { + string, + TextEmbeddingAda002: "text-embedding-ada-002", + TextEmbedding3Large: "text-embedding-3-large", + TextEmbedding3Small: "text-embedding-3-small", +} + +/** + * The language codes supported for input text by KeyPhraseExtractionSkill. + */ +union KeyPhraseExtractionSkillLanguage { + string, + + /** + * Danish + */ + da: "da", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * German + */ + de: "de", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Korean + */ + ko: "ko", + + /** + * Norwegian (Bokmaal) + */ + no: "no", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese (Portugal) + */ + `pt-PT`: "pt-PT", + + /** + * Portuguese (Brazil) + */ + `pt-BR`: "pt-BR", + + /** + * Russian + */ + ru: "ru", + + /** + * Spanish + */ + es: "es", + + /** + * Swedish + */ + sv: "sv", +} + +/** + * The language codes supported for input by OcrSkill. + */ +union OcrSkillLanguage { + string, + + /** + * Afrikaans + */ + af: "af", + + /** + * Albanian + */ + sq: "sq", + + /** + * Angika (Devanagiri) + */ + anp: "anp", + + /** + * Arabic + */ + ar: "ar", + + /** + * Asturian + */ + ast: "ast", + + /** + * Awadhi-Hindi (Devanagiri) + */ + awa: "awa", + + /** + * Azerbaijani (Latin) + */ + az: "az", + + /** + * Bagheli + */ + bfy: "bfy", + + /** + * Basque + */ + eu: "eu", + + /** + * Belarusian (Cyrillic and Latin) + */ + be: "be", + + /** + * Belarusian (Cyrillic) + */ + `be-cyrl`: "be-cyrl", + + /** + * Belarusian (Latin) + */ + `be-latn`: "be-latn", + + /** + * Bhojpuri-Hindi (Devanagiri) + */ + bho: "bho", + + /** + * Bislama + */ + bi: "bi", + + /** + * Bodo (Devanagiri) + */ + brx: "brx", + + /** + * Bosnian Latin + */ + bs: "bs", + + /** + * Brajbha + */ + bra: "bra", + + /** + * Breton + */ + br: "br", + + /** + * Bulgarian + */ + bg: "bg", + + /** + * Bundeli + */ + bns: "bns", + + /** + * Buryat (Cyrillic) + */ + bua: "bua", + + /** + * Catalan + */ + ca: "ca", + + /** + * Cebuano + */ + ceb: "ceb", + + /** + * Chamling + */ + rab: "rab", + + /** + * Chamorro + */ + ch: "ch", + + /** + * Chhattisgarhi (Devanagiri) + */ + hne: "hne", + + /** + * Chinese Simplified + */ + `zh-Hans`: "zh-Hans", + + /** + * Chinese Traditional + */ + `zh-Hant`: "zh-Hant", + + /** + * Cornish + */ + kw: "kw", + + /** + * Corsican + */ + co: "co", + + /** + * Crimean Tatar (Latin) + */ + crh: "crh", + + /** + * Croatian + */ + hr: "hr", + + /** + * Czech + */ + cs: "cs", + + /** + * Danish + */ + da: "da", + + /** + * Dari + */ + prs: "prs", + + /** + * Dhimal (Devanagiri) + */ + dhi: "dhi", + + /** + * Dogri (Devanagiri) + */ + doi: "doi", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Erzya (Cyrillic) + */ + myv: "myv", + + /** + * Estonian + */ + et: "et", + + /** + * Faroese + */ + fo: "fo", + + /** + * Fijian + */ + fj: "fj", + + /** + * Filipino + */ + fil: "fil", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * Frulian + */ + fur: "fur", + + /** + * Gagauz (Latin) + */ + gag: "gag", + + /** + * Galician + */ + gl: "gl", + + /** + * German + */ + de: "de", + + /** + * Gilbertese + */ + gil: "gil", + + /** + * Gondi (Devanagiri) + */ + gon: "gon", + + /** + * Greek + */ + el: "el", + + /** + * Greenlandic + */ + kl: "kl", + + /** + * Gurung (Devanagiri) + */ + gvr: "gvr", + + /** + * Haitian Creole + */ + ht: "ht", + + /** + * Halbi (Devanagiri) + */ + hlb: "hlb", + + /** + * Hani + */ + hni: "hni", + + /** + * Haryanvi + */ + bgc: "bgc", + + /** + * Hawaiian + */ + haw: "haw", + + /** + * Hindi + */ + hi: "hi", + + /** + * Hmong Daw (Latin) + */ + mww: "mww", + + /** + * Ho (Devanagiri) + */ + hoc: "hoc", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Icelandic + */ + `is`: "is", + + /** + * Inari Sami + */ + smn: "smn", + + /** + * Indonesian + */ + id: "id", + + /** + * Interlingua + */ + ia: "ia", + + /** + * Inuktitut (Latin) + */ + iu: "iu", + + /** + * Irish + */ + ga: "ga", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Jaunsari (Devanagiri) + */ + Jns: "Jns", + + /** + * Javanese + */ + jv: "jv", + + /** + * Kabuverdianu + */ + kea: "kea", + + /** + * Kachin (Latin) + */ + kac: "kac", + + /** + * Kangri (Devanagiri) + */ + xnr: "xnr", + + /** + * Karachay-Balkar + */ + krc: "krc", + + /** + * Kara-Kalpak (Cyrillic) + */ + `kaa-cyrl`: "kaa-cyrl", + + /** + * Kara-Kalpak (Latin) + */ + kaa: "kaa", + + /** + * Kashubian + */ + csb: "csb", + + /** + * Kazakh (Cyrillic) + */ + `kk-cyrl`: "kk-cyrl", + + /** + * Kazakh (Latin) + */ + `kk-latn`: "kk-latn", + + /** + * Khaling + */ + klr: "klr", + + /** + * Khasi + */ + kha: "kha", + + /** + * K'iche' + */ + quc: "quc", + + /** + * Korean + */ + ko: "ko", + + /** + * Korku + */ + kfq: "kfq", + + /** + * Koryak + */ + kpy: "kpy", + + /** + * Kosraean + */ + kos: "kos", + + /** + * Kumyk (Cyrillic) + */ + kum: "kum", + + /** + * Kurdish (Arabic) + */ + `ku-arab`: "ku-arab", + + /** + * Kurdish (Latin) + */ + `ku-latn`: "ku-latn", + + /** + * Kurukh (Devanagiri) + */ + kru: "kru", + + /** + * Kyrgyz (Cyrillic) + */ + ky: "ky", + + /** + * Lakota + */ + lkt: "lkt", + + /** + * Latin + */ + la: "la", + + /** + * Lithuanian + */ + lt: "lt", + + /** + * Lower Sorbian + */ + dsb: "dsb", + + /** + * Lule Sami + */ + smj: "smj", + + /** + * Luxembourgish + */ + lb: "lb", + + /** + * Mahasu Pahari (Devanagiri) + */ + bfz: "bfz", + + /** + * Malay (Latin) + */ + ms: "ms", + + /** + * Maltese + */ + mt: "mt", + + /** + * Malto (Devanagiri) + */ + kmj: "kmj", + + /** + * Manx + */ + gv: "gv", + + /** + * Maori + */ + mi: "mi", + + /** + * Marathi + */ + mr: "mr", + + /** + * Mongolian (Cyrillic) + */ + mn: "mn", + + /** + * Montenegrin (Cyrillic) + */ + `cnr-cyrl`: "cnr-cyrl", + + /** + * Montenegrin (Latin) + */ + `cnr-latn`: "cnr-latn", + + /** + * Neapolitan + */ + nap: "nap", + + /** + * Nepali + */ + ne: "ne", + + /** + * Niuean + */ + niu: "niu", + + /** + * Nogay + */ + nog: "nog", + + /** + * Northern Sami (Latin) + */ + sme: "sme", + + /** + * Norwegian + */ + nb: "nb", + + /** + * Norwegian + */ + no: "no", + + /** + * Occitan + */ + oc: "oc", + + /** + * Ossetic + */ + os: "os", + + /** + * Pashto + */ + ps: "ps", + + /** + * Persian + */ + fa: "fa", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese + */ + pt: "pt", + + /** + * Punjabi (Arabic) + */ + pa: "pa", + + /** + * Ripuarian + */ + ksh: "ksh", + + /** + * Romanian + */ + ro: "ro", + + /** + * Romansh + */ + rm: "rm", + + /** + * Russian + */ + ru: "ru", + + /** + * Sadri (Devanagiri) + */ + sck: "sck", + + /** + * Samoan (Latin) + */ + sm: "sm", + + /** + * Sanskrit (Devanagiri) + */ + sa: "sa", + + /** + * Santali (Devanagiri) + */ + sat: "sat", + + /** + * Scots + */ + sco: "sco", + + /** + * Scottish Gaelic + */ + gd: "gd", + + /** + * Serbian (Latin) + */ + sr: "sr", + + /** + * Serbian (Cyrillic) + */ + `sr-Cyrl`: "sr-Cyrl", + + /** + * Serbian (Latin) + */ + `sr-Latn`: "sr-Latn", + + /** + * Sherpa (Devanagiri) + */ + xsr: "xsr", + + /** + * Sirmauri (Devanagiri) + */ + srx: "srx", + + /** + * Skolt Sami + */ + sms: "sms", + + /** + * Slovak + */ + sk: "sk", + + /** + * Slovenian + */ + sl: "sl", + + /** + * Somali (Arabic) + */ + so: "so", + + /** + * Southern Sami + */ + sma: "sma", + + /** + * Spanish + */ + es: "es", + + /** + * Swahili (Latin) + */ + sw: "sw", + + /** + * Swedish + */ + sv: "sv", + + /** + * Tajik (Cyrillic) + */ + tg: "tg", + + /** + * Tatar (Latin) + */ + tt: "tt", + + /** + * Tetum + */ + tet: "tet", + + /** + * Thangmi + */ + thf: "thf", + + /** + * Tongan + */ + to: "to", + + /** + * Turkish + */ + tr: "tr", + + /** + * Turkmen (Latin) + */ + tk: "tk", + + /** + * Tuvan + */ + tyv: "tyv", + + /** + * Upper Sorbian + */ + hsb: "hsb", + + /** + * Urdu + */ + ur: "ur", + + /** + * Uyghur (Arabic) + */ + ug: "ug", + + /** + * Uzbek (Arabic) + */ + `uz-arab`: "uz-arab", + + /** + * Uzbek (Cyrillic) + */ + `uz-cyrl`: "uz-cyrl", + + /** + * Uzbek (Latin) + */ + uz: "uz", + + /** + * Volapük + */ + vo: "vo", + + /** + * Walser + */ + wae: "wae", + + /** + * Welsh + */ + cy: "cy", + + /** + * Western Frisian + */ + fy: "fy", + + /** + * Yucatec Maya + */ + yua: "yua", + + /** + * Zhuang + */ + za: "za", + + /** + * Zulu + */ + zu: "zu", + + /** + * Unknown (All) + */ + unk: "unk", +} + +/** + * Defines the sequence of characters to use between the lines of text recognized + * by the OCR skill. The default value is "space". + */ +union OcrLineEnding { + string, + + /** + * Lines are separated by a single space character. + */ + Space: "space", + + /** + * Lines are separated by a carriage return ('\r') character. + */ + CarriageReturn: "carriageReturn", + + /** + * Lines are separated by a single line feed ('\n') character. + */ + LineFeed: "lineFeed", + + /** + * Lines are separated by a carriage return and a line feed ('\r\n') character. + */ + CarriageReturnLineFeed: "carriageReturnLineFeed", +} + +/** + * The language codes supported for input by ImageAnalysisSkill. + */ +union ImageAnalysisSkillLanguage { + string, + + /** + * Arabic + */ + ar: "ar", + + /** + * Azerbaijani + */ + az: "az", + + /** + * Bulgarian + */ + bg: "bg", + + /** + * Bosnian Latin + */ + bs: "bs", + + /** + * Catalan + */ + ca: "ca", + + /** + * Czech + */ + cs: "cs", + + /** + * Welsh + */ + cy: "cy", + + /** + * Danish + */ + da: "da", + + /** + * German + */ + de: "de", + + /** + * Greek + */ + el: "el", + + /** + * English + */ + en: "en", + + /** + * Spanish + */ + es: "es", + + /** + * Estonian + */ + et: "et", + + /** + * Basque + */ + eu: "eu", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * Irish + */ + ga: "ga", + + /** + * Galician + */ + gl: "gl", + + /** + * Hebrew + */ + he: "he", + + /** + * Hindi + */ + hi: "hi", + + /** + * Croatian + */ + hr: "hr", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Indonesian + */ + id: "id", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Kazakh + */ + kk: "kk", + + /** + * Korean + */ + ko: "ko", + + /** + * Lithuanian + */ + lt: "lt", + + /** + * Latvian + */ + lv: "lv", + + /** + * Macedonian + */ + mk: "mk", + + /** + * Malay Malaysia + */ + ms: "ms", + + /** + * Norwegian (Bokmal) + */ + nb: "nb", + + /** + * Dutch + */ + nl: "nl", + + /** + * Polish + */ + pl: "pl", + + /** + * Dari + */ + prs: "prs", + + /** + * Portuguese-Brazil + */ + `pt-BR`: "pt-BR", + + /** + * Portuguese-Portugal + */ + pt: "pt", + + /** + * Portuguese-Portugal + */ + `pt-PT`: "pt-PT", + + /** + * Romanian + */ + ro: "ro", + + /** + * Russian + */ + ru: "ru", + + /** + * Slovak + */ + sk: "sk", + + /** + * Slovenian + */ + sl: "sl", + + /** + * Serbian - Cyrillic RS + */ + `sr-Cyrl`: "sr-Cyrl", + + /** + * Serbian - Latin RS + */ + `sr-Latn`: "sr-Latn", + + /** + * Swedish + */ + sv: "sv", + + /** + * Thai + */ + th: "th", + + /** + * Turkish + */ + tr: "tr", + + /** + * Ukrainian + */ + uk: "uk", + + /** + * Vietnamese + */ + vi: "vi", + + /** + * Chinese Simplified + */ + zh: "zh", + + /** + * Chinese Simplified + */ + `zh-Hans`: "zh-Hans", + + /** + * Chinese Traditional + */ + `zh-Hant`: "zh-Hant", +} + +/** + * The strings indicating what visual feature types to return. + */ +union VisualFeature { + string, + + /** + * Visual features recognized as adult persons. + */ + Adult: "adult", + + /** + * Visual features recognized as commercial brands. + */ + Brands: "brands", + + /** + * Categories. + */ + Categories: "categories", + + /** + * Description. + */ + Description: "description", + + /** + * Visual features recognized as people faces. + */ + Faces: "faces", + + /** + * Visual features recognized as objects. + */ + Objects: "objects", + + /** + * Tags. + */ + Tags: "tags", +} + +/** + * A string indicating which domain-specific details to return. + */ +union ImageDetail { + string, + + /** + * Details recognized as celebrities. + */ + Celebrities: "celebrities", + + /** + * Details recognized as landmarks. + */ + Landmarks: "landmarks", +} + +/** + * A string indicating what entity categories to return. + */ +union EntityCategory { + string, + + /** + * Entities describing a physical location. + */ + Location: "location", + + /** + * Entities describing an organization. + */ + Organization: "organization", + + /** + * Entities describing a person. + */ + Person: "person", + + /** + * Entities describing a quantity. + */ + Quantity: "quantity", + + /** + * Entities describing a date and time. + */ + Datetime: "datetime", + + /** + * Entities describing a URL. + */ + Url: "url", + + /** + * Entities describing an email address. + */ + Email: "email", +} + +/** + * Deprecated. The language codes supported for input text by + * EntityRecognitionSkill. + */ +union EntityRecognitionSkillLanguage { + string, + + /** + * Arabic + */ + ar: "ar", + + /** + * Czech + */ + cs: "cs", + + /** + * Chinese-Simplified + */ + `zh-Hans`: "zh-Hans", + + /** + * Chinese-Traditional + */ + `zh-Hant`: "zh-Hant", + + /** + * Danish + */ + da: "da", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * German + */ + de: "de", + + /** + * Greek + */ + el: "el", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Korean + */ + ko: "ko", + + /** + * Norwegian (Bokmaal) + */ + no: "no", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese (Portugal) + */ + `pt-PT`: "pt-PT", + + /** + * Portuguese (Brazil) + */ + `pt-BR`: "pt-BR", + + /** + * Russian + */ + ru: "ru", + + /** + * Spanish + */ + es: "es", + + /** + * Swedish + */ + sv: "sv", + + /** + * Turkish + */ + tr: "tr", +} + +/** + * Deprecated. The language codes supported for input text by SentimentSkill. + */ +union SentimentSkillLanguage { + string, + + /** + * Danish + */ + da: "da", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * German + */ + de: "de", + + /** + * Greek + */ + el: "el", + + /** + * Italian + */ + it: "it", + + /** + * Norwegian (Bokmaal) + */ + no: "no", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese (Portugal) + */ + `pt-PT`: "pt-PT", + + /** + * Russian + */ + ru: "ru", + + /** + * Spanish + */ + es: "es", + + /** + * Swedish + */ + sv: "sv", + + /** + * Turkish + */ + tr: "tr", +} + +/** + * A string indicating what maskingMode to use to mask the personal information + * detected in the input text. + */ +union PIIDetectionSkillMaskingMode { + string, + + /** + * No masking occurs and the maskedText output will not be returned. + */ + None: "none", + + /** + * Replaces the detected entities with the character given in the maskingCharacter + * parameter. The character will be repeated to the length of the detected entity + * so that the offsets will correctly correspond to both the input text as well as + * the output maskedText. + */ + Replace: "replace", +} + +/** + * The language codes supported for input text by SplitSkill. + */ +union SplitSkillLanguage { + string, + + /** + * Amharic + */ + am: "am", + + /** + * Bosnian + */ + bs: "bs", + + /** + * Czech + */ + cs: "cs", + + /** + * Danish + */ + da: "da", + + /** + * German + */ + de: "de", + + /** + * English + */ + en: "en", + + /** + * Spanish + */ + es: "es", + + /** + * Estonian + */ + et: "et", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * Hebrew + */ + he: "he", + + /** + * Hindi + */ + hi: "hi", + + /** + * Croatian + */ + hr: "hr", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Indonesian + */ + id: "id", + + /** + * Icelandic + */ + `is`: "is", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Korean + */ + ko: "ko", + + /** + * Latvian + */ + lv: "lv", + + /** + * Norwegian + */ + nb: "nb", + + /** + * Dutch + */ + nl: "nl", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese (Portugal) + */ + pt: "pt", + + /** + * Portuguese (Brazil) + */ + `pt-br`: "pt-br", + + /** + * Russian + */ + ru: "ru", + + /** + * Slovak + */ + sk: "sk", + + /** + * Slovenian + */ + sl: "sl", + + /** + * Serbian + */ + sr: "sr", + + /** + * Swedish + */ + sv: "sv", + + /** + * Turkish + */ + tr: "tr", + + /** + * Urdu + */ + ur: "ur", + + /** + * Chinese (Simplified) + */ + zh: "zh", +} + +/** + * A value indicating which split mode to perform. + */ +union TextSplitMode { + string, + + /** + * Split the text into individual pages. + */ + Pages: "pages", + + /** + * Split the text into individual sentences. + */ + Sentences: "sentences", +} + +/** + * The language codes supported for input text by CustomEntityLookupSkill. + */ +union CustomEntityLookupSkillLanguage { + string, + + /** + * Danish + */ + da: "da", + + /** + * German + */ + de: "de", + + /** + * English + */ + en: "en", + + /** + * Spanish + */ + es: "es", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * Italian + */ + it: "it", + + /** + * Korean + */ + ko: "ko", + + /** + * Portuguese + */ + pt: "pt", +} + +/** + * The language codes supported for input text by TextTranslationSkill. + */ +union TextTranslationSkillLanguage { + string, + + /** + * Afrikaans + */ + af: "af", + + /** + * Arabic + */ + ar: "ar", + + /** + * Bangla + */ + bn: "bn", + + /** + * Bosnian (Latin) + */ + bs: "bs", + + /** + * Bulgarian + */ + bg: "bg", + + /** + * Cantonese (Traditional) + */ + yue: "yue", + + /** + * Catalan + */ + ca: "ca", + + /** + * Chinese Simplified + */ + `zh-Hans`: "zh-Hans", + + /** + * Chinese Traditional + */ + `zh-Hant`: "zh-Hant", + + /** + * Croatian + */ + hr: "hr", + + /** + * Czech + */ + cs: "cs", + + /** + * Danish + */ + da: "da", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Estonian + */ + et: "et", + + /** + * Fijian + */ + fj: "fj", + + /** + * Filipino + */ + fil: "fil", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * German + */ + de: "de", + + /** + * Greek + */ + el: "el", + + /** + * Haitian Creole + */ + ht: "ht", + + /** + * Hebrew + */ + he: "he", + + /** + * Hindi + */ + hi: "hi", + + /** + * Hmong Daw + */ + mww: "mww", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Icelandic + */ + `is`: "is", + + /** + * Indonesian + */ + id: "id", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Kiswahili + */ + sw: "sw", + + /** + * Klingon + */ + tlh: "tlh", + + /** + * Klingon (Latin script) + */ + `tlh-Latn`: "tlh-Latn", + + /** + * Klingon (Klingon script) + */ + `tlh-Piqd`: "tlh-Piqd", + + /** + * Korean + */ + ko: "ko", + + /** + * Latvian + */ + lv: "lv", + + /** + * Lithuanian + */ + lt: "lt", + + /** + * Malagasy + */ + mg: "mg", + + /** + * Malay + */ + ms: "ms", + + /** + * Maltese + */ + mt: "mt", + + /** + * Norwegian + */ + nb: "nb", + + /** + * Persian + */ + fa: "fa", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese + */ + pt: "pt", + + /** + * Portuguese (Brazil) + */ + `pt-br`: "pt-br", + + /** + * Portuguese (Portugal) + */ + `pt-PT`: "pt-PT", + + /** + * Queretaro Otomi + */ + otq: "otq", + + /** + * Romanian + */ + ro: "ro", + + /** + * Russian + */ + ru: "ru", + + /** + * Samoan + */ + sm: "sm", + + /** + * Serbian (Cyrillic) + */ + `sr-Cyrl`: "sr-Cyrl", + + /** + * Serbian (Latin) + */ + `sr-Latn`: "sr-Latn", + + /** + * Slovak + */ + sk: "sk", + + /** + * Slovenian + */ + sl: "sl", + + /** + * Spanish + */ + es: "es", + + /** + * Swedish + */ + sv: "sv", + + /** + * Tahitian + */ + ty: "ty", + + /** + * Tamil + */ + ta: "ta", + + /** + * Telugu + */ + te: "te", + + /** + * Thai + */ + th: "th", + + /** + * Tongan + */ + to: "to", + + /** + * Turkish + */ + tr: "tr", + + /** + * Ukrainian + */ + uk: "uk", + + /** + * Urdu + */ + ur: "ur", + + /** + * Vietnamese + */ + vi: "vi", + + /** + * Welsh + */ + cy: "cy", + + /** + * Yucatec Maya + */ + yua: "yua", + + /** + * Irish + */ + ga: "ga", + + /** + * Kannada + */ + kn: "kn", + + /** + * Maori + */ + mi: "mi", + + /** + * Malayalam + */ + ml: "ml", + + /** + * Punjabi + */ + pa: "pa", +} + +/** + * Represents the overall indexer status. + */ +enum IndexerStatus { + /** + * Indicates that the indexer is in an unknown state. + */ + Unknown: "unknown", + + /** + * Indicates that the indexer experienced an error that cannot be corrected + * without human intervention. + */ + Error: "error", + + /** + * Indicates that the indexer is running normally. + */ + Running: "running", +} + +/** + * Represents the status of an individual indexer execution. + */ +enum IndexerExecutionStatus { + /** + * An indexer invocation has failed, but the failure may be transient. Indexer + * invocations will continue per schedule. + */ + TransientFailure: "transientFailure", + + /** + * Indexer execution completed successfully. + */ + Success: "success", + + /** + * Indexer execution is in progress. + */ + InProgress: "inProgress", + + /** + * Indexer has been reset. + */ + Reset: "reset", +} + +/** + * Defines the function used to interpolate score boosting across a range of + * documents. + */ +enum ScoringFunctionInterpolation { + /** + * Boosts scores by a linearly decreasing amount. This is the default + * interpolation for scoring functions. + */ + Linear: "linear", + + /** + * Boosts scores by a constant factor. + */ + Constant: "constant", + + /** + * Boosts scores by an amount that decreases quadratically. Boosts decrease slowly + * for higher scores, and more quickly as the scores decrease. This interpolation + * option is not allowed in tag scoring functions. + */ + Quadratic: "quadratic", + + /** + * Boosts scores by an amount that decreases logarithmically. Boosts decrease + * quickly for higher scores, and more slowly as the scores decrease. This + * interpolation option is not allowed in tag scoring functions. + */ + Logarithmic: "logarithmic", +} + +/** + * Defines the aggregation function used to combine the results of all the scoring + * functions in a scoring profile. + */ +enum ScoringFunctionAggregation { + /** + * Boost scores by the sum of all scoring function results. + */ + Sum: "sum", + + /** + * Boost scores by the average of all scoring function results. + */ + Average: "average", + + /** + * Boost scores by the minimum of all scoring function results. + */ + Minimum: "minimum", + + /** + * Boost scores by the maximum of all scoring function results. + */ + Maximum: "maximum", + + /** + * Boost scores using the first applicable scoring function in the scoring profile. + */ + FirstMatching: "firstMatching", +} + +/** + * Represents classes of characters on which a token filter can operate. + */ +enum TokenCharacterKind { + /** + * Keeps letters in tokens. + */ + Letter: "letter", + + /** + * Keeps digits in tokens. + */ + Digit: "digit", + + /** + * Keeps whitespace in tokens. + */ + Whitespace: "whitespace", + + /** + * Keeps punctuation in tokens. + */ + Punctuation: "punctuation", + + /** + * Keeps symbols in tokens. + */ + Symbol: "symbol", +} + +/** + * Lists the languages supported by the Microsoft language tokenizer. + */ +enum MicrosoftTokenizerLanguage { + /** + * Selects the Microsoft tokenizer for Bangla. + */ + Bangla: "bangla", + + /** + * Selects the Microsoft tokenizer for Bulgarian. + */ + Bulgarian: "bulgarian", + + /** + * Selects the Microsoft tokenizer for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the Microsoft tokenizer for Chinese (Simplified). + */ + ChineseSimplified: "chineseSimplified", + + /** + * Selects the Microsoft tokenizer for Chinese (Traditional). + */ + ChineseTraditional: "chineseTraditional", + + /** + * Selects the Microsoft tokenizer for Croatian. + */ + Croatian: "croatian", + + /** + * Selects the Microsoft tokenizer for Czech. + */ + Czech: "czech", + + /** + * Selects the Microsoft tokenizer for Danish. + */ + Danish: "danish", + + /** + * Selects the Microsoft tokenizer for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the Microsoft tokenizer for English. + */ + English: "english", + + /** + * Selects the Microsoft tokenizer for French. + */ + French: "french", + + /** + * Selects the Microsoft tokenizer for German. + */ + German: "german", + + /** + * Selects the Microsoft tokenizer for Greek. + */ + Greek: "greek", + + /** + * Selects the Microsoft tokenizer for Gujarati. + */ + Gujarati: "gujarati", + + /** + * Selects the Microsoft tokenizer for Hindi. + */ + Hindi: "hindi", + + /** + * Selects the Microsoft tokenizer for Icelandic. + */ + Icelandic: "icelandic", + + /** + * Selects the Microsoft tokenizer for Indonesian. + */ + Indonesian: "indonesian", + + /** + * Selects the Microsoft tokenizer for Italian. + */ + Italian: "italian", + + /** + * Selects the Microsoft tokenizer for Japanese. + */ + Japanese: "japanese", + + /** + * Selects the Microsoft tokenizer for Kannada. + */ + Kannada: "kannada", + + /** + * Selects the Microsoft tokenizer for Korean. + */ + Korean: "korean", + + /** + * Selects the Microsoft tokenizer for Malay. + */ + Malay: "malay", + + /** + * Selects the Microsoft tokenizer for Malayalam. + */ + Malayalam: "malayalam", + + /** + * Selects the Microsoft tokenizer for Marathi. + */ + Marathi: "marathi", + + /** + * Selects the Microsoft tokenizer for Norwegian (Bokmål). + */ + NorwegianBokmaal: "norwegianBokmaal", + + /** + * Selects the Microsoft tokenizer for Polish. + */ + Polish: "polish", + + /** + * Selects the Microsoft tokenizer for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the Microsoft tokenizer for Portuguese (Brazil). + */ + PortugueseBrazilian: "portugueseBrazilian", + + /** + * Selects the Microsoft tokenizer for Punjabi. + */ + Punjabi: "punjabi", + + /** + * Selects the Microsoft tokenizer for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the Microsoft tokenizer for Russian. + */ + Russian: "russian", + + /** + * Selects the Microsoft tokenizer for Serbian (Cyrillic). + */ + SerbianCyrillic: "serbianCyrillic", + + /** + * Selects the Microsoft tokenizer for Serbian (Latin). + */ + SerbianLatin: "serbianLatin", + + /** + * Selects the Microsoft tokenizer for Slovenian. + */ + Slovenian: "slovenian", + + /** + * Selects the Microsoft tokenizer for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the Microsoft tokenizer for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the Microsoft tokenizer for Tamil. + */ + Tamil: "tamil", + + /** + * Selects the Microsoft tokenizer for Telugu. + */ + Telugu: "telugu", + + /** + * Selects the Microsoft tokenizer for Thai. + */ + Thai: "thai", + + /** + * Selects the Microsoft tokenizer for Ukrainian. + */ + Ukrainian: "ukrainian", + + /** + * Selects the Microsoft tokenizer for Urdu. + */ + Urdu: "urdu", + + /** + * Selects the Microsoft tokenizer for Vietnamese. + */ + Vietnamese: "vietnamese", +} + +/** + * Lists the languages supported by the Microsoft language stemming tokenizer. + */ +enum MicrosoftStemmingTokenizerLanguage { + /** + * Selects the Microsoft stemming tokenizer for Arabic. + */ + Arabic: "arabic", + + /** + * Selects the Microsoft stemming tokenizer for Bangla. + */ + Bangla: "bangla", + + /** + * Selects the Microsoft stemming tokenizer for Bulgarian. + */ + Bulgarian: "bulgarian", + + /** + * Selects the Microsoft stemming tokenizer for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the Microsoft stemming tokenizer for Croatian. + */ + Croatian: "croatian", + + /** + * Selects the Microsoft stemming tokenizer for Czech. + */ + Czech: "czech", + + /** + * Selects the Microsoft stemming tokenizer for Danish. + */ + Danish: "danish", + + /** + * Selects the Microsoft stemming tokenizer for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the Microsoft stemming tokenizer for English. + */ + English: "english", + + /** + * Selects the Microsoft stemming tokenizer for Estonian. + */ + Estonian: "estonian", + + /** + * Selects the Microsoft stemming tokenizer for Finnish. + */ + Finnish: "finnish", + + /** + * Selects the Microsoft stemming tokenizer for French. + */ + French: "french", + + /** + * Selects the Microsoft stemming tokenizer for German. + */ + German: "german", + + /** + * Selects the Microsoft stemming tokenizer for Greek. + */ + Greek: "greek", + + /** + * Selects the Microsoft stemming tokenizer for Gujarati. + */ + Gujarati: "gujarati", + + /** + * Selects the Microsoft stemming tokenizer for Hebrew. + */ + Hebrew: "hebrew", + + /** + * Selects the Microsoft stemming tokenizer for Hindi. + */ + Hindi: "hindi", + + /** + * Selects the Microsoft stemming tokenizer for Hungarian. + */ + Hungarian: "hungarian", + + /** + * Selects the Microsoft stemming tokenizer for Icelandic. + */ + Icelandic: "icelandic", + + /** + * Selects the Microsoft stemming tokenizer for Indonesian. + */ + Indonesian: "indonesian", + + /** + * Selects the Microsoft stemming tokenizer for Italian. + */ + Italian: "italian", + + /** + * Selects the Microsoft stemming tokenizer for Kannada. + */ + Kannada: "kannada", + + /** + * Selects the Microsoft stemming tokenizer for Latvian. + */ + Latvian: "latvian", + + /** + * Selects the Microsoft stemming tokenizer for Lithuanian. + */ + Lithuanian: "lithuanian", + + /** + * Selects the Microsoft stemming tokenizer for Malay. + */ + Malay: "malay", + + /** + * Selects the Microsoft stemming tokenizer for Malayalam. + */ + Malayalam: "malayalam", + + /** + * Selects the Microsoft stemming tokenizer for Marathi. + */ + Marathi: "marathi", + + /** + * Selects the Microsoft stemming tokenizer for Norwegian (Bokmål). + */ + NorwegianBokmaal: "norwegianBokmaal", + + /** + * Selects the Microsoft stemming tokenizer for Polish. + */ + Polish: "polish", + + /** + * Selects the Microsoft stemming tokenizer for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the Microsoft stemming tokenizer for Portuguese (Brazil). + */ + PortugueseBrazilian: "portugueseBrazilian", + + /** + * Selects the Microsoft stemming tokenizer for Punjabi. + */ + Punjabi: "punjabi", + + /** + * Selects the Microsoft stemming tokenizer for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the Microsoft stemming tokenizer for Russian. + */ + Russian: "russian", + + /** + * Selects the Microsoft stemming tokenizer for Serbian (Cyrillic). + */ + SerbianCyrillic: "serbianCyrillic", + + /** + * Selects the Microsoft stemming tokenizer for Serbian (Latin). + */ + SerbianLatin: "serbianLatin", + + /** + * Selects the Microsoft stemming tokenizer for Slovak. + */ + Slovak: "slovak", + + /** + * Selects the Microsoft stemming tokenizer for Slovenian. + */ + Slovenian: "slovenian", + + /** + * Selects the Microsoft stemming tokenizer for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the Microsoft stemming tokenizer for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the Microsoft stemming tokenizer for Tamil. + */ + Tamil: "tamil", + + /** + * Selects the Microsoft stemming tokenizer for Telugu. + */ + Telugu: "telugu", + + /** + * Selects the Microsoft stemming tokenizer for Turkish. + */ + Turkish: "turkish", + + /** + * Selects the Microsoft stemming tokenizer for Ukrainian. + */ + Ukrainian: "ukrainian", + + /** + * Selects the Microsoft stemming tokenizer for Urdu. + */ + Urdu: "urdu", +} + +/** + * Scripts that can be ignored by CjkBigramTokenFilter. + */ +enum CjkBigramTokenFilterScripts { + /** + * Ignore Han script when forming bigrams of CJK terms. + */ + Han: "han", + + /** + * Ignore Hiragana script when forming bigrams of CJK terms. + */ + Hiragana: "hiragana", + + /** + * Ignore Katakana script when forming bigrams of CJK terms. + */ + Katakana: "katakana", + + /** + * Ignore Hangul script when forming bigrams of CJK terms. + */ + Hangul: "hangul", +} + +/** + * Specifies which side of the input an n-gram should be generated from. + */ +enum EdgeNGramTokenFilterSide { + /** + * Specifies that the n-gram should be generated from the front of the input. + */ + Front: "front", + + /** + * Specifies that the n-gram should be generated from the back of the input. + */ + Back: "back", +} + +/** + * Identifies the type of phonetic encoder to use with a PhoneticTokenFilter. + */ +enum PhoneticEncoder { + /** + * Encodes a token into a Metaphone value. + */ + Metaphone: "metaphone", + + /** + * Encodes a token into a double metaphone value. + */ + DoubleMetaphone: "doubleMetaphone", + + /** + * Encodes a token into a Soundex value. + */ + Soundex: "soundex", + + /** + * Encodes a token into a Refined Soundex value. + */ + RefinedSoundex: "refinedSoundex", + + /** + * Encodes a token into a Caverphone 1.0 value. + */ + Caverphone1: "caverphone1", + + /** + * Encodes a token into a Caverphone 2.0 value. + */ + Caverphone2: "caverphone2", + + /** + * Encodes a token into a Cologne Phonetic value. + */ + Cologne: "cologne", + + /** + * Encodes a token into a NYSIIS value. + */ + Nysiis: "nysiis", + + /** + * Encodes a token using the Kölner Phonetik algorithm. + */ + KoelnerPhonetik: "koelnerPhonetik", + + /** + * Encodes a token using the Haase refinement of the Kölner Phonetik algorithm. + */ + HaasePhonetik: "haasePhonetik", + + /** + * Encodes a token into a Beider-Morse value. + */ + BeiderMorse: "beiderMorse", +} + +/** + * The language to use for a Snowball token filter. + */ +enum SnowballTokenFilterLanguage { + /** + * Selects the Lucene Snowball stemming tokenizer for Armenian. + */ + Armenian: "armenian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Basque. + */ + Basque: "basque", + + /** + * Selects the Lucene Snowball stemming tokenizer for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the Lucene Snowball stemming tokenizer for Danish. + */ + Danish: "danish", + + /** + * Selects the Lucene Snowball stemming tokenizer for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the Lucene Snowball stemming tokenizer for English. + */ + English: "english", + + /** + * Selects the Lucene Snowball stemming tokenizer for Finnish. + */ + Finnish: "finnish", + + /** + * Selects the Lucene Snowball stemming tokenizer for French. + */ + French: "french", + + /** + * Selects the Lucene Snowball stemming tokenizer for German. + */ + German: "german", + + /** + * Selects the Lucene Snowball stemming tokenizer that uses the German variant + * algorithm. + */ + German2: "german2", + + /** + * Selects the Lucene Snowball stemming tokenizer for Hungarian. + */ + Hungarian: "hungarian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Italian. + */ + Italian: "italian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Dutch that uses the + * Kraaij-Pohlmann stemming algorithm. + */ + Kp: "kp", + + /** + * Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins + * stemming algorithm. + */ + Lovins: "lovins", + + /** + * Selects the Lucene Snowball stemming tokenizer for Norwegian. + */ + Norwegian: "norwegian", + + /** + * Selects the Lucene Snowball stemming tokenizer for English that uses the Porter + * stemming algorithm. + */ + Porter: "porter", + + /** + * Selects the Lucene Snowball stemming tokenizer for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the Lucene Snowball stemming tokenizer for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Russian. + */ + Russian: "russian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the Lucene Snowball stemming tokenizer for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the Lucene Snowball stemming tokenizer for Turkish. + */ + Turkish: "turkish", +} + +/** + * The language to use for a stemmer token filter. + */ +enum StemmerTokenFilterLanguage { + /** + * Selects the Lucene stemming tokenizer for Arabic. + */ + Arabic: "arabic", + + /** + * Selects the Lucene stemming tokenizer for Armenian. + */ + Armenian: "armenian", + + /** + * Selects the Lucene stemming tokenizer for Basque. + */ + Basque: "basque", + + /** + * Selects the Lucene stemming tokenizer for Portuguese (Brazil). + */ + Brazilian: "brazilian", + + /** + * Selects the Lucene stemming tokenizer for Bulgarian. + */ + Bulgarian: "bulgarian", + + /** + * Selects the Lucene stemming tokenizer for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the Lucene stemming tokenizer for Czech. + */ + Czech: "czech", + + /** + * Selects the Lucene stemming tokenizer for Danish. + */ + Danish: "danish", + + /** + * Selects the Lucene stemming tokenizer for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann + * stemming algorithm. + */ + DutchKp: "dutchKp", + + /** + * Selects the Lucene stemming tokenizer for English. + */ + English: "english", + + /** + * Selects the Lucene stemming tokenizer for English that does light stemming. + */ + LightEnglish: "lightEnglish", + + /** + * Selects the Lucene stemming tokenizer for English that does minimal stemming. + */ + MinimalEnglish: "minimalEnglish", + + /** + * Selects the Lucene stemming tokenizer for English that removes trailing + * possessives from words. + */ + PossessiveEnglish: "possessiveEnglish", + + /** + * Selects the Lucene stemming tokenizer for English that uses the Porter2 + * stemming algorithm. + */ + Porter2: "porter2", + + /** + * Selects the Lucene stemming tokenizer for English that uses the Lovins stemming + * algorithm. + */ + Lovins: "lovins", + + /** + * Selects the Lucene stemming tokenizer for Finnish. + */ + Finnish: "finnish", + + /** + * Selects the Lucene stemming tokenizer for Finnish that does light stemming. + */ + LightFinnish: "lightFinnish", + + /** + * Selects the Lucene stemming tokenizer for French. + */ + French: "french", + + /** + * Selects the Lucene stemming tokenizer for French that does light stemming. + */ + LightFrench: "lightFrench", + + /** + * Selects the Lucene stemming tokenizer for French that does minimal stemming. + */ + MinimalFrench: "minimalFrench", + + /** + * Selects the Lucene stemming tokenizer for Galician. + */ + Galician: "galician", + + /** + * Selects the Lucene stemming tokenizer for Galician that does minimal stemming. + */ + MinimalGalician: "minimalGalician", + + /** + * Selects the Lucene stemming tokenizer for German. + */ + German: "german", + + /** + * Selects the Lucene stemming tokenizer that uses the German variant algorithm. + */ + German2: "german2", + + /** + * Selects the Lucene stemming tokenizer for German that does light stemming. + */ + LightGerman: "lightGerman", + + /** + * Selects the Lucene stemming tokenizer for German that does minimal stemming. + */ + MinimalGerman: "minimalGerman", + + /** + * Selects the Lucene stemming tokenizer for Greek. + */ + Greek: "greek", + + /** + * Selects the Lucene stemming tokenizer for Hindi. + */ + Hindi: "hindi", + + /** + * Selects the Lucene stemming tokenizer for Hungarian. + */ + Hungarian: "hungarian", + + /** + * Selects the Lucene stemming tokenizer for Hungarian that does light stemming. + */ + LightHungarian: "lightHungarian", + + /** + * Selects the Lucene stemming tokenizer for Indonesian. + */ + Indonesian: "indonesian", + + /** + * Selects the Lucene stemming tokenizer for Irish. + */ + Irish: "irish", + + /** + * Selects the Lucene stemming tokenizer for Italian. + */ + Italian: "italian", + + /** + * Selects the Lucene stemming tokenizer for Italian that does light stemming. + */ + LightItalian: "lightItalian", + + /** + * Selects the Lucene stemming tokenizer for Sorani. + */ + Sorani: "sorani", + + /** + * Selects the Lucene stemming tokenizer for Latvian. + */ + Latvian: "latvian", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Bokmål). + */ + Norwegian: "norwegian", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light + * stemming. + */ + LightNorwegian: "lightNorwegian", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal + * stemming. + */ + MinimalNorwegian: "minimalNorwegian", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light + * stemming. + */ + LightNynorsk: "lightNynorsk", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal + * stemming. + */ + MinimalNynorsk: "minimalNynorsk", + + /** + * Selects the Lucene stemming tokenizer for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the Lucene stemming tokenizer for Portuguese that does light stemming. + */ + LightPortuguese: "lightPortuguese", + + /** + * Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming. + */ + MinimalPortuguese: "minimalPortuguese", + + /** + * Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP + * stemming algorithm. + */ + PortugueseRslp: "portugueseRslp", + + /** + * Selects the Lucene stemming tokenizer for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the Lucene stemming tokenizer for Russian. + */ + Russian: "russian", + + /** + * Selects the Lucene stemming tokenizer for Russian that does light stemming. + */ + LightRussian: "lightRussian", + + /** + * Selects the Lucene stemming tokenizer for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the Lucene stemming tokenizer for Spanish that does light stemming. + */ + LightSpanish: "lightSpanish", + + /** + * Selects the Lucene stemming tokenizer for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the Lucene stemming tokenizer for Swedish that does light stemming. + */ + LightSwedish: "lightSwedish", + + /** + * Selects the Lucene stemming tokenizer for Turkish. + */ + Turkish: "turkish", +} + +/** + * Identifies a predefined list of language-specific stopwords. + */ +enum StopwordsList { + /** + * Selects the stopword list for Arabic. + */ + Arabic: "arabic", + + /** + * Selects the stopword list for Armenian. + */ + Armenian: "armenian", + + /** + * Selects the stopword list for Basque. + */ + Basque: "basque", + + /** + * Selects the stopword list for Portuguese (Brazil). + */ + Brazilian: "brazilian", + + /** + * Selects the stopword list for Bulgarian. + */ + Bulgarian: "bulgarian", + + /** + * Selects the stopword list for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the stopword list for Czech. + */ + Czech: "czech", + + /** + * Selects the stopword list for Danish. + */ + Danish: "danish", + + /** + * Selects the stopword list for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the stopword list for English. + */ + English: "english", + + /** + * Selects the stopword list for Finnish. + */ + Finnish: "finnish", + + /** + * Selects the stopword list for French. + */ + French: "french", + + /** + * Selects the stopword list for Galician. + */ + Galician: "galician", + + /** + * Selects the stopword list for German. + */ + German: "german", + + /** + * Selects the stopword list for Greek. + */ + Greek: "greek", + + /** + * Selects the stopword list for Hindi. + */ + Hindi: "hindi", + + /** + * Selects the stopword list for Hungarian. + */ + Hungarian: "hungarian", + + /** + * Selects the stopword list for Indonesian. + */ + Indonesian: "indonesian", + + /** + * Selects the stopword list for Irish. + */ + Irish: "irish", + + /** + * Selects the stopword list for Italian. + */ + Italian: "italian", + + /** + * Selects the stopword list for Latvian. + */ + Latvian: "latvian", + + /** + * Selects the stopword list for Norwegian. + */ + Norwegian: "norwegian", + + /** + * Selects the stopword list for Persian. + */ + Persian: "persian", + + /** + * Selects the stopword list for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the stopword list for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the stopword list for Russian. + */ + Russian: "russian", + + /** + * Selects the stopword list for Sorani. + */ + Sorani: "sorani", + + /** + * Selects the stopword list for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the stopword list for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the stopword list for Thai. + */ + Thai: "thai", + + /** + * Selects the stopword list for Turkish. + */ + Turkish: "turkish", +} + +/** + * Represents a datasource definition, which can be used to configure an indexer. + */ +model SearchIndexerDataSource { + /** + * The name of the datasource. + */ + name: string; + + /** + * The description of the datasource. + */ + description?: string; + + /** + * The type of the datasource. + */ + type: SearchIndexerDataSourceType; + + /** + * Credentials for the datasource. + */ + credentials: DataSourceCredentials; + + /** + * The data container for the datasource. + */ + container: SearchIndexerDataContainer; + + /** + * The data change detection policy for the datasource. + */ + dataChangeDetectionPolicy?: DataChangeDetectionPolicy; + + /** + * The data deletion detection policy for the datasource. + */ + dataDeletionDetectionPolicy?: DataDeletionDetectionPolicy; + + /** + * The ETag of the data source. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your + * datasource definition when you want full assurance that no one, not even + * Microsoft, can decrypt your data source definition. Once you have encrypted + * your data source definition, it will always remain encrypted. The search + * service will ignore attempts to set this property to null. You can change this + * property as needed if you want to rotate your encryption key; Your datasource + * definition will be unaffected. Encryption with customer-managed keys is not + * available for free search services, and is only available for paid services + * created on or after January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; +} + +/** + * Represents credentials that can be used to connect to a datasource. + */ +model DataSourceCredentials { + /** + * The connection string for the datasource. Set to `` (with brackets) + * if you don't want the connection string updated. Set to `` if you + * want to remove the connection string value from the datasource. + */ + connectionString?: string; +} + +/** + * Represents information about the entity (such as Azure SQL table or CosmosDB + * collection) that will be indexed. + */ +model SearchIndexerDataContainer { + /** + * The name of the table or view (for Azure SQL data source) or collection (for + * CosmosDB data source) that will be indexed. + */ + name: string; + + /** + * A query that is applied to this data container. The syntax and meaning of this + * parameter is datasource-specific. Not supported by Azure SQL datasources. + */ + query?: string; +} + +/** + * Base type for data change detection policies. + */ +@discriminator("@odata.type") +model DataChangeDetectionPolicy {} + +/** + * Base type for data deletion detection policies. + */ +@discriminator("@odata.type") +model DataDeletionDetectionPolicy {} + +/** + * A customer-managed encryption key in Azure Key Vault. Keys that you create and + * manage can be used to encrypt or decrypt data-at-rest, such as indexes and + * synonym maps. + */ +model SearchResourceEncryptionKey { + /** + * The name of your Azure Key Vault key to be used to encrypt your data at rest. + */ + @encodedName("application/json", "keyVaultKeyName") + keyName: string; + + /** + * The version of your Azure Key Vault key to be used to encrypt your data at rest. + */ + @encodedName("application/json", "keyVaultKeyVersion") + keyVersion: string; + + /** + * The URI of your Azure Key Vault, also referred to as DNS name, that contains + * the key to be used to encrypt your data at rest. An example URI might be + * `https://my-keyvault-name.vault.azure.net`. + */ + @encodedName("application/json", "keyVaultUri") + vaultUri: string; + + /** + * Optional Azure Active Directory credentials used for accessing your Azure Key + * Vault. Not required if using managed identity instead. + */ + accessCredentials?: AzureActiveDirectoryApplicationCredentials; +} + +/** + * Credentials of a registered application created for your search service, used + * for authenticated access to the encryption keys stored in Azure Key Vault. + */ +model AzureActiveDirectoryApplicationCredentials { + /** + * An AAD Application ID that was granted the required access permissions to the + * Azure Key Vault that is to be used when encrypting your data at rest. The + * Application ID should not be confused with the Object ID for your AAD + * Application. + */ + applicationId: string; + + /** + * The authentication key of the specified AAD application. + */ + applicationSecret?: string; +} + +/** + * Response from a List Datasources request. If successful, it includes the full + * definitions of all datasources. + */ +model ListDataSourcesResult { + /** + * The datasources in the Search service. + */ + @visibility("read") + @encodedName("application/json", "value") + dataSources: SearchIndexerDataSource[]; +} + +/** + * Represents an indexer. + */ +model SearchIndexer { + /** + * The name of the indexer. + */ + name: string; + + /** + * The description of the indexer. + */ + description?: string; + + /** + * The name of the datasource from which this indexer reads data. + */ + dataSourceName: string; + + /** + * The name of the skillset executing with this indexer. + */ + skillsetName?: string; + + /** + * The name of the index to which this indexer writes data. + */ + targetIndexName: string; + + /** + * The schedule for this indexer. + */ + schedule?: IndexingSchedule; + + /** + * Parameters for indexer execution. + */ + parameters?: IndexingParameters; + + /** + * Defines mappings between fields in the data source and corresponding target + * fields in the index. + */ + fieldMappings?: FieldMapping[]; + + /** + * Output field mappings are applied after enrichment and immediately before + * indexing. + */ + outputFieldMappings?: FieldMapping[]; + + /** + * A value indicating whether the indexer is disabled. Default is false. + */ + @encodedName("application/json", "disabled") + IsDisabled?: boolean; + + /** + * The ETag of the indexer. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your indexer + * definition (as well as indexer execution status) when you want full assurance + * that no one, not even Microsoft, can decrypt them. Once you have encrypted your + * indexer definition, it will always remain encrypted. The search service will + * ignore attempts to set this property to null. You can change this property as + * needed if you want to rotate your encryption key; Your indexer definition (and + * indexer execution status) will be unaffected. Encryption with customer-managed + * keys is not available for free search services, and is only available for paid + * services created on or after January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; +} + +/** + * Represents a schedule for indexer execution. + */ +model IndexingSchedule { + /** + * The interval of time between indexer executions. + */ + interval: duration; + + /** + * The time when an indexer should start running. + */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + startTime?: utcDateTime; +} + +/** + * Represents parameters for indexer execution. + */ +model IndexingParameters { + /** + * The number of items that are read from the data source and indexed as a single + * batch in order to improve performance. The default depends on the data source + * type. + */ + batchSize?: int32; + + /** + * The maximum number of items that can fail indexing for indexer execution to + * still be considered successful. -1 means no limit. Default is 0. + */ + maxFailedItems?: int32; + + /** + * The maximum number of items in a single batch that can fail indexing for the + * batch to still be considered successful. -1 means no limit. Default is 0. + */ + maxFailedItemsPerBatch?: int32; + + /** + * A dictionary of indexer-specific configuration properties. Each name is the + * name of a specific property. Each value must be of a primitive type. + */ + configuration?: IndexingParametersConfiguration; +} + +/** + * A dictionary of indexer-specific configuration properties. Each name is the + * name of a specific property. Each value must be of a primitive type. + */ +model IndexingParametersConfiguration { + ...Record; + + /** + * Represents the parsing mode for indexing from an Azure blob data source. + */ + parsingMode?: BlobIndexerParsingMode = BlobIndexerParsingMode.Default; + + /** + * Comma-delimited list of filename extensions to ignore when processing from + * Azure blob storage. For example, you could exclude ".png, .mp4" to skip over + * those files during indexing. + */ + excludedFileNameExtensions?: string = ""; + + /** + * Comma-delimited list of filename extensions to select when processing from + * Azure blob storage. For example, you could focus indexing on specific + * application files ".docx, .pptx, .msg" to specifically include those file + * types. + */ + indexedFileNameExtensions?: string = ""; + + /** + * For Azure blobs, set to false if you want to continue indexing when an + * unsupported content type is encountered, and you don't know all the content + * types (file extensions) in advance. + */ + failOnUnsupportedContentType?: boolean; + + /** + * For Azure blobs, set to false if you want to continue indexing if a document + * fails indexing. + */ + failOnUnprocessableDocument?: boolean; + + /** + * For Azure blobs, set this property to true to still index storage metadata for + * blob content that is too large to process. Oversized blobs are treated as + * errors by default. For limits on blob size, see + * https://learn.microsoft.com/azure/search/search-limits-quotas-capacity. + */ + indexStorageMetadataOnlyForOversizedDocuments?: boolean; + + /** + * For CSV blobs, specifies a comma-delimited list of column headers, useful for + * mapping source fields to destination fields in an index. + */ + delimitedTextHeaders?: string; + + /** + * For CSV blobs, specifies the end-of-line single-character delimiter for CSV + * files where each line starts a new document (for example, "|"). + */ + delimitedTextDelimiter?: string; + + /** + * For CSV blobs, indicates that the first (non-blank) line of each blob contains + * headers. + */ + firstLineContainsHeaders?: boolean = true; + + /** + * For JSON arrays, given a structured or semi-structured document, you can + * specify a path to the array using this property. + */ + documentRoot?: string; + + /** + * Specifies the data to extract from Azure blob storage and tells the indexer + * which data to extract from image content when "imageAction" is set to a value + * other than "none". This applies to embedded image content in a .PDF or other + * application, or image files such as .jpg and .png, in Azure blobs. + */ + dataToExtract?: BlobIndexerDataToExtract = BlobIndexerDataToExtract.ContentAndMetadata; + + /** + * Determines how to process embedded images and image files in Azure blob + * storage. Setting the "imageAction" configuration to any value other than + * "none" requires that a skillset also be attached to that indexer. + */ + imageAction?: BlobIndexerImageAction = BlobIndexerImageAction.None; + + /** + * If true, will create a path //document//file_data that is an object + * representing the original file data downloaded from your blob data source. + * This allows you to pass the original file data to a custom skill for processing + * within the enrichment pipeline, or to the Document Extraction skill. + */ + allowSkillsetToReadFileData?: boolean; + + /** + * Determines algorithm for text extraction from PDF files in Azure blob storage. + */ + pdfTextRotationAlgorithm?: BlobIndexerPDFTextRotationAlgorithm = BlobIndexerPDFTextRotationAlgorithm.None; + + /** + * Specifies the environment in which the indexer should execute. + */ + executionEnvironment?: IndexerExecutionEnvironment = IndexerExecutionEnvironment.standard; + + /** + * Increases the timeout beyond the 5-minute default for Azure SQL database data + * sources, specified in the format "hh:mm:ss". + */ + queryTimeout?: string = "00:05:00"; +} + +/** + * Defines a mapping between a field in a data source and a target field in an + * index. + */ +model FieldMapping { + /** + * The name of the field in the data source. + */ + sourceFieldName: string; + + /** + * The name of the target field in the index. Same as the source field name by + * default. + */ + targetFieldName?: string; + + /** + * A function to apply to each source field value before indexing. + */ + mappingFunction?: FieldMappingFunction; +} + +/** + * Represents a function that transforms a value from a data source before + * indexing. + */ +model FieldMappingFunction { + /** + * The name of the field mapping function. + */ + name: string; + + /** + * A dictionary of parameter name/value pairs to pass to the function. Each value + * must be of a primitive type. + */ + parameters?: Record; +} + +/** + * Response from a List Indexers request. If successful, it includes the full + * definitions of all indexers. + */ +model ListIndexersResult { + /** + * The indexers in the Search service. + */ + @visibility("read") + @encodedName("application/json", "value") + indexers: SearchIndexer[]; +} + +/** + * Represents the current status and execution history of an indexer. + */ +model SearchIndexerStatus { + /** + * Overall indexer status. + */ + @visibility("read") + status: IndexerStatus; + + /** + * The result of the most recent or an in-progress indexer execution. + */ + @visibility("read") + lastResult?: IndexerExecutionResult; + + /** + * History of the recent indexer executions, sorted in reverse chronological order. + */ + @visibility("read") + executionHistory: IndexerExecutionResult[]; + + /** + * The execution limits for the indexer. + */ + @visibility("read") + limits: SearchIndexerLimits; +} + +/** + * Represents the result of an individual indexer execution. + */ +model IndexerExecutionResult { + /** + * The outcome of this indexer execution. + */ + @visibility("read") + status: IndexerExecutionStatus; + + /** + * The error message indicating the top-level error, if any. + */ + @visibility("read") + errorMessage?: string; + + /** + * The start time of this indexer execution. + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + startTime?: utcDateTime; + + /** + * The end time of this indexer execution, if the execution has already completed. + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + endTime?: utcDateTime; + + /** + * The item-level indexing errors. + */ + @visibility("read") + errors: SearchIndexerError[]; + + /** + * The item-level indexing warnings. + */ + @visibility("read") + warnings: SearchIndexerWarning[]; + + /** + * The number of items that were processed during this indexer execution. This + * includes both successfully processed items and items where indexing was + * attempted but failed. + */ + @visibility("read") + @encodedName("application/json", "itemsProcessed") + itemCount: int32; + + /** + * The number of items that failed to be indexed during this indexer execution. + */ + @visibility("read") + @encodedName("application/json", "itemsFailed") + failedItemCount: int32; + + /** + * Change tracking state with which an indexer execution started. + */ + @visibility("read") + initialTrackingState?: string; + + /** + * Change tracking state with which an indexer execution finished. + */ + @visibility("read") + finalTrackingState?: string; +} + +/** + * Represents an item- or document-level indexing error. + */ +model SearchIndexerError { + /** + * The key of the item for which indexing failed. + */ + @visibility("read") + key?: string; + + /** + * The message describing the error that occurred while processing the item. + */ + @visibility("read") + errorMessage: string; + + /** + * The status code indicating why the indexing operation failed. Possible values + * include: 400 for a malformed input document, 404 for document not found, 409 + * for a version conflict, 422 when the index is temporarily unavailable, or 503 + * for when the service is too busy. + */ + @visibility("read") + statusCode: int32; + + /** + * The name of the source at which the error originated. For example, this could + * refer to a particular skill in the attached skillset. This may not be always + * available. + */ + @visibility("read") + name?: string; + + /** + * Additional, verbose details about the error to assist in debugging the indexer. + * This may not be always available. + */ + @visibility("read") + details?: string; + + /** + * A link to a troubleshooting guide for these classes of errors. This may not be + * always available. + */ + @visibility("read") + documentationLink?: string; +} + +/** + * Represents an item-level warning. + */ +model SearchIndexerWarning { + /** + * The key of the item which generated a warning. + */ + @visibility("read") + key?: string; + + /** + * The message describing the warning that occurred while processing the item. + */ + @visibility("read") + message: string; + + /** + * The name of the source at which the warning originated. For example, this could + * refer to a particular skill in the attached skillset. This may not be always + * available. + */ + @visibility("read") + name?: string; + + /** + * Additional, verbose details about the warning to assist in debugging the + * indexer. This may not be always available. + */ + @visibility("read") + details?: string; + + /** + * A link to a troubleshooting guide for these classes of warnings. This may not + * be always available. + */ + @visibility("read") + documentationLink?: string; +} + +model SearchIndexerLimits { + /** + * The maximum duration that the indexer is permitted to run for one execution. + */ + @visibility("read") + maxRunTime?: duration; + + /** + * The maximum size of a document, in bytes, which will be considered valid for + * indexing. + */ + @visibility("read") + maxDocumentExtractionSize?: int64; + + /** + * The maximum number of characters that will be extracted from a document picked + * up for indexing. + */ + @visibility("read") + maxDocumentContentCharactersToExtract?: int64; +} + +/** + * A list of skills. + */ +model SearchIndexerSkillset { + /** + * The name of the skillset. + */ + name: string; + + /** + * The description of the skillset. + */ + description?: string; + + /** + * A list of skills in the skillset. + */ + skills: SearchIndexerSkill[]; + + /** + * Details about the Azure AI service to be used when running skills. + */ + @encodedName("application/json", "cognitiveServices") + cognitiveServicesAccount?: CognitiveServicesAccount; + + /** + * Definition of additional projections to Azure blob, table, or files, of + * enriched data. + */ + knowledgeStore?: SearchIndexerKnowledgeStore; + + /** + * Definition of additional projections to secondary search index(es). + */ + @encodedName("application/json", "indexProjections") + indexProjection?: SearchIndexerIndexProjection; + + /** + * The ETag of the skillset. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your skillset + * definition when you want full assurance that no one, not even Microsoft, can + * decrypt your skillset definition. Once you have encrypted your skillset + * definition, it will always remain encrypted. The search service will ignore + * attempts to set this property to null. You can change this property as needed + * if you want to rotate your encryption key; Your skillset definition will be + * unaffected. Encryption with customer-managed keys is not available for free + * search services, and is only available for paid services created on or after + * January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; +} + +/** + * Base type for skills. + */ +@discriminator("@odata.type") +model SearchIndexerSkill { + /** + * The name of the skill which uniquely identifies it within the skillset. A skill + * with no name defined will be given a default name of its 1-based index in the + * skills array, prefixed with the character '#'. + */ + name?: string; + + /** + * The description of the skill which describes the inputs, outputs, and usage of + * the skill. + */ + description?: string; + + /** + * Represents the level at which operations take place, such as the document root + * or document content (for example, /document or /document/content). The default + * is /document. + */ + context?: string; + + /** + * Inputs of the skills could be a column in the source data set, or the output of + * an upstream skill. + */ + inputs: InputFieldMappingEntry[]; + + /** + * The output of a skill is either a field in a search index, or a value that can + * be consumed as an input by another skill. + */ + outputs: OutputFieldMappingEntry[]; +} + +/** + * Input field mapping for a skill. + */ +model InputFieldMappingEntry { + /** + * The name of the input. + */ + name: string; + + /** + * The source of the input. + */ + source?: string; + + /** + * The source context used for selecting recursive inputs. + */ + sourceContext?: string; + + /** + * The recursive inputs used when creating a complex type. + */ + inputs?: InputFieldMappingEntry[]; +} + +/** + * Output field mapping for a skill. + */ +model OutputFieldMappingEntry { + /** + * The name of the output defined by the skill. + */ + name: string; + + /** + * The target name of the output. It is optional and default to name. + */ + targetName?: string; +} + +/** + * Base type for describing any Azure AI service resource attached to a skillset. + */ +@discriminator("@odata.type") +model CognitiveServicesAccount { + /** + * Description of the Azure AI service resource attached to a skillset. + */ + description?: string; +} + +/** + * Definition of additional projections to azure blob, table, or files, of + * enriched data. + */ +model SearchIndexerKnowledgeStore { + /** + * The connection string to the storage account projections will be stored in. + */ + storageConnectionString: string; + + /** + * A list of additional projections to perform during indexing. + */ + projections: SearchIndexerKnowledgeStoreProjection[]; +} + +/** + * Container object for various projection selectors. + */ +model SearchIndexerKnowledgeStoreProjection { + /** + * Projections to Azure Table storage. + */ + tables?: SearchIndexerKnowledgeStoreTableProjectionSelector[]; + + /** + * Projections to Azure Blob storage. + */ + objects?: SearchIndexerKnowledgeStoreObjectProjectionSelector[]; + + /** + * Projections to Azure File storage. + */ + files?: SearchIndexerKnowledgeStoreFileProjectionSelector[]; +} + +/** + * Description for what data to store in Azure Tables. + */ +model SearchIndexerKnowledgeStoreTableProjectionSelector + extends SearchIndexerKnowledgeStoreProjectionSelector { + /** + * Name of the Azure table to store projected data in. + */ + tableName: string; +} + +/** + * Abstract class to share properties between concrete selectors. + */ +model SearchIndexerKnowledgeStoreProjectionSelector { + /** + * Name of reference key to different projection. + */ + referenceKeyName?: string; + + /** + * Name of generated key to store projection under. + */ + generatedKeyName?: string; + + /** + * Source data to project. + */ + source?: string; + + /** + * Source context for complex projections. + */ + sourceContext?: string; + + /** + * Nested inputs for complex projections. + */ + inputs?: InputFieldMappingEntry[]; +} + +/** + * Projection definition for what data to store in Azure Blob. + */ +model SearchIndexerKnowledgeStoreObjectProjectionSelector + extends SearchIndexerKnowledgeStoreBlobProjectionSelector {} + +/** + * Abstract class to share properties between concrete selectors. + */ +model SearchIndexerKnowledgeStoreBlobProjectionSelector + extends SearchIndexerKnowledgeStoreProjectionSelector { + /** + * Blob container to store projections in. + */ + storageContainer: string; +} + +/** + * Projection definition for what data to store in Azure Files. + */ +model SearchIndexerKnowledgeStoreFileProjectionSelector + extends SearchIndexerKnowledgeStoreBlobProjectionSelector {} + +/** + * Definition of additional projections to secondary search indexes. + */ +model SearchIndexerIndexProjection { + /** + * A list of projections to be performed to secondary search indexes. + */ + selectors: SearchIndexerIndexProjectionSelector[]; + + /** + * A dictionary of index projection-specific configuration properties. Each name + * is the name of a specific property. Each value must be of a primitive type. + */ + parameters?: SearchIndexerIndexProjectionsParameters; +} + +/** + * Description for what data to store in the designated search index. + */ +model SearchIndexerIndexProjectionSelector { + /** + * Name of the search index to project to. Must have a key field with the + * 'keyword' analyzer set. + */ + targetIndexName: string; + + /** + * Name of the field in the search index to map the parent document's key value + * to. Must be a string field that is filterable and not the key field. + */ + parentKeyFieldName: string; + + /** + * Source context for the projections. Represents the cardinality at which the + * document will be split into multiple sub documents. + */ + sourceContext: string; + + /** + * Mappings for the projection, or which source should be mapped to which field in + * the target index. + */ + mappings: InputFieldMappingEntry[]; +} + +/** + * A dictionary of index projection-specific configuration properties. Each name + * is the name of a specific property. Each value must be of a primitive type. + */ +model SearchIndexerIndexProjectionsParameters { + ...Record; + + /** + * Defines behavior of the index projections in relation to the rest of the + * indexer. + */ + projectionMode?: IndexProjectionMode; +} + +/** + * Response from a list skillset request. If successful, it includes the full + * definitions of all skillsets. + */ +model ListSkillsetsResult { + /** + * The skillsets defined in the Search service. + */ + @visibility("read") + @encodedName("application/json", "value") + skillsets: SearchIndexerSkillset[]; +} + +/** + * Represents a synonym map definition. + */ +model SynonymMap { + /** + * The name of the synonym map. + */ + name: string; + + /** + * The format of the synonym map. Only the 'solr' format is currently supported. + */ + format: "solr"; + + /** + * A series of synonym rules in the specified synonym map format. The rules must + * be separated by newlines. + */ + synonyms: string; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your data when + * you want full assurance that no one, not even Microsoft, can decrypt your data. + * Once you have encrypted your data, it will always remain encrypted. The search + * service will ignore attempts to set this property to null. You can change this + * property as needed if you want to rotate your encryption key; Your data will be + * unaffected. Encryption with customer-managed keys is not available for free + * search services, and is only available for paid services created on or after + * January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; + + /** + * The ETag of the synonym map. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; +} + +/** + * Response from a List SynonymMaps request. If successful, it includes the full + * definitions of all synonym maps. + */ +model ListSynonymMapsResult { + /** + * The synonym maps in the Search service. + */ + @visibility("read") + @encodedName("application/json", "value") + synonymMaps: SynonymMap[]; +} + +/** + * Represents a search index definition, which describes the fields and search + * behavior of an index. + */ +model SearchIndex { + /** + * The name of the index. + */ + name: string; + + /** + * The fields of the index. + */ + fields: SearchField[]; + + /** + * The scoring profiles for the index. + */ + scoringProfiles?: ScoringProfile[]; + + /** + * The name of the scoring profile to use if none is specified in the query. If + * this property is not set and no scoring profile is specified in the query, then + * default scoring (tf-idf) will be used. + */ + defaultScoringProfile?: string; + + /** + * Options to control Cross-Origin Resource Sharing (CORS) for the index. + */ + corsOptions?: CorsOptions; + + /** + * The suggesters for the index. + */ + suggesters?: SearchSuggester[]; + + /** + * The analyzers for the index. + */ + analyzers?: LexicalAnalyzer[]; + + /** + * The tokenizers for the index. + */ + tokenizers?: LexicalTokenizer[]; + + /** + * The token filters for the index. + */ + tokenFilters?: TokenFilter[]; + + /** + * The character filters for the index. + */ + charFilters?: CharFilter[]; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your data when + * you want full assurance that no one, not even Microsoft, can decrypt your data. + * Once you have encrypted your data, it will always remain encrypted. The search + * service will ignore attempts to set this property to null. You can change this + * property as needed if you want to rotate your encryption key; Your data will be + * unaffected. Encryption with customer-managed keys is not available for free + * search services, and is only available for paid services created on or after + * January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; + + /** + * The type of similarity algorithm to be used when scoring and ranking the + * documents matching a search query. The similarity algorithm can only be defined + * at index creation time and cannot be modified on existing indexes. If null, the + * ClassicSimilarity algorithm is used. + */ + similarity?: SimilarityAlgorithm; + + /** + * Defines parameters for a search index that influence semantic capabilities. + */ + @encodedName("application/json", "semantic") + semanticSearch?: SemanticSearch; + + /** + * Contains configuration options related to vector search. + */ + vectorSearch?: VectorSearch; + + /** + * The ETag of the index. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; +} + +/** + * Represents a field in an index definition, which describes the name, data type, + * and search behavior of a field. + */ +model SearchField { + /** + * The name of the field, which must be unique within the fields collection of the + * index or parent field. + */ + name: string; + + /** + * The data type of the field. + */ + type: SearchFieldDataType; + + /** + * A value indicating whether the field uniquely identifies documents in the + * index. Exactly one top-level field in each index must be chosen as the key + * field and it must be of type Edm.String. Key fields can be used to look up + * documents directly and update or delete specific documents. Default is false + * for simple fields and null for complex fields. + */ + key?: boolean; + + /** + * A value indicating whether the field can be returned in a search result. You + * can disable this option if you want to use a field (for example, margin) as a + * filter, sorting, or scoring mechanism but do not want the field to be visible + * to the end user. This property must be true for key fields, and it must be null + * for complex fields. This property can be changed on existing fields. Enabling + * this property does not cause any increase in index storage requirements. + * Default is true for simple fields, false for vector fields, and null for + * complex fields. + */ + retrievable?: boolean; + + /** + * An immutable value indicating whether the field will be persisted separately on + * disk to be returned in a search result. You can disable this option if you + * don't plan to return the field contents in a search response to save on storage + * overhead. This can only be set during index creation and only for vector + * fields. This property cannot be changed for existing fields or set as false for + * new fields. If this property is set as false, the property 'retrievable' must + * also be set to false. This property must be true or unset for key fields, for + * new fields, and for non-vector fields, and it must be null for complex fields. + * Disabling this property will reduce index storage requirements. The default is + * true for vector fields. + */ + stored?: boolean; + + /** + * A value indicating whether the field is full-text searchable. This means it + * will undergo analysis such as word-breaking during indexing. If you set a + * searchable field to a value like "sunny day", internally it will be split into + * the individual tokens "sunny" and "day". This enables full-text searches for + * these terms. Fields of type Edm.String or Collection(Edm.String) are searchable + * by default. This property must be false for simple fields of other non-string + * data types, and it must be null for complex fields. Note: searchable fields + * consume extra space in your index to accommodate additional tokenized versions + * of the field value for full-text searches. If you want to save space in your + * index and you don't need a field to be included in searches, set searchable to + * false. + */ + searchable?: boolean; + + /** + * A value indicating whether to enable the field to be referenced in $filter + * queries. filterable differs from searchable in how strings are handled. Fields + * of type Edm.String or Collection(Edm.String) that are filterable do not undergo + * word-breaking, so comparisons are for exact matches only. For example, if you + * set such a field f to "sunny day", $filter=f eq 'sunny' will find no matches, + * but $filter=f eq 'sunny day' will. This property must be null for complex + * fields. Default is true for simple fields and null for complex fields. + */ + filterable?: boolean; + + /** + * A value indicating whether to enable the field to be referenced in $orderby + * expressions. By default, the search engine sorts results by score, but in many + * experiences users will want to sort by fields in the documents. A simple field + * can be sortable only if it is single-valued (it has a single value in the scope + * of the parent document). Simple collection fields cannot be sortable, since + * they are multi-valued. Simple sub-fields of complex collections are also + * multi-valued, and therefore cannot be sortable. This is true whether it's an + * immediate parent field, or an ancestor field, that's the complex collection. + * Complex fields cannot be sortable and the sortable property must be null for + * such fields. The default for sortable is true for single-valued simple fields, + * false for multi-valued simple fields, and null for complex fields. + */ + sortable?: boolean; + + /** + * A value indicating whether to enable the field to be referenced in facet + * queries. Typically used in a presentation of search results that includes hit + * count by category (for example, search for digital cameras and see hits by + * brand, by megapixels, by price, and so on). This property must be null for + * complex fields. Fields of type Edm.GeographyPoint or + * Collection(Edm.GeographyPoint) cannot be facetable. Default is true for all + * other simple fields. + */ + facetable?: boolean; + + /** + * The name of the analyzer to use for the field. This option can be used only + * with searchable fields and it can't be set together with either searchAnalyzer + * or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the + * field. Must be null for complex fields. + */ + analyzer?: LexicalAnalyzerName; + + /** + * The name of the analyzer used at search time for the field. This option can be + * used only with searchable fields. It must be set together with indexAnalyzer + * and it cannot be set together with the analyzer option. This property cannot be + * set to the name of a language analyzer; use the analyzer property instead if + * you need a language analyzer. This analyzer can be updated on an existing + * field. Must be null for complex fields. + */ + searchAnalyzer?: LexicalAnalyzerName; + + /** + * The name of the analyzer used at indexing time for the field. This option can + * be used only with searchable fields. It must be set together with + * searchAnalyzer and it cannot be set together with the analyzer option. This + * property cannot be set to the name of a language analyzer; use the analyzer + * property instead if you need a language analyzer. Once the analyzer is chosen, + * it cannot be changed for the field. Must be null for complex fields. + */ + indexAnalyzer?: LexicalAnalyzerName; + + /** + * The dimensionality of the vector field. + */ + @maxValue(2048) + @minValue(2) + @encodedName("application/json", "dimensions") + vectorSearchDimensions?: int32; + + /** + * The name of the vector search profile that specifies the algorithm and + * vectorizer to use when searching the vector field. + */ + @encodedName("application/json", "vectorSearchProfile") + vectorSearchProfileName?: string; + + /** + * The encoding format to interpret the field contents. + */ + @encodedName("application/json", "vectorEncoding") + vectorEncodingFormat?: VectorEncodingFormat; + + /** + * A list of the names of synonym maps to associate with this field. This option + * can be used only with searchable fields. Currently only one synonym map per + * field is supported. Assigning a synonym map to a field ensures that query terms + * targeting that field are expanded at query-time using the rules in the synonym + * map. This attribute can be changed on existing fields. Must be null or an empty + * collection for complex fields. + */ + synonymMaps?: string[]; + + /** + * A list of sub-fields if this is a field of type Edm.ComplexType or + * Collection(Edm.ComplexType). Must be null or empty for simple fields. + */ + fields?: SearchField[]; +} + +/** + * Defines parameters for a search index that influence scoring in search queries. + */ +model ScoringProfile { + /** + * The name of the scoring profile. + */ + name: string; + + /** + * Parameters that boost scoring based on text matches in certain index fields. + */ + @encodedName("application/json", "text") + textWeights?: TextWeights; + + /** + * The collection of functions that influence the scoring of documents. + */ + functions?: ScoringFunction[]; + + /** + * A value indicating how the results of individual scoring functions should be + * combined. Defaults to "Sum". Ignored if there are no scoring functions. + */ + functionAggregation?: ScoringFunctionAggregation; +} + +/** + * Defines weights on index fields for which matches should boost scoring in + * search queries. + */ +model TextWeights { + /** + * The dictionary of per-field weights to boost document scoring. The keys are + * field names and the values are the weights for each field. + */ + weights: Record; +} + +/** + * Base type for functions that can modify document scores during ranking. + */ +@discriminator("type") +model ScoringFunction { + /** + * The name of the field used as input to the scoring function. + */ + fieldName: string; + + /** + * A multiplier for the raw score. Must be a positive number not equal to 1.0. + */ + boost: float64; + + /** + * A value indicating how boosting will be interpolated across document scores; + * defaults to "Linear". + */ + interpolation?: ScoringFunctionInterpolation; +} + +/** + * Defines options to control Cross-Origin Resource Sharing (CORS) for an index. + */ +model CorsOptions { + /** + * The list of origins from which JavaScript code will be granted access to your + * index. Can contain a list of hosts of the form + * {protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow + * all origins (not recommended). + */ + allowedOrigins: string[]; + + /** + * The duration for which browsers should cache CORS preflight responses. Defaults + * to 5 minutes. + */ + maxAgeInSeconds?: int64; +} + +/** + * Defines how the Suggest API should apply to a group of fields in the index. + */ +model SearchSuggester { + /** + * The name of the suggester. + */ + name: string; + + /** + * A value indicating the capabilities of the suggester. + */ + searchMode: "analyzingInfixMatching"; + + /** + * The list of field names to which the suggester applies. Each field must be + * searchable. + */ + sourceFields: string[]; +} + +/** + * Base type for analyzers. + */ +@discriminator("@odata.type") +model LexicalAnalyzer { + /** + * The name of the analyzer. It must only contain letters, digits, spaces, dashes + * or underscores, can only start and end with alphanumeric characters, and is + * limited to 128 characters. + */ + name: string; +} + +/** + * Base type for tokenizers. + */ +@discriminator("@odata.type") +model LexicalTokenizer { + /** + * The name of the tokenizer. It must only contain letters, digits, spaces, dashes + * or underscores, can only start and end with alphanumeric characters, and is + * limited to 128 characters. + */ + name: string; +} + +/** + * Base type for token filters. + */ +@discriminator("@odata.type") +model TokenFilter { + /** + * The name of the token filter. It must only contain letters, digits, spaces, + * dashes or underscores, can only start and end with alphanumeric characters, and + * is limited to 128 characters. + */ + name: string; +} + +/** + * Base type for character filters. + */ +@discriminator("@odata.type") +model CharFilter { + /** + * The name of the char filter. It must only contain letters, digits, spaces, + * dashes or underscores, can only start and end with alphanumeric characters, and + * is limited to 128 characters. + */ + name: string; +} + +/** + * Base type for similarity algorithms. Similarity algorithms are used to + * calculate scores that tie queries to documents. The higher the score, the more + * relevant the document is to that specific query. Those scores are used to rank + * the search results. + */ +@discriminator("@odata.type") +model SimilarityAlgorithm {} + +/** + * Defines parameters for a search index that influence semantic capabilities. + */ +model SemanticSearch { + /** + * Allows you to set the name of a default semantic configuration in your index, + * making it optional to pass it on as a query parameter every time. + */ + @encodedName("application/json", "defaultConfiguration") + defaultConfigurationName?: string; + + /** + * The semantic configurations for the index. + */ + configurations?: SemanticConfiguration[]; +} + +/** + * Defines a specific configuration to be used in the context of semantic + * capabilities. + */ +model SemanticConfiguration { + /** + * The name of the semantic configuration. + */ + name: string; + + /** + * Describes the title, content, and keyword fields to be used for semantic + * ranking, captions, highlights, and answers. At least one of the three sub + * properties (titleField, prioritizedKeywordsFields and prioritizedContentFields) + * need to be set. + */ + prioritizedFields: SemanticPrioritizedFields; +} + +/** + * Describes the title, content, and keywords fields to be used for semantic + * ranking, captions, highlights, and answers. + */ +model SemanticPrioritizedFields { + /** + * Defines the title field to be used for semantic ranking, captions, highlights, + * and answers. If you don't have a title field in your index, leave this blank. + */ + titleField?: SemanticField; + + /** + * Defines the content fields to be used for semantic ranking, captions, + * highlights, and answers. For the best result, the selected fields should + * contain text in natural language form. The order of the fields in the array + * represents their priority. Fields with lower priority may get truncated if the + * content is long. + */ + @encodedName("application/json", "prioritizedContentFields") + contentFields?: SemanticField[]; + + /** + * Defines the keyword fields to be used for semantic ranking, captions, + * highlights, and answers. For the best result, the selected fields should + * contain a list of keywords. The order of the fields in the array represents + * their priority. Fields with lower priority may get truncated if the content is + * long. + */ + @encodedName("application/json", "prioritizedKeywordsFields") + keywordsFields?: SemanticField[]; +} + +/** + * A field that is used as part of the semantic configuration. + */ +model SemanticField { + fieldName: string; +} + +/** + * Contains configuration options related to vector search. + */ +model VectorSearch { + /** + * Defines combinations of configurations to use with vector search. + */ + profiles?: VectorSearchProfile[]; + + /** + * Contains configuration options specific to the algorithm used during indexing + * or querying. + */ + algorithms?: VectorSearchAlgorithmConfiguration[]; + + /** + * Contains configuration options on how to vectorize text vector queries. + */ + vectorizers?: VectorSearchVectorizer[]; + + /** + * Contains configuration options specific to the compression method used during + * indexing or querying. + */ + compressions?: VectorSearchCompression[]; +} + +/** + * Defines a combination of configurations to use with vector search. + */ +model VectorSearchProfile { + /** + * The name to associate with this particular vector search profile. + */ + name: string; + + /** + * The name of the vector search algorithm configuration that specifies the + * algorithm and optional parameters. + */ + @encodedName("application/json", "algorithm") + algorithmConfigurationName: string; + + /** + * The name of the vectorization being configured for use with vector search. + */ + @encodedName("application/json", "vectorizer") + vectorizerName?: string; + + /** + * The name of the compression method configuration that specifies the compression + * method and optional parameters. + */ + @encodedName("application/json", "compression") + compressionName?: string; +} + +/** + * Contains configuration options specific to the algorithm used during indexing + * or querying. + */ +@discriminator("kind") +model VectorSearchAlgorithmConfiguration { + /** + * The name to associate with this particular configuration. + */ + name: string; +} + +/** + * Specifies the vectorization method to be used during query time. + */ +@discriminator("kind") +model VectorSearchVectorizer { + /** + * The name to associate with this particular vectorization method. + */ + @encodedName("application/json", "name") + vectorizerName: string; +} + +/** + * Contains configuration options specific to the compression method used during + * indexing or querying. + */ +@discriminator("kind") +model VectorSearchCompression { + /** + * The name to associate with this particular configuration. + */ + @encodedName("application/json", "name") + compressionName: string; + + /** + * If set to true, once the ordered set of results calculated using compressed + * vectors are obtained, they will be reranked again by recalculating the + * full-precision similarity scores. This will improve recall at the expense of + * latency. + */ + rerankWithOriginalVectors?: boolean = true; + + /** + * Default oversampling factor. Oversampling will internally request more + * documents (specified by this multiplier) in the initial search. This increases + * the set of results that will be reranked using recomputed similarity scores + * from full-precision vectors. Minimum value is 1, meaning no oversampling (1x). + * This parameter can only be set when rerankWithOriginalVectors is true. Higher + * values improve recall at the expense of latency. + */ + defaultOversampling?: float64; +} + +/** + * Response from a List Indexes request. If successful, it includes the full + * definitions of all indexes. + */ +@pagedResult +model ListIndexesResult { + /** + * The indexes in the Search service. + */ + @visibility("read") + @items + @encodedName("application/json", "value") + indexes: SearchIndex[]; +} + +/** + * Statistics for a given index. Statistics are collected periodically and are not + * guaranteed to always be up-to-date. + */ +model GetIndexStatisticsResult { + /** + * The number of documents in the index. + */ + @visibility("read") + documentCount: int64; + + /** + * The amount of storage in bytes consumed by the index. + */ + @visibility("read") + storageSize: int64; + + /** + * The amount of memory in bytes consumed by vectors in the index. + */ + @visibility("read") + vectorIndexSize: int64; +} + +/** + * Specifies some text and analysis components used to break that text into tokens. + */ +model AnalyzeRequest { + /** + * The text to break into tokens. + */ + text: string; + + /** + * The name of the analyzer to use to break the given text. If this parameter is + * not specified, you must specify a tokenizer instead. The tokenizer and analyzer + * parameters are mutually exclusive. + */ + analyzer?: LexicalAnalyzerName; + + /** + * The name of the tokenizer to use to break the given text. If this parameter is + * not specified, you must specify an analyzer instead. The tokenizer and analyzer + * parameters are mutually exclusive. + */ + tokenizer?: LexicalTokenizerName; + + /** + * An optional list of token filters to use when breaking the given text. This + * parameter can only be set when using the tokenizer parameter. + */ + tokenFilters?: TokenFilterName[]; + + /** + * An optional list of character filters to use when breaking the given text. This + * parameter can only be set when using the tokenizer parameter. + */ + charFilters?: CharFilterName[]; +} + +/** + * The result of testing an analyzer on text. + */ +model AnalyzeResult { + /** + * The list of tokens returned by the analyzer specified in the request. + */ + tokens: AnalyzedTokenInfo[]; +} + +/** + * Information about a token returned by an analyzer. + */ +model AnalyzedTokenInfo { + /** + * The token returned by the analyzer. + */ + @visibility("read") + token: string; + + /** + * The index of the first character of the token in the input text. + */ + @visibility("read") + startOffset: int32; + + /** + * The index of the last character of the token in the input text. + */ + @visibility("read") + endOffset: int32; + + /** + * The position of the token in the input text relative to other tokens. The first + * token in the input text has position 0, the next has position 1, and so on. + * Depending on the analyzer used, some tokens might have the same position, for + * example if they are synonyms of each other. + */ + @visibility("read") + position: int32; +} + +/** + * Response from a get service statistics request. If successful, it includes + * service level counters and limits. + */ +model SearchServiceStatistics { + /** + * Service level resource counters. + */ + counters: SearchServiceCounters; + + /** + * Service level general limits. + */ + limits: SearchServiceLimits; +} + +/** + * Represents service-level resource counters and quotas. + */ +model SearchServiceCounters { + /** + * Total number of documents across all indexes in the service. + */ + @encodedName("application/json", "documentCount") + documentCounter: ResourceCounter; + + /** + * Total number of indexes. + */ + @encodedName("application/json", "indexesCount") + indexCounter: ResourceCounter; + + /** + * Total number of indexers. + */ + @encodedName("application/json", "indexersCount") + indexerCounter: ResourceCounter; + + /** + * Total number of data sources. + */ + @encodedName("application/json", "dataSourcesCount") + dataSourceCounter: ResourceCounter; + + /** + * Total size of used storage in bytes. + */ + @encodedName("application/json", "storageSize") + storageSizeCounter: ResourceCounter; + + /** + * Total number of synonym maps. + */ + @encodedName("application/json", "synonymMaps") + synonymMapCounter: ResourceCounter; + + /** + * Total number of skillsets. + */ + @encodedName("application/json", "skillsetCount") + skillsetCounter: ResourceCounter; + + /** + * Total memory consumption of all vector indexes within the service, in bytes. + */ + @encodedName("application/json", "vectorIndexSize") + vectorIndexSizeCounter: ResourceCounter; +} + +/** + * Represents a resource's usage and quota. + */ +model ResourceCounter { + /** + * The resource usage amount. + */ + usage: int64; + + /** + * The resource amount quota. + */ + quota?: int64; +} + +/** + * Represents various service level limits. + */ +model SearchServiceLimits { + /** + * The maximum allowed fields per index. + */ + maxFieldsPerIndex?: int32; + + /** + * The maximum depth which you can nest sub-fields in an index, including the + * top-level complex field. For example, a/b/c has a nesting depth of 3. + */ + maxFieldNestingDepthPerIndex?: int32; + + /** + * The maximum number of fields of type Collection(Edm.ComplexType) allowed in an + * index. + */ + maxComplexCollectionFieldsPerIndex?: int32; + + /** + * The maximum number of objects in complex collections allowed per document. + */ + maxComplexObjectsInCollectionsPerDocument?: int32; + + /** + * The maximum amount of storage in bytes allowed per index. + */ + @encodedName("application/json", "maxStoragePerIndex") + maxStoragePerIndexInBytes?: int64; +} + +/** + * Allows you to take control over the process of converting text into + * indexable/searchable tokens. It's a user-defined configuration consisting of a + * single predefined tokenizer and one or more filters. The tokenizer is + * responsible for breaking text into tokens, and the filters for modifying tokens + * emitted by the tokenizer. + */ +model CustomAnalyzer extends LexicalAnalyzer { + /** + * The name of the tokenizer to use to divide continuous text into a sequence of + * tokens, such as breaking a sentence into words. + */ + tokenizer: LexicalTokenizerName; + + /** + * A list of token filters used to filter out or modify the tokens generated by a + * tokenizer. For example, you can specify a lowercase filter that converts all + * characters to lowercase. The filters are run in the order in which they are + * listed. + */ + tokenFilters?: TokenFilterName[]; + + /** + * A list of character filters used to prepare input text before it is processed + * by the tokenizer. For instance, they can replace certain characters or symbols. + * The filters are run in the order in which they are listed. + */ + charFilters?: CharFilterName[]; + + /** + * A URI fragment specifying the type of analyzer. + */ + `@odata.type`: "#Microsoft.Azure.Search.CustomAnalyzer"; +} + +/** + * Flexibly separates text into terms via a regular expression pattern. This + * analyzer is implemented using Apache Lucene. + */ +model PatternAnalyzer extends LexicalAnalyzer { + /** + * A value indicating whether terms should be lower-cased. Default is true. + */ + @encodedName("application/json", "lowercase") + lowerCaseTerms?: boolean = true; + + /** + * A regular expression pattern to match token separators. Default is an + * expression that matches one or more non-word characters. + */ + pattern?: string = "\\W+"; + + /** + * Regular expression flags. + */ + flags?: RegexFlags; + + /** + * A list of stopwords. + */ + stopwords?: string[]; + + /** + * A URI fragment specifying the type of analyzer. + */ + `@odata.type`: "#Microsoft.Azure.Search.PatternAnalyzer"; +} + +/** + * Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase + * filter and stop filter. + */ +model LuceneStandardAnalyzer extends LexicalAnalyzer { + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; + + /** + * A list of stopwords. + */ + stopwords?: string[]; + + /** + * A URI fragment specifying the type of analyzer. + */ + `@odata.type`: "#Microsoft.Azure.Search.StandardAnalyzer"; +} + +/** + * Divides text at non-letters; Applies the lowercase and stopword token filters. + * This analyzer is implemented using Apache Lucene. + */ +model StopAnalyzer extends LexicalAnalyzer { + /** + * A list of stopwords. + */ + stopwords?: string[]; + + /** + * A URI fragment specifying the type of analyzer. + */ + `@odata.type`: "#Microsoft.Azure.Search.StopAnalyzer"; +} + +/** + * Grammar-based tokenizer that is suitable for processing most European-language + * documents. This tokenizer is implemented using Apache Lucene. + */ +model ClassicTokenizer extends LexicalTokenizer { + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.ClassicTokenizer"; +} + +/** + * Tokenizes the input from an edge into n-grams of the given size(s). This + * tokenizer is implemented using Apache Lucene. + */ +model EdgeNGramTokenizer extends LexicalTokenizer { + /** + * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the + * value of maxGram. + */ + @maxValue(300) + minGram?: int32 = 1; + + /** + * The maximum n-gram length. Default is 2. Maximum is 300. + */ + @maxValue(300) + maxGram?: int32 = 2; + + /** + * Character classes to keep in the tokens. + */ + tokenChars?: TokenCharacterKind[]; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; +} + +/** + * Emits the entire input as a single token. This tokenizer is implemented using + * Apache Lucene. + */ +model KeywordTokenizer extends LexicalTokenizer { + /** + * The read buffer size in bytes. Default is 256. + */ + bufferSize?: int32 = 256; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.KeywordTokenizer"; +} + +/** + * Emits the entire input as a single token. This tokenizer is implemented using + * Apache Lucene. + */ +model KeywordTokenizerV2 extends LexicalTokenizer { + /** + * The maximum token length. Default is 256. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 256; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.KeywordTokenizerV2"; +} + +/** + * Divides text using language-specific rules. + */ +model MicrosoftLanguageTokenizer extends LexicalTokenizer { + /** + * The maximum token length. Tokens longer than the maximum length are split. + * Maximum token length that can be used is 300 characters. Tokens longer than 300 + * characters are first split into tokens of length 300 and then each of those + * tokens is split based on the max token length set. Default is 255. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; + + /** + * A value indicating how the tokenizer is used. Set to true if used as the search + * tokenizer, set to false if used as the indexing tokenizer. Default is false. + */ + isSearchTokenizer?: boolean; + + /** + * The language to use. The default is English. + */ + language?: MicrosoftTokenizerLanguage; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; +} + +/** + * Divides text using language-specific rules and reduces words to their base + * forms. + */ +model MicrosoftLanguageStemmingTokenizer extends LexicalTokenizer { + /** + * The maximum token length. Tokens longer than the maximum length are split. + * Maximum token length that can be used is 300 characters. Tokens longer than 300 + * characters are first split into tokens of length 300 and then each of those + * tokens is split based on the max token length set. Default is 255. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; + + /** + * A value indicating how the tokenizer is used. Set to true if used as the search + * tokenizer, set to false if used as the indexing tokenizer. Default is false. + */ + isSearchTokenizer?: boolean; + + /** + * The language to use. The default is English. + */ + language?: MicrosoftStemmingTokenizerLanguage; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; +} + +/** + * Tokenizes the input into n-grams of the given size(s). This tokenizer is + * implemented using Apache Lucene. + */ +model NGramTokenizer extends LexicalTokenizer { + /** + * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the + * value of maxGram. + */ + @maxValue(300) + minGram?: int32 = 1; + + /** + * The maximum n-gram length. Default is 2. Maximum is 300. + */ + @maxValue(300) + maxGram?: int32 = 2; + + /** + * Character classes to keep in the tokens. + */ + tokenChars?: TokenCharacterKind[]; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.NGramTokenizer"; +} + +/** + * Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache + * Lucene. + */ +model PathHierarchyTokenizerV2 extends LexicalTokenizer { + /** + * The delimiter character to use. Default is "/". + */ + delimiter?: string = "/"; + + /** + * A value that, if set, replaces the delimiter character. Default is "/". + */ + replacement?: string = "/"; + + /** + * The maximum token length. Default and maximum is 300. + */ + @maxValue(300) + maxTokenLength?: int32 = 300; + + /** + * A value indicating whether to generate tokens in reverse order. Default is + * false. + */ + @encodedName("application/json", "reverse") + reverseTokenOrder?: boolean; + + /** + * The number of initial tokens to skip. Default is 0. + */ + @encodedName("application/json", "skip") + numberOfTokensToSkip?: int32; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; +} + +/** + * Tokenizer that uses regex pattern matching to construct distinct tokens. This + * tokenizer is implemented using Apache Lucene. + */ +model PatternTokenizer extends LexicalTokenizer { + /** + * A regular expression pattern to match token separators. Default is an + * expression that matches one or more non-word characters. + */ + pattern?: string = "\\W+"; + + /** + * Regular expression flags. + */ + flags?: RegexFlags; + + /** + * The zero-based ordinal of the matching group in the regular expression pattern + * to extract into tokens. Use -1 if you want to use the entire pattern to split + * the input into tokens, irrespective of matching groups. Default is -1. + */ + group?: int32 = -1; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.PatternTokenizer"; +} + +/** + * Breaks text following the Unicode Text Segmentation rules. This tokenizer is + * implemented using Apache Lucene. + */ +model LuceneStandardTokenizer extends LexicalTokenizer { + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. + */ + maxTokenLength?: int32 = 255; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.StandardTokenizer"; +} + +/** + * Breaks text following the Unicode Text Segmentation rules. This tokenizer is + * implemented using Apache Lucene. + */ +model LuceneStandardTokenizerV2 extends LexicalTokenizer { + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.StandardTokenizerV2"; +} + +/** + * Tokenizes urls and emails as one token. This tokenizer is implemented using + * Apache Lucene. + */ +model UaxUrlEmailTokenizer extends LexicalTokenizer { + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; + + /** + * A URI fragment specifying the type of tokenizer. + */ + `@odata.type`: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; +} + +/** + * Converts alphabetic, numeric, and symbolic Unicode characters which are not in + * the first 127 ASCII characters (the "Basic Latin" Unicode block) into their + * ASCII equivalents, if such equivalents exist. This token filter is implemented + * using Apache Lucene. + */ +model AsciiFoldingTokenFilter extends TokenFilter { + /** + * A value indicating whether the original token will be kept. Default is false. + */ + preserveOriginal?: boolean; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; +} + +/** + * Forms bigrams of CJK terms that are generated from the standard tokenizer. This + * token filter is implemented using Apache Lucene. + */ +model CjkBigramTokenFilter extends TokenFilter { + /** + * The scripts to ignore. + */ + ignoreScripts?: CjkBigramTokenFilterScripts[]; + + /** + * A value indicating whether to output both unigrams and bigrams (if true), or + * just bigrams (if false). Default is false. + */ + outputUnigrams?: boolean; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; +} + +/** + * Construct bigrams for frequently occurring terms while indexing. Single terms + * are still indexed too, with bigrams overlaid. This token filter is implemented + * using Apache Lucene. + */ +model CommonGramTokenFilter extends TokenFilter { + /** + * The set of common words. + */ + commonWords: string[]; + + /** + * A value indicating whether common words matching will be case insensitive. + * Default is false. + */ + ignoreCase?: boolean; + + /** + * A value that indicates whether the token filter is in query mode. When in query + * mode, the token filter generates bigrams and then removes common words and + * single terms followed by a common word. Default is false. + */ + @encodedName("application/json", "queryMode") + useQueryMode?: boolean; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.CommonGramTokenFilter"; +} + +/** + * Decomposes compound words found in many Germanic languages. This token filter + * is implemented using Apache Lucene. + */ +model DictionaryDecompounderTokenFilter extends TokenFilter { + /** + * The list of words to match against. + */ + wordList: string[]; + + /** + * The minimum word size. Only words longer than this get processed. Default is 5. + * Maximum is 300. + */ + @maxValue(300) + minWordSize?: int32 = 5; + + /** + * The minimum subword size. Only subwords longer than this are outputted. Default + * is 2. Maximum is 300. + */ + @maxValue(300) + minSubwordSize?: int32 = 2; + + /** + * The maximum subword size. Only subwords shorter than this are outputted. + * Default is 15. Maximum is 300. + */ + @maxValue(300) + maxSubwordSize?: int32 = 15; + + /** + * A value indicating whether to add only the longest matching subword to the + * output. Default is false. + */ + onlyLongestMatch?: boolean; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; +} + +/** + * Generates n-grams of the given size(s) starting from the front or the back of + * an input token. This token filter is implemented using Apache Lucene. + */ +model EdgeNGramTokenFilter extends TokenFilter { + /** + * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. + */ + minGram?: int32 = 1; + + /** + * The maximum n-gram length. Default is 2. + */ + maxGram?: int32 = 2; + + /** + * Specifies which side of the input the n-gram should be generated from. Default + * is "front". + */ + side?: EdgeNGramTokenFilterSide; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; +} + +/** + * Generates n-grams of the given size(s) starting from the front or the back of + * an input token. This token filter is implemented using Apache Lucene. + */ +model EdgeNGramTokenFilterV2 extends TokenFilter { + /** + * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the + * value of maxGram. + */ + @maxValue(300) + minGram?: int32 = 1; + + /** + * The maximum n-gram length. Default is 2. Maximum is 300. + */ + @maxValue(300) + maxGram?: int32 = 2; + + /** + * Specifies which side of the input the n-gram should be generated from. Default + * is "front". + */ + side?: EdgeNGramTokenFilterSide; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; +} + +/** + * Removes elisions. For example, "l'avion" (the plane) will be converted to + * "avion" (plane). This token filter is implemented using Apache Lucene. + */ +model ElisionTokenFilter extends TokenFilter { + /** + * The set of articles to remove. + */ + articles?: string[]; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.ElisionTokenFilter"; +} + +/** + * A token filter that only keeps tokens with text contained in a specified list + * of words. This token filter is implemented using Apache Lucene. + */ +model KeepTokenFilter extends TokenFilter { + /** + * The list of words to keep. + */ + keepWords: string[]; + + /** + * A value indicating whether to lower case all words first. Default is false. + */ + @encodedName("application/json", "keepWordsCase") + lowerCaseKeepWords?: boolean; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.KeepTokenFilter"; +} + +/** + * Marks terms as keywords. This token filter is implemented using Apache Lucene. + */ +model KeywordMarkerTokenFilter extends TokenFilter { + /** + * A list of words to mark as keywords. + */ + keywords: string[]; + + /** + * A value indicating whether to ignore case. If true, all words are converted to + * lower case first. Default is false. + */ + ignoreCase?: boolean; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; +} + +/** + * Removes words that are too long or too short. This token filter is implemented + * using Apache Lucene. + */ +model LengthTokenFilter extends TokenFilter { + /** + * The minimum length in characters. Default is 0. Maximum is 300. Must be less + * than the value of max. + */ + @maxValue(300) + @encodedName("application/json", "min") + minLength?: int32; + + /** + * The maximum length in characters. Default and maximum is 300. + */ + @maxValue(300) + @encodedName("application/json", "max") + maxLength?: int32 = 300; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.LengthTokenFilter"; +} + +/** + * Limits the number of tokens while indexing. This token filter is implemented + * using Apache Lucene. + */ +model LimitTokenFilter extends TokenFilter { + /** + * The maximum number of tokens to produce. Default is 1. + */ + maxTokenCount?: int32 = 1; + + /** + * A value indicating whether all tokens from the input must be consumed even if + * maxTokenCount is reached. Default is false. + */ + consumeAllTokens?: boolean; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.LimitTokenFilter"; +} + +/** + * Generates n-grams of the given size(s). This token filter is implemented using + * Apache Lucene. + */ +model NGramTokenFilter extends TokenFilter { + /** + * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. + */ + minGram?: int32 = 1; + + /** + * The maximum n-gram length. Default is 2. + */ + maxGram?: int32 = 2; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.NGramTokenFilter"; +} + +/** + * Generates n-grams of the given size(s). This token filter is implemented using + * Apache Lucene. + */ +model NGramTokenFilterV2 extends TokenFilter { + /** + * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the + * value of maxGram. + */ + @maxValue(300) + minGram?: int32 = 1; + + /** + * The maximum n-gram length. Default is 2. Maximum is 300. + */ + @maxValue(300) + maxGram?: int32 = 2; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.NGramTokenFilterV2"; +} + +/** + * Uses Java regexes to emit multiple tokens - one for each capture group in one + * or more patterns. This token filter is implemented using Apache Lucene. + */ +model PatternCaptureTokenFilter extends TokenFilter { + /** + * A list of patterns to match against each token. + */ + patterns: string[]; + + /** + * A value indicating whether to return the original token even if one of the + * patterns matches. Default is true. + */ + preserveOriginal?: boolean = true; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; +} + +/** + * A character filter that replaces characters in the input string. It uses a + * regular expression to identify character sequences to preserve and a + * replacement pattern to identify characters to replace. For example, given the + * input text "aa bb aa bb", pattern "(aa)\s+(bb)", and replacement "$1#$2", the + * result would be "aa#bb aa#bb". This token filter is implemented using Apache + * Lucene. + */ +model PatternReplaceTokenFilter extends TokenFilter { + /** + * A regular expression pattern. + */ + pattern: string; + + /** + * The replacement text. + */ + replacement: string; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; +} + +/** + * Create tokens for phonetic matches. This token filter is implemented using + * Apache Lucene. + */ +model PhoneticTokenFilter extends TokenFilter { + /** + * The phonetic encoder to use. Default is "metaphone". + */ + encoder?: PhoneticEncoder; + + /** + * A value indicating whether encoded tokens should replace original tokens. If + * false, encoded tokens are added as synonyms. Default is true. + */ + @encodedName("application/json", "replace") + replaceOriginalTokens?: boolean = true; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.PhoneticTokenFilter"; +} + +/** + * Creates combinations of tokens as a single token. This token filter is + * implemented using Apache Lucene. + */ +model ShingleTokenFilter extends TokenFilter { + /** + * The maximum shingle size. Default and minimum value is 2. + */ + @minValue(2) + maxShingleSize?: int32 = 2; + + /** + * The minimum shingle size. Default and minimum value is 2. Must be less than the + * value of maxShingleSize. + */ + @minValue(2) + minShingleSize?: int32 = 2; + + /** + * A value indicating whether the output stream will contain the input tokens + * (unigrams) as well as shingles. Default is true. + */ + outputUnigrams?: boolean = true; + + /** + * A value indicating whether to output unigrams for those times when no shingles + * are available. This property takes precedence when outputUnigrams is set to + * false. Default is false. + */ + outputUnigramsIfNoShingles?: boolean; + + /** + * The string to use when joining adjacent tokens to form a shingle. Default is a + * single space (" "). + */ + tokenSeparator?: string = " "; + + /** + * The string to insert for each position at which there is no token. Default is + * an underscore ("_"). + */ + filterToken?: string = "_"; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.ShingleTokenFilter"; +} + +/** + * A filter that stems words using a Snowball-generated stemmer. This token filter + * is implemented using Apache Lucene. + */ +model SnowballTokenFilter extends TokenFilter { + /** + * The language to use. + */ + language: SnowballTokenFilterLanguage; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.SnowballTokenFilter"; +} + +/** + * Language specific stemming filter. This token filter is implemented using + * Apache Lucene. + */ +model StemmerTokenFilter extends TokenFilter { + /** + * The language to use. + */ + language: StemmerTokenFilterLanguage; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.StemmerTokenFilter"; +} + +/** + * Provides the ability to override other stemming filters with custom + * dictionary-based stemming. Any dictionary-stemmed terms will be marked as + * keywords so that they will not be stemmed with stemmers down the chain. Must be + * placed before any stemming filters. This token filter is implemented using + * Apache Lucene. + */ +model StemmerOverrideTokenFilter extends TokenFilter { + /** + * A list of stemming rules in the following format: "word => stem", for example: + * "ran => run". + */ + rules: string[]; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; +} + +/** + * Removes stop words from a token stream. This token filter is implemented using + * Apache Lucene. + */ +model StopwordsTokenFilter extends TokenFilter { + /** + * The list of stopwords. This property and the stopwords list property cannot + * both be set. + */ + stopwords?: string[]; + + /** + * A predefined list of stopwords to use. This property and the stopwords property + * cannot both be set. Default is English. + */ + stopwordsList?: StopwordsList; + + /** + * A value indicating whether to ignore case. If true, all words are converted to + * lower case first. Default is false. + */ + ignoreCase?: boolean; + + /** + * A value indicating whether to ignore the last search term if it's a stop word. + * Default is true. + */ + @encodedName("application/json", "removeTrailing") + removeTrailingStopWords?: boolean = true; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.StopwordsTokenFilter"; +} + +/** + * Matches single or multi-word synonyms in a token stream. This token filter is + * implemented using Apache Lucene. + */ +model SynonymTokenFilter extends TokenFilter { + /** + * A list of synonyms in following one of two formats: 1. incredible, + * unbelievable, fabulous => amazing - all terms on the left side of => symbol + * will be replaced with all terms on its right side; 2. incredible, unbelievable, + * fabulous, amazing - comma separated list of equivalent words. Set the expand + * option to change how this list is interpreted. + */ + synonyms: string[]; + + /** + * A value indicating whether to case-fold input for matching. Default is false. + */ + ignoreCase?: boolean; + + /** + * A value indicating whether all words in the list of synonyms (if => notation is + * not used) will map to one another. If true, all words in the list of synonyms + * (if => notation is not used) will map to one another. The following list: + * incredible, unbelievable, fabulous, amazing is equivalent to: incredible, + * unbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing. + * If false, the following list: incredible, unbelievable, fabulous, amazing will + * be equivalent to: incredible, unbelievable, fabulous, amazing => incredible. + * Default is true. + */ + expand?: boolean = true; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.SynonymTokenFilter"; +} + +/** + * Truncates the terms to a specific length. This token filter is implemented + * using Apache Lucene. + */ +model TruncateTokenFilter extends TokenFilter { + /** + * The length at which terms will be truncated. Default and maximum is 300. + */ + @maxValue(300) + length?: int32 = 300; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.TruncateTokenFilter"; +} + +/** + * Filters out tokens with same text as the previous token. This token filter is + * implemented using Apache Lucene. + */ +model UniqueTokenFilter extends TokenFilter { + /** + * A value indicating whether to remove duplicates only at the same position. + * Default is false. + */ + onlyOnSamePosition?: boolean; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.UniqueTokenFilter"; +} + +/** + * Splits words into subwords and performs optional transformations on subword + * groups. This token filter is implemented using Apache Lucene. + */ +model WordDelimiterTokenFilter extends TokenFilter { + /** + * A value indicating whether to generate part words. If set, causes parts of + * words to be generated; for example "AzureSearch" becomes "Azure" "Search". + * Default is true. + */ + generateWordParts?: boolean = true; + + /** + * A value indicating whether to generate number subwords. Default is true. + */ + generateNumberParts?: boolean = true; + + /** + * A value indicating whether maximum runs of word parts will be catenated. For + * example, if this is set to true, "Azure-Search" becomes "AzureSearch". Default + * is false. + */ + catenateWords?: boolean; + + /** + * A value indicating whether maximum runs of number parts will be catenated. For + * example, if this is set to true, "1-2" becomes "12". Default is false. + */ + catenateNumbers?: boolean; + + /** + * A value indicating whether all subword parts will be catenated. For example, if + * this is set to true, "Azure-Search-1" becomes "AzureSearch1". Default is false. + */ + catenateAll?: boolean; + + /** + * A value indicating whether to split words on caseChange. For example, if this + * is set to true, "AzureSearch" becomes "Azure" "Search". Default is true. + */ + splitOnCaseChange?: boolean = true; + + /** + * A value indicating whether original words will be preserved and added to the + * subword list. Default is false. + */ + preserveOriginal?: boolean; + + /** + * A value indicating whether to split on numbers. For example, if this is set to + * true, "Azure1Search" becomes "Azure" "1" "Search". Default is true. + */ + splitOnNumerics?: boolean = true; + + /** + * A value indicating whether to remove trailing "'s" for each subword. Default is + * true. + */ + stemEnglishPossessive?: boolean = true; + + /** + * A list of tokens to protect from being delimited. + */ + protectedWords?: string[]; + + /** + * A URI fragment specifying the type of token filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; +} + +/** + * A character filter that applies mappings defined with the mappings option. + * Matching is greedy (longest pattern matching at a given point wins). + * Replacement is allowed to be the empty string. This character filter is + * implemented using Apache Lucene. + */ +model MappingCharFilter extends CharFilter { + /** + * A list of mappings of the following format: "a=>b" (all occurrences of the + * character "a" will be replaced with character "b"). + */ + mappings: string[]; + + /** + * A URI fragment specifying the type of char filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.MappingCharFilter"; +} + +/** + * A character filter that replaces characters in the input string. It uses a + * regular expression to identify character sequences to preserve and a + * replacement pattern to identify characters to replace. For example, given the + * input text "aa bb aa bb", pattern "(aa)\s+(bb)", and replacement "$1#$2", the + * result would be "aa#bb aa#bb". This character filter is implemented using + * Apache Lucene. + */ +model PatternReplaceCharFilter extends CharFilter { + /** + * A regular expression pattern. + */ + pattern: string; + + /** + * The replacement text. + */ + replacement: string; + + /** + * A URI fragment specifying the type of char filter. + */ + `@odata.type`: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; +} + +/** + * Legacy similarity algorithm which uses the Lucene TFIDFSimilarity + * implementation of TF-IDF. This variation of TF-IDF introduces static document + * length normalization as well as coordinating factors that penalize documents + * that only partially match the searched queries. + */ +model ClassicSimilarityAlgorithm extends SimilarityAlgorithm { + `@odata.type`: "#Microsoft.Azure.Search.ClassicSimilarity"; +} + +/** + * Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a + * TF-IDF-like algorithm that includes length normalization (controlled by the 'b' + * parameter) as well as term frequency saturation (controlled by the 'k1' + * parameter). + */ +model BM25SimilarityAlgorithm extends SimilarityAlgorithm { + /** + * This property controls the scaling function between the term frequency of each + * matching terms and the final relevance score of a document-query pair. By + * default, a value of 1.2 is used. A value of 0.0 means the score does not scale + * with an increase in term frequency. + */ + k1?: float64; + + /** + * This property controls how the length of a document affects the relevance + * score. By default, a value of 0.75 is used. A value of 0.0 means no length + * normalization is applied, while a value of 1.0 means the score is fully + * normalized by the length of the document. + */ + b?: float64; + + `@odata.type`: "#Microsoft.Azure.Search.BM25Similarity"; +} + +/** + * Contains configuration options specific to the HNSW approximate nearest + * neighbors algorithm used during indexing and querying. The HNSW algorithm + * offers a tunable trade-off between search speed and accuracy. + */ +model HnswAlgorithmConfiguration extends VectorSearchAlgorithmConfiguration { + /** + * Contains the parameters specific to HNSW algorithm. + */ + @encodedName("application/json", "hnswParameters") + parameters?: HnswParameters; + + /** + * The name of the kind of algorithm being configured for use with vector search. + */ + kind: "hnsw"; +} + +/** + * Contains the parameters specific to the HNSW algorithm. + */ +model HnswParameters { + /** + * The number of bi-directional links created for every new element during + * construction. Increasing this parameter value may improve recall and reduce + * retrieval times for datasets with high intrinsic dimensionality at the expense + * of increased memory consumption and longer indexing time. + */ + @maxValue(10) + @minValue(4) + m?: int32 = 4; + + /** + * The size of the dynamic list containing the nearest neighbors, which is used + * during index time. Increasing this parameter may improve index quality, at the + * expense of increased indexing time. At a certain point, increasing this + * parameter leads to diminishing returns. + */ + @maxValue(1000) + @minValue(100) + efConstruction?: int32 = 400; + + /** + * The size of the dynamic list containing the nearest neighbors, which is used + * during search time. Increasing this parameter may improve search results, at + * the expense of slower search. At a certain point, increasing this parameter + * leads to diminishing returns. + */ + @maxValue(1000) + @minValue(100) + efSearch?: int32 = 500; + + /** + * The similarity metric to use for vector comparisons. + */ + metric?: VectorSearchAlgorithmMetric; +} + +/** + * Contains configuration options specific to the exhaustive KNN algorithm used + * during querying, which will perform brute-force search across the entire vector + * index. + */ +model ExhaustiveKnnAlgorithmConfiguration + extends VectorSearchAlgorithmConfiguration { + /** + * Contains the parameters specific to exhaustive KNN algorithm. + */ + @encodedName("application/json", "exhaustiveKnnParameters") + parameters?: ExhaustiveKnnParameters; + + /** + * The name of the kind of algorithm being configured for use with vector search. + */ + kind: "exhaustiveKnn"; +} + +/** + * Contains the parameters specific to exhaustive KNN algorithm. + */ +model ExhaustiveKnnParameters { + /** + * The similarity metric to use for vector comparisons. + */ + metric?: VectorSearchAlgorithmMetric; +} + +/** + * Contains configuration options specific to the scalar quantization compression + * method used during indexing and querying. + */ +model ScalarQuantizationCompression extends VectorSearchCompression { + /** + * Contains the parameters specific to Scalar Quantization. + */ + @encodedName("application/json", "scalarQuantizationParameters") + parameters?: ScalarQuantizationParameters; + + /** + * The name of the kind of compression method being configured for use with vector + * search. + */ + kind: "scalarQuantization"; +} + +/** + * Contains the parameters specific to Scalar Quantization. + */ +model ScalarQuantizationParameters { + /** + * The quantized data type of compressed vector values. + */ + quantizedDataType?: VectorSearchCompressionTarget; +} + +/** + * Contains configuration options specific to the binary quantization compression + * method used during indexing and querying. + */ +model BinaryQuantizationCompression extends VectorSearchCompression { + /** + * The name of the kind of compression method being configured for use with vector + * search. + */ + kind: "binaryQuantization"; +} + +/** + * Specifies the Azure OpenAI resource used to vectorize a query string. + */ +model AzureOpenAIVectorizer extends VectorSearchVectorizer { + /** + * Contains the parameters specific to Azure OpenAI embedding vectorization. + */ + @encodedName("application/json", "azureOpenAIParameters") + parameters?: AzureOpenAIVectorizerParameters; + + /** + * The name of the kind of vectorization method being configured for use with + * vector search. + */ + kind: "azureOpenAI"; +} + +/** + * Specifies the parameters for connecting to the Azure OpenAI resource. + */ +model AzureOpenAIVectorizerParameters { + /** + * The resource URI of the Azure OpenAI resource. + */ + @encodedName("application/json", "resourceUri") + resourceUrl?: url; + + /** + * ID of the Azure OpenAI model deployment on the designated resource. + */ + @encodedName("application/json", "deploymentId") + deploymentName?: string; + + /** + * API key of the designated Azure OpenAI resource. + */ + apiKey?: string; + + /** + * The user-assigned managed identity used for outbound connections. + */ + authIdentity?: SearchIndexerDataIdentity; + + /** + * The name of the embedding model that is deployed at the provided deploymentId + * path. + */ + modelName?: AzureOpenAIModelName; +} + +/** + * Abstract base type for data identities. + */ +@discriminator("@odata.type") +model SearchIndexerDataIdentity {} + +/** + * Specifies a user-defined vectorizer for generating the vector embedding of a + * query string. Integration of an external vectorizer is achieved using the + * custom Web API interface of a skillset. + */ +model WebApiVectorizer extends VectorSearchVectorizer { + /** + * Specifies the properties of the user-defined vectorizer. + */ + @encodedName("application/json", "customWebApiParameters") + webApiParameters?: WebApiVectorizerParameters; + + /** + * The name of the kind of vectorization method being configured for use with + * vector search. + */ + kind: "customWebApi"; +} + +/** + * Specifies the properties for connecting to a user-defined vectorizer. + */ +model WebApiVectorizerParameters { + /** + * The URI of the Web API providing the vectorizer. + */ + @encodedName("application/json", "uri") + url?: url; + + /** + * The headers required to make the HTTP request. + */ + httpHeaders?: Record; + + /** + * The method for the HTTP request. + */ + httpMethod?: string; + + /** + * The desired timeout for the request. Default is 30 seconds. + */ + timeout?: duration; + + /** + * Applies to custom endpoints that connect to external code in an Azure function + * or some other application that provides the transformations. This value should + * be the application ID created for the function or app when it was registered + * with Azure Active Directory. When specified, the vectorization connects to the + * function or app using a managed ID (either system or user-assigned) of the + * search service and the access token of the function or app, using this value as + * the resource id for creating the scope of the access token. + */ + authResourceId?: string; + + /** + * The user-assigned managed identity used for outbound connections. If an + * authResourceId is provided and it's not specified, the system-assigned managed + * identity is used. On updates to the indexer, if the identity is unspecified, + * the value remains unchanged. If set to "none", the value of this property is + * cleared. + */ + authIdentity?: SearchIndexerDataIdentity; +} + +/** + * Clears the identity property of a datasource. + */ +model SearchIndexerDataNoneIdentity extends SearchIndexerDataIdentity { + /** + * A URI fragment specifying the type of identity. + */ + `@odata.type`: "#Microsoft.Azure.Search.DataNoneIdentity"; +} + +/** + * Specifies the identity for a datasource to use. + */ +model SearchIndexerDataUserAssignedIdentity extends SearchIndexerDataIdentity { + /** + * The fully qualified Azure resource Id of a user assigned managed identity + * typically in the form + * "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" + * that should have been assigned to the search service. + */ + @encodedName("application/json", "userAssignedIdentity") + resourceId: string; + + /** + * A URI fragment specifying the type of identity. + */ + `@odata.type`: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; +} + +/** + * Defines a data change detection policy that captures changes based on the value + * of a high water mark column. + */ +model HighWaterMarkChangeDetectionPolicy extends DataChangeDetectionPolicy { + /** + * The name of the high water mark column. + */ + highWaterMarkColumnName: string; + + /** + * A URI fragment specifying the type of data change detection policy. + */ + `@odata.type`: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; +} + +/** + * Defines a data change detection policy that captures changes using the + * Integrated Change Tracking feature of Azure SQL Database. + */ +model SqlIntegratedChangeTrackingPolicy extends DataChangeDetectionPolicy { + /** + * A URI fragment specifying the type of data change detection policy. + */ + `@odata.type`: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; +} + +/** + * Defines a data deletion detection policy that implements a soft-deletion + * strategy. It determines whether an item should be deleted based on the value of + * a designated 'soft delete' column. + */ +model SoftDeleteColumnDeletionDetectionPolicy + extends DataDeletionDetectionPolicy { + /** + * The name of the column to use for soft-deletion detection. + */ + softDeleteColumnName?: string; + + /** + * The marker value that identifies an item as deleted. + */ + softDeleteMarkerValue?: string; + + /** + * A URI fragment specifying the type of data deletion detection policy. + */ + `@odata.type`: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; +} + +/** + * Defines a function that boosts scores based on distance from a geographic + * location. + */ +model DistanceScoringFunction extends ScoringFunction { + /** + * Parameter values for the distance scoring function. + */ + @encodedName("application/json", "distance") + parameters: DistanceScoringParameters; + + /** + * Indicates the type of function to use. Valid values include magnitude, + * freshness, distance, and tag. The function type must be lower case. + */ + type: "distance"; +} + +/** + * Provides parameter values to a distance scoring function. + */ +model DistanceScoringParameters { + /** + * The name of the parameter passed in search queries to specify the reference + * location. + */ + referencePointParameter: string; + + /** + * The distance in kilometers from the reference location where the boosting range + * ends. + */ + boostingDistance: float64; +} + +/** + * Defines a function that boosts scores based on the value of a date-time field. + */ +model FreshnessScoringFunction extends ScoringFunction { + /** + * Parameter values for the freshness scoring function. + */ + @encodedName("application/json", "freshness") + parameters: FreshnessScoringParameters; + + /** + * Indicates the type of function to use. Valid values include magnitude, + * freshness, distance, and tag. The function type must be lower case. + */ + type: "freshness"; +} + +/** + * Provides parameter values to a freshness scoring function. + */ +model FreshnessScoringParameters { + /** + * The expiration period after which boosting will stop for a particular document. + */ + boostingDuration: duration; +} + +/** + * Defines a function that boosts scores based on the magnitude of a numeric field. + */ +model MagnitudeScoringFunction extends ScoringFunction { + /** + * Parameter values for the magnitude scoring function. + */ + @encodedName("application/json", "magnitude") + parameters: MagnitudeScoringParameters; + + /** + * Indicates the type of function to use. Valid values include magnitude, + * freshness, distance, and tag. The function type must be lower case. + */ + type: "magnitude"; +} + +/** + * Provides parameter values to a magnitude scoring function. + */ +model MagnitudeScoringParameters { + /** + * The field value at which boosting starts. + */ + boostingRangeStart: float64; + + /** + * The field value at which boosting ends. + */ + boostingRangeEnd: float64; + + /** + * A value indicating whether to apply a constant boost for field values beyond + * the range end value; default is false. + */ + @encodedName("application/json", "constantBoostBeyondRange") + shouldBoostBeyondRangeByConstant?: boolean; +} + +/** + * Defines a function that boosts scores of documents with string values matching + * a given list of tags. + */ +model TagScoringFunction extends ScoringFunction { + /** + * Parameter values for the tag scoring function. + */ + @encodedName("application/json", "tag") + parameters: TagScoringParameters; + + /** + * Indicates the type of function to use. Valid values include magnitude, + * freshness, distance, and tag. The function type must be lower case. + */ + type: "tag"; +} + +/** + * Provides parameter values to a tag scoring function. + */ +model TagScoringParameters { + /** + * The name of the parameter passed in search queries to specify the list of tags + * to compare against the target field. + */ + tagsParameter: string; +} + +/** + * A dictionary of knowledge store-specific configuration properties. Each name is + * the name of a specific property. Each value must be of a primitive type. + */ +model SearchIndexerKnowledgeStoreParameters { + ...Record; + + /** + * Whether or not projections should synthesize a generated key name if one isn't + * already present. + */ + synthesizeGeneratedKeyName?: boolean; +} + +/** + * An empty object that represents the default Azure AI service resource for a + * skillset. + */ +model DefaultCognitiveServicesAccount extends CognitiveServicesAccount { + /** + * A URI fragment specifying the type of Azure AI service resource attached to a + * skillset. + */ + `@odata.type`: "#Microsoft.Azure.Search.DefaultCognitiveServices"; +} + +/** + * The multi-region account key of an Azure AI service resource that's attached to + * a skillset. + */ +model CognitiveServicesAccountKey extends CognitiveServicesAccount { + /** + * The key used to provision the Azure AI service resource attached to a skillset. + */ + key: string; + + /** + * A URI fragment specifying the type of Azure AI service resource attached to a + * skillset. + */ + `@odata.type`: "#Microsoft.Azure.Search.CognitiveServicesByKey"; +} + +/** + * An object that contains information about the matches that were found, and + * related metadata. + */ +model CustomEntity { + /** + * The top-level entity descriptor. Matches in the skill output will be grouped by + * this name, and it should represent the "normalized" form of the text being + * found. + */ + name: string; + + /** + * This field can be used as a passthrough for custom metadata about the matched + * text(s). The value of this field will appear with every match of its entity in + * the skill output. + */ + description?: string; + + /** + * This field can be used as a passthrough for custom metadata about the matched + * text(s). The value of this field will appear with every match of its entity in + * the skill output. + */ + type?: string; + + /** + * This field can be used as a passthrough for custom metadata about the matched + * text(s). The value of this field will appear with every match of its entity in + * the skill output. + */ + subtype?: string; + + /** + * This field can be used as a passthrough for custom metadata about the matched + * text(s). The value of this field will appear with every match of its entity in + * the skill output. + */ + id?: string; + + /** + * Defaults to false. Boolean value denoting whether comparisons with the entity + * name should be sensitive to character casing. Sample case insensitive matches + * of "Microsoft" could be: microsoft, microSoft, MICROSOFT. + */ + caseSensitive?: boolean; + + /** + * Defaults to false. Boolean value denoting whether comparisons with the entity + * name should be sensitive to accent. + */ + accentSensitive?: boolean; + + /** + * Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent + * characters that would still constitute a match with the entity name. The + * smallest possible fuzziness for any given match is returned. For instance, if + * the edit distance is set to 3, "Windows10" would still match "Windows", + * "Windows10" and "Windows 7". When case sensitivity is set to false, case + * differences do NOT count towards fuzziness tolerance, but otherwise do. + */ + fuzzyEditDistance?: int32; + + /** + * Changes the default case sensitivity value for this entity. It be used to + * change the default value of all aliases caseSensitive values. + */ + defaultCaseSensitive?: boolean; + + /** + * Changes the default accent sensitivity value for this entity. It be used to + * change the default value of all aliases accentSensitive values. + */ + defaultAccentSensitive?: boolean; + + /** + * Changes the default fuzzy edit distance value for this entity. It can be used + * to change the default value of all aliases fuzzyEditDistance values. + */ + defaultFuzzyEditDistance?: int32; + + /** + * An array of complex objects that can be used to specify alternative spellings + * or synonyms to the root entity name. + */ + aliases?: CustomEntityAlias[]; +} + +/** + * A complex object that can be used to specify alternative spellings or synonyms + * to the root entity name. + */ +model CustomEntityAlias { + /** + * The text of the alias. + */ + text: string; + + /** + * Determine if the alias is case sensitive. + */ + caseSensitive?: boolean; + + /** + * Determine if the alias is accent sensitive. + */ + accentSensitive?: boolean; + + /** + * Determine the fuzzy edit distance of the alias. + */ + fuzzyEditDistance?: int32; +} + +/** + * A skill that enables scenarios that require a Boolean operation to determine + * the data to assign to an output. + */ +model ConditionalSkill extends SearchIndexerSkill { + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Util.ConditionalSkill"; +} + +/** + * A skill that uses text analytics for key phrase extraction. + */ +model KeyPhraseExtractionSkill extends SearchIndexerSkill { + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: KeyPhraseExtractionSkillLanguage; + + /** + * A number indicating how many key phrases to return. If absent, all identified + * key phrases will be returned. + */ + maxKeyPhraseCount?: int32; + + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; +} + +/** + * A skill that extracts text from image files. + */ +model OcrSkill extends SearchIndexerSkill { + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: OcrSkillLanguage; + + /** + * A value indicating to turn orientation detection on or not. Default is false. + */ + @encodedName("application/json", "detectOrientation") + shouldDetectOrientation?: boolean; + + /** + * Defines the sequence of characters to use between the lines of text recognized + * by the OCR skill. The default value is "space". + */ + lineEnding?: OcrLineEnding; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Vision.OcrSkill"; +} + +/** + * A skill that analyzes image files. It extracts a rich set of visual features + * based on the image content. + */ +model ImageAnalysisSkill extends SearchIndexerSkill { + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: ImageAnalysisSkillLanguage; + + /** + * A list of visual features. + */ + visualFeatures?: VisualFeature[]; + + /** + * A string indicating which domain-specific details to return. + */ + details?: ImageDetail[]; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; +} + +/** + * A skill that detects the language of input text and reports a single language + * code for every document submitted on the request. The language code is paired + * with a score indicating the confidence of the analysis. + */ +model LanguageDetectionSkill extends SearchIndexerSkill { + /** + * A country code to use as a hint to the language detection model if it cannot + * disambiguate the language. + */ + defaultCountryHint?: string; + + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.LanguageDetectionSkill"; +} + +/** + * A skill for reshaping the outputs. It creates a complex type to support + * composite fields (also known as multipart fields). + */ +model ShaperSkill extends SearchIndexerSkill { + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Util.ShaperSkill"; +} + +/** + * A skill for merging two or more strings into a single unified string, with an + * optional user-defined delimiter separating each component part. + */ +model MergeSkill extends SearchIndexerSkill { + /** + * The tag indicates the start of the merged text. By default, the tag is an empty + * space. + */ + insertPreTag?: string = " "; + + /** + * The tag indicates the end of the merged text. By default, the tag is an empty + * space. + */ + insertPostTag?: string = " "; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.MergeSkill"; +} + +/** + * This skill is deprecated. Use the V3.EntityRecognitionSkill instead. + */ +model EntityRecognitionSkill extends SearchIndexerSkill { + /** + * A list of entity categories that should be extracted. + */ + categories?: EntityCategory[]; + + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: EntityRecognitionSkillLanguage; + + /** + * Determines whether or not to include entities which are well known but don't + * conform to a pre-defined type. If this configuration is not set (default), set + * to null or set to false, entities which don't conform to one of the pre-defined + * types will not be surfaced. + */ + includeTypelessEntities?: boolean; + + /** + * A value between 0 and 1 that be used to only include entities whose confidence + * score is greater than the value specified. If not set (default), or if + * explicitly set to null, all entities will be included. + */ + minimumPrecision?: float64; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.EntityRecognitionSkill"; +} + +/** + * This skill is deprecated. Use the V3.SentimentSkill instead. + */ +model SentimentSkill extends SearchIndexerSkill { + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: SentimentSkillLanguage; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.SentimentSkill"; +} + +/** + * Using the Text Analytics API, evaluates unstructured text and for each record, + * provides sentiment labels (such as "negative", "neutral" and "positive") based + * on the highest confidence score found by the service at a sentence and + * document-level. + */ +model SentimentSkillV3 extends SearchIndexerSkill { + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: string; + + /** + * If set to true, the skill output will include information from Text Analytics + * for opinion mining, namely targets (nouns or verbs) and their associated + * assessment (adjective) in the text. Default is false. + */ + includeOpinionMining?: boolean; + + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.V3.SentimentSkill"; +} + +/** + * Using the Text Analytics API, extracts linked entities from text. + */ +model EntityLinkingSkill extends SearchIndexerSkill { + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: string; + + /** + * A value between 0 and 1 that be used to only include entities whose confidence + * score is greater than the value specified. If not set (default), or if + * explicitly set to null, all entities will be included. + */ + @maxValue(1) + minimumPrecision?: float64; + + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; +} + +/** + * Using the Text Analytics API, extracts entities of different types from text. + */ +model EntityRecognitionSkillV3 extends SearchIndexerSkill { + /** + * A list of entity categories that should be extracted. + */ + categories?: string[]; + + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: string; + + /** + * A value between 0 and 1 that be used to only include entities whose confidence + * score is greater than the value specified. If not set (default), or if + * explicitly set to null, all entities will be included. + */ + @maxValue(1) + minimumPrecision?: float64; + + /** + * The version of the model to use when calling the Text Analytics API. It will + * default to the latest available when not specified. We recommend you do not + * specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; +} + +/** + * Using the Text Analytics API, extracts personal information from an input text + * and gives you the option of masking it. + */ +model PIIDetectionSkill extends SearchIndexerSkill { + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: string; + + /** + * A value between 0 and 1 that be used to only include entities whose confidence + * score is greater than the value specified. If not set (default), or if + * explicitly set to null, all entities will be included. + */ + @maxValue(1) + minimumPrecision?: float64; + + /** + * A parameter that provides various ways to mask the personal information + * detected in the input text. Default is 'none'. + */ + maskingMode?: PIIDetectionSkillMaskingMode; + + /** + * The character used to mask the text if the maskingMode parameter is set to + * replace. Default is '*'. + */ + @maxLength(1) + @encodedName("application/json", "maskingCharacter") + mask?: string; + + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A list of PII entity categories that should be extracted and masked. + */ + piiCategories?: string[]; + + /** + * If specified, will set the PII domain to include only a subset of the entity + * categories. Possible values include: 'phi', 'none'. Default is 'none'. + */ + domain?: string; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.PIIDetectionSkill"; +} + +/** + * A skill to split a string into chunks of text. + */ +model SplitSkill extends SearchIndexerSkill { + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: SplitSkillLanguage; + + /** + * A value indicating which split mode to perform. + */ + textSplitMode?: TextSplitMode; + + /** + * The desired maximum page length. Default is 10000. + */ + maximumPageLength?: int32; + + /** + * Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk + * will start with this number of characters/tokens from the end of the nth chunk. + */ + pageOverlapLength?: int32; + + /** + * Only applicable when textSplitMode is set to 'pages'. If specified, the + * SplitSkill will discontinue splitting after processing the first + * 'maximumPagesToTake' pages, in order to improve performance when only a few + * initial pages are needed from each document. + */ + maximumPagesToTake?: int32; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.SplitSkill"; +} + +/** + * A skill looks for text from a custom, user-defined list of words and phrases. + */ +model CustomEntityLookupSkill extends SearchIndexerSkill { + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: CustomEntityLookupSkillLanguage; + + /** + * Path to a JSON or CSV file containing all the target text to match against. + * This entity definition is read at the beginning of an indexer run. Any updates + * to this file during an indexer run will not take effect until subsequent runs. + * This config must be accessible over HTTPS. + */ + entitiesDefinitionUri?: string; + + /** + * The inline CustomEntity definition. + */ + inlineEntitiesDefinition?: CustomEntity[]; + + /** + * A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity, + * this value will be the default value. + */ + globalDefaultCaseSensitive?: boolean; + + /** + * A global flag for AccentSensitive. If AccentSensitive is not set in + * CustomEntity, this value will be the default value. + */ + globalDefaultAccentSensitive?: boolean; + + /** + * A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in + * CustomEntity, this value will be the default value. + */ + globalDefaultFuzzyEditDistance?: int32; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; +} + +/** + * A skill to translate text from one language to another. + */ +model TextTranslationSkill extends SearchIndexerSkill { + /** + * The language code to translate documents into for documents that don't specify + * the to language explicitly. + */ + defaultToLanguageCode: TextTranslationSkillLanguage; + + /** + * The language code to translate documents from for documents that don't specify + * the from language explicitly. + */ + defaultFromLanguageCode?: TextTranslationSkillLanguage; + + /** + * The language code to translate documents from when neither the fromLanguageCode + * input nor the defaultFromLanguageCode parameter are provided, and the automatic + * language detection is unsuccessful. Default is `en`. + */ + suggestedFrom?: TextTranslationSkillLanguage; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.TranslationSkill"; +} + +/** + * A skill that extracts content from a file within the enrichment pipeline. + */ +model DocumentExtractionSkill extends SearchIndexerSkill { + /** + * The parsingMode for the skill. Will be set to 'default' if not defined. + */ + parsingMode?: string; + + /** + * The type of data to be extracted for the skill. Will be set to + * 'contentAndMetadata' if not defined. + */ + dataToExtract?: string; + + /** + * A dictionary of configurations for the skill. + */ + configuration?: Record; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Util.DocumentExtractionSkill"; +} + +/** + * A skill that can call a Web API endpoint, allowing you to extend a skillset by + * having it call your custom code. + */ +model WebApiSkill extends SearchIndexerSkill { + /** + * The url for the Web API. + */ + uri: string; + + /** + * The headers required to make the http request. + */ + httpHeaders?: Record; + + /** + * The method for the http request. + */ + httpMethod?: string; + + /** + * The desired timeout for the request. Default is 30 seconds. + */ + timeout?: duration; + + /** + * The desired batch size which indicates number of documents. + */ + batchSize?: int32; + + /** + * If set, the number of parallel calls that can be made to the Web API. + */ + degreeOfParallelism?: int32; + + /** + * Applies to custom skills that connect to external code in an Azure function or + * some other application that provides the transformations. This value should be + * the application ID created for the function or app when it was registered with + * Azure Active Directory. When specified, the custom skill connects to the + * function or app using a managed ID (either system or user-assigned) of the + * search service and the access token of the function or app, using this value as + * the resource id for creating the scope of the access token. + */ + authResourceId?: string; + + /** + * The user-assigned managed identity used for outbound connections. If an + * authResourceId is provided and it's not specified, the system-assigned managed + * identity is used. On updates to the indexer, if the identity is unspecified, + * the value remains unchanged. If set to "none", the value of this property is + * cleared. + */ + authIdentity?: SearchIndexerDataIdentity; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Custom.WebApiSkill"; +} + +/** + * Allows you to generate a vector embedding for a given text input using the + * Azure OpenAI resource. + */ +model AzureOpenAIEmbeddingSkill extends SearchIndexerSkill { + ...AzureOpenAIVectorizerParameters; + + /** + * The number of dimensions the resulting output embeddings should have. Only + * supported in text-embedding-3 and later models. + */ + dimensions?: int32; + + /** + * A URI fragment specifying the type of skill. + */ + `@odata.type`: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; +} diff --git a/specification/search/Azure.Search/models-shared.tsp b/specification/search/Azure.Search/models-shared.tsp new file mode 100644 index 000000000000..32f6cdd68f0a --- /dev/null +++ b/specification/search/Azure.Search/models-shared.tsp @@ -0,0 +1,74 @@ +import "@typespec/rest"; +import "@typespec/http"; +import "@azure-tools/typespec-azure-core"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using Azure.Core; + +namespace SearchClient; + +/** + * Common error response for all Azure Resource Manager APIs to return error + * details for failed operations. (This also follows the OData error response + * format.). + */ +@error +model ErrorResponse { + /** + * The error object. + */ + error?: ErrorDetail; +} + +/** + * The error detail. + */ +model ErrorDetail { + /** + * The error code. + */ + @visibility("read") + code?: string; + + /** + * The error message. + */ + @visibility("read") + message?: string; + + /** + * The error target. + */ + @visibility("read") + target?: string; + + /** + * The error details. + */ + @visibility("read") + details?: ErrorDetail[]; + + /** + * The error additional info. + */ + @visibility("read") + additionalInfo?: ErrorAdditionalInfo[]; +} + +/** + * The resource management error additional info. + */ +model ErrorAdditionalInfo { + /** + * The additional info type. + */ + @visibility("read") + type?: string; + + /** + * The additional info. + */ + @visibility("read") + info?: Record; +} diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp new file mode 100644 index 000000000000..10bfae0979b1 --- /dev/null +++ b/specification/search/Azure.Search/routes-index.tsp @@ -0,0 +1,597 @@ +import "@azure-tools/typespec-azure-core"; +import "@typespec/rest"; +import "./models-index.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; + +namespace SearchClient; + +interface DocumentsOperations { + /** + * Queries the number of documents in the index. + */ + @route("/docs/$count") + @get + count is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + void + >; + + /** + * Searches for documents in the index. + */ + @route("/docs") + @get + searchGet is Azure.Core.Foundations.Operation< + { + /** + * A full-text search query expression; Use "*" or omit this parameter to match + * all documents. + */ + @query("search") + SearchText?: string; + + /** + * A value that specifies whether to fetch the total count of results. Default is + * false. Setting this value to true may have a performance impact. Note that the + * count returned is an approximation. + */ + @query("$count") + IncludeTotalResultCount?: boolean; + + /** + * The list of facet expressions to apply to the search query. Each facet + * expression contains a field name, optionally followed by a comma-separated list + * of name:value pairs. + */ + @query({ + name: "facet", + format: "multi", + }) + Facets?: string[]; + + /** + * The OData $filter expression to apply to the search query. + */ + @query("$filter") + $filter?: string; + + /** + * The list of field names to use for hit highlights. Only searchable fields can + * be used for hit highlighting. + */ + @query({ + name: "highlight", + format: "csv", + }) + HighlightFields?: string[]; + + /** + * A string tag that is appended to hit highlights. Must be set with + * highlightPreTag. Default is </em>. + */ + @query("highlightPostTag") + highlightPostTag?: string; + + /** + * A string tag that is prepended to hit highlights. Must be set with + * highlightPostTag. Default is <em>. + */ + @query("highlightPreTag") + highlightPreTag?: string; + + /** + * A number between 0 and 100 indicating the percentage of the index that must be + * covered by a search query in order for the query to be reported as a success. + * This parameter can be useful for ensuring search availability even for services + * with only one replica. The default is 100. + */ + @query("minimumCoverage") + minimumCoverage?: float64; + + /** + * The list of OData $orderby expressions by which to sort the results. Each + * expression can be either a field name or a call to either the geo.distance() or + * the search.score() functions. Each expression can be followed by asc to + * indicate ascending, and desc to indicate descending. The default is ascending + * order. Ties will be broken by the match scores of documents. If no OrderBy is + * specified, the default sort order is descending by document match score. There + * can be at most 32 $orderby clauses. + */ + @query({ + name: "$orderby", + format: "csv", + }) + OrderBy?: string[]; + + /** + * A value that specifies the syntax of the search query. The default is 'simple'. + * Use 'full' if your query uses the Lucene query syntax. + */ + @query("queryType") + queryType?: QueryType; + + /** + * The list of parameter values to be used in scoring functions (for example, + * referencePointParameter) using the format name-values. For example, if the + * scoring profile defines a function with a parameter called 'mylocation' the + * parameter string would be "mylocation--122.2,44.8" (without the quotes). + */ + @query({ + name: "scoringParameter", + format: "multi", + }) + ScoringParameters?: string[]; + + /** + * The name of a scoring profile to evaluate match scores for matching documents + * in order to sort the results. + */ + @query("scoringProfile") + scoringProfile?: string; + + /** + * The list of field names to which to scope the full-text search. When using + * fielded search (fieldName:searchExpression) in a full Lucene query, the field + * names of each fielded search expression take precedence over any field names + * listed in this parameter. + */ + @query({ + name: "searchFields", + format: "csv", + }) + searchFields?: string[]; + + /** + * A value that specifies whether any or all of the search terms must be matched + * in order to count the document as a match. + */ + @query("searchMode") + searchMode?: SearchMode; + + /** + * A value that specifies whether we want to calculate scoring statistics (such as + * document frequency) globally for more consistent scoring, or locally, for lower + * latency. + */ + @query("scoringStatistics") + scoringStatistics?: ScoringStatistics; + + /** + * A value to be used to create a sticky session, which can help to get more + * consistent results. As long as the same sessionId is used, a best-effort + * attempt will be made to target the same replica set. Be wary that reusing the + * same sessionID values repeatedly can interfere with the load balancing of the + * requests across replicas and adversely affect the performance of the search + * service. The value used as sessionId cannot start with a '_' character. + */ + @query("sessionId") + sessionId?: string; + + /** + * The list of fields to retrieve. If unspecified, all fields marked as + * retrievable in the schema are included. + */ + @query({ + name: "$select", + format: "csv", + }) + $select?: string[]; + + /** + * The number of search results to skip. This value cannot be greater than + * 100,000. If you need to scan documents in sequence, but cannot use $skip due to + * this limitation, consider using $orderby on a totally-ordered key and $filter + * with a range query instead. + */ + @query("$skip") + $skip?: int32; + + /** + * The number of search results to retrieve. This can be used in conjunction with + * $skip to implement client-side paging of search results. If results are + * truncated due to server-side paging, the response will include a continuation + * token that can be used to issue another Search request for the next page of + * results. + */ + @query("$top") + $top?: int32; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The name of the semantic configuration that lists which fields should be used + * for semantic ranking, captions, highlights, and answers + */ + @query("semanticConfiguration") + semanticConfiguration?: string; + + /** + * Allows the user to choose whether a semantic call should fail completely, or to + * return partial results (default). + */ + @query("semanticErrorHandling") + semanticErrorHandling?: SemanticErrorMode; + + /** + * Allows the user to set an upper bound on the amount of time it takes for + * semantic enrichment to finish processing before the request fails. + */ + @minValue(700) + @query("semanticMaxWaitInMilliseconds") + semanticMaxWaitInMilliseconds?: int32; + + /** + * This parameter is only valid if the query type is `semantic`. If set, the query + * returns answers extracted from key passages in the highest ranked documents. + * The number of answers returned can be configured by appending the pipe + * character `|` followed by the `count-` option after the + * answers parameter value, such as `extractive|count-3`. Default count is 1. The + * confidence threshold can be configured by appending the pipe character `|` + * followed by the `threshold-` option after the answers + * parameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7. + */ + @query("answers") + answers?: QueryAnswerType; + + /** + * This parameter is only valid if the query type is `semantic`. If set, the query + * returns captions extracted from key passages in the highest ranked documents. + * When Captions is set to `extractive`, highlighting is enabled by default, and + * can be configured by appending the pipe character `|` followed by the + * `highlight-` option, such as `extractive|highlight-true`. Defaults + * to `None`. + */ + @query("captions") + captions?: QueryCaptionType; + + /** + * Allows setting a separate search query that will be solely used for semantic + * reranking, semantic captions and semantic answers. Is useful for scenarios + * where there is a need to use different queries between the base retrieval and + * ranking phase, and the L2 semantic phase. + */ + @query("semanticQuery") + semanticQuery?: string; + }, + SearchDocumentsResult + >; + + /** + * Searches for documents in the index. + */ + @route("/docs/search.post.search") + @post + searchPost is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The definition of the Search request. + */ + @body + searchRequest: SearchRequest; + }, + SearchDocumentsResult + >; + + /** + * Retrieves a document from the index. + */ + @route("/docs('{key}')") + @get + get is Azure.Core.Foundations.Operation< + { + /** + * The key of the document to retrieve. + */ + @path + key: string; + + /** + * List of field names to retrieve for the document; Any field not retrieved will + * be missing from the returned document. + */ + @query({ + name: "$select", + format: "csv", + }) + SelectedFields?: string[]; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + void + >; + + /** + * Suggests documents in the index that match the given partial query text. + */ + @route("/docs/search.suggest") + @get + suggestGet is Azure.Core.Foundations.Operation< + { + /** + * The search text to use to suggest documents. Must be at least 1 character, and + * no more than 100 characters. + */ + @query("search") + SearchText: string; + + /** + * The name of the suggester as specified in the suggesters collection that's part + * of the index definition. + */ + @query("suggesterName") + suggesterName: string; + + /** + * An OData expression that filters the documents considered for suggestions. + */ + @query("$filter") + $filter?: string; + + /** + * A value indicating whether to use fuzzy matching for the suggestions query. + * Default is false. When set to true, the query will find terms even if there's a + * substituted or missing character in the search text. While this provides a + * better experience in some scenarios, it comes at a performance cost as fuzzy + * suggestions queries are slower and consume more resources. + */ + @query("fuzzy") + UseFuzzyMatching?: boolean; + + /** + * A string tag that is appended to hit highlights. Must be set with + * highlightPreTag. If omitted, hit highlighting of suggestions is disabled. + */ + @query("highlightPostTag") + highlightPostTag?: string; + + /** + * A string tag that is prepended to hit highlights. Must be set with + * highlightPostTag. If omitted, hit highlighting of suggestions is disabled. + */ + @query("highlightPreTag") + highlightPreTag?: string; + + /** + * A number between 0 and 100 indicating the percentage of the index that must be + * covered by a suggestions query in order for the query to be reported as a + * success. This parameter can be useful for ensuring search availability even for + * services with only one replica. The default is 80. + */ + @query("minimumCoverage") + minimumCoverage?: float64; + + /** + * The list of OData $orderby expressions by which to sort the results. Each + * expression can be either a field name or a call to either the geo.distance() or + * the search.score() functions. Each expression can be followed by asc to + * indicate ascending, or desc to indicate descending. The default is ascending + * order. Ties will be broken by the match scores of documents. If no $orderby is + * specified, the default sort order is descending by document match score. There + * can be at most 32 $orderby clauses. + */ + @query({ + name: "$orderby", + format: "csv", + }) + OrderBy?: string[]; + + /** + * The list of field names to search for the specified search text. Target fields + * must be included in the specified suggester. + */ + @query({ + name: "searchFields", + format: "csv", + }) + searchFields?: string[]; + + /** + * The list of fields to retrieve. If unspecified, only the key field will be + * included in the results. + */ + @query({ + name: "$select", + format: "csv", + }) + $select?: string[]; + + /** + * The number of suggestions to retrieve. The value must be a number between 1 and + * 100. The default is 5. + */ + @query("$top") + $top?: int32; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + SuggestDocumentsResult + >; + + /** + * Suggests documents in the index that match the given partial query text. + */ + @route("/docs/search.post.suggest") + @post + suggestPost is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The Suggest request. + */ + @body + suggestRequest: SuggestRequest; + }, + SuggestDocumentsResult + >; + + /** + * Sends a batch of document write actions to the index. + */ + @route("/docs/search.index") + @post + index is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The batch of index actions. + */ + @body + batch: IndexBatch; + }, + IndexDocumentsResult + >; + + /** + * Autocompletes incomplete query terms based on input text and matching terms in + * the index. + */ + @route("/docs/search.autocomplete") + @get + autocompleteGet is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The incomplete term which should be auto-completed. + */ + @query("search") + SearchText: string; + + /** + * The name of the suggester as specified in the suggesters collection that's part + * of the index definition. + */ + @query("suggesterName") + suggesterName: string; + + /** + * Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' + * to get shingles and 'oneTermWithContext' to use the current context while + * producing auto-completed terms. + */ + @query("autocompleteMode") + autocompleteMode?: AutocompleteMode; + + /** + * An OData expression that filters the documents used to produce completed terms + * for the Autocomplete result. + */ + @query("$filter") + $filter?: string; + + /** + * A value indicating whether to use fuzzy matching for the autocomplete query. + * Default is false. When set to true, the query will find terms even if there's a + * substituted or missing character in the search text. While this provides a + * better experience in some scenarios, it comes at a performance cost as fuzzy + * autocomplete queries are slower and consume more resources. + */ + @query("fuzzy") + UseFuzzyMatching?: boolean; + + /** + * A string tag that is appended to hit highlights. Must be set with + * highlightPreTag. If omitted, hit highlighting is disabled. + */ + @query("highlightPostTag") + highlightPostTag?: string; + + /** + * A string tag that is prepended to hit highlights. Must be set with + * highlightPostTag. If omitted, hit highlighting is disabled. + */ + @query("highlightPreTag") + highlightPreTag?: string; + + /** + * A number between 0 and 100 indicating the percentage of the index that must be + * covered by an autocomplete query in order for the query to be reported as a + * success. This parameter can be useful for ensuring search availability even for + * services with only one replica. The default is 80. + */ + @query("minimumCoverage") + minimumCoverage?: float64; + + /** + * The list of field names to consider when querying for auto-completed terms. + * Target fields must be included in the specified suggester. + */ + @query({ + name: "searchFields", + format: "csv", + }) + searchFields?: string[]; + + /** + * The number of auto-completed terms to retrieve. This must be a value between 1 + * and 100. The default is 5. + */ + @query("$top") + $top?: int32; + }, + AutocompleteResult + >; + + /** + * Autocompletes incomplete query terms based on input text and matching terms in + * the index. + */ + @route("/docs/search.post.autocomplete") + @post + autocompletePost is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The definition of the Autocomplete request. + */ + @body + autocompleteRequest: AutocompleteRequest; + }, + AutocompleteResult + >; +} diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp new file mode 100644 index 000000000000..2aa4d6cce501 --- /dev/null +++ b/specification/search/Azure.Search/routes-service.tsp @@ -0,0 +1,931 @@ +import "@azure-tools/typespec-azure-core"; +import "@typespec/rest"; +import "./models-service.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; + +namespace SearchClient; + +interface DataSourcesOperations { + /** + * Creates a new datasource or updates a datasource if it already exists. + */ + @route("/datasources('{dataSourceName}')") + @put + createOrUpdate is Azure.Core.Foundations.Operation< + { + /** + * The name of the datasource to create or update. + */ + @path + dataSourceName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + + /** + * For HTTP PUT requests, instructs the service to return the created/updated + * resource on success. + */ + @header + Prefer: Enum0; + + /** + * The definition of the datasource to create or update. + */ + @body + dataSource: SearchIndexerDataSource; + }, + SearchIndexerDataSource + >; + + /** + * Deletes a datasource. + */ + @route("/datasources('{dataSourceName}')") + @delete + delete is Azure.Core.Foundations.Operation< + { + /** + * The name of the datasource to delete. + */ + @path + dataSourceName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + }, + void + >; + + /** + * Retrieves a datasource definition. + */ + @route("/datasources('{dataSourceName}')") + @get + get is Azure.Core.Foundations.Operation< + { + /** + * The name of the datasource to retrieve. + */ + @path + dataSourceName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + SearchIndexerDataSource + >; + + /** + * Lists all datasources available for a search service. + */ + @route("/datasources") + @get + list is Azure.Core.Foundations.Operation< + { + /** + * Selects which top-level properties of the data sources to retrieve. Specified + * as a comma-separated list of JSON property names, or '*' for all properties. + * The default is all properties. + */ + @query("$select") + $select?: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + ListDataSourcesResult + >; + + /** + * Creates a new datasource. + */ + @route("/datasources") + @post + create is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The definition of the datasource to create. + */ + @body + dataSource: SearchIndexerDataSource; + }, + SearchIndexerDataSource + >; +} + +interface IndexersOperations { + /** + * Resets the change tracking state associated with an indexer. + */ + @route("/indexers('{indexerName}')/search.reset") + @post + reset is Azure.Core.Foundations.Operation< + { + /** + * The name of the indexer to reset. + */ + @path + indexerName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + void + >; + + /** + * Runs an indexer on-demand. + */ + @route("/indexers('{indexerName}')/search.run") + @post + run is Azure.Core.Foundations.Operation< + { + /** + * The name of the indexer to run. + */ + @path + indexerName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + void + >; + + /** + * Creates a new indexer or updates an indexer if it already exists. + */ + @route("/indexers('{indexerName}')") + @put + createOrUpdate is Azure.Core.Foundations.Operation< + { + /** + * The name of the indexer to create or update. + */ + @path + indexerName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + + /** + * For HTTP PUT requests, instructs the service to return the created/updated + * resource on success. + */ + @header + Prefer: Enum0; + + /** + * The definition of the indexer to create or update. + */ + @body + indexer: SearchIndexer; + }, + SearchIndexer + >; + + /** + * Deletes an indexer. + */ + @route("/indexers('{indexerName}')") + @delete + delete is Azure.Core.Foundations.Operation< + { + /** + * The name of the indexer to delete. + */ + @path + indexerName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + }, + void + >; + + /** + * Retrieves an indexer definition. + */ + @route("/indexers('{indexerName}')") + @get + get is Azure.Core.Foundations.Operation< + { + /** + * The name of the indexer to retrieve. + */ + @path + indexerName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + SearchIndexer + >; + + /** + * Lists all indexers available for a search service. + */ + @route("/indexers") + @get + list is Azure.Core.Foundations.Operation< + { + /** + * Selects which top-level properties of the indexers to retrieve. Specified as a + * comma-separated list of JSON property names, or '*' for all properties. The + * default is all properties. + */ + @query("$select") + $select?: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + ListIndexersResult + >; + + /** + * Creates a new indexer. + */ + @route("/indexers") + @post + create is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The definition of the indexer to create. + */ + @body + indexer: SearchIndexer; + }, + SearchIndexer + >; + + /** + * Returns the current status and execution history of an indexer. + */ + @route("/indexers('{indexerName}')/search.status") + @get + getStatus is Azure.Core.Foundations.Operation< + { + /** + * The name of the indexer for which to retrieve status. + */ + @path + indexerName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + SearchIndexerStatus + >; +} + +interface SkillsetsOperations { + /** + * Creates a new skillset in a search service or updates the skillset if it + * already exists. + */ + @route("/skillsets('{skillsetName}')") + @put + createOrUpdate is Azure.Core.Foundations.Operation< + { + /** + * The name of the skillset to create or update. + */ + @path + skillsetName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + + /** + * For HTTP PUT requests, instructs the service to return the created/updated + * resource on success. + */ + @header + Prefer: Enum0; + + /** + * The skillset containing one or more skills to create or update in a search + * service. + */ + @body + skillset: SearchIndexerSkillset; + }, + SearchIndexerSkillset + >; + + /** + * Deletes a skillset in a search service. + */ + @route("/skillsets('{skillsetName}')") + @delete + delete is Azure.Core.Foundations.Operation< + { + /** + * The name of the skillset to delete. + */ + @path + skillsetName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + }, + void + >; + + /** + * Retrieves a skillset in a search service. + */ + @route("/skillsets('{skillsetName}')") + @get + get is Azure.Core.Foundations.Operation< + { + /** + * The name of the skillset to retrieve. + */ + @path + skillsetName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + SearchIndexerSkillset + >; + + /** + * List all skillsets in a search service. + */ + @route("/skillsets") + @get + list is Azure.Core.Foundations.Operation< + { + /** + * Selects which top-level properties of the skillsets to retrieve. Specified as a + * comma-separated list of JSON property names, or '*' for all properties. The + * default is all properties. + */ + @query("$select") + $select?: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + ListSkillsetsResult + >; + + /** + * Creates a new skillset in a search service. + */ + @route("/skillsets") + @post + create is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The skillset containing one or more skills to create in a search service. + */ + @body + skillset: SearchIndexerSkillset; + }, + SearchIndexerSkillset + >; +} + +interface SynonymMapsOperations { + /** + * Creates a new synonym map or updates a synonym map if it already exists. + */ + @route("/synonymmaps('{synonymMapName}')") + @put + createOrUpdate is Azure.Core.Foundations.Operation< + { + /** + * The name of the synonym map to create or update. + */ + @path + synonymMapName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + + /** + * For HTTP PUT requests, instructs the service to return the created/updated + * resource on success. + */ + @header + Prefer: Enum0; + + /** + * The definition of the synonym map to create or update. + */ + @body + synonymMap: SynonymMap; + }, + SynonymMap + >; + + /** + * Deletes a synonym map. + */ + @route("/synonymmaps('{synonymMapName}')") + @delete + delete is Azure.Core.Foundations.Operation< + { + /** + * The name of the synonym map to delete. + */ + @path + synonymMapName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + }, + void + >; + + /** + * Retrieves a synonym map definition. + */ + @route("/synonymmaps('{synonymMapName}')") + @get + get is Azure.Core.Foundations.Operation< + { + /** + * The name of the synonym map to retrieve. + */ + @path + synonymMapName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + SynonymMap + >; + + /** + * Lists all synonym maps available for a search service. + */ + @route("/synonymmaps") + @get + list is Azure.Core.Foundations.Operation< + { + /** + * Selects which top-level properties of the synonym maps to retrieve. Specified + * as a comma-separated list of JSON property names, or '*' for all properties. + * The default is all properties. + */ + @query("$select") + $select?: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + ListSynonymMapsResult + >; + + /** + * Creates a new synonym map. + */ + @route("/synonymmaps") + @post + create is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The definition of the synonym map to create. + */ + @body + synonymMap: SynonymMap; + }, + SynonymMap + >; +} + +interface IndexesOperations { + /** + * Creates a new search index. + */ + @route("/indexes") + @post + create is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The definition of the index to create. + */ + @body + index: SearchIndex; + }, + SearchIndex + >; + + /** + * Lists all indexes available for a search service. + */ + @route("/indexes") + @get + list is Azure.Core.Foundations.Operation< + { + /** + * Selects which top-level properties of the index definitions to retrieve. + * Specified as a comma-separated list of JSON property names, or '*' for all + * properties. The default is all properties. + */ + @query("$select") + $select?: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + ListIndexesResult + >; + + /** + * Creates a new search index or updates an index if it already exists. + */ + @route("/indexes('{indexName}')") + @put + createOrUpdate is Azure.Core.Foundations.Operation< + { + /** + * The definition of the index to create or update. + */ + @path + indexName: string; + + /** + * Allows new analyzers, tokenizers, token filters, or char filters to be added to + * an index by taking the index offline for at least a few seconds. This + * temporarily causes indexing and query requests to fail. Performance and write + * availability of the index can be impaired for several minutes after the index + * is updated, or longer for very large indexes. + */ + @query("allowIndexDowntime") + allowIndexDowntime?: boolean; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + + /** + * For HTTP PUT requests, instructs the service to return the created/updated + * resource on success. + */ + @header + Prefer: Enum0; + + /** + * The definition of the index to create or update. + */ + @body + index: SearchIndex; + }, + SearchIndex + >; + + /** + * Deletes a search index and all the documents it contains. This operation is + * permanent, with no recovery option. Make sure you have a master copy of your + * index definition, data ingestion code, and a backup of the primary data source + * in case you need to re-build the index. + */ + @route("/indexes('{indexName}')") + @delete + delete is Azure.Core.Foundations.Operation< + { + /** + * The name of the index to delete. + */ + @path + indexName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * Defines the If-Match condition. The operation will be performed only if the + * ETag on the server matches this value. + */ + @header + `If-Match`?: string; + + /** + * Defines the If-None-Match condition. The operation will be performed only if + * the ETag on the server does not match this value. + */ + @header + `If-None-Match`?: string; + }, + void + >; + + /** + * Retrieves an index definition. + */ + @route("/indexes('{indexName}')") + @get + get is Azure.Core.Foundations.Operation< + { + /** + * The name of the index to retrieve. + */ + @path + indexName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + SearchIndex + >; + + /** + * Returns statistics for the given index, including a document count and storage + * usage. + */ + @route("/indexes('{indexName}')/search.stats") + @get + getStatistics is Azure.Core.Foundations.Operation< + { + /** + * The name of the index for which to retrieve statistics. + */ + @path + indexName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + GetIndexStatisticsResult + >; + + /** + * Shows how an analyzer breaks text into tokens. + */ + @route("/indexes('{indexName}')/search.analyze") + @post + analyze is Azure.Core.Foundations.Operation< + { + /** + * The name of the index for which to test an analyzer. + */ + @path + indexName: string; + + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + + /** + * The text and analyzer or analysis components to test. + */ + @body + request: AnalyzeRequest; + }, + AnalyzeResult + >; +} + +/** + * Gets service level statistics for a search service. + */ +@route("/servicestats") +@get +op getServiceStatistics is Azure.Core.Foundations.Operation< + { + /** + * The tracking ID sent with the request to help with debugging. + */ + @header + `x-ms-client-request-id`?: string; + }, + SearchServiceStatistics +>; From efdf6c895c8c2794babe112d8f26185fb5ac1508 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 31 Jul 2024 10:26:45 -0700 Subject: [PATCH 02/78] add config --- specification/search/Azure.Search/client.tsp | 4 ++-- .../search/Azure.Search/tspconfig.yaml | 21 +++++++++++++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 specification/search/Azure.Search/tspconfig.yaml diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 20372e872b1b..107163359c88 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -4,11 +4,11 @@ import "./main.tsp"; using TypeSpec.Versioning; using Azure.ClientGenerator.Core; -using SearchClient;; +using SearchClient; @TypeSpec.Versioning.useDependency(SearchClient.Versions.v2024_07_01) namespace Azure.Search.Documents.Indexes{ } -@@access(VectorSearchAlgorithmKind, Access.public); \ No newline at end of file +@@access(VectorSearchAlgorithmKind, Access.public, "python"); \ No newline at end of file diff --git a/specification/search/Azure.Search/tspconfig.yaml b/specification/search/Azure.Search/tspconfig.yaml new file mode 100644 index 000000000000..ca5603dc70c8 --- /dev/null +++ b/specification/search/Azure.Search/tspconfig.yaml @@ -0,0 +1,21 @@ +emit: + - "@azure-tools/typespec-autorest" + +options: + "@azure-tools/typespec-autorest": + azure-resource-provider-folder: "data-plane" + emitter-output-dir: "{project-root}/.." + examples-directory: "{project-root}/examples" + output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json" + # Uncomment this line and add "@azure-tools/typespec-python" to your package.json to generate Python code + # "@azure-tools/typespec-python": + # "basic-setup-py": true + # "package-version": + # "package-name": + # "output-path": + # Uncomment this line and add "@azure-tools/typespec-java" to your package.json to generate Java code + # "@azure-tools/typespec-java": true + # Uncomment this line and add "@azure-tools/typespec-csharp" to your package.json to generate C# code + # "@azure-tools/typespec-csharp": true + # Uncomment this line and add "@azure-tools/typespec-ts" to your package.json to generate Typescript code + # "@azure-tools/typespec-ts": true From a8d0a2641b3fa8d980d5245f28c70fae3ff57e7c Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 31 Jul 2024 10:33:14 -0700 Subject: [PATCH 03/78] update config --- .../search/Azure.Search/tspconfig.yaml | 44 +++++++++++++------ 1 file changed, 31 insertions(+), 13 deletions(-) diff --git a/specification/search/Azure.Search/tspconfig.yaml b/specification/search/Azure.Search/tspconfig.yaml index ca5603dc70c8..ed1fcc129f1d 100644 --- a/specification/search/Azure.Search/tspconfig.yaml +++ b/specification/search/Azure.Search/tspconfig.yaml @@ -1,21 +1,39 @@ +parameters: + "service-dir": + default: "sdk/search" + "dependencies": + "additionalDirectories": [] + default: "" emit: - "@azure-tools/typespec-autorest" - options: "@azure-tools/typespec-autorest": azure-resource-provider-folder: "data-plane" emitter-output-dir: "{project-root}/.." examples-directory: "{project-root}/examples" output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json" - # Uncomment this line and add "@azure-tools/typespec-python" to your package.json to generate Python code - # "@azure-tools/typespec-python": - # "basic-setup-py": true - # "package-version": - # "package-name": - # "output-path": - # Uncomment this line and add "@azure-tools/typespec-java" to your package.json to generate Java code - # "@azure-tools/typespec-java": true - # Uncomment this line and add "@azure-tools/typespec-csharp" to your package.json to generate C# code - # "@azure-tools/typespec-csharp": true - # Uncomment this line and add "@azure-tools/typespec-ts" to your package.json to generate Typescript code - # "@azure-tools/typespec-ts": true + "@azure-tools/typespec-python": + package-dir: "azure-search" + package-name: "{package-dir}" + flavor: azure + "@azure-tools/typespec-csharp": + package-dir: "Azure.Search" + namespace: "{package-dir}" + clear-output-folder: true + model-namespace: false + flavor: azure + "@azure-tools/typespec-ts": + package-dir: "azure-search-rest" + generateMetadata: true + generateTest: true + flavor: azure + packageDetails: + name: "@azure-rest/azure-search-rest" + description: "Azure.Search Service" + "@azure-tools/typespec-java": + package-dir: "azure-search" + namespace: com.azure.search + flavor: azure +linter: + extends: + - "@azure-tools/typespec-azure-rulesets/data-plane" From 641369c20132d22726790006d33f0fca4160f0f8 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Fri, 2 Aug 2024 14:19:47 -0700 Subject: [PATCH 04/78] update --- specification/search/Azure.Search/client.tsp | 24 ++++++++++++++++--- .../search/Azure.Search/tspconfig.yaml | 14 +++++------ 2 files changed, 28 insertions(+), 10 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 107163359c88..27d2fed3ad33 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -7,8 +7,26 @@ using Azure.ClientGenerator.Core; using SearchClient; @TypeSpec.Versioning.useDependency(SearchClient.Versions.v2024_07_01) -namespace Azure.Search.Documents.Indexes{ - +namespace Customizations; + +@client({ + name: "SearchIndexClient", + service: SearchClient, +}) +interface Client1 { + DataSourcesOperationsCreateOrUpdate is SearchClient.DataSourcesOperations.createOrUpdate; +} + +@client({ + name: "SearchServiceClient", + service: SearchClient, +}) +interface Client2 { + DataSourcesOperationsDelete is SearchClient.DataSourcesOperations.delete; } -@@access(VectorSearchAlgorithmKind, Access.public, "python"); \ No newline at end of file +// @@access(VectorSearchAlgorithmKind, Access.public); +@@usage(VectorSearchAlgorithmKind, Usage.input); +@@access(VectorSearchVectorizerKind, Access.public); +@@usage(VectorSearchVectorizerKind, Usage.input); + diff --git a/specification/search/Azure.Search/tspconfig.yaml b/specification/search/Azure.Search/tspconfig.yaml index ed1fcc129f1d..97041dae4a83 100644 --- a/specification/search/Azure.Search/tspconfig.yaml +++ b/specification/search/Azure.Search/tspconfig.yaml @@ -13,26 +13,26 @@ options: examples-directory: "{project-root}/examples" output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json" "@azure-tools/typespec-python": - package-dir: "azure-search" - package-name: "{package-dir}" + package-dir: "azure-search-documents" + package-name: "{package-dir}" flavor: azure "@azure-tools/typespec-csharp": - package-dir: "Azure.Search" + package-dir: "Azure.Search.Documents" namespace: "{package-dir}" clear-output-folder: true model-namespace: false flavor: azure "@azure-tools/typespec-ts": - package-dir: "azure-search-rest" + package-dir: "azure-search-documents-rest" generateMetadata: true generateTest: true flavor: azure packageDetails: - name: "@azure-rest/azure-search-rest" + name: "@azure-rest/azure-search-documents-rest" description: "Azure.Search Service" "@azure-tools/typespec-java": - package-dir: "azure-search" - namespace: com.azure.search + package-dir: "azure-search-documents" + namespace: com.azure.search.documents flavor: azure linter: extends: From 73ef09a58a2ef39ede728888dc87e2d33bc44922 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Fri, 9 Aug 2024 10:19:37 -0700 Subject: [PATCH 05/78] update --- specification/search/Azure.Search/client.tsp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 27d2fed3ad33..a4749625a0d1 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -25,8 +25,7 @@ interface Client2 { DataSourcesOperationsDelete is SearchClient.DataSourcesOperations.delete; } -// @@access(VectorSearchAlgorithmKind, Access.public); +@@access(VectorSearchAlgorithmKind, Access.public); @@usage(VectorSearchAlgorithmKind, Usage.input); @@access(VectorSearchVectorizerKind, Access.public); @@usage(VectorSearchVectorizerKind, Usage.input); - From 6dc3e358ee5267f3d6699851f33885304a2a4623 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 2 Oct 2024 10:57:27 -0700 Subject: [PATCH 06/78] update --- specification/search/Azure.Search/client.tsp | 28 +++++++++---------- specification/search/Azure.Search/main.tsp | 1 + .../search/Azure.Search/routes-index.tsp | 14 ++++++++++ 3 files changed, 29 insertions(+), 14 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index a4749625a0d1..b7569b09f62a 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -9,21 +9,21 @@ using SearchClient; @TypeSpec.Versioning.useDependency(SearchClient.Versions.v2024_07_01) namespace Customizations; -@client({ - name: "SearchIndexClient", - service: SearchClient, -}) -interface Client1 { - DataSourcesOperationsCreateOrUpdate is SearchClient.DataSourcesOperations.createOrUpdate; -} +// @client({ +// name: "SearchIndexClient", +// service: SearchClient, +// }) +// interface Client1 { +// DataSourcesOperationsCreateOrUpdate is SearchClient.DataSourcesOperations.createOrUpdate; +// } -@client({ - name: "SearchServiceClient", - service: SearchClient, -}) -interface Client2 { - DataSourcesOperationsDelete is SearchClient.DataSourcesOperations.delete; -} +// @client({ +// name: "SearchServiceClient", +// service: SearchClient, +// }) +// interface Client2 { +// DataSourcesOperationsDelete is SearchClient.DataSourcesOperations.delete; +// } @@access(VectorSearchAlgorithmKind, Access.public); @@usage(VectorSearchAlgorithmKind, Usage.input); diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp index 12b52ac5808b..0cbfe5712ab9 100644 --- a/specification/search/Azure.Search/main.tsp +++ b/specification/search/Azure.Search/main.tsp @@ -7,6 +7,7 @@ import "@typespec/rest"; import "@typespec/http"; import "./routes-service.tsp"; +import "./routes-index.tsp"; using TypeSpec.Rest; using TypeSpec.Http; diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index 10bfae0979b1..aef24c1a9dc2 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -7,6 +7,11 @@ using TypeSpec.Http; namespace SearchClient; +model IndexNameParameter { + @path + indexName: string; +} +@route("/indexes({indexName})") interface DocumentsOperations { /** * Queries the number of documents in the index. @@ -15,6 +20,7 @@ interface DocumentsOperations { @get count is Azure.Core.Foundations.Operation< { + ...IndexNameParameter; /** * The tracking ID sent with the request to help with debugging. */ @@ -31,6 +37,7 @@ interface DocumentsOperations { @get searchGet is Azure.Core.Foundations.Operation< { + ...IndexNameParameter; /** * A full-text search query expression; Use "*" or omit this parameter to match * all documents. @@ -275,6 +282,7 @@ interface DocumentsOperations { @post searchPost is Azure.Core.Foundations.Operation< { + ...IndexNameParameter; /** * The tracking ID sent with the request to help with debugging. */ @@ -297,6 +305,7 @@ interface DocumentsOperations { @get get is Azure.Core.Foundations.Operation< { + ...IndexNameParameter; /** * The key of the document to retrieve. */ @@ -329,6 +338,7 @@ interface DocumentsOperations { @get suggestGet is Azure.Core.Foundations.Operation< { + ...IndexNameParameter; /** * The search text to use to suggest documents. Must be at least 1 character, and * no more than 100 characters. @@ -440,6 +450,7 @@ interface DocumentsOperations { @post suggestPost is Azure.Core.Foundations.Operation< { + ...IndexNameParameter; /** * The tracking ID sent with the request to help with debugging. */ @@ -462,6 +473,7 @@ interface DocumentsOperations { @post index is Azure.Core.Foundations.Operation< { + ...IndexNameParameter; /** * The tracking ID sent with the request to help with debugging. */ @@ -485,6 +497,7 @@ interface DocumentsOperations { @get autocompleteGet is Azure.Core.Foundations.Operation< { + ...IndexNameParameter; /** * The tracking ID sent with the request to help with debugging. */ @@ -580,6 +593,7 @@ interface DocumentsOperations { @post autocompletePost is Azure.Core.Foundations.Operation< { + ...IndexNameParameter; /** * The tracking ID sent with the request to help with debugging. */ From eb57f710a82136345b868c930fb56a456d08c994 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 10 Oct 2024 16:58:36 -0700 Subject: [PATCH 07/78] updates --- .../search/Azure.Search/models-index.tsp | 19 +- .../search/Azure.Search/models-service.tsp | 59 ++- .../search/Azure.Search/models-shared.tsp | 36 +- .../search/Azure.Search/routes-index.tsp | 112 ++--- .../search/Azure.Search/routes-service.tsp | 427 +++--------------- 5 files changed, 186 insertions(+), 467 deletions(-) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index 305388725a11..de1ab09513f7 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -159,7 +159,9 @@ union SemanticSearchResultsType { * Specifies the syntax of the search query. The default is 'simple'. Use 'full' * if your query uses the Lucene query syntax. */ -enum QueryType { +union QueryType { + string, + /** * Uses the simple query syntax for searches. Search text is interpreted using a * simple query language that allows for symbols such as +, * and "". Queries are @@ -187,7 +189,9 @@ enum QueryType { * Specifies whether any or all of the search terms must be matched in order to * count the document as a match. */ -enum SearchMode { +union SearchMode { + string, + /** * Any of the search terms must be matched in order to count the document as a * match. @@ -208,7 +212,9 @@ enum SearchMode { * globally before scoring. Using global scoring statistics can increase latency * of search queries. */ -enum ScoringStatistics { +union ScoringStatistics { + string, + /** * The scoring statistics will be calculated locally for lower latency. */ @@ -223,7 +229,9 @@ enum ScoringStatistics { /** * The operation to perform on a document in an indexing batch. */ -enum IndexActionType { +union IndexActionType { + string, + /** * Inserts the document into the index if it is new and updates it if it exists. * All fields are replaced in the update case. @@ -259,7 +267,8 @@ enum IndexActionType { * to get shingles and 'oneTermWithContext' to use the current context in * producing autocomplete terms. */ -enum AutocompleteMode { +union AutocompleteMode { + string, /** * Only one term is suggested. If the query has two terms, only the last term is * completed. For example, if the input is 'washington medic', the suggested terms diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index a1a7a2b8baec..3faf291ea10e 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -9,11 +9,6 @@ using Azure.Core; namespace SearchClient; -union Enum0 { - string, - `return=representation`: "return=representation", -} - /** * Defines the type of a datasource. */ @@ -3441,7 +3436,9 @@ union TextTranslationSkillLanguage { /** * Represents the overall indexer status. */ -enum IndexerStatus { +union IndexerStatus { + string, + /** * Indicates that the indexer is in an unknown state. */ @@ -3462,7 +3459,9 @@ enum IndexerStatus { /** * Represents the status of an individual indexer execution. */ -enum IndexerExecutionStatus { +union IndexerExecutionStatus { + string, + /** * An indexer invocation has failed, but the failure may be transient. Indexer * invocations will continue per schedule. @@ -3489,7 +3488,9 @@ enum IndexerExecutionStatus { * Defines the function used to interpolate score boosting across a range of * documents. */ -enum ScoringFunctionInterpolation { +union ScoringFunctionInterpolation { + string, + /** * Boosts scores by a linearly decreasing amount. This is the default * interpolation for scoring functions. @@ -3520,7 +3521,9 @@ enum ScoringFunctionInterpolation { * Defines the aggregation function used to combine the results of all the scoring * functions in a scoring profile. */ -enum ScoringFunctionAggregation { +union ScoringFunctionAggregation { + string, + /** * Boost scores by the sum of all scoring function results. */ @@ -3550,7 +3553,9 @@ enum ScoringFunctionAggregation { /** * Represents classes of characters on which a token filter can operate. */ -enum TokenCharacterKind { +union TokenCharacterKind { + string, + /** * Keeps letters in tokens. */ @@ -3580,7 +3585,9 @@ enum TokenCharacterKind { /** * Lists the languages supported by the Microsoft language tokenizer. */ -enum MicrosoftTokenizerLanguage { +union MicrosoftTokenizerLanguage { + string, + /** * Selects the Microsoft tokenizer for Bangla. */ @@ -3795,7 +3802,9 @@ enum MicrosoftTokenizerLanguage { /** * Lists the languages supported by the Microsoft language stemming tokenizer. */ -enum MicrosoftStemmingTokenizerLanguage { +union MicrosoftStemmingTokenizerLanguage { + string, + /** * Selects the Microsoft stemming tokenizer for Arabic. */ @@ -4025,7 +4034,9 @@ enum MicrosoftStemmingTokenizerLanguage { /** * Scripts that can be ignored by CjkBigramTokenFilter. */ -enum CjkBigramTokenFilterScripts { +union CjkBigramTokenFilterScripts { + string, + /** * Ignore Han script when forming bigrams of CJK terms. */ @@ -4050,7 +4061,9 @@ enum CjkBigramTokenFilterScripts { /** * Specifies which side of the input an n-gram should be generated from. */ -enum EdgeNGramTokenFilterSide { +union EdgeNGramTokenFilterSide { + string, + /** * Specifies that the n-gram should be generated from the front of the input. */ @@ -4065,7 +4078,9 @@ enum EdgeNGramTokenFilterSide { /** * Identifies the type of phonetic encoder to use with a PhoneticTokenFilter. */ -enum PhoneticEncoder { +union PhoneticEncoder { + string, + /** * Encodes a token into a Metaphone value. */ @@ -4125,7 +4140,9 @@ enum PhoneticEncoder { /** * The language to use for a Snowball token filter. */ -enum SnowballTokenFilterLanguage { +union SnowballTokenFilterLanguage { + string, + /** * Selects the Lucene Snowball stemming tokenizer for Armenian. */ @@ -4244,7 +4261,9 @@ enum SnowballTokenFilterLanguage { /** * The language to use for a stemmer token filter. */ -enum StemmerTokenFilterLanguage { +union StemmerTokenFilterLanguage { + string, + /** * Selects the Lucene stemming tokenizer for Arabic. */ @@ -4528,7 +4547,9 @@ enum StemmerTokenFilterLanguage { /** * Identifies a predefined list of language-specific stopwords. */ -enum StopwordsList { +union StopwordsList { + string, + /** * Selects the stopword list for Arabic. */ @@ -4907,7 +4928,7 @@ model SearchIndexer { * A value indicating whether the indexer is disabled. Default is false. */ @encodedName("application/json", "disabled") - IsDisabled?: boolean; + isDisabled?: boolean; /** * The ETag of the indexer. diff --git a/specification/search/Azure.Search/models-shared.tsp b/specification/search/Azure.Search/models-shared.tsp index 32f6cdd68f0a..8b71803c91e9 100644 --- a/specification/search/Azure.Search/models-shared.tsp +++ b/specification/search/Azure.Search/models-shared.tsp @@ -8,6 +8,40 @@ using Azure.Core; namespace SearchClient; +alias matchingHeader = { + @doc("Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.") + @header("If-Match") + ifMatch?: string; + + @doc("Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.") + @header("If-None-Match") + ifNoneMatch?: string; +}; + +alias clientRequestIdHeader = { + @doc("The tracking ID sent with the request to help with debugging.") + @header("x-ms-client-request-id") + xMsClientRequestId?: string; +}; + +alias preferHeader = { + @doc("For HTTP PUT requests, instructs the service to return the created/updated resource on success.") + @header("Prefer") + prefer: "return=representation"; +}; + +alias indexNameParameter = { + @doc("The name of the index.") + @path + indexName: string; +}; + +alias indexerNameParameter = { + @doc("The name of the indexer.") + @path + indexerName: string; +}; + /** * Common error response for all Azure Resource Manager APIs to return error * details for failed operations. (This also follows the OData error response @@ -70,5 +104,5 @@ model ErrorAdditionalInfo { * The additional info. */ @visibility("read") - info?: Record; + info?: Record; } diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index aef24c1a9dc2..3d5705795ce5 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -7,11 +7,8 @@ using TypeSpec.Http; namespace SearchClient; -model IndexNameParameter { - @path - indexName: string; -} -@route("/indexes({indexName})") + +@route("/indexes('{indexName}')") interface DocumentsOperations { /** * Queries the number of documents in the index. @@ -20,12 +17,9 @@ interface DocumentsOperations { @get count is Azure.Core.Foundations.Operation< { - ...IndexNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...indexNameParameter; + + ...clientRequestIdHeader; }, void >; @@ -37,13 +31,14 @@ interface DocumentsOperations { @get searchGet is Azure.Core.Foundations.Operation< { - ...IndexNameParameter; + ...indexNameParameter; + /** * A full-text search query expression; Use "*" or omit this parameter to match * all documents. */ @query("search") - SearchText?: string; + searchText?: string; /** * A value that specifies whether to fetch the total count of results. Default is @@ -51,7 +46,7 @@ interface DocumentsOperations { * count returned is an approximation. */ @query("$count") - IncludeTotalResultCount?: boolean; + includeTotalResultCount?: boolean; /** * The list of facet expressions to apply to the search query. Each facet @@ -62,7 +57,7 @@ interface DocumentsOperations { name: "facet", format: "multi", }) - Facets?: string[]; + facets?: string[]; /** * The OData $filter expression to apply to the search query. @@ -78,7 +73,7 @@ interface DocumentsOperations { name: "highlight", format: "csv", }) - HighlightFields?: string[]; + highlightFields?: string[]; /** * A string tag that is appended to hit highlights. Must be set with @@ -116,7 +111,7 @@ interface DocumentsOperations { name: "$orderby", format: "csv", }) - OrderBy?: string[]; + orderBy?: string[]; /** * A value that specifies the syntax of the search query. The default is 'simple'. @@ -135,7 +130,7 @@ interface DocumentsOperations { name: "scoringParameter", format: "multi", }) - ScoringParameters?: string[]; + scoringParameters?: string[]; /** * The name of a scoring profile to evaluate match scores for matching documents @@ -211,11 +206,7 @@ interface DocumentsOperations { @query("$top") $top?: int32; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; /** * The name of the semantic configuration that lists which fields should be used @@ -282,12 +273,9 @@ interface DocumentsOperations { @post searchPost is Azure.Core.Foundations.Operation< { - ...IndexNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...indexNameParameter; + + ...clientRequestIdHeader; /** * The definition of the Search request. @@ -305,7 +293,8 @@ interface DocumentsOperations { @get get is Azure.Core.Foundations.Operation< { - ...IndexNameParameter; + ...indexNameParameter; + /** * The key of the document to retrieve. */ @@ -320,13 +309,9 @@ interface DocumentsOperations { name: "$select", format: "csv", }) - SelectedFields?: string[]; + selectedFields?: string[]; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, void >; @@ -338,13 +323,14 @@ interface DocumentsOperations { @get suggestGet is Azure.Core.Foundations.Operation< { - ...IndexNameParameter; + ...indexNameParameter; + /** * The search text to use to suggest documents. Must be at least 1 character, and * no more than 100 characters. */ @query("search") - SearchText: string; + searchText: string; /** * The name of the suggester as specified in the suggesters collection that's part @@ -367,7 +353,7 @@ interface DocumentsOperations { * suggestions queries are slower and consume more resources. */ @query("fuzzy") - UseFuzzyMatching?: boolean; + useFuzzyMatching?: boolean; /** * A string tag that is appended to hit highlights. Must be set with @@ -405,7 +391,7 @@ interface DocumentsOperations { name: "$orderby", format: "csv", }) - OrderBy?: string[]; + orderBy?: string[]; /** * The list of field names to search for the specified search text. Target fields @@ -434,11 +420,7 @@ interface DocumentsOperations { @query("$top") $top?: int32; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, SuggestDocumentsResult >; @@ -450,12 +432,9 @@ interface DocumentsOperations { @post suggestPost is Azure.Core.Foundations.Operation< { - ...IndexNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...indexNameParameter; + + ...clientRequestIdHeader; /** * The Suggest request. @@ -473,12 +452,9 @@ interface DocumentsOperations { @post index is Azure.Core.Foundations.Operation< { - ...IndexNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...indexNameParameter; + + ...clientRequestIdHeader; /** * The batch of index actions. @@ -497,18 +473,15 @@ interface DocumentsOperations { @get autocompleteGet is Azure.Core.Foundations.Operation< { - ...IndexNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...indexNameParameter; + + ...clientRequestIdHeader; /** * The incomplete term which should be auto-completed. */ @query("search") - SearchText: string; + searchText: string; /** * The name of the suggester as specified in the suggesters collection that's part @@ -540,7 +513,7 @@ interface DocumentsOperations { * autocomplete queries are slower and consume more resources. */ @query("fuzzy") - UseFuzzyMatching?: boolean; + useFuzzyMatching?: boolean; /** * A string tag that is appended to hit highlights. Must be set with @@ -593,12 +566,9 @@ interface DocumentsOperations { @post autocompletePost is Azure.Core.Foundations.Operation< { - ...IndexNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...indexNameParameter; + + ...clientRequestIdHeader; /** * The definition of the Autocomplete request. diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index 2aa4d6cce501..614e6655b5a5 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -21,32 +21,11 @@ interface DataSourcesOperations { @path dataSourceName: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; - - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; + ...clientRequestIdHeader; - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; + ...matchingHeader; - /** - * For HTTP PUT requests, instructs the service to return the created/updated - * resource on success. - */ - @header - Prefer: Enum0; + ...preferHeader; /** * The definition of the datasource to create or update. @@ -70,25 +49,9 @@ interface DataSourcesOperations { @path dataSourceName: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; - - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; + ...clientRequestIdHeader; - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; + ...matchingHeader; }, void >; @@ -106,11 +69,7 @@ interface DataSourcesOperations { @path dataSourceName: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, SearchIndexerDataSource >; @@ -130,11 +89,7 @@ interface DataSourcesOperations { @query("$select") $select?: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, ListDataSourcesResult >; @@ -146,11 +101,7 @@ interface DataSourcesOperations { @post create is Azure.Core.Foundations.Operation< { - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; /** * The definition of the datasource to create. @@ -170,17 +121,9 @@ interface IndexersOperations { @post reset is Azure.Core.Foundations.Operation< { - /** - * The name of the indexer to reset. - */ - @path - indexerName: string; + ...indexerNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, void >; @@ -192,17 +135,9 @@ interface IndexersOperations { @post run is Azure.Core.Foundations.Operation< { - /** - * The name of the indexer to run. - */ - @path - indexerName: string; + ...indexerNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, void >; @@ -214,38 +149,13 @@ interface IndexersOperations { @put createOrUpdate is Azure.Core.Foundations.Operation< { - /** - * The name of the indexer to create or update. - */ - @path - indexerName: string; + ...indexerNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; - - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; + ...clientRequestIdHeader; - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; + ...matchingHeader; - /** - * For HTTP PUT requests, instructs the service to return the created/updated - * resource on success. - */ - @header - Prefer: Enum0; + ...preferHeader; /** * The definition of the indexer to create or update. @@ -263,31 +173,11 @@ interface IndexersOperations { @delete delete is Azure.Core.Foundations.Operation< { - /** - * The name of the indexer to delete. - */ - @path - indexerName: string; - - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...indexerNameParameter; - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; + ...clientRequestIdHeader; - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; + ...matchingHeader; }, void >; @@ -299,17 +189,9 @@ interface IndexersOperations { @get get is Azure.Core.Foundations.Operation< { - /** - * The name of the indexer to retrieve. - */ - @path - indexerName: string; + ...indexerNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, SearchIndexer >; @@ -329,11 +211,7 @@ interface IndexersOperations { @query("$select") $select?: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, ListIndexersResult >; @@ -345,11 +223,7 @@ interface IndexersOperations { @post create is Azure.Core.Foundations.Operation< { - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; /** * The definition of the indexer to create. @@ -367,17 +241,9 @@ interface IndexersOperations { @get getStatus is Azure.Core.Foundations.Operation< { - /** - * The name of the indexer for which to retrieve status. - */ - @path - indexerName: string; + ...indexerNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, SearchIndexerStatus >; @@ -398,32 +264,11 @@ interface SkillsetsOperations { @path skillsetName: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; + ...matchingHeader; - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; - - /** - * For HTTP PUT requests, instructs the service to return the created/updated - * resource on success. - */ - @header - Prefer: Enum0; + ...preferHeader; /** * The skillset containing one or more skills to create or update in a search @@ -448,25 +293,9 @@ interface SkillsetsOperations { @path skillsetName: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; - - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; + ...matchingHeader; }, void >; @@ -484,11 +313,7 @@ interface SkillsetsOperations { @path skillsetName: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, SearchIndexerSkillset >; @@ -508,11 +333,7 @@ interface SkillsetsOperations { @query("$select") $select?: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, ListSkillsetsResult >; @@ -524,11 +345,7 @@ interface SkillsetsOperations { @post create is Azure.Core.Foundations.Operation< { - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; /** * The skillset containing one or more skills to create in a search service. @@ -554,32 +371,11 @@ interface SynonymMapsOperations { @path synonymMapName: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; + ...matchingHeader; - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; - - /** - * For HTTP PUT requests, instructs the service to return the created/updated - * resource on success. - */ - @header - Prefer: Enum0; + ...preferHeader; /** * The definition of the synonym map to create or update. @@ -603,25 +399,9 @@ interface SynonymMapsOperations { @path synonymMapName: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; - - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; + ...clientRequestIdHeader; - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; + ...matchingHeader; }, void >; @@ -639,11 +419,7 @@ interface SynonymMapsOperations { @path synonymMapName: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, SynonymMap >; @@ -663,11 +439,7 @@ interface SynonymMapsOperations { @query("$select") $select?: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, ListSynonymMapsResult >; @@ -679,11 +451,7 @@ interface SynonymMapsOperations { @post create is Azure.Core.Foundations.Operation< { - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; /** * The definition of the synonym map to create. @@ -703,11 +471,7 @@ interface IndexesOperations { @post create is Azure.Core.Foundations.Operation< { - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; /** * The definition of the index to create. @@ -733,11 +497,7 @@ interface IndexesOperations { @query("$select") $select?: string; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, ListIndexesResult >; @@ -749,11 +509,7 @@ interface IndexesOperations { @put createOrUpdate is Azure.Core.Foundations.Operation< { - /** - * The definition of the index to create or update. - */ - @path - indexName: string; + ...indexNameParameter; /** * Allows new analyzers, tokenizers, token filters, or char filters to be added to @@ -765,32 +521,11 @@ interface IndexesOperations { @query("allowIndexDowntime") allowIndexDowntime?: boolean; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; + ...matchingHeader; - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; - - /** - * For HTTP PUT requests, instructs the service to return the created/updated - * resource on success. - */ - @header - Prefer: Enum0; + ...preferHeader; /** * The definition of the index to create or update. @@ -811,31 +546,9 @@ interface IndexesOperations { @delete delete is Azure.Core.Foundations.Operation< { - /** - * The name of the index to delete. - */ - @path - indexName: string; - - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; - - /** - * Defines the If-Match condition. The operation will be performed only if the - * ETag on the server matches this value. - */ - @header - `If-Match`?: string; + ...indexNameParameter; - /** - * Defines the If-None-Match condition. The operation will be performed only if - * the ETag on the server does not match this value. - */ - @header - `If-None-Match`?: string; + ...matchingHeader; }, void >; @@ -847,17 +560,9 @@ interface IndexesOperations { @get get is Azure.Core.Foundations.Operation< { - /** - * The name of the index to retrieve. - */ - @path - indexName: string; + ...indexNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, SearchIndex >; @@ -870,17 +575,9 @@ interface IndexesOperations { @get getStatistics is Azure.Core.Foundations.Operation< { - /** - * The name of the index for which to retrieve statistics. - */ - @path - indexName: string; + ...indexNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, GetIndexStatisticsResult >; @@ -892,17 +589,9 @@ interface IndexesOperations { @post analyze is Azure.Core.Foundations.Operation< { - /** - * The name of the index for which to test an analyzer. - */ - @path - indexName: string; + ...indexNameParameter; - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; /** * The text and analyzer or analysis components to test. @@ -921,11 +610,7 @@ interface IndexesOperations { @get op getServiceStatistics is Azure.Core.Foundations.Operation< { - /** - * The tracking ID sent with the request to help with debugging. - */ - @header - `x-ms-client-request-id`?: string; + ...clientRequestIdHeader; }, SearchServiceStatistics >; From 88046166bde5d433b109aec1fbe025d69e8a2715 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Fri, 11 Oct 2024 14:25:39 -0700 Subject: [PATCH 08/78] update --- specification/search/Azure.Search/main.tsp | 7 - .../search/Azure.Search/models-index.tsp | 7 + .../search/Azure.Search/models-service.tsp | 400 ++++++++++++++---- .../search/Azure.Search/routes-index.tsp | 2 + 4 files changed, 324 insertions(+), 92 deletions(-) diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp index 0cbfe5712ab9..778e54baac24 100644 --- a/specification/search/Azure.Search/main.tsp +++ b/specification/search/Azure.Search/main.tsp @@ -20,13 +20,6 @@ using TypeSpec.Versioning; title: "SearchClient", }) @versioned(Versions) -@server( - "{endpoint}", - "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", - { - endpoint: string, - } -) namespace SearchClient; /** diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index de1ab09513f7..9b75e7e9f9a4 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -379,6 +379,7 @@ model SearchDocumentsResult { * field value falling within a particular range or having a particular value or * interval. */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model FacetResult { ...Record; @@ -395,6 +396,7 @@ model FacetResult { * documents that matched the query. Answers are extracted from the top search * results. Answer candidates are scored and the top answers are selected. */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model QueryAnswerResult { ...Record; @@ -626,6 +628,7 @@ model SearchRequest { /** * The query parameters for vector and hybrid search queries. */ +#suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("kind") model VectorQuery { /** @@ -669,6 +672,7 @@ model VectorQuery { /** * Contains a document found by a search query, plus associated metadata. */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model SearchResult { ...Record; @@ -713,6 +717,7 @@ model SearchResult { * the search query. They are often used as document summary. Captions are only * returned for queries of type `semantic`. */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model QueryCaptionResult { ...Record; @@ -755,6 +760,7 @@ model SuggestDocumentsResult { * A result containing a document found by a suggestion query, plus associated * metadata. */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model SuggestResult { ...Record; @@ -864,6 +870,7 @@ model IndexBatch { /** * Represents an index action that operates on a document. */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model IndexAction { ...Record; diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 3faf291ea10e..6a4e8c76263f 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -1246,6 +1246,9 @@ union VectorSearchAlgorithmMetric { */ union VectorSearchCompressionTarget { string, + /** + * 8-bit signed integer. + */ Int8: "int8", } @@ -1254,8 +1257,17 @@ union VectorSearchCompressionTarget { */ union AzureOpenAIModelName { string, + /** + * TextEmbeddingAda002 model. + */ TextEmbeddingAda002: "text-embedding-ada-002", + /** + * TextEmbedding3Large model. + */ TextEmbedding3Large: "text-embedding-3-large", + /** + * TextEmbedding3Small model. + */ TextEmbedding3Small: "text-embedding-3-small", } @@ -4799,14 +4811,24 @@ model SearchIndexerDataContainer { /** * Base type for data change detection policies. */ -@discriminator("@odata.type") -model DataChangeDetectionPolicy {} +@discriminator("oDataType") +model DataChangeDetectionPolicy { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; +} /** * Base type for data deletion detection policies. */ -@discriminator("@odata.type") -model DataDeletionDetectionPolicy {} +@discriminator("oDataType") +model DataDeletionDetectionPolicy { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; +} /** * A customer-managed encryption key in Azure Key Vault. Keys that you create and @@ -4994,6 +5016,7 @@ model IndexingParameters { * A dictionary of indexer-specific configuration properties. Each name is the * name of a specific property. Each value must be of a primitive type. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" configuration?: IndexingParametersConfiguration; } @@ -5001,6 +5024,7 @@ model IndexingParameters { * A dictionary of indexer-specific configuration properties. Each name is the * name of a specific property. Each value must be of a primitive type. */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model IndexingParametersConfiguration { ...Record; @@ -5145,6 +5169,7 @@ model FieldMappingFunction { * A dictionary of parameter name/value pairs to pass to the function. Each value * must be of a primitive type. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" parameters?: Record; } @@ -5348,6 +5373,9 @@ model SearchIndexerWarning { documentationLink?: string; } +/** + * Represents the limits that can be applied to an indexer. +*/ model SearchIndexerLimits { /** * The maximum duration that the indexer is permitted to run for one execution. @@ -5431,8 +5459,13 @@ model SearchIndexerSkillset { /** * Base type for skills. */ -@discriminator("@odata.type") +@discriminator("oDataType") model SearchIndexerSkill { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; + /** * The name of the skill which uniquely identifies it within the skillset. A skill * with no name defined will be given a default name of its 1-based index in the @@ -5509,8 +5542,13 @@ model OutputFieldMappingEntry { /** * Base type for describing any Azure AI service resource attached to a skillset. */ -@discriminator("@odata.type") +@discriminator("oDataType") model CognitiveServicesAccount { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; + /** * Description of the Azure AI service resource attached to a skillset. */ @@ -5556,6 +5594,7 @@ model SearchIndexerKnowledgeStoreProjection { /** * Description for what data to store in Azure Tables. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" model SearchIndexerKnowledgeStoreTableProjectionSelector extends SearchIndexerKnowledgeStoreProjectionSelector { /** @@ -5597,12 +5636,14 @@ model SearchIndexerKnowledgeStoreProjectionSelector { /** * Projection definition for what data to store in Azure Blob. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" model SearchIndexerKnowledgeStoreObjectProjectionSelector extends SearchIndexerKnowledgeStoreBlobProjectionSelector {} /** * Abstract class to share properties between concrete selectors. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" model SearchIndexerKnowledgeStoreBlobProjectionSelector extends SearchIndexerKnowledgeStoreProjectionSelector { /** @@ -5614,6 +5655,7 @@ model SearchIndexerKnowledgeStoreBlobProjectionSelector /** * Projection definition for what data to store in Azure Files. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" model SearchIndexerKnowledgeStoreFileProjectionSelector extends SearchIndexerKnowledgeStoreBlobProjectionSelector {} @@ -5630,6 +5672,7 @@ model SearchIndexerIndexProjection { * A dictionary of index projection-specific configuration properties. Each name * is the name of a specific property. Each value must be of a primitive type. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" parameters?: SearchIndexerIndexProjectionsParameters; } @@ -5666,6 +5709,7 @@ model SearchIndexerIndexProjectionSelector { * A dictionary of index projection-specific configuration properties. Each name * is the name of a specific property. Each value must be of a primitive type. */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model SearchIndexerIndexProjectionsParameters { ...Record; @@ -6049,6 +6093,7 @@ model TextWeights { /** * Base type for functions that can modify document scores during ranking. */ +#suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("type") model ScoringFunction { /** @@ -6111,8 +6156,13 @@ model SearchSuggester { /** * Base type for analyzers. */ -@discriminator("@odata.type") +@discriminator("oDataType") model LexicalAnalyzer { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; + /** * The name of the analyzer. It must only contain letters, digits, spaces, dashes * or underscores, can only start and end with alphanumeric characters, and is @@ -6124,8 +6174,13 @@ model LexicalAnalyzer { /** * Base type for tokenizers. */ -@discriminator("@odata.type") +@discriminator("oDataType") model LexicalTokenizer { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; + /** * The name of the tokenizer. It must only contain letters, digits, spaces, dashes * or underscores, can only start and end with alphanumeric characters, and is @@ -6137,8 +6192,13 @@ model LexicalTokenizer { /** * Base type for token filters. */ -@discriminator("@odata.type") +@discriminator("oDataType") model TokenFilter { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; + /** * The name of the token filter. It must only contain letters, digits, spaces, * dashes or underscores, can only start and end with alphanumeric characters, and @@ -6150,8 +6210,13 @@ model TokenFilter { /** * Base type for character filters. */ -@discriminator("@odata.type") +@discriminator("oDataType") model CharFilter { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; + /** * The name of the char filter. It must only contain letters, digits, spaces, * dashes or underscores, can only start and end with alphanumeric characters, and @@ -6166,8 +6231,13 @@ model CharFilter { * relevant the document is to that specific query. Those scores are used to rank * the search results. */ -@discriminator("@odata.type") -model SimilarityAlgorithm {} +@discriminator("oDataType") +model SimilarityAlgorithm { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; +} /** * Defines parameters for a search index that influence semantic capabilities. @@ -6241,6 +6311,9 @@ model SemanticPrioritizedFields { * A field that is used as part of the semantic configuration. */ model SemanticField { + /** + * File name + */ fieldName: string; } @@ -6305,6 +6378,7 @@ model VectorSearchProfile { * Contains configuration options specific to the algorithm used during indexing * or querying. */ +#suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("kind") model VectorSearchAlgorithmConfiguration { /** @@ -6316,6 +6390,7 @@ model VectorSearchAlgorithmConfiguration { /** * Specifies the vectorization method to be used during query time. */ +#suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("kind") model VectorSearchVectorizer { /** @@ -6329,6 +6404,7 @@ model VectorSearchVectorizer { * Contains configuration options specific to the compression method used during * indexing or querying. */ +#suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("kind") model VectorSearchCompression { /** @@ -6622,7 +6698,8 @@ model CustomAnalyzer extends LexicalAnalyzer { /** * A URI fragment specifying the type of analyzer. */ - `@odata.type`: "#Microsoft.Azure.Search.CustomAnalyzer"; + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.CustomAnalyzer"; } /** @@ -6655,7 +6732,8 @@ model PatternAnalyzer extends LexicalAnalyzer { /** * A URI fragment specifying the type of analyzer. */ - `@odata.type`: "#Microsoft.Azure.Search.PatternAnalyzer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + oDataType: "#Microsoft.Azure.Search.PatternAnalyzer"; } /** @@ -6678,7 +6756,9 @@ model LuceneStandardAnalyzer extends LexicalAnalyzer { /** * A URI fragment specifying the type of analyzer. */ - `@odata.type`: "#Microsoft.Azure.Search.StandardAnalyzer"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.StandardAnalyzer"; } /** @@ -6694,7 +6774,8 @@ model StopAnalyzer extends LexicalAnalyzer { /** * A URI fragment specifying the type of analyzer. */ - `@odata.type`: "#Microsoft.Azure.Search.StopAnalyzer"; + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.StopAnalyzer"; } /** @@ -6712,13 +6793,16 @@ model ClassicTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.ClassicTokenizer"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.ClassicTokenizer"; } /** * Tokenizes the input from an edge into n-grams of the given size(s). This * tokenizer is implemented using Apache Lucene. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model EdgeNGramTokenizer extends LexicalTokenizer { /** * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the @@ -6741,7 +6825,8 @@ model EdgeNGramTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; } /** @@ -6757,7 +6842,9 @@ model KeywordTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.KeywordTokenizer"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.KeywordTokenizer"; } /** @@ -6775,7 +6862,9 @@ model KeywordTokenizerV2 extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.KeywordTokenizerV2"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; } /** @@ -6805,7 +6894,8 @@ model MicrosoftLanguageTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; } /** @@ -6836,13 +6926,16 @@ model MicrosoftLanguageStemmingTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; } /** * Tokenizes the input into n-grams of the given size(s). This tokenizer is * implemented using Apache Lucene. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model NGramTokenizer extends LexicalTokenizer { /** * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the @@ -6865,7 +6958,9 @@ model NGramTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.NGramTokenizer"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.NGramTokenizer"; } /** @@ -6905,7 +7000,8 @@ model PathHierarchyTokenizerV2 extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; } /** @@ -6934,7 +7030,9 @@ model PatternTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.PatternTokenizer"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.PatternTokenizer"; } /** @@ -6951,7 +7049,9 @@ model LuceneStandardTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.StandardTokenizer"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.StandardTokenizer"; } /** @@ -6969,7 +7069,9 @@ model LuceneStandardTokenizerV2 extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.StandardTokenizerV2"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; } /** @@ -6987,7 +7089,9 @@ model UaxUrlEmailTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - `@odata.type`: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; } /** @@ -7005,7 +7109,9 @@ model AsciiFoldingTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; } /** @@ -7027,7 +7133,9 @@ model CjkBigramTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; } /** @@ -7058,7 +7166,9 @@ model CommonGramTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.CommonGramTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; } /** @@ -7101,13 +7211,16 @@ model DictionaryDecompounderTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; } /** * Generates n-grams of the given size(s) starting from the front or the back of * an input token. This token filter is implemented using Apache Lucene. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model EdgeNGramTokenFilter extends TokenFilter { /** * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. @@ -7128,13 +7241,16 @@ model EdgeNGramTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; } /** * Generates n-grams of the given size(s) starting from the front or the back of * an input token. This token filter is implemented using Apache Lucene. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model EdgeNGramTokenFilterV2 extends TokenFilter { /** * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the @@ -7158,7 +7274,9 @@ model EdgeNGramTokenFilterV2 extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; } /** @@ -7174,7 +7292,9 @@ model ElisionTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.ElisionTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; } /** @@ -7196,7 +7316,9 @@ model KeepTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.KeepTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.KeepTokenFilter"; } /** @@ -7217,7 +7339,9 @@ model KeywordMarkerTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; } /** @@ -7243,7 +7367,9 @@ model LengthTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.LengthTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.LengthTokenFilter"; } /** @@ -7265,13 +7391,16 @@ model LimitTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.LimitTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.LimitTokenFilter"; } /** * Generates n-grams of the given size(s). This token filter is implemented using * Apache Lucene. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model NGramTokenFilter extends TokenFilter { /** * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. @@ -7286,13 +7415,16 @@ model NGramTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.NGramTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.NGramTokenFilter"; } /** * Generates n-grams of the given size(s). This token filter is implemented using * Apache Lucene. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model NGramTokenFilterV2 extends TokenFilter { /** * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the @@ -7310,7 +7442,9 @@ model NGramTokenFilterV2 extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.NGramTokenFilterV2"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; } /** @@ -7332,7 +7466,9 @@ model PatternCaptureTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; } /** @@ -7357,7 +7493,9 @@ model PatternReplaceTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; } /** @@ -7380,7 +7518,9 @@ model PhoneticTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.PhoneticTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; } /** @@ -7429,7 +7569,9 @@ model ShingleTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.ShingleTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; } /** @@ -7445,7 +7587,9 @@ model SnowballTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.SnowballTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; } /** @@ -7461,7 +7605,9 @@ model StemmerTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.StemmerTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; } /** @@ -7481,7 +7627,9 @@ model StemmerOverrideTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; } /** @@ -7517,7 +7665,9 @@ model StopwordsTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.StopwordsTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; } /** @@ -7554,7 +7704,9 @@ model SynonymTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.SynonymTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; } /** @@ -7571,7 +7723,9 @@ model TruncateTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.TruncateTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; } /** @@ -7588,7 +7742,9 @@ model UniqueTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.UniqueTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; } /** @@ -7659,7 +7815,9 @@ model WordDelimiterTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - `@odata.type`: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; } /** @@ -7678,7 +7836,9 @@ model MappingCharFilter extends CharFilter { /** * A URI fragment specifying the type of char filter. */ - `@odata.type`: "#Microsoft.Azure.Search.MappingCharFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.MappingCharFilter"; } /** @@ -7703,7 +7863,9 @@ model PatternReplaceCharFilter extends CharFilter { /** * A URI fragment specifying the type of char filter. */ - `@odata.type`: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; } /** @@ -7713,7 +7875,9 @@ model PatternReplaceCharFilter extends CharFilter { * that only partially match the searched queries. */ model ClassicSimilarityAlgorithm extends SimilarityAlgorithm { - `@odata.type`: "#Microsoft.Azure.Search.ClassicSimilarity"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.ClassicSimilarity"; } /** @@ -7722,6 +7886,7 @@ model ClassicSimilarityAlgorithm extends SimilarityAlgorithm { * parameter) as well as term frequency saturation (controlled by the 'k1' * parameter). */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model BM25SimilarityAlgorithm extends SimilarityAlgorithm { /** * This property controls the scaling function between the term frequency of each @@ -7739,7 +7904,9 @@ model BM25SimilarityAlgorithm extends SimilarityAlgorithm { */ b?: float64; - `@odata.type`: "#Microsoft.Azure.Search.BM25Similarity"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.BM25Similarity"; } /** @@ -7872,6 +8039,7 @@ model BinaryQuantizationCompression extends VectorSearchCompression { /** * Specifies the Azure OpenAI resource used to vectorize a query string. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model AzureOpenAIVectorizer extends VectorSearchVectorizer { /** * Contains the parameters specific to Azure OpenAI embedding vectorization. @@ -7889,6 +8057,7 @@ model AzureOpenAIVectorizer extends VectorSearchVectorizer { /** * Specifies the parameters for connecting to the Azure OpenAI resource. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model AzureOpenAIVectorizerParameters { /** * The resource URI of the Azure OpenAI resource. @@ -7922,8 +8091,13 @@ model AzureOpenAIVectorizerParameters { /** * Abstract base type for data identities. */ -@discriminator("@odata.type") -model SearchIndexerDataIdentity {} +@discriminator("oDataType") +model SearchIndexerDataIdentity { + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: string; +} /** * Specifies a user-defined vectorizer for generating the vector embedding of a @@ -7997,7 +8171,9 @@ model SearchIndexerDataNoneIdentity extends SearchIndexerDataIdentity { /** * A URI fragment specifying the type of identity. */ - `@odata.type`: "#Microsoft.Azure.Search.DataNoneIdentity"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.DataNoneIdentity"; } /** @@ -8016,7 +8192,9 @@ model SearchIndexerDataUserAssignedIdentity extends SearchIndexerDataIdentity { /** * A URI fragment specifying the type of identity. */ - `@odata.type`: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; } /** @@ -8032,7 +8210,9 @@ model HighWaterMarkChangeDetectionPolicy extends DataChangeDetectionPolicy { /** * A URI fragment specifying the type of data change detection policy. */ - `@odata.type`: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; } /** @@ -8043,7 +8223,9 @@ model SqlIntegratedChangeTrackingPolicy extends DataChangeDetectionPolicy { /** * A URI fragment specifying the type of data change detection policy. */ - `@odata.type`: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; } /** @@ -8066,7 +8248,9 @@ model SoftDeleteColumnDeletionDetectionPolicy /** * A URI fragment specifying the type of data deletion detection policy. */ - `@odata.type`: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; } /** @@ -8203,6 +8387,7 @@ model TagScoringParameters { * A dictionary of knowledge store-specific configuration properties. Each name is * the name of a specific property. Each value must be of a primitive type. */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model SearchIndexerKnowledgeStoreParameters { ...Record; @@ -8222,7 +8407,9 @@ model DefaultCognitiveServicesAccount extends CognitiveServicesAccount { * A URI fragment specifying the type of Azure AI service resource attached to a * skillset. */ - `@odata.type`: "#Microsoft.Azure.Search.DefaultCognitiveServices"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; } /** @@ -8239,7 +8426,9 @@ model CognitiveServicesAccountKey extends CognitiveServicesAccount { * A URI fragment specifying the type of Azure AI service resource attached to a * skillset. */ - `@odata.type`: "#Microsoft.Azure.Search.CognitiveServicesByKey"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; } /** @@ -8364,7 +8553,9 @@ model ConditionalSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Util.ConditionalSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Util.ConditionalSkill"; } /** @@ -8392,7 +8583,9 @@ model KeyPhraseExtractionSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; } /** @@ -8419,7 +8612,9 @@ model OcrSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Vision.OcrSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Vision.OcrSkill"; } /** @@ -8445,7 +8640,9 @@ model ImageAnalysisSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; } /** @@ -8470,7 +8667,9 @@ model LanguageDetectionSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.LanguageDetectionSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; } /** @@ -8481,7 +8680,9 @@ model ShaperSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Util.ShaperSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Util.ShaperSkill"; } /** @@ -8504,7 +8705,9 @@ model MergeSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.MergeSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.MergeSkill"; } /** @@ -8539,7 +8742,9 @@ model EntityRecognitionSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.EntityRecognitionSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; } /** @@ -8554,7 +8759,9 @@ model SentimentSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.SentimentSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.SentimentSkill"; } /** @@ -8586,7 +8793,9 @@ model SentimentSkillV3 extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.V3.SentimentSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; } /** @@ -8616,7 +8825,9 @@ model EntityLinkingSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; } /** @@ -8651,13 +8862,16 @@ model EntityRecognitionSkillV3 extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; } /** * Using the Text Analytics API, extracts personal information from an input text * and gives you the option of masking it. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model PIIDetectionSkill extends SearchIndexerSkill { /** * A value indicating which language code to use. Default is `en`. @@ -8707,7 +8921,9 @@ model PIIDetectionSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.PIIDetectionSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; } /** @@ -8746,7 +8962,9 @@ model SplitSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.SplitSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.SplitSkill"; } /** @@ -8792,7 +9010,9 @@ model CustomEntityLookupSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; } /** @@ -8821,7 +9041,9 @@ model TextTranslationSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.TranslationSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.TranslationSkill"; } /** @@ -8842,12 +9064,15 @@ model DocumentExtractionSkill extends SearchIndexerSkill { /** * A dictionary of configurations for the skill. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" configuration?: Record; /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Util.DocumentExtractionSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; } /** @@ -8908,13 +9133,16 @@ model WebApiSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Custom.WebApiSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Custom.WebApiSkill"; } /** * Allows you to generate a vector embedding for a given text input using the * Azure OpenAI resource. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model AzureOpenAIEmbeddingSkill extends SearchIndexerSkill { ...AzureOpenAIVectorizerParameters; @@ -8927,5 +9155,7 @@ model AzureOpenAIEmbeddingSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - `@odata.type`: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + oDataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; } diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index 3d5705795ce5..eedb28c71bb4 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -53,6 +53,7 @@ interface DocumentsOperations { * expression contains a field name, optionally followed by a comma-separated list * of name:value pairs. */ + #suppress "@azure-tools/typespec-azure-core/prefer-csv-collection-format" "Existing" @query({ name: "facet", format: "multi", @@ -126,6 +127,7 @@ interface DocumentsOperations { * scoring profile defines a function with a parameter called 'mylocation' the * parameter string would be "mylocation--122.2,44.8" (without the quotes). */ + #suppress "@azure-tools/typespec-azure-core/prefer-csv-collection-format" "Existing" @query({ name: "scoringParameter", format: "multi", From 84c3209f14c41f23e69414f016d64e9c556c2c08 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Fri, 11 Oct 2024 15:06:43 -0700 Subject: [PATCH 09/78] update --- .../search/Azure.Search/models-shared.tsp | 32 ++- .../search/Azure.Search/routes-index.tsp | 42 ++-- .../search/Azure.Search/routes-service.tsp | 197 +++++------------- 3 files changed, 104 insertions(+), 167 deletions(-) diff --git a/specification/search/Azure.Search/models-shared.tsp b/specification/search/Azure.Search/models-shared.tsp index 8b71803c91e9..f134f034609f 100644 --- a/specification/search/Azure.Search/models-shared.tsp +++ b/specification/search/Azure.Search/models-shared.tsp @@ -30,18 +30,46 @@ alias preferHeader = { prefer: "return=representation"; }; -alias indexNameParameter = { +alias selectQuery = { + @doc(""" + Selects which top-level properties to retrieve. + Specified as a comma-separated list of JSON property names, + or '*' for all properties. The default is all properties. + """) + @query("$select") + $select?: string; +}; + +alias indexNamePath = { @doc("The name of the index.") @path indexName: string; }; -alias indexerNameParameter = { +alias indexerNamePath = { @doc("The name of the indexer.") @path indexerName: string; }; +alias dataSourceNamePath = { + @doc("The name of the datasource.") + @path + dataSourceName: string; +}; + +alias skillsetNamePath = { + @doc("The name of the skillset.") + @path + skillsetName: string; +}; + +alias synonymMapNamePath = { + @doc("The name of the synonym map.") + @path + synonymMapName: string; +}; + /** * Common error response for all Azure Resource Manager APIs to return error * details for failed operations. (This also follows the OData error response diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index eedb28c71bb4..c92d74f21a13 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -13,12 +13,12 @@ interface DocumentsOperations { /** * Queries the number of documents in the index. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/$count") @get count is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...clientRequestIdHeader; }, void @@ -27,11 +27,12 @@ interface DocumentsOperations { /** * Searches for documents in the index. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs") @get searchGet is Azure.Core.Foundations.Operation< { - ...indexNameParameter; + ...indexNamePath; /** * A full-text search query expression; Use "*" or omit this parameter to match @@ -271,14 +272,13 @@ interface DocumentsOperations { /** * Searches for documents in the index. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.post.search") @post searchPost is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...clientRequestIdHeader; - /** * The definition of the Search request. */ @@ -291,12 +291,12 @@ interface DocumentsOperations { /** * Retrieves a document from the index. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs('{key}')") @get get is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; /** * The key of the document to retrieve. */ @@ -312,7 +312,6 @@ interface DocumentsOperations { format: "csv", }) selectedFields?: string[]; - ...clientRequestIdHeader; }, void @@ -321,12 +320,12 @@ interface DocumentsOperations { /** * Suggests documents in the index that match the given partial query text. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.suggest") @get suggestGet is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; /** * The search text to use to suggest documents. Must be at least 1 character, and * no more than 100 characters. @@ -421,7 +420,6 @@ interface DocumentsOperations { */ @query("$top") $top?: int32; - ...clientRequestIdHeader; }, SuggestDocumentsResult @@ -430,14 +428,13 @@ interface DocumentsOperations { /** * Suggests documents in the index that match the given partial query text. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.post.suggest") @post suggestPost is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...clientRequestIdHeader; - /** * The Suggest request. */ @@ -450,14 +447,13 @@ interface DocumentsOperations { /** * Sends a batch of document write actions to the index. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.index") @post index is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...clientRequestIdHeader; - /** * The batch of index actions. */ @@ -471,14 +467,13 @@ interface DocumentsOperations { * Autocompletes incomplete query terms based on input text and matching terms in * the index. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.autocomplete") @get autocompleteGet is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...clientRequestIdHeader; - /** * The incomplete term which should be auto-completed. */ @@ -564,14 +559,13 @@ interface DocumentsOperations { * Autocompletes incomplete query terms based on input text and matching terms in * the index. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.post.autocomplete") @post autocompletePost is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...clientRequestIdHeader; - /** * The definition of the Autocomplete request. */ diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index 614e6655b5a5..9241a800763c 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -11,22 +11,15 @@ interface DataSourcesOperations { /** * Creates a new datasource or updates a datasource if it already exists. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @put createOrUpdate is Azure.Core.Foundations.Operation< { - /** - * The name of the datasource to create or update. - */ - @path - dataSourceName: string; - + ...dataSourceNamePath; ...clientRequestIdHeader; - ...matchingHeader; - ...preferHeader; - /** * The definition of the datasource to create or update. */ @@ -39,18 +32,13 @@ interface DataSourcesOperations { /** * Deletes a datasource. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @delete delete is Azure.Core.Foundations.Operation< { - /** - * The name of the datasource to delete. - */ - @path - dataSourceName: string; - + ...dataSourceNamePath; ...clientRequestIdHeader; - ...matchingHeader; }, void @@ -59,16 +47,12 @@ interface DataSourcesOperations { /** * Retrieves a datasource definition. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @get get is Azure.Core.Foundations.Operation< { - /** - * The name of the datasource to retrieve. - */ - @path - dataSourceName: string; - + ...dataSourceNamePath; ...clientRequestIdHeader; }, SearchIndexerDataSource @@ -77,18 +61,12 @@ interface DataSourcesOperations { /** * Lists all datasources available for a search service. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources") @get list is Azure.Core.Foundations.Operation< { - /** - * Selects which top-level properties of the data sources to retrieve. Specified - * as a comma-separated list of JSON property names, or '*' for all properties. - * The default is all properties. - */ - @query("$select") - $select?: string; - + ...selectQuery; ...clientRequestIdHeader; }, ListDataSourcesResult @@ -97,12 +75,12 @@ interface DataSourcesOperations { /** * Creates a new datasource. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources") @post create is Azure.Core.Foundations.Operation< { ...clientRequestIdHeader; - /** * The definition of the datasource to create. */ @@ -117,12 +95,12 @@ interface IndexersOperations { /** * Resets the change tracking state associated with an indexer. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.reset") @post reset is Azure.Core.Foundations.Operation< { - ...indexerNameParameter; - + ...indexerNamePath; ...clientRequestIdHeader; }, void @@ -131,12 +109,12 @@ interface IndexersOperations { /** * Runs an indexer on-demand. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.run") @post run is Azure.Core.Foundations.Operation< { - ...indexerNameParameter; - + ...indexerNamePath; ...clientRequestIdHeader; }, void @@ -145,18 +123,15 @@ interface IndexersOperations { /** * Creates a new indexer or updates an indexer if it already exists. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')") @put createOrUpdate is Azure.Core.Foundations.Operation< { - ...indexerNameParameter; - + ...indexerNamePath; ...clientRequestIdHeader; - ...matchingHeader; - ...preferHeader; - /** * The definition of the indexer to create or update. */ @@ -169,14 +144,13 @@ interface IndexersOperations { /** * Deletes an indexer. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')") @delete delete is Azure.Core.Foundations.Operation< { - ...indexerNameParameter; - + ...indexerNamePath; ...clientRequestIdHeader; - ...matchingHeader; }, void @@ -185,12 +159,12 @@ interface IndexersOperations { /** * Retrieves an indexer definition. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')") @get get is Azure.Core.Foundations.Operation< { - ...indexerNameParameter; - + ...indexerNamePath; ...clientRequestIdHeader; }, SearchIndexer @@ -199,18 +173,12 @@ interface IndexersOperations { /** * Lists all indexers available for a search service. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers") @get list is Azure.Core.Foundations.Operation< { - /** - * Selects which top-level properties of the indexers to retrieve. Specified as a - * comma-separated list of JSON property names, or '*' for all properties. The - * default is all properties. - */ - @query("$select") - $select?: string; - + ...selectQuery; ...clientRequestIdHeader; }, ListIndexersResult @@ -219,12 +187,12 @@ interface IndexersOperations { /** * Creates a new indexer. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers") @post create is Azure.Core.Foundations.Operation< { ...clientRequestIdHeader; - /** * The definition of the indexer to create. */ @@ -237,12 +205,12 @@ interface IndexersOperations { /** * Returns the current status and execution history of an indexer. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.status") @get getStatus is Azure.Core.Foundations.Operation< { - ...indexerNameParameter; - + ...indexerNamePath; ...clientRequestIdHeader; }, SearchIndexerStatus @@ -254,22 +222,15 @@ interface SkillsetsOperations { * Creates a new skillset in a search service or updates the skillset if it * already exists. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @put createOrUpdate is Azure.Core.Foundations.Operation< { - /** - * The name of the skillset to create or update. - */ - @path - skillsetName: string; - + ...skillsetNamePath; ...clientRequestIdHeader; - ...matchingHeader; - ...preferHeader; - /** * The skillset containing one or more skills to create or update in a search * service. @@ -283,18 +244,13 @@ interface SkillsetsOperations { /** * Deletes a skillset in a search service. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @delete delete is Azure.Core.Foundations.Operation< { - /** - * The name of the skillset to delete. - */ - @path - skillsetName: string; - + ...skillsetNamePath; ...clientRequestIdHeader; - ...matchingHeader; }, void @@ -303,16 +259,12 @@ interface SkillsetsOperations { /** * Retrieves a skillset in a search service. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @get get is Azure.Core.Foundations.Operation< { - /** - * The name of the skillset to retrieve. - */ - @path - skillsetName: string; - + ...skillsetNamePath; ...clientRequestIdHeader; }, SearchIndexerSkillset @@ -321,18 +273,12 @@ interface SkillsetsOperations { /** * List all skillsets in a search service. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets") @get list is Azure.Core.Foundations.Operation< { - /** - * Selects which top-level properties of the skillsets to retrieve. Specified as a - * comma-separated list of JSON property names, or '*' for all properties. The - * default is all properties. - */ - @query("$select") - $select?: string; - + ...selectQuery; ...clientRequestIdHeader; }, ListSkillsetsResult @@ -341,12 +287,12 @@ interface SkillsetsOperations { /** * Creates a new skillset in a search service. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets") @post create is Azure.Core.Foundations.Operation< { ...clientRequestIdHeader; - /** * The skillset containing one or more skills to create in a search service. */ @@ -361,22 +307,15 @@ interface SynonymMapsOperations { /** * Creates a new synonym map or updates a synonym map if it already exists. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @put createOrUpdate is Azure.Core.Foundations.Operation< { - /** - * The name of the synonym map to create or update. - */ - @path - synonymMapName: string; - + ...synonymMapNamePath; ...clientRequestIdHeader; - ...matchingHeader; - ...preferHeader; - /** * The definition of the synonym map to create or update. */ @@ -389,18 +328,13 @@ interface SynonymMapsOperations { /** * Deletes a synonym map. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @delete delete is Azure.Core.Foundations.Operation< { - /** - * The name of the synonym map to delete. - */ - @path - synonymMapName: string; - + ...synonymMapNamePath; ...clientRequestIdHeader; - ...matchingHeader; }, void @@ -409,16 +343,12 @@ interface SynonymMapsOperations { /** * Retrieves a synonym map definition. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @get get is Azure.Core.Foundations.Operation< { - /** - * The name of the synonym map to retrieve. - */ - @path - synonymMapName: string; - + ...synonymMapNamePath; ...clientRequestIdHeader; }, SynonymMap @@ -427,18 +357,12 @@ interface SynonymMapsOperations { /** * Lists all synonym maps available for a search service. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps") @get list is Azure.Core.Foundations.Operation< { - /** - * Selects which top-level properties of the synonym maps to retrieve. Specified - * as a comma-separated list of JSON property names, or '*' for all properties. - * The default is all properties. - */ - @query("$select") - $select?: string; - + ...selectQuery; ...clientRequestIdHeader; }, ListSynonymMapsResult @@ -447,12 +371,12 @@ interface SynonymMapsOperations { /** * Creates a new synonym map. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps") @post create is Azure.Core.Foundations.Operation< { ...clientRequestIdHeader; - /** * The definition of the synonym map to create. */ @@ -467,12 +391,12 @@ interface IndexesOperations { /** * Creates a new search index. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes") @post create is Azure.Core.Foundations.Operation< { ...clientRequestIdHeader; - /** * The definition of the index to create. */ @@ -485,18 +409,12 @@ interface IndexesOperations { /** * Lists all indexes available for a search service. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes") @get list is Azure.Core.Foundations.Operation< { - /** - * Selects which top-level properties of the index definitions to retrieve. - * Specified as a comma-separated list of JSON property names, or '*' for all - * properties. The default is all properties. - */ - @query("$select") - $select?: string; - + ...selectQuery; ...clientRequestIdHeader; }, ListIndexesResult @@ -505,12 +423,12 @@ interface IndexesOperations { /** * Creates a new search index or updates an index if it already exists. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @put createOrUpdate is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; /** * Allows new analyzers, tokenizers, token filters, or char filters to be added to * an index by taking the index offline for at least a few seconds. This @@ -520,13 +438,9 @@ interface IndexesOperations { */ @query("allowIndexDowntime") allowIndexDowntime?: boolean; - ...clientRequestIdHeader; - ...matchingHeader; - ...preferHeader; - /** * The definition of the index to create or update. */ @@ -542,12 +456,12 @@ interface IndexesOperations { * index definition, data ingestion code, and a backup of the primary data source * in case you need to re-build the index. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @delete delete is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...matchingHeader; }, void @@ -556,12 +470,12 @@ interface IndexesOperations { /** * Retrieves an index definition. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @get get is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...clientRequestIdHeader; }, SearchIndex @@ -571,12 +485,12 @@ interface IndexesOperations { * Returns statistics for the given index, including a document count and storage * usage. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')/search.stats") @get getStatistics is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...clientRequestIdHeader; }, GetIndexStatisticsResult @@ -585,12 +499,12 @@ interface IndexesOperations { /** * Shows how an analyzer breaks text into tokens. */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')/search.analyze") @post analyze is Azure.Core.Foundations.Operation< { - ...indexNameParameter; - + ...indexNamePath; ...clientRequestIdHeader; /** @@ -606,6 +520,7 @@ interface IndexesOperations { /** * Gets service level statistics for a search service. */ +#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/servicestats") @get op getServiceStatistics is Azure.Core.Foundations.Operation< From d7e7d9a7b7d31c7739f5d910ee8533ed1956082d Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Fri, 11 Oct 2024 15:23:34 -0700 Subject: [PATCH 10/78] update --- .../search/Azure.Search/models-service.tsp | 182 +++++++++--------- 1 file changed, 91 insertions(+), 91 deletions(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 6a4e8c76263f..26a3d6dd30c2 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -4811,23 +4811,23 @@ model SearchIndexerDataContainer { /** * Base type for data change detection policies. */ -@discriminator("oDataType") +@discriminator("odataType") model DataChangeDetectionPolicy { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; } /** * Base type for data deletion detection policies. */ -@discriminator("oDataType") +@discriminator("odataType") model DataDeletionDetectionPolicy { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; } /** @@ -5459,12 +5459,12 @@ model SearchIndexerSkillset { /** * Base type for skills. */ -@discriminator("oDataType") +@discriminator("odataType") model SearchIndexerSkill { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the skill which uniquely identifies it within the skillset. A skill @@ -5542,12 +5542,12 @@ model OutputFieldMappingEntry { /** * Base type for describing any Azure AI service resource attached to a skillset. */ -@discriminator("oDataType") +@discriminator("odataType") model CognitiveServicesAccount { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * Description of the Azure AI service resource attached to a skillset. @@ -6156,12 +6156,12 @@ model SearchSuggester { /** * Base type for analyzers. */ -@discriminator("oDataType") +@discriminator("odataType") model LexicalAnalyzer { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the analyzer. It must only contain letters, digits, spaces, dashes @@ -6174,12 +6174,12 @@ model LexicalAnalyzer { /** * Base type for tokenizers. */ -@discriminator("oDataType") +@discriminator("odataType") model LexicalTokenizer { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the tokenizer. It must only contain letters, digits, spaces, dashes @@ -6192,12 +6192,12 @@ model LexicalTokenizer { /** * Base type for token filters. */ -@discriminator("oDataType") +@discriminator("odataType") model TokenFilter { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the token filter. It must only contain letters, digits, spaces, @@ -6210,12 +6210,12 @@ model TokenFilter { /** * Base type for character filters. */ -@discriminator("oDataType") +@discriminator("odataType") model CharFilter { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the char filter. It must only contain letters, digits, spaces, @@ -6231,12 +6231,12 @@ model CharFilter { * relevant the document is to that specific query. Those scores are used to rank * the search results. */ -@discriminator("oDataType") +@discriminator("odataType") model SimilarityAlgorithm { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; } /** @@ -6699,7 +6699,7 @@ model CustomAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.CustomAnalyzer"; + odataType: "#Microsoft.Azure.Search.CustomAnalyzer"; } /** @@ -6733,7 +6733,7 @@ model PatternAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." - oDataType: "#Microsoft.Azure.Search.PatternAnalyzer"; + odataType: "#Microsoft.Azure.Search.PatternAnalyzer"; } /** @@ -6758,7 +6758,7 @@ model LuceneStandardAnalyzer extends LexicalAnalyzer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StandardAnalyzer"; + odataType: "#Microsoft.Azure.Search.StandardAnalyzer"; } /** @@ -6775,7 +6775,7 @@ model StopAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StopAnalyzer"; + odataType: "#Microsoft.Azure.Search.StopAnalyzer"; } /** @@ -6795,7 +6795,7 @@ model ClassicTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.ClassicTokenizer"; + odataType: "#Microsoft.Azure.Search.ClassicTokenizer"; } /** @@ -6826,7 +6826,7 @@ model EdgeNGramTokenizer extends LexicalTokenizer { * A URI fragment specifying the type of tokenizer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; + odataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; } /** @@ -6844,7 +6844,7 @@ model KeywordTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.KeywordTokenizer"; + odataType: "#Microsoft.Azure.Search.KeywordTokenizer"; } /** @@ -6864,7 +6864,7 @@ model KeywordTokenizerV2 extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; + odataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; } /** @@ -6895,7 +6895,7 @@ model MicrosoftLanguageTokenizer extends LexicalTokenizer { * A URI fragment specifying the type of tokenizer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; + odataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; } /** @@ -6928,7 +6928,7 @@ model MicrosoftLanguageStemmingTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; + odataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; } /** @@ -6960,7 +6960,7 @@ model NGramTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.NGramTokenizer"; + odataType: "#Microsoft.Azure.Search.NGramTokenizer"; } /** @@ -7001,7 +7001,7 @@ model PathHierarchyTokenizerV2 extends LexicalTokenizer { * A URI fragment specifying the type of tokenizer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; + odataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; } /** @@ -7032,7 +7032,7 @@ model PatternTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PatternTokenizer"; + odataType: "#Microsoft.Azure.Search.PatternTokenizer"; } /** @@ -7051,7 +7051,7 @@ model LuceneStandardTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StandardTokenizer"; + odataType: "#Microsoft.Azure.Search.StandardTokenizer"; } /** @@ -7071,7 +7071,7 @@ model LuceneStandardTokenizerV2 extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; + odataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; } /** @@ -7091,7 +7091,7 @@ model UaxUrlEmailTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; + odataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; } /** @@ -7111,7 +7111,7 @@ model AsciiFoldingTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; + odataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; } /** @@ -7135,7 +7135,7 @@ model CjkBigramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; + odataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; } /** @@ -7168,7 +7168,7 @@ model CommonGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; + odataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; } /** @@ -7213,7 +7213,7 @@ model DictionaryDecompounderTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; + odataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; } /** @@ -7243,7 +7243,7 @@ model EdgeNGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; + odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; } /** @@ -7276,7 +7276,7 @@ model EdgeNGramTokenFilterV2 extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; + odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; } /** @@ -7294,7 +7294,7 @@ model ElisionTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; + odataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; } /** @@ -7318,7 +7318,7 @@ model KeepTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.KeepTokenFilter"; + odataType: "#Microsoft.Azure.Search.KeepTokenFilter"; } /** @@ -7341,7 +7341,7 @@ model KeywordMarkerTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; + odataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; } /** @@ -7369,7 +7369,7 @@ model LengthTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.LengthTokenFilter"; + odataType: "#Microsoft.Azure.Search.LengthTokenFilter"; } /** @@ -7393,7 +7393,7 @@ model LimitTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.LimitTokenFilter"; + odataType: "#Microsoft.Azure.Search.LimitTokenFilter"; } /** @@ -7417,7 +7417,7 @@ model NGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.NGramTokenFilter"; + odataType: "#Microsoft.Azure.Search.NGramTokenFilter"; } /** @@ -7444,7 +7444,7 @@ model NGramTokenFilterV2 extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; + odataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; } /** @@ -7468,7 +7468,7 @@ model PatternCaptureTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; + odataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; } /** @@ -7495,7 +7495,7 @@ model PatternReplaceTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; + odataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; } /** @@ -7520,7 +7520,7 @@ model PhoneticTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; + odataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; } /** @@ -7571,7 +7571,7 @@ model ShingleTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; + odataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; } /** @@ -7589,7 +7589,7 @@ model SnowballTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; + odataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; } /** @@ -7607,7 +7607,7 @@ model StemmerTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; + odataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; } /** @@ -7629,7 +7629,7 @@ model StemmerOverrideTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; + odataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; } /** @@ -7667,7 +7667,7 @@ model StopwordsTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; + odataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; } /** @@ -7706,7 +7706,7 @@ model SynonymTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; + odataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; } /** @@ -7725,7 +7725,7 @@ model TruncateTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; + odataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; } /** @@ -7744,7 +7744,7 @@ model UniqueTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; + odataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; } /** @@ -7817,7 +7817,7 @@ model WordDelimiterTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; + odataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; } /** @@ -7838,7 +7838,7 @@ model MappingCharFilter extends CharFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.MappingCharFilter"; + odataType: "#Microsoft.Azure.Search.MappingCharFilter"; } /** @@ -7865,7 +7865,7 @@ model PatternReplaceCharFilter extends CharFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; + odataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; } /** @@ -7877,7 +7877,7 @@ model PatternReplaceCharFilter extends CharFilter { model ClassicSimilarityAlgorithm extends SimilarityAlgorithm { #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.ClassicSimilarity"; + odataType: "#Microsoft.Azure.Search.ClassicSimilarity"; } /** @@ -7906,7 +7906,7 @@ model BM25SimilarityAlgorithm extends SimilarityAlgorithm { #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.BM25Similarity"; + odataType: "#Microsoft.Azure.Search.BM25Similarity"; } /** @@ -8091,12 +8091,12 @@ model AzureOpenAIVectorizerParameters { /** * Abstract base type for data identities. */ -@discriminator("oDataType") +@discriminator("odataType") model SearchIndexerDataIdentity { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; } /** @@ -8173,7 +8173,7 @@ model SearchIndexerDataNoneIdentity extends SearchIndexerDataIdentity { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.DataNoneIdentity"; + odataType: "#Microsoft.Azure.Search.DataNoneIdentity"; } /** @@ -8194,7 +8194,7 @@ model SearchIndexerDataUserAssignedIdentity extends SearchIndexerDataIdentity { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; + odataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; } /** @@ -8212,7 +8212,7 @@ model HighWaterMarkChangeDetectionPolicy extends DataChangeDetectionPolicy { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; + odataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; } /** @@ -8225,7 +8225,7 @@ model SqlIntegratedChangeTrackingPolicy extends DataChangeDetectionPolicy { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; + odataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; } /** @@ -8250,7 +8250,7 @@ model SoftDeleteColumnDeletionDetectionPolicy */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; + odataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; } /** @@ -8409,7 +8409,7 @@ model DefaultCognitiveServicesAccount extends CognitiveServicesAccount { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; + odataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; } /** @@ -8428,7 +8428,7 @@ model CognitiveServicesAccountKey extends CognitiveServicesAccount { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; + odataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; } /** @@ -8555,7 +8555,7 @@ model ConditionalSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Util.ConditionalSkill"; + odataType: "#Microsoft.Skills.Util.ConditionalSkill"; } /** @@ -8585,7 +8585,7 @@ model KeyPhraseExtractionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; + odataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; } /** @@ -8614,7 +8614,7 @@ model OcrSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Vision.OcrSkill"; + odataType: "#Microsoft.Skills.Vision.OcrSkill"; } /** @@ -8642,7 +8642,7 @@ model ImageAnalysisSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; + odataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; } /** @@ -8669,7 +8669,7 @@ model LanguageDetectionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; + odataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; } /** @@ -8682,7 +8682,7 @@ model ShaperSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Util.ShaperSkill"; + odataType: "#Microsoft.Skills.Util.ShaperSkill"; } /** @@ -8707,7 +8707,7 @@ model MergeSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.MergeSkill"; + odataType: "#Microsoft.Skills.Text.MergeSkill"; } /** @@ -8744,7 +8744,7 @@ model EntityRecognitionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; + odataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; } /** @@ -8761,7 +8761,7 @@ model SentimentSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.SentimentSkill"; + odataType: "#Microsoft.Skills.Text.SentimentSkill"; } /** @@ -8795,7 +8795,7 @@ model SentimentSkillV3 extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; + odataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; } /** @@ -8827,7 +8827,7 @@ model EntityLinkingSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; + odataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; } /** @@ -8864,7 +8864,7 @@ model EntityRecognitionSkillV3 extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; + odataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; } /** @@ -8923,7 +8923,7 @@ model PIIDetectionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; + odataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; } /** @@ -8964,7 +8964,7 @@ model SplitSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.SplitSkill"; + odataType: "#Microsoft.Skills.Text.SplitSkill"; } /** @@ -9012,7 +9012,7 @@ model CustomEntityLookupSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; + odataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; } /** @@ -9043,7 +9043,7 @@ model TextTranslationSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.TranslationSkill"; + odataType: "#Microsoft.Skills.Text.TranslationSkill"; } /** @@ -9072,7 +9072,7 @@ model DocumentExtractionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; + odataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; } /** @@ -9135,7 +9135,7 @@ model WebApiSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Custom.WebApiSkill"; + odataType: "#Microsoft.Skills.Custom.WebApiSkill"; } /** @@ -9157,5 +9157,5 @@ model AzureOpenAIEmbeddingSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; + odataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; } From ecfeafbae8718fc527bc2d9fe6e46074480b6559 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Fri, 11 Oct 2024 15:32:50 -0700 Subject: [PATCH 11/78] update --- .../search/Azure.Search/models-service.tsp | 182 +++++++++--------- 1 file changed, 91 insertions(+), 91 deletions(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 26a3d6dd30c2..6a4e8c76263f 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -4811,23 +4811,23 @@ model SearchIndexerDataContainer { /** * Base type for data change detection policies. */ -@discriminator("odataType") +@discriminator("oDataType") model DataChangeDetectionPolicy { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; } /** * Base type for data deletion detection policies. */ -@discriminator("odataType") +@discriminator("oDataType") model DataDeletionDetectionPolicy { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; } /** @@ -5459,12 +5459,12 @@ model SearchIndexerSkillset { /** * Base type for skills. */ -@discriminator("odataType") +@discriminator("oDataType") model SearchIndexerSkill { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; /** * The name of the skill which uniquely identifies it within the skillset. A skill @@ -5542,12 +5542,12 @@ model OutputFieldMappingEntry { /** * Base type for describing any Azure AI service resource attached to a skillset. */ -@discriminator("odataType") +@discriminator("oDataType") model CognitiveServicesAccount { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; /** * Description of the Azure AI service resource attached to a skillset. @@ -6156,12 +6156,12 @@ model SearchSuggester { /** * Base type for analyzers. */ -@discriminator("odataType") +@discriminator("oDataType") model LexicalAnalyzer { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; /** * The name of the analyzer. It must only contain letters, digits, spaces, dashes @@ -6174,12 +6174,12 @@ model LexicalAnalyzer { /** * Base type for tokenizers. */ -@discriminator("odataType") +@discriminator("oDataType") model LexicalTokenizer { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; /** * The name of the tokenizer. It must only contain letters, digits, spaces, dashes @@ -6192,12 +6192,12 @@ model LexicalTokenizer { /** * Base type for token filters. */ -@discriminator("odataType") +@discriminator("oDataType") model TokenFilter { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; /** * The name of the token filter. It must only contain letters, digits, spaces, @@ -6210,12 +6210,12 @@ model TokenFilter { /** * Base type for character filters. */ -@discriminator("odataType") +@discriminator("oDataType") model CharFilter { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; /** * The name of the char filter. It must only contain letters, digits, spaces, @@ -6231,12 +6231,12 @@ model CharFilter { * relevant the document is to that specific query. Those scores are used to rank * the search results. */ -@discriminator("odataType") +@discriminator("oDataType") model SimilarityAlgorithm { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; } /** @@ -6699,7 +6699,7 @@ model CustomAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CustomAnalyzer"; + oDataType: "#Microsoft.Azure.Search.CustomAnalyzer"; } /** @@ -6733,7 +6733,7 @@ model PatternAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." - odataType: "#Microsoft.Azure.Search.PatternAnalyzer"; + oDataType: "#Microsoft.Azure.Search.PatternAnalyzer"; } /** @@ -6758,7 +6758,7 @@ model LuceneStandardAnalyzer extends LexicalAnalyzer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StandardAnalyzer"; + oDataType: "#Microsoft.Azure.Search.StandardAnalyzer"; } /** @@ -6775,7 +6775,7 @@ model StopAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StopAnalyzer"; + oDataType: "#Microsoft.Azure.Search.StopAnalyzer"; } /** @@ -6795,7 +6795,7 @@ model ClassicTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ClassicTokenizer"; + oDataType: "#Microsoft.Azure.Search.ClassicTokenizer"; } /** @@ -6826,7 +6826,7 @@ model EdgeNGramTokenizer extends LexicalTokenizer { * A URI fragment specifying the type of tokenizer. */ @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; + oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; } /** @@ -6844,7 +6844,7 @@ model KeywordTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeywordTokenizer"; + oDataType: "#Microsoft.Azure.Search.KeywordTokenizer"; } /** @@ -6864,7 +6864,7 @@ model KeywordTokenizerV2 extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; + oDataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; } /** @@ -6895,7 +6895,7 @@ model MicrosoftLanguageTokenizer extends LexicalTokenizer { * A URI fragment specifying the type of tokenizer. */ @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; + oDataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; } /** @@ -6928,7 +6928,7 @@ model MicrosoftLanguageStemmingTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; + oDataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; } /** @@ -6960,7 +6960,7 @@ model NGramTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.NGramTokenizer"; + oDataType: "#Microsoft.Azure.Search.NGramTokenizer"; } /** @@ -7001,7 +7001,7 @@ model PathHierarchyTokenizerV2 extends LexicalTokenizer { * A URI fragment specifying the type of tokenizer. */ @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; + oDataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; } /** @@ -7032,7 +7032,7 @@ model PatternTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternTokenizer"; + oDataType: "#Microsoft.Azure.Search.PatternTokenizer"; } /** @@ -7051,7 +7051,7 @@ model LuceneStandardTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StandardTokenizer"; + oDataType: "#Microsoft.Azure.Search.StandardTokenizer"; } /** @@ -7071,7 +7071,7 @@ model LuceneStandardTokenizerV2 extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; + oDataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; } /** @@ -7091,7 +7091,7 @@ model UaxUrlEmailTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; + oDataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; } /** @@ -7111,7 +7111,7 @@ model AsciiFoldingTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; + oDataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; } /** @@ -7135,7 +7135,7 @@ model CjkBigramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; + oDataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; } /** @@ -7168,7 +7168,7 @@ model CommonGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; + oDataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; } /** @@ -7213,7 +7213,7 @@ model DictionaryDecompounderTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; + oDataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; } /** @@ -7243,7 +7243,7 @@ model EdgeNGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; + oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; } /** @@ -7276,7 +7276,7 @@ model EdgeNGramTokenFilterV2 extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; + oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; } /** @@ -7294,7 +7294,7 @@ model ElisionTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; + oDataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; } /** @@ -7318,7 +7318,7 @@ model KeepTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeepTokenFilter"; + oDataType: "#Microsoft.Azure.Search.KeepTokenFilter"; } /** @@ -7341,7 +7341,7 @@ model KeywordMarkerTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; + oDataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; } /** @@ -7369,7 +7369,7 @@ model LengthTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.LengthTokenFilter"; + oDataType: "#Microsoft.Azure.Search.LengthTokenFilter"; } /** @@ -7393,7 +7393,7 @@ model LimitTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.LimitTokenFilter"; + oDataType: "#Microsoft.Azure.Search.LimitTokenFilter"; } /** @@ -7417,7 +7417,7 @@ model NGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.NGramTokenFilter"; + oDataType: "#Microsoft.Azure.Search.NGramTokenFilter"; } /** @@ -7444,7 +7444,7 @@ model NGramTokenFilterV2 extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; + oDataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; } /** @@ -7468,7 +7468,7 @@ model PatternCaptureTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; + oDataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; } /** @@ -7495,7 +7495,7 @@ model PatternReplaceTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; + oDataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; } /** @@ -7520,7 +7520,7 @@ model PhoneticTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; + oDataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; } /** @@ -7571,7 +7571,7 @@ model ShingleTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; + oDataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; } /** @@ -7589,7 +7589,7 @@ model SnowballTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; + oDataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; } /** @@ -7607,7 +7607,7 @@ model StemmerTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; + oDataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; } /** @@ -7629,7 +7629,7 @@ model StemmerOverrideTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; + oDataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; } /** @@ -7667,7 +7667,7 @@ model StopwordsTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; + oDataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; } /** @@ -7706,7 +7706,7 @@ model SynonymTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; + oDataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; } /** @@ -7725,7 +7725,7 @@ model TruncateTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; + oDataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; } /** @@ -7744,7 +7744,7 @@ model UniqueTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; + oDataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; } /** @@ -7817,7 +7817,7 @@ model WordDelimiterTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; + oDataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; } /** @@ -7838,7 +7838,7 @@ model MappingCharFilter extends CharFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.MappingCharFilter"; + oDataType: "#Microsoft.Azure.Search.MappingCharFilter"; } /** @@ -7865,7 +7865,7 @@ model PatternReplaceCharFilter extends CharFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; + oDataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; } /** @@ -7877,7 +7877,7 @@ model PatternReplaceCharFilter extends CharFilter { model ClassicSimilarityAlgorithm extends SimilarityAlgorithm { #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ClassicSimilarity"; + oDataType: "#Microsoft.Azure.Search.ClassicSimilarity"; } /** @@ -7906,7 +7906,7 @@ model BM25SimilarityAlgorithm extends SimilarityAlgorithm { #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.BM25Similarity"; + oDataType: "#Microsoft.Azure.Search.BM25Similarity"; } /** @@ -8091,12 +8091,12 @@ model AzureOpenAIVectorizerParameters { /** * Abstract base type for data identities. */ -@discriminator("odataType") +@discriminator("oDataType") model SearchIndexerDataIdentity { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: string; + oDataType: string; } /** @@ -8173,7 +8173,7 @@ model SearchIndexerDataNoneIdentity extends SearchIndexerDataIdentity { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DataNoneIdentity"; + oDataType: "#Microsoft.Azure.Search.DataNoneIdentity"; } /** @@ -8194,7 +8194,7 @@ model SearchIndexerDataUserAssignedIdentity extends SearchIndexerDataIdentity { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; + oDataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; } /** @@ -8212,7 +8212,7 @@ model HighWaterMarkChangeDetectionPolicy extends DataChangeDetectionPolicy { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; + oDataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; } /** @@ -8225,7 +8225,7 @@ model SqlIntegratedChangeTrackingPolicy extends DataChangeDetectionPolicy { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; + oDataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; } /** @@ -8250,7 +8250,7 @@ model SoftDeleteColumnDeletionDetectionPolicy */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; + oDataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; } /** @@ -8409,7 +8409,7 @@ model DefaultCognitiveServicesAccount extends CognitiveServicesAccount { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; + oDataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; } /** @@ -8428,7 +8428,7 @@ model CognitiveServicesAccountKey extends CognitiveServicesAccount { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; + oDataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; } /** @@ -8555,7 +8555,7 @@ model ConditionalSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Util.ConditionalSkill"; + oDataType: "#Microsoft.Skills.Util.ConditionalSkill"; } /** @@ -8585,7 +8585,7 @@ model KeyPhraseExtractionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; + oDataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; } /** @@ -8614,7 +8614,7 @@ model OcrSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Vision.OcrSkill"; + oDataType: "#Microsoft.Skills.Vision.OcrSkill"; } /** @@ -8642,7 +8642,7 @@ model ImageAnalysisSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; + oDataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; } /** @@ -8669,7 +8669,7 @@ model LanguageDetectionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; + oDataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; } /** @@ -8682,7 +8682,7 @@ model ShaperSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Util.ShaperSkill"; + oDataType: "#Microsoft.Skills.Util.ShaperSkill"; } /** @@ -8707,7 +8707,7 @@ model MergeSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.MergeSkill"; + oDataType: "#Microsoft.Skills.Text.MergeSkill"; } /** @@ -8744,7 +8744,7 @@ model EntityRecognitionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; + oDataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; } /** @@ -8761,7 +8761,7 @@ model SentimentSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.SentimentSkill"; + oDataType: "#Microsoft.Skills.Text.SentimentSkill"; } /** @@ -8795,7 +8795,7 @@ model SentimentSkillV3 extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; + oDataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; } /** @@ -8827,7 +8827,7 @@ model EntityLinkingSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; + oDataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; } /** @@ -8864,7 +8864,7 @@ model EntityRecognitionSkillV3 extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; + oDataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; } /** @@ -8923,7 +8923,7 @@ model PIIDetectionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; + oDataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; } /** @@ -8964,7 +8964,7 @@ model SplitSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.SplitSkill"; + oDataType: "#Microsoft.Skills.Text.SplitSkill"; } /** @@ -9012,7 +9012,7 @@ model CustomEntityLookupSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; + oDataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; } /** @@ -9043,7 +9043,7 @@ model TextTranslationSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.TranslationSkill"; + oDataType: "#Microsoft.Skills.Text.TranslationSkill"; } /** @@ -9072,7 +9072,7 @@ model DocumentExtractionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; + oDataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; } /** @@ -9135,7 +9135,7 @@ model WebApiSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Custom.WebApiSkill"; + oDataType: "#Microsoft.Skills.Custom.WebApiSkill"; } /** @@ -9157,5 +9157,5 @@ model AzureOpenAIEmbeddingSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; + oDataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; } From 1be8dc4259609d1bf1628c1708b96709712bd48b Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 14 Oct 2024 12:05:33 -0700 Subject: [PATCH 12/78] update --- .../search/Azure.Search/models-service.tsp | 182 +++++++++--------- .../search/Azure.Search/models-shared.tsp | 39 ++-- .../search/Azure.Search/routes-index.tsp | 31 ++- .../search/Azure.Search/routes-service.tsp | 103 +++------- 4 files changed, 157 insertions(+), 198 deletions(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 6a4e8c76263f..26a3d6dd30c2 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -4811,23 +4811,23 @@ model SearchIndexerDataContainer { /** * Base type for data change detection policies. */ -@discriminator("oDataType") +@discriminator("odataType") model DataChangeDetectionPolicy { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; } /** * Base type for data deletion detection policies. */ -@discriminator("oDataType") +@discriminator("odataType") model DataDeletionDetectionPolicy { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; } /** @@ -5459,12 +5459,12 @@ model SearchIndexerSkillset { /** * Base type for skills. */ -@discriminator("oDataType") +@discriminator("odataType") model SearchIndexerSkill { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the skill which uniquely identifies it within the skillset. A skill @@ -5542,12 +5542,12 @@ model OutputFieldMappingEntry { /** * Base type for describing any Azure AI service resource attached to a skillset. */ -@discriminator("oDataType") +@discriminator("odataType") model CognitiveServicesAccount { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * Description of the Azure AI service resource attached to a skillset. @@ -6156,12 +6156,12 @@ model SearchSuggester { /** * Base type for analyzers. */ -@discriminator("oDataType") +@discriminator("odataType") model LexicalAnalyzer { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the analyzer. It must only contain letters, digits, spaces, dashes @@ -6174,12 +6174,12 @@ model LexicalAnalyzer { /** * Base type for tokenizers. */ -@discriminator("oDataType") +@discriminator("odataType") model LexicalTokenizer { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the tokenizer. It must only contain letters, digits, spaces, dashes @@ -6192,12 +6192,12 @@ model LexicalTokenizer { /** * Base type for token filters. */ -@discriminator("oDataType") +@discriminator("odataType") model TokenFilter { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the token filter. It must only contain letters, digits, spaces, @@ -6210,12 +6210,12 @@ model TokenFilter { /** * Base type for character filters. */ -@discriminator("oDataType") +@discriminator("odataType") model CharFilter { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; /** * The name of the char filter. It must only contain letters, digits, spaces, @@ -6231,12 +6231,12 @@ model CharFilter { * relevant the document is to that specific query. Those scores are used to rank * the search results. */ -@discriminator("oDataType") +@discriminator("odataType") model SimilarityAlgorithm { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; } /** @@ -6699,7 +6699,7 @@ model CustomAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.CustomAnalyzer"; + odataType: "#Microsoft.Azure.Search.CustomAnalyzer"; } /** @@ -6733,7 +6733,7 @@ model PatternAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." - oDataType: "#Microsoft.Azure.Search.PatternAnalyzer"; + odataType: "#Microsoft.Azure.Search.PatternAnalyzer"; } /** @@ -6758,7 +6758,7 @@ model LuceneStandardAnalyzer extends LexicalAnalyzer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StandardAnalyzer"; + odataType: "#Microsoft.Azure.Search.StandardAnalyzer"; } /** @@ -6775,7 +6775,7 @@ model StopAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StopAnalyzer"; + odataType: "#Microsoft.Azure.Search.StopAnalyzer"; } /** @@ -6795,7 +6795,7 @@ model ClassicTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.ClassicTokenizer"; + odataType: "#Microsoft.Azure.Search.ClassicTokenizer"; } /** @@ -6826,7 +6826,7 @@ model EdgeNGramTokenizer extends LexicalTokenizer { * A URI fragment specifying the type of tokenizer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; + odataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; } /** @@ -6844,7 +6844,7 @@ model KeywordTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.KeywordTokenizer"; + odataType: "#Microsoft.Azure.Search.KeywordTokenizer"; } /** @@ -6864,7 +6864,7 @@ model KeywordTokenizerV2 extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; + odataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; } /** @@ -6895,7 +6895,7 @@ model MicrosoftLanguageTokenizer extends LexicalTokenizer { * A URI fragment specifying the type of tokenizer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; + odataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; } /** @@ -6928,7 +6928,7 @@ model MicrosoftLanguageStemmingTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; + odataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; } /** @@ -6960,7 +6960,7 @@ model NGramTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.NGramTokenizer"; + odataType: "#Microsoft.Azure.Search.NGramTokenizer"; } /** @@ -7001,7 +7001,7 @@ model PathHierarchyTokenizerV2 extends LexicalTokenizer { * A URI fragment specifying the type of tokenizer. */ @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; + odataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; } /** @@ -7032,7 +7032,7 @@ model PatternTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PatternTokenizer"; + odataType: "#Microsoft.Azure.Search.PatternTokenizer"; } /** @@ -7051,7 +7051,7 @@ model LuceneStandardTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StandardTokenizer"; + odataType: "#Microsoft.Azure.Search.StandardTokenizer"; } /** @@ -7071,7 +7071,7 @@ model LuceneStandardTokenizerV2 extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; + odataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; } /** @@ -7091,7 +7091,7 @@ model UaxUrlEmailTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; + odataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; } /** @@ -7111,7 +7111,7 @@ model AsciiFoldingTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; + odataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; } /** @@ -7135,7 +7135,7 @@ model CjkBigramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; + odataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; } /** @@ -7168,7 +7168,7 @@ model CommonGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; + odataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; } /** @@ -7213,7 +7213,7 @@ model DictionaryDecompounderTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; + odataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; } /** @@ -7243,7 +7243,7 @@ model EdgeNGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; + odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; } /** @@ -7276,7 +7276,7 @@ model EdgeNGramTokenFilterV2 extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; + odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; } /** @@ -7294,7 +7294,7 @@ model ElisionTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; + odataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; } /** @@ -7318,7 +7318,7 @@ model KeepTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.KeepTokenFilter"; + odataType: "#Microsoft.Azure.Search.KeepTokenFilter"; } /** @@ -7341,7 +7341,7 @@ model KeywordMarkerTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; + odataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; } /** @@ -7369,7 +7369,7 @@ model LengthTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.LengthTokenFilter"; + odataType: "#Microsoft.Azure.Search.LengthTokenFilter"; } /** @@ -7393,7 +7393,7 @@ model LimitTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.LimitTokenFilter"; + odataType: "#Microsoft.Azure.Search.LimitTokenFilter"; } /** @@ -7417,7 +7417,7 @@ model NGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.NGramTokenFilter"; + odataType: "#Microsoft.Azure.Search.NGramTokenFilter"; } /** @@ -7444,7 +7444,7 @@ model NGramTokenFilterV2 extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; + odataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; } /** @@ -7468,7 +7468,7 @@ model PatternCaptureTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; + odataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; } /** @@ -7495,7 +7495,7 @@ model PatternReplaceTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; + odataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; } /** @@ -7520,7 +7520,7 @@ model PhoneticTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; + odataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; } /** @@ -7571,7 +7571,7 @@ model ShingleTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; + odataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; } /** @@ -7589,7 +7589,7 @@ model SnowballTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; + odataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; } /** @@ -7607,7 +7607,7 @@ model StemmerTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; + odataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; } /** @@ -7629,7 +7629,7 @@ model StemmerOverrideTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; + odataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; } /** @@ -7667,7 +7667,7 @@ model StopwordsTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; + odataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; } /** @@ -7706,7 +7706,7 @@ model SynonymTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; + odataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; } /** @@ -7725,7 +7725,7 @@ model TruncateTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; + odataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; } /** @@ -7744,7 +7744,7 @@ model UniqueTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; + odataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; } /** @@ -7817,7 +7817,7 @@ model WordDelimiterTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; + odataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; } /** @@ -7838,7 +7838,7 @@ model MappingCharFilter extends CharFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.MappingCharFilter"; + odataType: "#Microsoft.Azure.Search.MappingCharFilter"; } /** @@ -7865,7 +7865,7 @@ model PatternReplaceCharFilter extends CharFilter { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; + odataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; } /** @@ -7877,7 +7877,7 @@ model PatternReplaceCharFilter extends CharFilter { model ClassicSimilarityAlgorithm extends SimilarityAlgorithm { #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.ClassicSimilarity"; + odataType: "#Microsoft.Azure.Search.ClassicSimilarity"; } /** @@ -7906,7 +7906,7 @@ model BM25SimilarityAlgorithm extends SimilarityAlgorithm { #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.BM25Similarity"; + odataType: "#Microsoft.Azure.Search.BM25Similarity"; } /** @@ -8091,12 +8091,12 @@ model AzureOpenAIVectorizerParameters { /** * Abstract base type for data identities. */ -@discriminator("oDataType") +@discriminator("odataType") model SearchIndexerDataIdentity { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: string; + odataType: string; } /** @@ -8173,7 +8173,7 @@ model SearchIndexerDataNoneIdentity extends SearchIndexerDataIdentity { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.DataNoneIdentity"; + odataType: "#Microsoft.Azure.Search.DataNoneIdentity"; } /** @@ -8194,7 +8194,7 @@ model SearchIndexerDataUserAssignedIdentity extends SearchIndexerDataIdentity { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; + odataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; } /** @@ -8212,7 +8212,7 @@ model HighWaterMarkChangeDetectionPolicy extends DataChangeDetectionPolicy { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; + odataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; } /** @@ -8225,7 +8225,7 @@ model SqlIntegratedChangeTrackingPolicy extends DataChangeDetectionPolicy { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; + odataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; } /** @@ -8250,7 +8250,7 @@ model SoftDeleteColumnDeletionDetectionPolicy */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; + odataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; } /** @@ -8409,7 +8409,7 @@ model DefaultCognitiveServicesAccount extends CognitiveServicesAccount { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; + odataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; } /** @@ -8428,7 +8428,7 @@ model CognitiveServicesAccountKey extends CognitiveServicesAccount { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; + odataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; } /** @@ -8555,7 +8555,7 @@ model ConditionalSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Util.ConditionalSkill"; + odataType: "#Microsoft.Skills.Util.ConditionalSkill"; } /** @@ -8585,7 +8585,7 @@ model KeyPhraseExtractionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; + odataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; } /** @@ -8614,7 +8614,7 @@ model OcrSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Vision.OcrSkill"; + odataType: "#Microsoft.Skills.Vision.OcrSkill"; } /** @@ -8642,7 +8642,7 @@ model ImageAnalysisSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; + odataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; } /** @@ -8669,7 +8669,7 @@ model LanguageDetectionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; + odataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; } /** @@ -8682,7 +8682,7 @@ model ShaperSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Util.ShaperSkill"; + odataType: "#Microsoft.Skills.Util.ShaperSkill"; } /** @@ -8707,7 +8707,7 @@ model MergeSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.MergeSkill"; + odataType: "#Microsoft.Skills.Text.MergeSkill"; } /** @@ -8744,7 +8744,7 @@ model EntityRecognitionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; + odataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; } /** @@ -8761,7 +8761,7 @@ model SentimentSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.SentimentSkill"; + odataType: "#Microsoft.Skills.Text.SentimentSkill"; } /** @@ -8795,7 +8795,7 @@ model SentimentSkillV3 extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; + odataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; } /** @@ -8827,7 +8827,7 @@ model EntityLinkingSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; + odataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; } /** @@ -8864,7 +8864,7 @@ model EntityRecognitionSkillV3 extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; + odataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; } /** @@ -8923,7 +8923,7 @@ model PIIDetectionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; + odataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; } /** @@ -8964,7 +8964,7 @@ model SplitSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.SplitSkill"; + odataType: "#Microsoft.Skills.Text.SplitSkill"; } /** @@ -9012,7 +9012,7 @@ model CustomEntityLookupSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; + odataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; } /** @@ -9043,7 +9043,7 @@ model TextTranslationSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.TranslationSkill"; + odataType: "#Microsoft.Skills.Text.TranslationSkill"; } /** @@ -9072,7 +9072,7 @@ model DocumentExtractionSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; + odataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; } /** @@ -9135,7 +9135,7 @@ model WebApiSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Custom.WebApiSkill"; + odataType: "#Microsoft.Skills.Custom.WebApiSkill"; } /** @@ -9157,5 +9157,5 @@ model AzureOpenAIEmbeddingSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @encodedName("application/json", "@odata.type") - oDataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; + odataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; } diff --git a/specification/search/Azure.Search/models-shared.tsp b/specification/search/Azure.Search/models-shared.tsp index f134f034609f..f52a3826474c 100644 --- a/specification/search/Azure.Search/models-shared.tsp +++ b/specification/search/Azure.Search/models-shared.tsp @@ -8,21 +8,6 @@ using Azure.Core; namespace SearchClient; -alias matchingHeader = { - @doc("Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.") - @header("If-Match") - ifMatch?: string; - - @doc("Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.") - @header("If-None-Match") - ifNoneMatch?: string; -}; - -alias clientRequestIdHeader = { - @doc("The tracking ID sent with the request to help with debugging.") - @header("x-ms-client-request-id") - xMsClientRequestId?: string; -}; alias preferHeader = { @doc("For HTTP PUT requests, instructs the service to return the created/updated resource on success.") @@ -70,6 +55,30 @@ alias synonymMapNamePath = { synonymMapName: string; }; +alias SearchOperation< + TParams extends Reflection.Model, + TResponse, + Traits extends Reflection.Model = {}, + TError extends Reflection.Model = ErrorResponse +> = Foundations.Operation< + TParams & ClientRequestIdHeader, + TResponse, + Traits, + TError +>; + +alias SearchConditionalOperation< + TParams extends Reflection.Model, + TResponse, + Traits extends Reflection.Model = {}, + TError extends Reflection.Model = ErrorResponse +> = Foundations.Operation< + TParams & ClientRequestIdHeader & ConditionalRequestHeaders, + TResponse, + Traits, + TError +>; + /** * Common error response for all Azure Resource Manager APIs to return error * details for failed operations. (This also follows the OData error response diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index c92d74f21a13..66ee928e7b2e 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -4,6 +4,7 @@ import "./models-index.tsp"; using TypeSpec.Rest; using TypeSpec.Http; +using Azure.Core; namespace SearchClient; @@ -16,10 +17,9 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/$count") @get - count is Azure.Core.Foundations.Operation< + count is SearchOperation< { - ...indexNamePath; - ...clientRequestIdHeader; + ...indexNamePath; }, void >; @@ -30,7 +30,7 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs") @get - searchGet is Azure.Core.Foundations.Operation< + searchGet is SearchOperation< { ...indexNamePath; @@ -209,8 +209,6 @@ interface DocumentsOperations { @query("$top") $top?: int32; - ...clientRequestIdHeader; - /** * The name of the semantic configuration that lists which fields should be used * for semantic ranking, captions, highlights, and answers @@ -275,10 +273,9 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.post.search") @post - searchPost is Azure.Core.Foundations.Operation< + searchPost is SearchOperation< { ...indexNamePath; - ...clientRequestIdHeader; /** * The definition of the Search request. */ @@ -294,7 +291,7 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs('{key}')") @get - get is Azure.Core.Foundations.Operation< + get is SearchOperation< { ...indexNamePath; /** @@ -312,7 +309,6 @@ interface DocumentsOperations { format: "csv", }) selectedFields?: string[]; - ...clientRequestIdHeader; }, void >; @@ -323,7 +319,7 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.suggest") @get - suggestGet is Azure.Core.Foundations.Operation< + suggestGet is SearchOperation< { ...indexNamePath; /** @@ -420,7 +416,6 @@ interface DocumentsOperations { */ @query("$top") $top?: int32; - ...clientRequestIdHeader; }, SuggestDocumentsResult >; @@ -431,10 +426,9 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.post.suggest") @post - suggestPost is Azure.Core.Foundations.Operation< + suggestPost is SearchOperation< { ...indexNamePath; - ...clientRequestIdHeader; /** * The Suggest request. */ @@ -450,10 +444,9 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.index") @post - index is Azure.Core.Foundations.Operation< + index is SearchOperation< { ...indexNamePath; - ...clientRequestIdHeader; /** * The batch of index actions. */ @@ -470,10 +463,9 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.autocomplete") @get - autocompleteGet is Azure.Core.Foundations.Operation< + autocompleteGet is SearchOperation< { ...indexNamePath; - ...clientRequestIdHeader; /** * The incomplete term which should be auto-completed. */ @@ -562,10 +554,9 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.post.autocomplete") @post - autocompletePost is Azure.Core.Foundations.Operation< + autocompletePost is SearchOperation< { ...indexNamePath; - ...clientRequestIdHeader; /** * The definition of the Autocomplete request. */ diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index 9241a800763c..9d27cd0ed03f 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -14,11 +14,9 @@ interface DataSourcesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @put - createOrUpdate is Azure.Core.Foundations.Operation< + createOrUpdate is SearchConditionalOperation< { ...dataSourceNamePath; - ...clientRequestIdHeader; - ...matchingHeader; ...preferHeader; /** * The definition of the datasource to create or update. @@ -35,11 +33,9 @@ interface DataSourcesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @delete - delete is Azure.Core.Foundations.Operation< + delete is SearchConditionalOperation< { ...dataSourceNamePath; - ...clientRequestIdHeader; - ...matchingHeader; }, void >; @@ -50,10 +46,9 @@ interface DataSourcesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @get - get is Azure.Core.Foundations.Operation< + get is SearchOperation< { ...dataSourceNamePath; - ...clientRequestIdHeader; }, SearchIndexerDataSource >; @@ -64,10 +59,9 @@ interface DataSourcesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources") @get - list is Azure.Core.Foundations.Operation< + list is SearchOperation< { ...selectQuery; - ...clientRequestIdHeader; }, ListDataSourcesResult >; @@ -78,9 +72,8 @@ interface DataSourcesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources") @post - create is Azure.Core.Foundations.Operation< + create is SearchOperation< { - ...clientRequestIdHeader; /** * The definition of the datasource to create. */ @@ -98,10 +91,9 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.reset") @post - reset is Azure.Core.Foundations.Operation< + reset is SearchOperation< { ...indexerNamePath; - ...clientRequestIdHeader; }, void >; @@ -112,10 +104,9 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.run") @post - run is Azure.Core.Foundations.Operation< + run is SearchOperation< { ...indexerNamePath; - ...clientRequestIdHeader; }, void >; @@ -126,11 +117,9 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')") @put - createOrUpdate is Azure.Core.Foundations.Operation< + createOrUpdate is SearchConditionalOperation< { ...indexerNamePath; - ...clientRequestIdHeader; - ...matchingHeader; ...preferHeader; /** * The definition of the indexer to create or update. @@ -147,11 +136,9 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')") @delete - delete is Azure.Core.Foundations.Operation< + delete is SearchConditionalOperation< { ...indexerNamePath; - ...clientRequestIdHeader; - ...matchingHeader; }, void >; @@ -162,10 +149,9 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')") @get - get is Azure.Core.Foundations.Operation< + get is SearchOperation< { ...indexerNamePath; - ...clientRequestIdHeader; }, SearchIndexer >; @@ -176,10 +162,9 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers") @get - list is Azure.Core.Foundations.Operation< + list is SearchOperation< { ...selectQuery; - ...clientRequestIdHeader; }, ListIndexersResult >; @@ -190,9 +175,8 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers") @post - create is Azure.Core.Foundations.Operation< + create is SearchOperation< { - ...clientRequestIdHeader; /** * The definition of the indexer to create. */ @@ -208,10 +192,9 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.status") @get - getStatus is Azure.Core.Foundations.Operation< + getStatus is SearchOperation< { ...indexerNamePath; - ...clientRequestIdHeader; }, SearchIndexerStatus >; @@ -225,11 +208,9 @@ interface SkillsetsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @put - createOrUpdate is Azure.Core.Foundations.Operation< + createOrUpdate is SearchConditionalOperation< { ...skillsetNamePath; - ...clientRequestIdHeader; - ...matchingHeader; ...preferHeader; /** * The skillset containing one or more skills to create or update in a search @@ -247,11 +228,9 @@ interface SkillsetsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @delete - delete is Azure.Core.Foundations.Operation< + delete is SearchConditionalOperation< { ...skillsetNamePath; - ...clientRequestIdHeader; - ...matchingHeader; }, void >; @@ -262,10 +241,9 @@ interface SkillsetsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @get - get is Azure.Core.Foundations.Operation< + get is SearchOperation< { ...skillsetNamePath; - ...clientRequestIdHeader; }, SearchIndexerSkillset >; @@ -276,10 +254,9 @@ interface SkillsetsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets") @get - list is Azure.Core.Foundations.Operation< + list is SearchOperation< { ...selectQuery; - ...clientRequestIdHeader; }, ListSkillsetsResult >; @@ -290,9 +267,8 @@ interface SkillsetsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets") @post - create is Azure.Core.Foundations.Operation< + create is SearchOperation< { - ...clientRequestIdHeader; /** * The skillset containing one or more skills to create in a search service. */ @@ -310,11 +286,9 @@ interface SynonymMapsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @put - createOrUpdate is Azure.Core.Foundations.Operation< + createOrUpdate is SearchConditionalOperation< { ...synonymMapNamePath; - ...clientRequestIdHeader; - ...matchingHeader; ...preferHeader; /** * The definition of the synonym map to create or update. @@ -331,11 +305,9 @@ interface SynonymMapsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @delete - delete is Azure.Core.Foundations.Operation< + delete is SearchConditionalOperation< { ...synonymMapNamePath; - ...clientRequestIdHeader; - ...matchingHeader; }, void >; @@ -346,10 +318,9 @@ interface SynonymMapsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @get - get is Azure.Core.Foundations.Operation< + get is SearchOperation< { ...synonymMapNamePath; - ...clientRequestIdHeader; }, SynonymMap >; @@ -360,10 +331,9 @@ interface SynonymMapsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps") @get - list is Azure.Core.Foundations.Operation< + list is SearchOperation< { ...selectQuery; - ...clientRequestIdHeader; }, ListSynonymMapsResult >; @@ -374,9 +344,8 @@ interface SynonymMapsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps") @post - create is Azure.Core.Foundations.Operation< + create is SearchOperation< { - ...clientRequestIdHeader; /** * The definition of the synonym map to create. */ @@ -394,9 +363,8 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes") @post - create is Azure.Core.Foundations.Operation< + create is SearchOperation< { - ...clientRequestIdHeader; /** * The definition of the index to create. */ @@ -412,10 +380,9 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes") @get - list is Azure.Core.Foundations.Operation< + list is SearchOperation< { ...selectQuery; - ...clientRequestIdHeader; }, ListIndexesResult >; @@ -426,7 +393,7 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @put - createOrUpdate is Azure.Core.Foundations.Operation< + createOrUpdate is SearchConditionalOperation< { ...indexNamePath; /** @@ -438,8 +405,6 @@ interface IndexesOperations { */ @query("allowIndexDowntime") allowIndexDowntime?: boolean; - ...clientRequestIdHeader; - ...matchingHeader; ...preferHeader; /** * The definition of the index to create or update. @@ -459,10 +424,9 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @delete - delete is Azure.Core.Foundations.Operation< + delete is SearchConditionalOperation< { ...indexNamePath; - ...matchingHeader; }, void >; @@ -473,10 +437,9 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @get - get is Azure.Core.Foundations.Operation< + get is SearchOperation< { ...indexNamePath; - ...clientRequestIdHeader; }, SearchIndex >; @@ -488,10 +451,9 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')/search.stats") @get - getStatistics is Azure.Core.Foundations.Operation< + getStatistics is SearchOperation< { ...indexNamePath; - ...clientRequestIdHeader; }, GetIndexStatisticsResult >; @@ -502,11 +464,9 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')/search.analyze") @post - analyze is Azure.Core.Foundations.Operation< + analyze is SearchOperation< { ...indexNamePath; - ...clientRequestIdHeader; - /** * The text and analyzer or analysis components to test. */ @@ -523,9 +483,8 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/servicestats") @get -op getServiceStatistics is Azure.Core.Foundations.Operation< +op getServiceStatistics is SearchOperation< { - ...clientRequestIdHeader; }, SearchServiceStatistics >; From ee863d1748d7dabcb4156fb922179771f2969a9a Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 14 Oct 2024 12:55:48 -0700 Subject: [PATCH 13/78] update --- .../search/Azure.Search/models-shared.tsp | 61 +++++++++++- .../search/Azure.Search/routes-index.tsp | 28 ++---- .../search/Azure.Search/routes-service.tsp | 97 ++++++++----------- 3 files changed, 107 insertions(+), 79 deletions(-) diff --git a/specification/search/Azure.Search/models-shared.tsp b/specification/search/Azure.Search/models-shared.tsp index f52a3826474c..437047c0dc01 100644 --- a/specification/search/Azure.Search/models-shared.tsp +++ b/specification/search/Azure.Search/models-shared.tsp @@ -8,6 +8,15 @@ using Azure.Core; namespace SearchClient; +alias matchingHeader = { + @doc("Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.") + @header("If-Match") + ifMatch?: string; + + @doc("Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.") + @header("If-None-Match") + ifNoneMatch?: string; +}; alias preferHeader = { @doc("For HTTP PUT requests, instructs the service to return the created/updated resource on success.") @@ -67,13 +76,61 @@ alias SearchOperation< TError >; -alias SearchConditionalOperation< +alias SearchIndexOperation< + TParams extends Reflection.Model, + TResponse, + Traits extends Reflection.Model = {}, + TError extends Reflection.Model = ErrorResponse +> = Foundations.Operation< + TParams & ClientRequestIdHeader & indexNamePath, + TResponse, + Traits, + TError +>; + +alias SearchIndexerOperation< + TParams extends Reflection.Model, + TResponse, + Traits extends Reflection.Model = {}, + TError extends Reflection.Model = ErrorResponse +> = Foundations.Operation< + TParams & ClientRequestIdHeader & indexerNamePath, + TResponse, + Traits, + TError +>; + +alias SearchDataSourceOperation< + TParams extends Reflection.Model, + TResponse, + Traits extends Reflection.Model = {}, + TError extends Reflection.Model = ErrorResponse +> = Foundations.Operation< + TParams & ClientRequestIdHeader & dataSourceNamePath, + TResponse, + Traits, + TError +>; + +alias SearchSkillsetOperation< + TParams extends Reflection.Model, + TResponse, + Traits extends Reflection.Model = {}, + TError extends Reflection.Model = ErrorResponse +> = Foundations.Operation< + TParams & ClientRequestIdHeader & skillsetNamePath, + TResponse, + Traits, + TError +>; + +alias SearchSynonymMapOperation< TParams extends Reflection.Model, TResponse, Traits extends Reflection.Model = {}, TError extends Reflection.Model = ErrorResponse > = Foundations.Operation< - TParams & ClientRequestIdHeader & ConditionalRequestHeaders, + TParams & ClientRequestIdHeader & synonymMapNamePath, TResponse, Traits, TError diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index 66ee928e7b2e..2393a1cad0cb 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -17,9 +17,8 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/$count") @get - count is SearchOperation< + count is SearchIndexOperation< { - ...indexNamePath; }, void >; @@ -30,10 +29,8 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs") @get - searchGet is SearchOperation< + searchGet is SearchIndexOperation< { - ...indexNamePath; - /** * A full-text search query expression; Use "*" or omit this parameter to match * all documents. @@ -273,9 +270,8 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.post.search") @post - searchPost is SearchOperation< + searchPost is SearchIndexOperation< { - ...indexNamePath; /** * The definition of the Search request. */ @@ -291,9 +287,8 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs('{key}')") @get - get is SearchOperation< + get is SearchIndexOperation< { - ...indexNamePath; /** * The key of the document to retrieve. */ @@ -319,9 +314,8 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.suggest") @get - suggestGet is SearchOperation< + suggestGet is SearchIndexOperation< { - ...indexNamePath; /** * The search text to use to suggest documents. Must be at least 1 character, and * no more than 100 characters. @@ -426,9 +420,8 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.post.suggest") @post - suggestPost is SearchOperation< + suggestPost is SearchIndexOperation< { - ...indexNamePath; /** * The Suggest request. */ @@ -444,9 +437,8 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.index") @post - index is SearchOperation< + index is SearchIndexOperation< { - ...indexNamePath; /** * The batch of index actions. */ @@ -463,9 +455,8 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.autocomplete") @get - autocompleteGet is SearchOperation< + autocompleteGet is SearchIndexOperation< { - ...indexNamePath; /** * The incomplete term which should be auto-completed. */ @@ -554,9 +545,8 @@ interface DocumentsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/docs/search.post.autocomplete") @post - autocompletePost is SearchOperation< + autocompletePost is SearchIndexOperation< { - ...indexNamePath; /** * The definition of the Autocomplete request. */ diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index 9d27cd0ed03f..439e8aca151c 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -14,9 +14,9 @@ interface DataSourcesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @put - createOrUpdate is SearchConditionalOperation< + createOrUpdate is SearchDataSourceOperation< { - ...dataSourceNamePath; + ...matchingHeader; ...preferHeader; /** * The definition of the datasource to create or update. @@ -33,9 +33,9 @@ interface DataSourcesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @delete - delete is SearchConditionalOperation< + delete is SearchDataSourceOperation< { - ...dataSourceNamePath; + ...matchingHeader; }, void >; @@ -46,10 +46,8 @@ interface DataSourcesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @get - get is SearchOperation< - { - ...dataSourceNamePath; - }, + get is SearchDataSourceOperation< + {}, SearchIndexerDataSource >; @@ -91,10 +89,8 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.reset") @post - reset is SearchOperation< - { - ...indexerNamePath; - }, + reset is SearchIndexerOperation< + {}, void >; @@ -104,10 +100,8 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.run") @post - run is SearchOperation< - { - ...indexerNamePath; - }, + run is SearchIndexerOperation< + {}, void >; @@ -117,9 +111,9 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')") @put - createOrUpdate is SearchConditionalOperation< + createOrUpdate is SearchIndexerOperation< { - ...indexerNamePath; + ...matchingHeader; ...preferHeader; /** * The definition of the indexer to create or update. @@ -136,9 +130,9 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')") @delete - delete is SearchConditionalOperation< + delete is SearchIndexerOperation< { - ...indexerNamePath; + ...matchingHeader; }, void >; @@ -149,10 +143,8 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')") @get - get is SearchOperation< - { - ...indexerNamePath; - }, + get is SearchIndexerOperation< + {}, SearchIndexer >; @@ -192,10 +184,8 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.status") @get - getStatus is SearchOperation< - { - ...indexerNamePath; - }, + getStatus is SearchIndexerOperation< + {}, SearchIndexerStatus >; } @@ -208,9 +198,9 @@ interface SkillsetsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @put - createOrUpdate is SearchConditionalOperation< + createOrUpdate is SearchSkillsetOperation< { - ...skillsetNamePath; + ...matchingHeader; ...preferHeader; /** * The skillset containing one or more skills to create or update in a search @@ -228,9 +218,9 @@ interface SkillsetsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @delete - delete is SearchConditionalOperation< + delete is SearchSkillsetOperation< { - ...skillsetNamePath; + ...matchingHeader; }, void >; @@ -241,10 +231,8 @@ interface SkillsetsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @get - get is SearchOperation< - { - ...skillsetNamePath; - }, + get is SearchSkillsetOperation< + {}, SearchIndexerSkillset >; @@ -286,9 +274,9 @@ interface SynonymMapsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @put - createOrUpdate is SearchConditionalOperation< + createOrUpdate is SearchSynonymMapOperation< { - ...synonymMapNamePath; + ...matchingHeader; ...preferHeader; /** * The definition of the synonym map to create or update. @@ -305,9 +293,9 @@ interface SynonymMapsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @delete - delete is SearchConditionalOperation< + delete is SearchSynonymMapOperation< { - ...synonymMapNamePath; + ...matchingHeader; }, void >; @@ -318,10 +306,8 @@ interface SynonymMapsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @get - get is SearchOperation< - { - ...synonymMapNamePath; - }, + get is SearchSynonymMapOperation< + {}, SynonymMap >; @@ -393,9 +379,9 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @put - createOrUpdate is SearchConditionalOperation< + createOrUpdate is SearchIndexOperation< { - ...indexNamePath; + ...matchingHeader; /** * Allows new analyzers, tokenizers, token filters, or char filters to be added to * an index by taking the index offline for at least a few seconds. This @@ -424,9 +410,9 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @delete - delete is SearchConditionalOperation< + delete is SearchIndexOperation< { - ...indexNamePath; + ...matchingHeader; }, void >; @@ -437,10 +423,8 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @get - get is SearchOperation< - { - ...indexNamePath; - }, + get is SearchIndexOperation< + {}, SearchIndex >; @@ -451,10 +435,8 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')/search.stats") @get - getStatistics is SearchOperation< - { - ...indexNamePath; - }, + getStatistics is SearchIndexOperation< + {}, GetIndexStatisticsResult >; @@ -464,9 +446,8 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')/search.analyze") @post - analyze is SearchOperation< + analyze is SearchIndexOperation< { - ...indexNamePath; /** * The text and analyzer or analysis components to test. */ From d993324db10dfe4b1b1c42e9e8d14c0cef163e8d Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 14 Oct 2024 13:56:55 -0700 Subject: [PATCH 14/78] update --- .../search/Azure.Search/routes-index.tsp | 39 +++++++------------ 1 file changed, 15 insertions(+), 24 deletions(-) diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index 2393a1cad0cb..6e986925b054 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -51,10 +51,10 @@ interface DocumentsOperations { * expression contains a field name, optionally followed by a comma-separated list * of name:value pairs. */ - #suppress "@azure-tools/typespec-azure-core/prefer-csv-collection-format" "Existing" - @query({ + #suppress "@azure-tools/typespec-azure-core/no-query-explode" "Existing" + @query(#{ name: "facet", - format: "multi", + explode: true, }) facets?: string[]; @@ -68,9 +68,8 @@ interface DocumentsOperations { * The list of field names to use for hit highlights. Only searchable fields can * be used for hit highlighting. */ - @query({ + @query(#{ name: "highlight", - format: "csv", }) highlightFields?: string[]; @@ -106,9 +105,8 @@ interface DocumentsOperations { * specified, the default sort order is descending by document match score. There * can be at most 32 $orderby clauses. */ - @query({ + @query(#{ name: "$orderby", - format: "csv", }) orderBy?: string[]; @@ -125,10 +123,10 @@ interface DocumentsOperations { * scoring profile defines a function with a parameter called 'mylocation' the * parameter string would be "mylocation--122.2,44.8" (without the quotes). */ - #suppress "@azure-tools/typespec-azure-core/prefer-csv-collection-format" "Existing" - @query({ + #suppress "@azure-tools/typespec-azure-core/no-query-explode" "Existing" + @query(#{ name: "scoringParameter", - format: "multi", + explode: true, }) scoringParameters?: string[]; @@ -145,9 +143,8 @@ interface DocumentsOperations { * names of each fielded search expression take precedence over any field names * listed in this parameter. */ - @query({ + @query(#{ name: "searchFields", - format: "csv", }) searchFields?: string[]; @@ -181,9 +178,8 @@ interface DocumentsOperations { * The list of fields to retrieve. If unspecified, all fields marked as * retrievable in the schema are included. */ - @query({ + @query(#{ name: "$select", - format: "csv", }) $select?: string[]; @@ -299,9 +295,8 @@ interface DocumentsOperations { * List of field names to retrieve for the document; Any field not retrieved will * be missing from the returned document. */ - @query({ + @query(#{ name: "$select", - format: "csv", }) selectedFields?: string[]; }, @@ -378,9 +373,8 @@ interface DocumentsOperations { * specified, the default sort order is descending by document match score. There * can be at most 32 $orderby clauses. */ - @query({ + @query(#{ name: "$orderby", - format: "csv", }) orderBy?: string[]; @@ -388,9 +382,8 @@ interface DocumentsOperations { * The list of field names to search for the specified search text. Target fields * must be included in the specified suggester. */ - @query({ + @query(#{ name: "searchFields", - format: "csv", }) searchFields?: string[]; @@ -398,9 +391,8 @@ interface DocumentsOperations { * The list of fields to retrieve. If unspecified, only the key field will be * included in the results. */ - @query({ + @query(#{ name: "$select", - format: "csv", }) $select?: string[]; @@ -522,9 +514,8 @@ interface DocumentsOperations { * The list of field names to consider when querying for auto-completed terms. * Target fields must be included in the specified suggester. */ - @query({ + @query(#{ name: "searchFields", - format: "csv", }) searchFields?: string[]; From 77f347041ee1593bb1d0c0f4e8f0b217b11c46a1 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 16 Oct 2024 09:47:50 -0700 Subject: [PATCH 15/78] update --- .../search/Azure.Search/models-index.tsp | 3 +++ .../search/Azure.Search/models-service.tsp | 15 +++++++++++++++ .../search/Azure.Search/routes-index.tsp | 6 +++--- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index 9b75e7e9f9a4..a899d6475e39 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -886,6 +886,9 @@ model IndexAction { * request. */ model IndexDocumentsResult { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("Response containing the status of operations for all actions in the batch.") + @statusCode _: 200 | 207; /** * The list of status information for each document in the indexing request. */ diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 26a3d6dd30c2..f68ef28f0d5b 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -4722,6 +4722,9 @@ union StopwordsList { * Represents a datasource definition, which can be used to configure an indexer. */ model SearchIndexerDataSource { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("Succesfully created or updated") + @statusCode _: 200 | 201; /** * The name of the datasource. */ @@ -4899,6 +4902,9 @@ model ListDataSourcesResult { * Represents an indexer. */ model SearchIndexer { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("Succesfully created or updated") + @statusCode _: 200 | 201; /** * The name of the indexer. */ @@ -5402,6 +5408,9 @@ model SearchIndexerLimits { * A list of skills. */ model SearchIndexerSkillset { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("Succesfully created or updated") + @statusCode _: 200 | 201; /** * The name of the skillset. */ @@ -5737,6 +5746,9 @@ model ListSkillsetsResult { * Represents a synonym map definition. */ model SynonymMap { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("Succesfully created or updated") + @statusCode _: 200 | 201; /** * The name of the synonym map. */ @@ -5791,6 +5803,9 @@ model ListSynonymMapsResult { * behavior of an index. */ model SearchIndex { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("Succesfully created or updated") + @statusCode _: 200 | 201; /** * The name of the index. */ diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index 6e986925b054..76c09cd43959 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -20,7 +20,7 @@ interface DocumentsOperations { count is SearchIndexOperation< { }, - void + int32 >; /** @@ -300,7 +300,7 @@ interface DocumentsOperations { }) selectedFields?: string[]; }, - void + Record >; /** @@ -430,7 +430,7 @@ interface DocumentsOperations { @route("/docs/search.index") @post index is SearchIndexOperation< - { + { /** * The batch of index actions. */ From ecfba8cc6e052a352a8f033b57892425aa8ae6c4 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 16 Oct 2024 13:20:23 -0700 Subject: [PATCH 16/78] update --- specification/search/Azure.Search/main.tsp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp index 778e54baac24..6c6c70bcd02f 100644 --- a/specification/search/Azure.Search/main.tsp +++ b/specification/search/Azure.Search/main.tsp @@ -16,6 +16,13 @@ using TypeSpec.Versioning; * Client that can be used to manage and query indexes and documents, as well as * manage other resources, on a search service. */ +@useAuth(ApiKeyAuth | OAuth2Auth<[ + { + type: OAuth2FlowType.implicit, + authorizationUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + scopes: ["https://search.azure.com/.default"], + } + ]>) @service({ title: "SearchClient", }) From 4b9426fe75c2a610668849ae682db69042cac25e Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 21 Oct 2024 07:18:32 -0700 Subject: [PATCH 17/78] update --- specification/search/Azure.Search/client.tsp | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index b7569b09f62a..5edf40d4d78f 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -9,22 +9,6 @@ using SearchClient; @TypeSpec.Versioning.useDependency(SearchClient.Versions.v2024_07_01) namespace Customizations; -// @client({ -// name: "SearchIndexClient", -// service: SearchClient, -// }) -// interface Client1 { -// DataSourcesOperationsCreateOrUpdate is SearchClient.DataSourcesOperations.createOrUpdate; -// } - -// @client({ -// name: "SearchServiceClient", -// service: SearchClient, -// }) -// interface Client2 { -// DataSourcesOperationsDelete is SearchClient.DataSourcesOperations.delete; -// } - @@access(VectorSearchAlgorithmKind, Access.public); @@usage(VectorSearchAlgorithmKind, Usage.input); @@access(VectorSearchVectorizerKind, Access.public); From dc2f2351d9593182b54e04b4743100f698bcf7ca Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 24 Oct 2024 08:09:08 -0700 Subject: [PATCH 18/78] Update specification/search/Azure.Search/main.tsp Co-authored-by: catalinaperalta --- specification/search/Azure.Search/main.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp index 6c6c70bcd02f..576852fc9485 100644 --- a/specification/search/Azure.Search/main.tsp +++ b/specification/search/Azure.Search/main.tsp @@ -24,7 +24,7 @@ using TypeSpec.Versioning; } ]>) @service({ - title: "SearchClient", + title: "Azure AI Search", }) @versioned(Versions) namespace SearchClient; From eac25308612df8c41f65fc136133e17016fec693 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 24 Oct 2024 08:09:20 -0700 Subject: [PATCH 19/78] Update specification/search/Azure.Search/main.tsp Co-authored-by: catalinaperalta --- specification/search/Azure.Search/main.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp index 576852fc9485..5515af358b69 100644 --- a/specification/search/Azure.Search/main.tsp +++ b/specification/search/Azure.Search/main.tsp @@ -36,6 +36,6 @@ enum Versions { /** * The 2024-07-01 API version. */ - @useDependency(Azure.Core.Versions.v1_0_Preview_1) + @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2024_07_01: "2024-07-01", } From 536a123fd44338b022106047ada92debeb639f0b Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 24 Oct 2024 08:09:28 -0700 Subject: [PATCH 20/78] Update specification/search/Azure.Search/main.tsp Co-authored-by: catalinaperalta --- specification/search/Azure.Search/main.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp index 5515af358b69..431c07d6f27e 100644 --- a/specification/search/Azure.Search/main.tsp +++ b/specification/search/Azure.Search/main.tsp @@ -27,7 +27,7 @@ using TypeSpec.Versioning; title: "Azure AI Search", }) @versioned(Versions) -namespace SearchClient; +namespace Search; /** * The available API versions. From cdb947a1bf0bfdb7814445e4655fc84db4e70365 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Fri, 25 Oct 2024 13:53:08 -0700 Subject: [PATCH 21/78] updates --- specification/search/Azure.Search/client.tsp | 79 ++++++- specification/search/Azure.Search/main.tsp | 6 + .../search/Azure.Search/models-index.tsp | 51 ++--- .../search/Azure.Search/models-service.tsp | 197 +++++++----------- .../search/Azure.Search/models-shared.tsp | 2 +- .../search/Azure.Search/routes-index.tsp | 2 +- .../search/Azure.Search/routes-service.tsp | 2 +- 7 files changed, 178 insertions(+), 161 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 5edf40d4d78f..27afeb69a053 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -4,12 +4,87 @@ import "./main.tsp"; using TypeSpec.Versioning; using Azure.ClientGenerator.Core; -using SearchClient; +using Search; -@TypeSpec.Versioning.useDependency(SearchClient.Versions.v2024_07_01) +@TypeSpec.Versioning.useDependency(Search.Versions.v2024_07_01) namespace Customizations; @@access(VectorSearchAlgorithmKind, Access.public); @@usage(VectorSearchAlgorithmKind, Usage.input); @@access(VectorSearchVectorizerKind, Access.public); @@usage(VectorSearchVectorizerKind, Usage.input); +@@clientName(SearchDocumentsResult.value, "results"); +@@clientName(SearchRequest.count, "includeTotalResultCount"); +@@clientName(SearchRequest.highlight, "highlightFields"); +@@clientName(SearchRequest.search, "searchText"); +@@clientName(SearchRequest.orderby, "orderBy"); +@@clientName(SuggestDocumentsResult.value, "results"); +@@clientName(SuggestRequest.fuzzy, "useFuzzyMatching"); +@@clientName(SuggestRequest.orderby, "orderBy"); +@@clientName(SuggestRequest.search, "searchText"); +@@clientName(IndexBatch.value, "actions"); +@@clientName(IndexDocumentsResult.value, "results"); +@@clientName(IndexingResult.status, "succeeded"); +@@clientName(AutocompleteResult.value, "results"); +@@clientName(AutocompleteRequest.search, "searchText"); +@@clientName(AutocompleteRequest.fuzzy, "useFuzzyMatching"); +@@clientName(ListDataSourcesResult.value, "dataSources"); +@@clientName(SearchResourceEncryptionKey.keyVaultKeyName, "keyName"); +@@clientName(SearchResourceEncryptionKey.keyVaultKeyVersion, "keyVersion"); +@@clientName(SearchResourceEncryptionKey.keyVaultUri, "vaultUri"); +@@clientName(SearchIndexer.disabled, "isDisabled"); +@@clientName(ListIndexersResult.value, "indexers"); +@@clientName(IndexerExecutionResult.itemsProcessed, "itemCount"); +@@clientName(IndexerExecutionResult.itemsFailed, "failedItemCount"); +@@clientName(SearchIndexerSkillset.cognitiveServices, "cognitiveServicesAccount"); +@@clientName(SearchIndexerSkillset.indexProjections, "indexProjection"); +@@clientName(ListSkillsetsResult.value, "skillsets"); +@@clientName(ListSynonymMapsResult.value, "synonymMaps"); +@@clientName(SearchIndex.semantic, "semanticSearch"); +@@clientName(SearchField.dimensions, "vectorSearchDimensions"); +@@clientName(SearchField.vectorSearchProfile, "vectorSearchProfileName"); +@@clientName(SearchField.vectorEncoding, "vectorEncodingFormat"); +@@clientName(ScoringProfile.text, "textWeights"); +@@clientName(SemanticSearch.defaultConfiguration, "defaultConfigurationName"); +@@clientName(SemanticPrioritizedFields.prioritizedContentFields, "contentFields"); +@@clientName(SemanticPrioritizedFields.prioritizedKeywordsFields, "keywordsFields"); +@@clientName(VectorSearchProfile.algorithm, "algorithmConfigurationName"); +@@clientName(VectorSearchProfile.vectorizer, "vectorizerName"); +@@clientName(VectorSearchProfile.compression, "compressionName"); +@@clientName(VectorSearchVectorizer.name, "vectorizerName"); +@@clientName(VectorSearchCompression.name, "compressionName"); +@@clientName(ListIndexesResult.value, "indexes"); +@@clientName(SearchServiceCounters.documentCount, "documentCounter"); +@@clientName(SearchServiceCounters.indexesCount, "indexCounter"); +@@clientName(SearchServiceCounters.indexersCount, "indexerCounter"); +@@clientName(SearchServiceCounters.dataSourcesCount, "dataSourceCounter"); +@@clientName(SearchServiceCounters.storageSize, "storageSizeCounter"); +@@clientName(SearchServiceCounters.synonymMaps, "synonymMapCounter"); +@@clientName(SearchServiceCounters.skillsetCount, "skillsetCounter"); +@@clientName(SearchServiceCounters.vectorIndexSize, "vectorIndexSizeCounter"); +@@clientName(SearchServiceLimits.maxStoragePerIndex, "maxStoragePerIndexInBytes"); +@@clientName(PatternAnalyzer.lowercase, "lowerCaseTerms"); +@@clientName(PathHierarchyTokenizerV2.reverse, "reverseTokenOrder"); +@@clientName(PathHierarchyTokenizerV2.skip, "numberOfTokensToSkip"); +@@clientName(CommonGramTokenFilter.queryMode, "useQueryMode"); +@@clientName(KeepTokenFilter.keepWordsCase, "lowerCaseKeepWords"); +@@clientName(LengthTokenFilter.min, "minLength"); +@@clientName(LengthTokenFilter.max, "maxLength"); +@@clientName(PhoneticTokenFilter.replace, "replaceOriginalTokens"); +@@clientName(StopwordsTokenFilter.removeTrailing, "removeTrailingStopWords"); +@@clientName(HnswAlgorithmConfiguration.hnswParameters, "parameters"); +@@clientName(ExhaustiveKnnAlgorithmConfiguration.exhaustiveKnnParameters, "parameters"); +@@clientName(ScalarQuantizationCompression.scalarQuantizationParameters, "parameters"); +@@clientName(AzureOpenAIVectorizer.azureOpenAIParameters, "parameters"); +@@clientName(AzureOpenAIVectorizerParameters.resourceUri, "resourceUrl"); +@@clientName(AzureOpenAIVectorizerParameters.deploymentId, "deploymentName"); +@@clientName(WebApiVectorizer.customWebApiParameters, "webApiParameters"); +@@clientName(WebApiVectorizerParameters.uri, "url"); +@@clientName(SearchIndexerDataUserAssignedIdentity.userAssignedIdentity, "resourceId"); +@@clientName(DistanceScoringFunction.distance, "parameters"); +@@clientName(FreshnessScoringFunction.freshness, "parameters"); +@@clientName(MagnitudeScoringFunction.magnitude, "parameters"); +@@clientName(MagnitudeScoringParameters.constantBoostBeyondRange, "shouldBoostBeyondRangeByConstant"); +@@clientName(TagScoringFunction.tag, "parameters"); +@@clientName(OcrSkill.detectOrientation, "shouldDetectOrientation"); +@@clientName(PIIDetectionSkill.maskingCharacter, "mask"); diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp index 431c07d6f27e..0c92559e7543 100644 --- a/specification/search/Azure.Search/main.tsp +++ b/specification/search/Azure.Search/main.tsp @@ -38,4 +38,10 @@ enum Versions { */ @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2024_07_01: "2024-07-01", + + /** + * The 2024-11-01-preview API version. + */ + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + v2024_11_01_preview: "2024-11-01-preview", } diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index a899d6475e39..b6e4d6086691 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -5,7 +5,7 @@ import "./models-shared.tsp"; using TypeSpec.Rest; using TypeSpec.Http; -namespace SearchClient; +namespace Search; /** * Allows the user to choose whether a semantic call should fail completely, or to @@ -346,8 +346,7 @@ model SearchDocumentsResult { * The sequence of results returned by the query. */ @visibility("read") - @encodedName("application/json", "value") - results: SearchResult[]; + value: SearchResult[]; /** * Continuation URL returned when the query can't return all the requested results @@ -437,8 +436,7 @@ model SearchRequest { * false. Setting this value to true may have a performance impact. Note that the * count returned is an approximation. */ - @encodedName("application/json", "count") - includeTotalResultCount?: boolean; + count?: boolean; /** * The list of facet expressions to apply to the search query. Each facet @@ -456,8 +454,7 @@ model SearchRequest { * The comma-separated list of field names to use for hit highlights. Only * searchable fields can be used for hit highlighting. */ - @encodedName("application/json", "highlight") - highlightFields?: string; + highlight?: string; /** * A string tag that is appended to hit highlights. Must be set with @@ -488,8 +485,7 @@ model SearchRequest { * $orderby is specified, the default sort order is descending by document match * score. There can be at most 32 $orderby clauses. */ - @encodedName("application/json", "orderby") - orderBy?: string; + orderby?: string; /** * A value that specifies the syntax of the search query. The default is 'simple'. @@ -534,8 +530,7 @@ model SearchRequest { * A full-text search query expression; Use "*" or omit this parameter to match * all documents. */ - @encodedName("application/json", "search") - searchText?: string; + search?: string; /** * The comma-separated list of field names to which to scope the full-text search. @@ -628,7 +623,6 @@ model SearchRequest { /** * The query parameters for vector and hybrid search queries. */ -#suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("kind") model VectorQuery { /** @@ -667,6 +661,9 @@ model VectorQuery { * larger than zero. */ weight?: float32; + + @doc("Type of query.") + kind: VectorQueryKind; } /** @@ -744,8 +741,7 @@ model SuggestDocumentsResult { * The sequence of results returned by the query. */ @visibility("read") - @encodedName("application/json", "value") - results: SuggestResult[]; + value: SuggestResult[]; /** * A value indicating the percentage of the index that was included in the query, @@ -789,8 +785,7 @@ model SuggestRequest { * provides a better experience in some scenarios, it comes at a performance cost * as fuzzy suggestion searches are slower and consume more resources. */ - @encodedName("application/json", "fuzzy") - useFuzzyMatching?: boolean; + fuzzy?: boolean; /** * A string tag that is appended to hit highlights. Must be set with @@ -821,15 +816,13 @@ model SuggestRequest { * $orderby is specified, the default sort order is descending by document match * score. There can be at most 32 $orderby clauses. */ - @encodedName("application/json", "orderby") - orderBy?: string; + orderby?: string; /** * The search text to use to suggest documents. Must be at least 1 character, and * no more than 100 characters. */ - @encodedName("application/json", "search") - searchText: string; + search: string; /** * The comma-separated list of field names to search for the specified search @@ -863,8 +856,7 @@ model IndexBatch { /** * The actions in the batch. */ - @encodedName("application/json", "value") - actions: IndexAction[]; + value: IndexAction[]; } /** @@ -893,8 +885,7 @@ model IndexDocumentsResult { * The list of status information for each document in the indexing request. */ @visibility("read") - @encodedName("application/json", "value") - results: IndexingResult[]; + value: IndexingResult[]; } /** @@ -919,8 +910,7 @@ model IndexingResult { * identified by the key. */ @visibility("read") - @encodedName("application/json", "status") - succeeded: boolean; + status: boolean; /** * The status code of the indexing operation. Possible values include: 200 for a @@ -950,8 +940,7 @@ model AutocompleteResult { * The list of returned Autocompleted items. */ @visibility("read") - @encodedName("application/json", "value") - results: AutocompleteItem[]; + value: AutocompleteItem[]; } /** @@ -978,8 +967,7 @@ model AutocompleteRequest { /** * The search text on which to base autocomplete results. */ - @encodedName("application/json", "search") - searchText: string; + search: string; /** * Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' @@ -1001,8 +989,7 @@ model AutocompleteRequest { * provides a better experience in some scenarios, it comes at a performance cost * as fuzzy autocomplete queries are slower and consume more resources. */ - @encodedName("application/json", "fuzzy") - useFuzzyMatching?: boolean; + fuzzy?: boolean; /** * A string tag that is appended to hit highlights. Must be set with diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index f68ef28f0d5b..bfe6bacc3b08 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -7,7 +7,7 @@ using TypeSpec.Rest; using TypeSpec.Http; using Azure.Core; -namespace SearchClient; +namespace Search; /** * Defines the type of a datasource. @@ -4842,22 +4842,19 @@ model SearchResourceEncryptionKey { /** * The name of your Azure Key Vault key to be used to encrypt your data at rest. */ - @encodedName("application/json", "keyVaultKeyName") - keyName: string; + keyVaultKeyName: string; /** * The version of your Azure Key Vault key to be used to encrypt your data at rest. */ - @encodedName("application/json", "keyVaultKeyVersion") - keyVersion: string; + keyVaultKeyVersion: string; /** * The URI of your Azure Key Vault, also referred to as DNS name, that contains * the key to be used to encrypt your data at rest. An example URI might be * `https://my-keyvault-name.vault.azure.net`. */ - @encodedName("application/json", "keyVaultUri") - vaultUri: string; + keyVaultUri: string; /** * Optional Azure Active Directory credentials used for accessing your Azure Key @@ -4894,8 +4891,7 @@ model ListDataSourcesResult { * The datasources in the Search service. */ @visibility("read") - @encodedName("application/json", "value") - dataSources: SearchIndexerDataSource[]; + value: SearchIndexerDataSource[]; } /** @@ -4955,8 +4951,7 @@ model SearchIndexer { /** * A value indicating whether the indexer is disabled. Default is false. */ - @encodedName("application/json", "disabled") - isDisabled?: boolean; + disabled?: boolean; /** * The ETag of the indexer. @@ -5188,8 +5183,7 @@ model ListIndexersResult { * The indexers in the Search service. */ @visibility("read") - @encodedName("application/json", "value") - indexers: SearchIndexer[]; + value: SearchIndexer[]; } /** @@ -5269,15 +5263,13 @@ model IndexerExecutionResult { * attempted but failed. */ @visibility("read") - @encodedName("application/json", "itemsProcessed") - itemCount: int32; + itemsProcessed: int32; /** * The number of items that failed to be indexed during this indexer execution. */ @visibility("read") - @encodedName("application/json", "itemsFailed") - failedItemCount: int32; + itemsFailed: int32; /** * Change tracking state with which an indexer execution started. @@ -5429,8 +5421,7 @@ model SearchIndexerSkillset { /** * Details about the Azure AI service to be used when running skills. */ - @encodedName("application/json", "cognitiveServices") - cognitiveServicesAccount?: CognitiveServicesAccount; + cognitiveServices?: CognitiveServicesAccount; /** * Definition of additional projections to Azure blob, table, or files, of @@ -5441,8 +5432,7 @@ model SearchIndexerSkillset { /** * Definition of additional projections to secondary search index(es). */ - @encodedName("application/json", "indexProjections") - indexProjection?: SearchIndexerIndexProjection; + indexProjections?: SearchIndexerIndexProjection; /** * The ETag of the skillset. @@ -5738,8 +5728,7 @@ model ListSkillsetsResult { * The skillsets defined in the Search service. */ @visibility("read") - @encodedName("application/json", "value") - skillsets: SearchIndexerSkillset[]; + value: SearchIndexerSkillset[]; } /** @@ -5794,8 +5783,7 @@ model ListSynonymMapsResult { * The synonym maps in the Search service. */ @visibility("read") - @encodedName("application/json", "value") - synonymMaps: SynonymMap[]; + value: SynonymMap[]; } /** @@ -5882,8 +5870,7 @@ model SearchIndex { /** * Defines parameters for a search index that influence semantic capabilities. */ - @encodedName("application/json", "semantic") - semanticSearch?: SemanticSearch; + semantic?: SemanticSearch; /** * Contains configuration options related to vector search. @@ -6033,21 +6020,18 @@ model SearchField { */ @maxValue(2048) @minValue(2) - @encodedName("application/json", "dimensions") - vectorSearchDimensions?: int32; + dimensions?: int32; /** * The name of the vector search profile that specifies the algorithm and * vectorizer to use when searching the vector field. */ - @encodedName("application/json", "vectorSearchProfile") - vectorSearchProfileName?: string; + vectorSearchProfile?: string; /** * The encoding format to interpret the field contents. */ - @encodedName("application/json", "vectorEncoding") - vectorEncodingFormat?: VectorEncodingFormat; + vectorEncoding?: VectorEncodingFormat; /** * A list of the names of synonym maps to associate with this field. This option @@ -6078,8 +6062,7 @@ model ScoringProfile { /** * Parameters that boost scoring based on text matches in certain index fields. */ - @encodedName("application/json", "text") - textWeights?: TextWeights; + text?: TextWeights; /** * The collection of functions that influence the scoring of documents. @@ -6126,6 +6109,9 @@ model ScoringFunction { * defaults to "Linear". */ interpolation?: ScoringFunctionInterpolation; + + @doc("Type of ScoringFunction.") + kind: string; } /** @@ -6262,8 +6248,7 @@ model SemanticSearch { * Allows you to set the name of a default semantic configuration in your index, * making it optional to pass it on as a query parameter every time. */ - @encodedName("application/json", "defaultConfiguration") - defaultConfigurationName?: string; + defaultConfiguration?: string; /** * The semantic configurations for the index. @@ -6308,8 +6293,7 @@ model SemanticPrioritizedFields { * represents their priority. Fields with lower priority may get truncated if the * content is long. */ - @encodedName("application/json", "prioritizedContentFields") - contentFields?: SemanticField[]; + prioritizedContentFields?: SemanticField[]; /** * Defines the keyword fields to be used for semantic ranking, captions, @@ -6318,8 +6302,7 @@ model SemanticPrioritizedFields { * their priority. Fields with lower priority may get truncated if the content is * long. */ - @encodedName("application/json", "prioritizedKeywordsFields") - keywordsFields?: SemanticField[]; + prioritizedKeywordsFields?: SemanticField[]; } /** @@ -6372,61 +6355,59 @@ model VectorSearchProfile { * The name of the vector search algorithm configuration that specifies the * algorithm and optional parameters. */ - @encodedName("application/json", "algorithm") - algorithmConfigurationName: string; + algorithm: string; /** * The name of the vectorization being configured for use with vector search. */ - @encodedName("application/json", "vectorizer") - vectorizerName?: string; + vectorizer?: string; /** * The name of the compression method configuration that specifies the compression * method and optional parameters. */ - @encodedName("application/json", "compression") - compressionName?: string; + compression?: string; } /** * Contains configuration options specific to the algorithm used during indexing * or querying. */ -#suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("kind") model VectorSearchAlgorithmConfiguration { /** * The name to associate with this particular configuration. */ name: string; + + @doc("Type of VectorSearchAlgorithmConfiguration.") + kind: VectorSearchAlgorithmKind; } /** * Specifies the vectorization method to be used during query time. */ -#suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("kind") model VectorSearchVectorizer { /** * The name to associate with this particular vectorization method. */ - @encodedName("application/json", "name") - vectorizerName: string; + name: string; + + @doc("Type of VectorSearchVectorizer.") + kind: VectorSearchVectorizerKind; } /** * Contains configuration options specific to the compression method used during * indexing or querying. */ -#suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("kind") model VectorSearchCompression { /** * The name to associate with this particular configuration. */ - @encodedName("application/json", "name") - compressionName: string; + name: string; /** * If set to true, once the ordered set of results calculated using compressed @@ -6445,6 +6426,9 @@ model VectorSearchCompression { * values improve recall at the expense of latency. */ defaultOversampling?: float64; + + @doc("Type of VectorSearchCompression.") + kind: VectorSearchCompressionKind; } /** @@ -6458,8 +6442,7 @@ model ListIndexesResult { */ @visibility("read") @items - @encodedName("application/json", "value") - indexes: SearchIndex[]; + value: SearchIndex[]; } /** @@ -6587,50 +6570,42 @@ model SearchServiceCounters { /** * Total number of documents across all indexes in the service. */ - @encodedName("application/json", "documentCount") - documentCounter: ResourceCounter; + documentCount: ResourceCounter; /** * Total number of indexes. */ - @encodedName("application/json", "indexesCount") - indexCounter: ResourceCounter; + indexesCount: ResourceCounter; /** * Total number of indexers. */ - @encodedName("application/json", "indexersCount") - indexerCounter: ResourceCounter; + indexersCount: ResourceCounter; /** * Total number of data sources. */ - @encodedName("application/json", "dataSourcesCount") - dataSourceCounter: ResourceCounter; + dataSourcesCount: ResourceCounter; /** * Total size of used storage in bytes. */ - @encodedName("application/json", "storageSize") - storageSizeCounter: ResourceCounter; + storageSize: ResourceCounter; /** * Total number of synonym maps. */ - @encodedName("application/json", "synonymMaps") - synonymMapCounter: ResourceCounter; + synonymMaps: ResourceCounter; /** * Total number of skillsets. */ - @encodedName("application/json", "skillsetCount") - skillsetCounter: ResourceCounter; + skillsetCount: ResourceCounter; /** * Total memory consumption of all vector indexes within the service, in bytes. */ - @encodedName("application/json", "vectorIndexSize") - vectorIndexSizeCounter: ResourceCounter; + vectorIndexSize: ResourceCounter; } /** @@ -6677,8 +6652,7 @@ model SearchServiceLimits { /** * The maximum amount of storage in bytes allowed per index. */ - @encodedName("application/json", "maxStoragePerIndex") - maxStoragePerIndexInBytes?: int64; + maxStoragePerIndex?: int64; } /** @@ -6725,8 +6699,7 @@ model PatternAnalyzer extends LexicalAnalyzer { /** * A value indicating whether terms should be lower-cased. Default is true. */ - @encodedName("application/json", "lowercase") - lowerCaseTerms?: boolean = true; + lowercase?: boolean = true; /** * A regular expression pattern to match token separators. Default is an @@ -7003,14 +6976,12 @@ model PathHierarchyTokenizerV2 extends LexicalTokenizer { * A value indicating whether to generate tokens in reverse order. Default is * false. */ - @encodedName("application/json", "reverse") - reverseTokenOrder?: boolean; + reverse?: boolean; /** * The number of initial tokens to skip. Default is 0. */ - @encodedName("application/json", "skip") - numberOfTokensToSkip?: int32; + skip?: int32; /** * A URI fragment specifying the type of tokenizer. @@ -7175,8 +7146,7 @@ model CommonGramTokenFilter extends TokenFilter { * mode, the token filter generates bigrams and then removes common words and * single terms followed by a common word. Default is false. */ - @encodedName("application/json", "queryMode") - useQueryMode?: boolean; + queryMode?: boolean; /** * A URI fragment specifying the type of token filter. @@ -7325,8 +7295,7 @@ model KeepTokenFilter extends TokenFilter { /** * A value indicating whether to lower case all words first. Default is false. */ - @encodedName("application/json", "keepWordsCase") - lowerCaseKeepWords?: boolean; + keepWordsCase?: boolean; /** * A URI fragment specifying the type of token filter. @@ -7369,15 +7338,13 @@ model LengthTokenFilter extends TokenFilter { * than the value of max. */ @maxValue(300) - @encodedName("application/json", "min") - minLength?: int32; + min?: int32; /** * The maximum length in characters. Default and maximum is 300. */ @maxValue(300) - @encodedName("application/json", "max") - maxLength?: int32 = 300; + max?: int32 = 300; /** * A URI fragment specifying the type of token filter. @@ -7527,8 +7494,7 @@ model PhoneticTokenFilter extends TokenFilter { * A value indicating whether encoded tokens should replace original tokens. If * false, encoded tokens are added as synonyms. Default is true. */ - @encodedName("application/json", "replace") - replaceOriginalTokens?: boolean = true; + replace?: boolean = true; /** * A URI fragment specifying the type of token filter. @@ -7674,8 +7640,7 @@ model StopwordsTokenFilter extends TokenFilter { * A value indicating whether to ignore the last search term if it's a stop word. * Default is true. */ - @encodedName("application/json", "removeTrailing") - removeTrailingStopWords?: boolean = true; + removeTrailing?: boolean = true; /** * A URI fragment specifying the type of token filter. @@ -7933,8 +7898,7 @@ model HnswAlgorithmConfiguration extends VectorSearchAlgorithmConfiguration { /** * Contains the parameters specific to HNSW algorithm. */ - @encodedName("application/json", "hnswParameters") - parameters?: HnswParameters; + hnswParameters?: HnswParameters; /** * The name of the kind of algorithm being configured for use with vector search. @@ -7992,8 +7956,7 @@ model ExhaustiveKnnAlgorithmConfiguration /** * Contains the parameters specific to exhaustive KNN algorithm. */ - @encodedName("application/json", "exhaustiveKnnParameters") - parameters?: ExhaustiveKnnParameters; + exhaustiveKnnParameters?: ExhaustiveKnnParameters; /** * The name of the kind of algorithm being configured for use with vector search. @@ -8019,8 +7982,7 @@ model ScalarQuantizationCompression extends VectorSearchCompression { /** * Contains the parameters specific to Scalar Quantization. */ - @encodedName("application/json", "scalarQuantizationParameters") - parameters?: ScalarQuantizationParameters; + scalarQuantizationParameters?: ScalarQuantizationParameters; /** * The name of the kind of compression method being configured for use with vector @@ -8059,8 +8021,7 @@ model AzureOpenAIVectorizer extends VectorSearchVectorizer { /** * Contains the parameters specific to Azure OpenAI embedding vectorization. */ - @encodedName("application/json", "azureOpenAIParameters") - parameters?: AzureOpenAIVectorizerParameters; + azureOpenAIParameters?: AzureOpenAIVectorizerParameters; /** * The name of the kind of vectorization method being configured for use with @@ -8077,14 +8038,12 @@ model AzureOpenAIVectorizerParameters { /** * The resource URI of the Azure OpenAI resource. */ - @encodedName("application/json", "resourceUri") - resourceUrl?: url; + resourceUri?: url; /** * ID of the Azure OpenAI model deployment on the designated resource. */ - @encodedName("application/json", "deploymentId") - deploymentName?: string; + deploymentId?: string; /** * API key of the designated Azure OpenAI resource. @@ -8123,8 +8082,7 @@ model WebApiVectorizer extends VectorSearchVectorizer { /** * Specifies the properties of the user-defined vectorizer. */ - @encodedName("application/json", "customWebApiParameters") - webApiParameters?: WebApiVectorizerParameters; + customWebApiParameters?: WebApiVectorizerParameters; /** * The name of the kind of vectorization method being configured for use with @@ -8140,8 +8098,7 @@ model WebApiVectorizerParameters { /** * The URI of the Web API providing the vectorizer. */ - @encodedName("application/json", "uri") - url?: url; + uri?: url; /** * The headers required to make the HTTP request. @@ -8201,8 +8158,7 @@ model SearchIndexerDataUserAssignedIdentity extends SearchIndexerDataIdentity { * "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" * that should have been assigned to the search service. */ - @encodedName("application/json", "userAssignedIdentity") - resourceId: string; + userAssignedIdentity: string; /** * A URI fragment specifying the type of identity. @@ -8276,8 +8232,7 @@ model DistanceScoringFunction extends ScoringFunction { /** * Parameter values for the distance scoring function. */ - @encodedName("application/json", "distance") - parameters: DistanceScoringParameters; + distance: DistanceScoringParameters; /** * Indicates the type of function to use. Valid values include magnitude, @@ -8310,8 +8265,7 @@ model FreshnessScoringFunction extends ScoringFunction { /** * Parameter values for the freshness scoring function. */ - @encodedName("application/json", "freshness") - parameters: FreshnessScoringParameters; + freshness: FreshnessScoringParameters; /** * Indicates the type of function to use. Valid values include magnitude, @@ -8337,8 +8291,7 @@ model MagnitudeScoringFunction extends ScoringFunction { /** * Parameter values for the magnitude scoring function. */ - @encodedName("application/json", "magnitude") - parameters: MagnitudeScoringParameters; + magnitude: MagnitudeScoringParameters; /** * Indicates the type of function to use. Valid values include magnitude, @@ -8365,8 +8318,7 @@ model MagnitudeScoringParameters { * A value indicating whether to apply a constant boost for field values beyond * the range end value; default is false. */ - @encodedName("application/json", "constantBoostBeyondRange") - shouldBoostBeyondRangeByConstant?: boolean; + constantBoostBeyondRange?: boolean; } /** @@ -8377,8 +8329,7 @@ model TagScoringFunction extends ScoringFunction { /** * Parameter values for the tag scoring function. */ - @encodedName("application/json", "tag") - parameters: TagScoringParameters; + tag: TagScoringParameters; /** * Indicates the type of function to use. Valid values include magnitude, @@ -8615,8 +8566,7 @@ model OcrSkill extends SearchIndexerSkill { /** * A value indicating to turn orientation detection on or not. Default is false. */ - @encodedName("application/json", "detectOrientation") - shouldDetectOrientation?: boolean; + detectOrientation?: boolean; /** * Defines the sequence of characters to use between the lines of text recognized @@ -8912,8 +8862,7 @@ model PIIDetectionSkill extends SearchIndexerSkill { * replace. Default is '*'. */ @maxLength(1) - @encodedName("application/json", "maskingCharacter") - mask?: string; + maskingCharacter?: string; /** * The version of the model to use when calling the Text Analytics service. It diff --git a/specification/search/Azure.Search/models-shared.tsp b/specification/search/Azure.Search/models-shared.tsp index 437047c0dc01..948b18fa1742 100644 --- a/specification/search/Azure.Search/models-shared.tsp +++ b/specification/search/Azure.Search/models-shared.tsp @@ -6,7 +6,7 @@ using TypeSpec.Rest; using TypeSpec.Http; using Azure.Core; -namespace SearchClient; +namespace Search; alias matchingHeader = { @doc("Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.") diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index 76c09cd43959..aac52cc9c937 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -6,7 +6,7 @@ using TypeSpec.Rest; using TypeSpec.Http; using Azure.Core; -namespace SearchClient; +namespace Search; @route("/indexes('{indexName}')") diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index 439e8aca151c..c71524d3c34a 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -5,7 +5,7 @@ import "./models-service.tsp"; using TypeSpec.Rest; using TypeSpec.Http; -namespace SearchClient; +namespace Search; interface DataSourcesOperations { /** From 728fbc6df9ab7063d7018baabf7060616feb30a7 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 29 Oct 2024 09:28:36 -0700 Subject: [PATCH 22/78] update --- specification/search/Azure.Search/models-service.tsp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index bfe6bacc3b08..7226e40f79db 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -5039,7 +5039,7 @@ model IndexingParametersConfiguration { * Azure blob storage. For example, you could exclude ".png, .mp4" to skip over * those files during indexing. */ - excludedFileNameExtensions?: string = ""; + excludedFileNameExtensions?: string; /** * Comma-delimited list of filename extensions to select when processing from @@ -5047,7 +5047,7 @@ model IndexingParametersConfiguration { * application files ".docx, .pptx, .msg" to specifically include those file * types. */ - indexedFileNameExtensions?: string = ""; + indexedFileNameExtensions?: string; /** * For Azure blobs, set to false if you want to continue indexing when an From 9a243df4a652eb35c88ab6ccc4013706fe2b7e1a Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 29 Oct 2024 10:06:47 -0700 Subject: [PATCH 23/78] add examples --- .../SearchIndexAutocompleteDocumentsGet.json | 38 + .../SearchIndexAutocompleteDocumentsPost.json | 36 + .../2024-07-01/SearchIndexCountDocuments.json | 12 + .../2024-07-01/SearchIndexGetDocument.json | 25 + .../2024-07-01/SearchIndexIndexDocuments.json | 96 ++ .../SearchIndexSearchDocumentsGet.json | 86 ++ .../SearchIndexSearchDocumentsPost.json | 119 +++ ...SearchIndexSearchDocumentsSemanticGet.json | 52 ++ ...earchIndexSearchDocumentsSemanticPost.json | 69 ++ .../SearchIndexSuggestDocumentsGet.json | 47 + .../SearchIndexSuggestDocumentsPost.json | 39 + .../SearchServiceCreateDataSource.json | 70 ++ .../2024-07-01/SearchServiceCreateIndex.json | 700 ++++++++++++++ .../SearchServiceCreateIndexer.json | 58 ++ ...SearchServiceCreateOrUpdateDataSource.json | 95 ++ .../SearchServiceCreateOrUpdateIndex.json | 863 ++++++++++++++++++ .../SearchServiceCreateOrUpdateIndexer.json | 78 ++ .../SearchServiceCreateOrUpdateSkillset.json | 387 ++++++++ ...SearchServiceCreateOrUpdateSynonymMap.json | 47 + .../SearchServiceCreateSkillset.json | 307 +++++++ .../SearchServiceCreateSynonymMap.json | 38 + .../SearchServiceDeleteDataSource.json | 11 + .../2024-07-01/SearchServiceDeleteIndex.json | 11 + .../SearchServiceDeleteIndexer.json | 11 + .../SearchServiceDeleteSkillset.json | 11 + .../SearchServiceDeleteSynonymMap.json | 11 + .../SearchServiceGetDataSource.json | 41 + .../2024-07-01/SearchServiceGetIndex.json | 344 +++++++ .../SearchServiceGetIndexStatistics.json | 16 + .../2024-07-01/SearchServiceGetIndexer.json | 36 + .../SearchServiceGetIndexerStatus.json | 89 ++ .../SearchServiceGetServiceStatistics.json | 52 ++ .../2024-07-01/SearchServiceGetSkillset.json | 144 +++ .../SearchServiceGetSynonymMap.json | 25 + .../2024-07-01/SearchServiceIndexAnalyze.json | 37 + .../SearchServiceListDataSources.json | 45 + .../2024-07-01/SearchServiceListIndexers.json | 76 ++ .../2024-07-01/SearchServiceListIndexes.json | 315 +++++++ .../SearchServiceListSkillsets.json | 148 +++ .../SearchServiceListSynonymMaps.json | 31 + .../2024-07-01/SearchServiceResetIndexer.json | 10 + .../2024-07-01/SearchServiceRunIndexer.json | 10 + 42 files changed, 4736 insertions(+) create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json new file mode 100644 index 000000000000..ba6cc8e52fe2 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": [ + "title", + "description" + ], + "top": 10 + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json new file mode 100644 index 000000000000..859afde5d944 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "autocompleteRequest": { + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": "title,description", + "top": 10 + } + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json new file mode 100644 index 000000000000..1b29fbd19012 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": 427 + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json new file mode 100644 index 000000000000..64cf2c3e326b --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json @@ -0,0 +1,25 @@ +{ + "operationId": "Documents_Get", + "title": "SearchIndexGetDocument", + "parameters": { + "endpoint": "https://exampleservice.search.windows.net", + "indexName": "getdocumentexample", + "key": "1", + "$select": [ + "docId", + "title", + "description" + ], + "api-version": "2024-07-01", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "docId": "1", + "title": "Nice Hotel", + "description": "Cheapest hotel in town" + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json new file mode 100644 index 000000000000..6f976253c7ca --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json @@ -0,0 +1,96 @@ +{ + "operationId": "Documents_Index", + "title": "SearchIndexIndexDocuments", + "parameters": { + "endpoint": "https://exampleservice.search.windows.net", + "indexName": "indexdocumentsexample", + "api-version": "2024-07-01", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "batch": { + "value": [ + { + "@search.action": "upload", + "docId": "1", + "title": "Fancy Stay", + "description": "Best hotel in town" + }, + { + "@search.action": "merge", + "docId": "2", + "title": "Roach Motel" + }, + { + "@search.action": "mergeOrUpload", + "docId": "3", + "title": "Econo Motel" + }, + { + "@search.action": "delete", + "docId": "4" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "2", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + }, + "207": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 201 + }, + { + "key": "2", + "status": false, + "errorMessage": "Document not found.", + "statusCode": 404 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 201 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json new file mode 100644 index 000000000000..9701cbfe9947 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$count": true, + "facet": [ + "category,count:10,sort:count" + ], + "$filter": "rating gt 10", + "highlight": [ + "title" + ], + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "queryType": "simple", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": [ + "title", + "description" + ], + "searchMode": "any", + "$select": [ + "docId", + "title", + "description" + ], + "$skip": 100, + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.coverage": 80, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json new file mode 100644 index 000000000000..7ecedecf6fad --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "searchRequest": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "description", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "rating desc", + "queryType": "simple", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "category,description", + "searchMode": "any", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "select": "hotelId,category,description", + "skip": 0, + "top": 10, + "vectorQueries": [ + { + "kind": "vector", + "vector": [ + 0.103, + 0.0712, + 0.0852, + 0.1547, + 0.1183 + ], + "fields": "descriptionEmbedding", + "k": 5, + "exhaustive": true, + "oversampling": 20.0, + "weight": 2.0 + } + ], + "vectorFilterMode": "preFilter" + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "@search.nextPageParameters": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "title", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "search.score() desc,rating desc", + "queryType": "simple", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "title,description", + "searchMode": "any", + "select": "docId,title,description", + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json new file mode 100644 index 000000000000..2fa8b5a0c902 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json new file mode 100644 index 000000000000..e74b21e83c67 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "searchRequest": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "@search.nextPageParameters": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780, + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json new file mode 100644 index 000000000000..24cf118118d0 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$filter": "rating gt 10", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "search": "hote", + "searchFields": [ + "title" + ], + "suggesterName": "sg", + "$select": [ + "docId", + "title", + "description" + ], + "$top": 10 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json new file mode 100644 index 000000000000..8008dbc517f3 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "suggestRequest": { + "filter": "rating gt 4.0", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "orderby": "rating desc", + "search": "hote", + "searchFields": "title", + "select": "docId,title,description", + "suggesterName": "sg", + "top": 10 + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json new file mode 100644 index 000000000000..3ebba14f4e49 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json new file mode 100644 index 000000000000..5591bedf4097 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json @@ -0,0 +1,700 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_notstored", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": false, + "stored": false, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_forBQ", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswBQProfile" + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "nameEmbedding", + "type": "Collection(Edm.Half)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myHnswSQProfile", + "algorithm": "myHnsw", + "compression": "mySQ8" + }, + { + "name": "myHnswBQProfile", + "algorithm": "myHnsw", + "compression": "myBQ" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "m": 4, + "metric": "cosine" + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + }, + { + "name": "myBQ", + "kind": "binaryQuantization", + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile", + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding_notstored", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": false, + "stored": false, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_forBQ", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswBQProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "nameEmbedding", + "type": "Collection(Edm.Half)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "fieldName": "location", + "interpolation": "logarithmic", + "type": "distance", + "boost": 5.0, + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenFilters": [], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myHnswSQProfile", + "algorithm": "myHnsw", + "compression": "mySQ8" + }, + { + "name": "myHnswBQProfile", + "algorithm": "myHnsw", + "vectorizer": "myOpenAi", + "compression": "myBQ" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + }, + { + "name": "myBQ", + "kind": "binaryQuantization", + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json new file mode 100644 index 000000000000..8d15452eb354 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "indexer": { + "name": "myindexer", + "description": "an indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myindexer", + "description": "an indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json new file mode 100644 index 000000000000..5b27ebdb0a55 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json new file mode 100644 index 000000000000..72dfe8bb9d81 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json @@ -0,0 +1,863 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "allowIndexDowntime": false, + "api-version": "2024-07-01", + "Prefer": "return=representation", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "searchable": true, + "retrievable": true + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "m": 4, + "metric": "cosine" + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5.0, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + }, + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json new file mode 100644 index 000000000000..dfcdc9fd148b --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "indexer": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json new file mode 100644 index 000000000000..1acf71dc07ab --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json @@ -0,0 +1,387 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json new file mode 100644 index 000000000000..8d7c9e29a646 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json new file mode 100644 index 000000000000..4769c919ccdf --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json @@ -0,0 +1,307 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "knowledgeStore": { + "storageConnectionString": "DefaultEndpointsProtocol=https;AccountName=myStorage;AccountKey=myStorageKey;EndpointSuffix=core.windows.net", + "projections": [ + { + "tables": [ + { + "tableName": "Reviews", + "generatedKeyName": "ReviewId", + "source": "/document/Review", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Sentences", + "generatedKeyName": "SentenceId", + "source": "/document/Review/Sentences/*", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "KeyPhrases", + "generatedKeyName": "KeyPhraseId", + "source": "/document/Review/Sentences/*/KeyPhrases", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Entities", + "generatedKeyName": "EntityId", + "source": "/document/Review/Sentences/*/Entities/*", + "sourceContext": null, + "inputs": [] + } + ] + }, + { + "objects": [ + { + "storageContainer": "Reviews", + "source": "/document/Review", + "generatedKeyName": "/document/Review/Id" + } + ] + } + ] + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json new file mode 100644 index 000000000000..5928314232fc --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "myApplicationSecret" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json new file mode 100644 index 000000000000..a0a88ff02612 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json new file mode 100644 index 000000000000..5ab2bfb51a69 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json new file mode 100644 index 000000000000..ce97fbb336f5 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json new file mode 100644 index 000000000000..a54e05711829 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json new file mode 100644 index 000000000000..0ce61b4b9aca --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json new file mode 100644 index 000000000000..4ed8bf94cb93 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json new file mode 100644 index 000000000000..bce8ace8241e --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json @@ -0,0 +1,344 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5.0, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json new file mode 100644 index 000000000000..488b6594ea37 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "documentCount": 239572, + "storageSize": 72375920, + "vectorIndexSize": 123456 + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json new file mode 100644 index 000000000000..36284505e003 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json new file mode 100644 index 000000000000..10f679024a3c --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "status": "running", + "lastResult": { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + "executionHistory": [ + { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + { + "status": "transientFailure", + "errorMessage": null, + "startTime": "2014-11-26T03:28:10.125Z", + "endTime": "2014-11-26T03:28:12.007Z", + "errors": [ + { + "key": "", + "errorMessage": "Document key cannot be missing or empty.", + "statusCode": 400, + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 1", + "errorMessage": "Could not read the value of column 'foo' at index '0'.", + "statusCode": 400, + "name": "DocumentExtraction.AzureBlob.MyDataSource", + "details": "The file could not be parsed.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388" + } + ], + "warnings": [ + { + "key": "document id", + "message": "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob.", + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 2", + "message": "Document was truncated to 50000 characters.", + "name": "Enrichment.LanguageDetectionSkill.#4", + "details": "The skill did something that didn't break anything, nonetheless something we didn't expect happened, so it might be worth double checking.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2099692" + } + ], + "itemsProcessed": 1, + "itemsFailed": 2, + "initialTrackingState": null, + "finalTrackingState": null + } + ], + "limits": { + "maxRunTime": "PT22H", + "maxDocumentExtractionSize": 256000000, + "maxDocumentContentCharactersToExtract": 4000000 + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json new file mode 100644 index 000000000000..68b3c18500bb --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "counters": { + "documentCount": { + "usage": 7093, + "quota": 10000 + }, + "indexesCount": { + "usage": 3, + "quota": 3 + }, + "indexersCount": { + "usage": 3, + "quota": 3 + }, + "dataSourcesCount": { + "usage": 1, + "quota": 3 + }, + "storageSize": { + "usage": 914529, + "quota": 52428800 + }, + "synonymMaps": { + "usage": 2, + "quota": 3 + }, + "skillsetCount": { + "usage": 1, + "quota": 3 + }, + "vectorIndexSize": { + "usage": 123456, + "quota": 26214400 + } + }, + "limits": { + "maxFieldsPerIndex": 1000, + "maxFieldNestingDepthPerIndex": 10, + "maxComplexCollectionFieldsPerIndex": 100, + "maxComplexObjectsInCollectionsPerDocument": 3000 + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json new file mode 100644 index 000000000000..3224713ed5cf --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json new file mode 100644 index 000000000000..31a9754f84ed --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json new file mode 100644 index 000000000000..ca3e97ad91f0 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01", + "request": { + "text": "Text to analyze", + "analyzer": "standard.lucene" + } + }, + "responses": { + "200": { + "body": { + "tokens": [ + { + "token": "text", + "startOffset": 0, + "endOffset": 4, + "position": 0 + }, + { + "token": "to", + "startOffset": 5, + "endOffset": 7, + "position": 1 + }, + { + "token": "analyze", + "startOffset": 8, + "endOffset": 15, + "position": 2 + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json new file mode 100644 index 000000000000..ba4a2ed04626 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json new file mode 100644 index 000000000000..bd39f0576aa3 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydocdbdatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + }, + { + "name": "myotherindexer", + "description": "another cool indexer", + "dataSourceName": "myblobdatasource", + "targetIndexName": "orders", + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "batchSize": 15 + }, + "fieldMappings": [ + { + "sourceFieldName": "PersonName", + "targetFieldName": "FirstName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 0 + } + } + }, + { + "sourceFieldName": "PersonName", + "targetFieldName": "LastName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 1 + } + } + } + ], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json new file mode 100644 index 000000000000..8bbbf44a33cb --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json @@ -0,0 +1,315 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + } + }, + { + "name": "testindex", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": false, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "hidden", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": false, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [], + "defaultScoringProfile": null, + "suggesters": [], + "analyzers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": null, + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json new file mode 100644 index 000000000000..4790a21afbe9 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json new file mode 100644 index 000000000000..a749fa1edbc9 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + }, + { + "name": "myothersynonymmap", + "format": "solr", + "synonyms": "couch, sofa, chesterfield\npop, soda\ntoque, hat", + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json new file mode 100644 index 000000000000..7bd2d1f2b8d3 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "204": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json new file mode 100644 index 000000000000..48924939dfbb --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "202": {} + } +} From 771fea6060b7ad95777a411d603482e067b9b341 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 29 Oct 2024 10:13:23 -0700 Subject: [PATCH 24/78] more examples --- .../SearchIndexAutocompleteDocumentsGet.json | 38 + .../SearchIndexAutocompleteDocumentsPost.json | 38 + .../SearchIndexCountDocuments.json | 15 + .../SearchIndexGetDocument.json | 29 + .../SearchIndexIndexDocuments.json | 3808 +++++++++++++++++ .../SearchIndexSearchDocumentsGet.json | 86 + .../SearchIndexSearchDocumentsPost.json | 220 + ...SearchIndexSearchDocumentsSemanticGet.json | 52 + ...earchIndexSearchDocumentsSemanticPost.json | 69 + .../SearchIndexSuggestDocumentsGet.json | 47 + .../SearchIndexSuggestDocumentsPost.json | 59 + .../SearchServiceCreateAlias.json | 25 + .../SearchServiceCreateDataSource.json | 73 + .../SearchServiceCreateIndex.json | 582 +++ .../SearchServiceCreateIndexer.json | 74 + .../SearchServiceCreateOrUpdateAlias.json | 37 + ...SearchServiceCreateOrUpdateDataSource.json | 112 + .../SearchServiceCreateOrUpdateIndex.json | 904 ++++ .../SearchServiceCreateOrUpdateIndexer.json | 115 + .../SearchServiceCreateOrUpdateSkillset.json | 440 ++ ...SearchServiceCreateOrUpdateSynonymMap.json | 63 + .../SearchServiceCreateSkillset.json | 288 ++ .../SearchServiceCreateSynonymMap.json | 42 + .../SearchServiceDeleteAlias.json | 16 + .../SearchServiceDeleteDataSource.json | 16 + .../SearchServiceDeleteIndex.json | 16 + .../SearchServiceDeleteIndexer.json | 16 + .../SearchServiceDeleteSkillset.json | 16 + .../SearchServiceDeleteSynonymMap.json | 16 + .../SearchServiceGetAlias.json | 20 + .../SearchServiceGetDataSource.json | 45 + .../SearchServiceGetIndex.json | 331 ++ .../SearchServiceGetIndexStatistics.json | 19 + .../SearchServiceGetIndexer.json | 43 + .../SearchServiceGetIndexerStatus.json | 89 + .../SearchServiceGetServiceStatistics.json | 58 + .../SearchServiceGetSkillset.json | 161 + .../SearchServiceGetSynonymMap.json | 29 + .../SearchServiceIndexAnalyze.json | 40 + .../SearchServiceListAliases.json | 23 + .../SearchServiceListDataSources.json | 49 + .../SearchServiceListIndexers.json | 46 + .../SearchServiceListIndexes.json | 335 ++ .../SearchServiceListSkillsets.json | 165 + .../SearchServiceListSynonymMaps.json | 33 + .../SearchServiceResetDocs.json | 21 + .../SearchServiceResetIndexer.json | 13 + .../SearchServiceResetSkills.json | 20 + .../SearchServiceRunIndexer.json | 13 + 49 files changed, 8865 insertions(+) create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateAlias.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateAlias.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteAlias.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetAlias.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListAliases.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetDocs.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetSkills.json create mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json new file mode 100644 index 000000000000..d7e422559283 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-11-01-preview", + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": [ + "title", + "description" + ], + "top": 10 + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json new file mode 100644 index 000000000000..1e8238c7ac9d --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json @@ -0,0 +1,38 @@ +{ + "operationId": "Documents_AutocompletePost", + "title": "SearchIndexAutocompleteDocumentsPost", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "preview-test", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "autocompleteRequest": { + "search": "p", + "autocompleteMode": "oneTerm", + "filter": "ownerId ne '1'", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": "category, ownerId", + "suggesterName": "sg", + "top": 10 + } + }, + "responses": { + "200": { + "body": { + "@search.coverage": 100.0, + "value": [ + { + "text": "purple", + "queryPlusText": "purple" + }, + { + "text": "pink", + "queryPlusText": "pink" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json new file mode 100644 index 000000000000..08553318c0e5 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json @@ -0,0 +1,15 @@ +{ + "operationId": "Documents_Count", + "title": "SearchIndexCountDocuments", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "preview-test", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": 50 + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json new file mode 100644 index 000000000000..d528286f1839 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json @@ -0,0 +1,29 @@ +{ + "operationId": "Documents_Get", + "title": "SearchIndexGetDocument", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "preview-test", + "key": "1", + "$select": [ + "id", + "description", + "name", + "category", + "ownerId" + ], + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "1", + "name": "test", + "description": "test1 hello", + "category": "purple", + "ownerId": "sam" + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json new file mode 100644 index 000000000000..1376aa34cfae --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json @@ -0,0 +1,3808 @@ +{ + "operationId": "Documents_Index", + "title": "SearchIndexIndexDocuments", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "preview-test", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "batch": { + "value": [ + { + "@search.action": "mergeOrUpload", + "id": "0", + "name": "test", + "description": "test0 hello", + "vector1": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ], + "vector1b": [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ], + "vector2": [ + 0, + 1, + 2, + 3, + 4 + ], + "vector3": [ + 0, + 1, + 2, + 3, + 4 + ], + "vector22": [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ], + "ownerId": "benny", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "1", + "name": "test", + "description": "test1 hello", + "vector1": [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ], + "vector1b": [ + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ], + "vector2": [ + 1, + 2, + 3, + 4, + 5 + ], + "vector3": [ + 1, + 2, + 3, + 4, + 5 + ], + "vector22": [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "2", + "name": "test", + "description": "test2 hello", + "vector1": [ + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21 + ], + "vector1b": [ + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21 + ], + "vector2": [ + 2, + 3, + 4, + 5, + 6 + ], + "vector3": [ + 2, + 3, + 4, + 5, + 6 + ], + "vector22": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "3", + "name": "test", + "description": "test3 hello", + "vector1": [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ], + "vector1b": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ], + "vector2": [ + 3, + 4, + 5, + 6, + 7 + ], + "vector3": [ + 3, + 4, + 5, + 6, + 7 + ], + "vector22": [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ], + "ownerId": "ryan", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "4", + "name": "test", + "description": "test4 hello", + "vector1": [ + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ], + "vector1b": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ], + "vector2": [ + 4, + 5, + 6, + 7, + 8 + ], + "vector3": [ + 4, + 5, + 6, + 7, + 8 + ], + "vector22": [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "5", + "name": "test", + "description": "test5 hello", + "vector1": [ + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ], + "vector1b": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ], + "vector2": [ + 5, + 6, + 7, + 8, + 9 + ], + "vector3": [ + 5, + 6, + 7, + 8, + 9 + ], + "vector22": [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "6", + "name": "test", + "description": "test6 hello", + "vector1": [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ], + "vector1b": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ], + "vector2": [ + 6, + 7, + 8, + 9, + 10 + ], + "vector3": [ + 6, + 7, + 8, + 9, + 10 + ], + "vector22": [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ], + "ownerId": "ryan", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "7", + "name": "test", + "description": "test7 hello", + "vector1": [ + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ], + "vector1b": [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ], + "vector2": [ + 7, + 8, + 9, + 10, + 11 + ], + "vector3": [ + 7, + 8, + 9, + 10, + 11 + ], + "vector22": [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "8", + "name": "test", + "description": "test8 hello", + "vector1": [ + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ], + "vector1b": [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ], + "vector2": [ + 8, + 9, + 10, + 11, + 12 + ], + "vector3": [ + 8, + 9, + 10, + 11, + 12 + ], + "vector22": [ + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "9", + "name": "test", + "description": "test9 hello", + "vector1": [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ], + "vector1b": [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ], + "vector2": [ + 9, + 10, + 11, + 12, + 13 + ], + "vector3": [ + 9, + 10, + 11, + 12, + 13 + ], + "vector22": [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ], + "ownerId": "ryan", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "10", + "name": "test", + "description": "test10 hello", + "vector1": [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ], + "vector1b": [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ], + "vector2": [ + 10, + 11, + 12, + 13, + 14 + ], + "vector3": [ + 10, + 11, + 12, + 13, + 14 + ], + "vector22": [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ], + "ownerId": "benny", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "11", + "name": "test", + "description": "test11 hello", + "vector1": [ + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ], + "vector1b": [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ], + "vector2": [ + 11, + 12, + 13, + 14, + 15 + ], + "vector3": [ + 11, + 12, + 13, + 14, + 15 + ], + "vector22": [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "12", + "name": "test", + "description": "test12 hello", + "vector1": [ + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ], + "vector1b": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ], + "vector2": [ + 12, + 13, + 14, + 15, + 16 + ], + "vector3": [ + 12, + 13, + 14, + 15, + 16 + ], + "vector22": [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ], + "ownerId": "ryan", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "13", + "name": "test", + "description": "test13 hello", + "vector1": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ], + "vector1b": [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ], + "vector2": [ + 13, + 14, + 15, + 16, + 17 + ], + "vector3": [ + 13, + 14, + 15, + 16, + 17 + ], + "vector22": [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "14", + "name": "test", + "description": "test14 hello", + "vector1": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ], + "vector1b": [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ], + "vector2": [ + 14, + 15, + 16, + 17, + 18 + ], + "vector3": [ + 14, + 15, + 16, + 17, + 18 + ], + "vector22": [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "15", + "name": "test", + "description": "test15 hello", + "vector1": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ], + "vector1b": [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ], + "vector2": [ + 15, + 16, + 17, + 18, + 19 + ], + "vector3": [ + 15, + 16, + 17, + 18, + 19 + ], + "vector22": [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ], + "ownerId": "ryan", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "16", + "name": "test", + "description": "test16 hello", + "vector1": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ], + "vector1b": [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ], + "vector2": [ + 16, + 17, + 18, + 19, + 20 + ], + "vector3": [ + 16, + 17, + 18, + 19, + 20 + ], + "vector22": [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "17", + "name": "test", + "description": "test17 hello", + "vector1": [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ], + "vector1b": [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ], + "vector2": [ + 17, + 18, + 19, + 20, + 21 + ], + "vector3": [ + 17, + 18, + 19, + 20, + 21 + ], + "vector22": [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "18", + "name": "test", + "description": "test18 hello", + "vector1": [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ], + "vector1b": [ + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ], + "vector2": [ + 18, + 19, + 20, + 21, + 22 + ], + "vector3": [ + 18, + 19, + 20, + 21, + 22 + ], + "vector22": [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ], + "ownerId": "ryan", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "19", + "name": "test", + "description": "test19 hello", + "vector1": [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ], + "vector1b": [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ], + "vector2": [ + 19, + 20, + 21, + 22, + 23 + ], + "vector3": [ + 19, + 20, + 21, + 22, + 23 + ], + "vector22": [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "20", + "name": "test", + "description": "test20 hello", + "vector1": [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ], + "vector1b": [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ], + "vector2": [ + 20, + 21, + 22, + 23, + 24 + ], + "vector3": [ + 20, + 21, + 22, + 23, + 24 + ], + "vector22": [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ], + "ownerId": "benny", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "21", + "name": "test", + "description": "test21 hello", + "vector1": [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ], + "vector1b": [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ], + "vector2": [ + 21, + 22, + 23, + 24, + 25 + ], + "vector3": [ + 21, + 22, + 23, + 24, + 25 + ], + "vector22": [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ], + "ownerId": "ryan", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "22", + "name": "test", + "description": "test22 hello", + "vector1": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ], + "vector1b": [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ], + "vector2": [ + 22, + 23, + 24, + 25, + 26 + ], + "vector3": [ + 22, + 23, + 24, + 25, + 26 + ], + "vector22": [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "23", + "name": "test", + "description": "test23 hello", + "vector1": [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ], + "vector1b": [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ], + "vector2": [ + 23, + 24, + 25, + 26, + 27 + ], + "vector3": [ + 23, + 24, + 25, + 26, + 27 + ], + "vector22": [ + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ], + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "24", + "name": "test", + "description": "test24 hello", + "vector1": [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ], + "vector1b": [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ], + "vector2": [ + 24, + 25, + 26, + 27, + 28 + ], + "vector3": [ + 24, + 25, + 26, + 27, + 28 + ], + "vector22": [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ], + "ownerId": "ryan", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "25", + "name": "test", + "description": "test25 hello", + "vector1": [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ], + "vector1b": [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ], + "vector2": [ + 25, + 26, + 27, + 28, + 29 + ], + "vector3": [ + 25, + 26, + 27, + 28, + 29 + ], + "vector22": [ + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "26", + "name": "test", + "description": "test26 hello", + "vector1": [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ], + "vector1b": [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ], + "vector2": [ + 26, + 27, + 28, + 29, + 30 + ], + "vector3": [ + 26, + 27, + 28, + 29, + 30 + ], + "vector22": [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "27", + "name": "test", + "description": "test27 hello", + "vector1": [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ], + "vector1b": [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ], + "vector2": [ + 27, + 28, + 29, + 30, + 31 + ], + "vector3": [ + 27, + 28, + 29, + 30, + 31 + ], + "vector22": [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ], + "ownerId": "ryan", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "28", + "name": "test", + "description": "test28 hello", + "vector1": [ + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ], + "vector1b": [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ], + "vector2": [ + 28, + 29, + 30, + 31, + 32 + ], + "vector3": [ + 28, + 29, + 30, + 31, + 32 + ], + "vector22": [ + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "29", + "name": "test", + "description": "test29 hello", + "vector1": [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ], + "vector1b": [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ], + "vector2": [ + 29, + 30, + 31, + 32, + 33 + ], + "vector3": [ + 29, + 30, + 31, + 32, + 33 + ], + "vector22": [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "30", + "name": "test", + "description": "test30 hello", + "vector1": [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ], + "vector1b": [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ], + "vector2": [ + 30, + 31, + 32, + 33, + 34 + ], + "vector3": [ + 30, + 31, + 32, + 33, + 34 + ], + "vector22": [ + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59 + ], + "ownerId": "benny", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "31", + "name": "test", + "description": "test31 hello", + "vector1": [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ], + "vector1b": [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ], + "vector2": [ + 31, + 32, + 33, + 34, + 35 + ], + "vector3": [ + 31, + 32, + 33, + 34, + 35 + ], + "vector22": [ + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "32", + "name": "test", + "description": "test32 hello", + "vector1": [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ], + "vector1b": [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ], + "vector2": [ + 32, + 33, + 34, + 35, + 36 + ], + "vector3": [ + 32, + 33, + 34, + 35, + 36 + ], + "vector22": [ + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "33", + "name": "test", + "description": "test33 hello", + "vector1": [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ], + "vector1b": [ + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ], + "vector2": [ + 33, + 34, + 35, + 36, + 37 + ], + "vector3": [ + 33, + 34, + 35, + 36, + 37 + ], + "vector22": [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ], + "ownerId": "ryan", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "34", + "name": "test", + "description": "test34 hello", + "vector1": [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ], + "vector1b": [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ], + "vector2": [ + 34, + 35, + 36, + 37, + 38 + ], + "vector3": [ + 34, + 35, + 36, + 37, + 38 + ], + "vector22": [ + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "35", + "name": "test", + "description": "test35 hello", + "vector1": [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ], + "vector1b": [ + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ], + "vector2": [ + 35, + 36, + 37, + 38, + 39 + ], + "vector3": [ + 35, + 36, + 37, + 38, + 39 + ], + "vector22": [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "36", + "name": "test", + "description": "test36 hello", + "vector1": [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ], + "vector1b": [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ], + "vector2": [ + 36, + 37, + 38, + 39, + 40 + ], + "vector3": [ + 36, + 37, + 38, + 39, + 40 + ], + "vector22": [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ], + "ownerId": "ryan", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "37", + "name": "test", + "description": "test37 hello", + "vector1": [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ], + "vector1b": [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ], + "vector2": [ + 37, + 38, + 39, + 40, + 41 + ], + "vector3": [ + 37, + 38, + 39, + 40, + 41 + ], + "vector22": [ + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "38", + "name": "test", + "description": "test38 hello", + "vector1": [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ], + "vector1b": [ + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ], + "vector2": [ + 38, + 39, + 40, + 41, + 42 + ], + "vector3": [ + 38, + 39, + 40, + 41, + 42 + ], + "vector22": [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ], + "ownerId": "sam", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "39", + "name": "test", + "description": "test39 hello", + "vector1": [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ], + "vector1b": [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ], + "vector2": [ + 39, + 40, + 41, + 42, + 43 + ], + "vector3": [ + 39, + 40, + 41, + 42, + 43 + ], + "vector22": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ], + "ownerId": "ryan", + "category": "pink" + }, + { + "@search.action": "mergeOrUpload", + "id": "40", + "name": "test", + "description": "test40 hello", + "vector1": [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59 + ], + "vector1b": [ + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59 + ], + "vector2": [ + 40, + 41, + 42, + 43, + 44 + ], + "vector3": [ + 40, + 41, + 42, + 43, + 44 + ], + "vector22": [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69 + ], + "ownerId": "benny", + "category": "green" + }, + { + "@search.action": "mergeOrUpload", + "id": "41", + "name": "test", + "description": "test41 hello", + "vector1": [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60 + ], + "vector1b": [ + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60 + ], + "vector2": [ + 41, + 42, + 43, + 44, + 45 + ], + "vector3": [ + 41, + 42, + 43, + 44, + 45 + ], + "vector22": [ + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ], + "ownerId": "sam", + "category": "green" + }, + { + "@search.action": "mergeOrUpload", + "id": "42", + "name": "test", + "description": "test42 hello", + "vector1": [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ], + "vector1b": [ + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ], + "vector2": [ + 42, + 43, + 44, + 45, + 46 + ], + "vector3": [ + 42, + 43, + 44, + 45, + 46 + ], + "vector22": [ + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ], + "ownerId": "ryan", + "category": "green" + }, + { + "@search.action": "mergeOrUpload", + "id": "43", + "name": "test", + "description": "test43 hello", + "vector1": [ + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ], + "vector1b": [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ], + "vector2": [ + 43, + 44, + 45, + 46, + 47 + ], + "vector3": [ + 43, + 44, + 45, + 46, + 47 + ], + "vector22": [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72 + ], + "ownerId": "sam", + "category": "green" + }, + { + "@search.action": "mergeOrUpload", + "id": "44", + "name": "test", + "description": "test44 hello", + "vector1": [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ], + "vector1b": [ + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ], + "vector2": [ + 44, + 45, + 46, + 47, + 48 + ], + "vector3": [ + 44, + 45, + 46, + 47, + 48 + ], + "vector22": [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73 + ], + "ownerId": "sam", + "category": "green" + }, + { + "@search.action": "mergeOrUpload", + "id": "45", + "name": "test", + "description": "test45 hello", + "vector1": [ + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ], + "vector1b": [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ], + "vector2": [ + 45, + 46, + 47, + 48, + 49 + ], + "vector3": [ + 45, + 46, + 47, + 48, + 49 + ], + "vector22": [ + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74 + ], + "ownerId": "ryan", + "category": "orange" + }, + { + "@search.action": "mergeOrUpload", + "id": "46", + "name": "test", + "description": "test46 hello", + "vector1": [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ], + "vector1b": [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ], + "vector2": [ + 46, + 47, + 48, + 49, + 50 + ], + "vector3": [ + 46, + 47, + 48, + 49, + 50 + ], + "vector22": [ + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ], + "ownerId": "sam", + "category": "orange" + }, + { + "@search.action": "mergeOrUpload", + "id": "47", + "name": "test", + "description": "test47 hello", + "vector1": [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66 + ], + "vector1b": [ + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66 + ], + "vector2": [ + 47, + 48, + 49, + 50, + 51 + ], + "vector3": [ + 47, + 48, + 49, + 50, + 51 + ], + "vector22": [ + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ], + "ownerId": "sam", + "category": "orange" + }, + { + "@search.action": "mergeOrUpload", + "id": "no-vectors", + "name": "test", + "description": "no vector", + "ownerId": "sam", + "category": "purple" + }, + { + "@search.action": "mergeOrUpload", + "id": "empty-vectors", + "name": "test", + "description": "no vector", + "ownerId": "sam", + "category": "purple" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "key": "0", + "status": true, + "statusCode": 201 + }, + { + "key": "1", + "status": true, + "statusCode": 201 + }, + { + "key": "2", + "status": true, + "statusCode": 201 + }, + { + "key": "3", + "status": true, + "statusCode": 201 + }, + { + "key": "4", + "status": true, + "statusCode": 201 + }, + { + "key": "5", + "status": true, + "statusCode": 201 + }, + { + "key": "6", + "status": true, + "statusCode": 201 + }, + { + "key": "7", + "status": true, + "statusCode": 201 + }, + { + "key": "8", + "status": true, + "statusCode": 201 + }, + { + "key": "9", + "status": true, + "statusCode": 201 + }, + { + "key": "10", + "status": true, + "statusCode": 201 + }, + { + "key": "11", + "status": true, + "statusCode": 201 + }, + { + "key": "12", + "status": true, + "statusCode": 201 + }, + { + "key": "13", + "status": true, + "statusCode": 201 + }, + { + "key": "14", + "status": true, + "statusCode": 201 + }, + { + "key": "15", + "status": true, + "statusCode": 201 + }, + { + "key": "16", + "status": true, + "statusCode": 201 + }, + { + "key": "17", + "status": true, + "statusCode": 201 + }, + { + "key": "18", + "status": true, + "statusCode": 201 + }, + { + "key": "19", + "status": true, + "statusCode": 201 + }, + { + "key": "20", + "status": true, + "statusCode": 201 + }, + { + "key": "21", + "status": true, + "statusCode": 201 + }, + { + "key": "22", + "status": true, + "statusCode": 201 + }, + { + "key": "23", + "status": true, + "statusCode": 201 + }, + { + "key": "24", + "status": true, + "statusCode": 201 + }, + { + "key": "25", + "status": true, + "statusCode": 201 + }, + { + "key": "26", + "status": true, + "statusCode": 201 + }, + { + "key": "27", + "status": true, + "statusCode": 201 + }, + { + "key": "28", + "status": true, + "statusCode": 201 + }, + { + "key": "29", + "status": true, + "statusCode": 201 + }, + { + "key": "30", + "status": true, + "statusCode": 201 + }, + { + "key": "31", + "status": true, + "statusCode": 201 + }, + { + "key": "32", + "status": true, + "statusCode": 201 + }, + { + "key": "33", + "status": true, + "statusCode": 201 + }, + { + "key": "34", + "status": true, + "statusCode": 201 + }, + { + "key": "35", + "status": true, + "statusCode": 201 + }, + { + "key": "36", + "status": true, + "statusCode": 201 + }, + { + "key": "37", + "status": true, + "statusCode": 201 + }, + { + "key": "38", + "status": true, + "statusCode": 201 + }, + { + "key": "39", + "status": true, + "statusCode": 201 + }, + { + "key": "40", + "status": true, + "statusCode": 201 + }, + { + "key": "41", + "status": true, + "statusCode": 201 + }, + { + "key": "42", + "status": true, + "statusCode": 201 + }, + { + "key": "43", + "status": true, + "statusCode": 201 + }, + { + "key": "44", + "status": true, + "statusCode": 201 + }, + { + "key": "45", + "status": true, + "statusCode": 201 + }, + { + "key": "46", + "status": true, + "statusCode": 201 + }, + { + "key": "47", + "status": true, + "statusCode": 201 + }, + { + "key": "no-vectors", + "status": true, + "statusCode": 201 + }, + { + "key": "empty-vectors", + "status": true, + "statusCode": 201 + } + ] + } + }, + "207": { + "body": { + "value": [ + { + "key": "0", + "status": true, + "statusCode": 201 + }, + { + "key": "1", + "status": true, + "statusCode": 201 + }, + { + "key": "2", + "status": true, + "statusCode": 201 + }, + { + "key": "3", + "status": true, + "statusCode": 201 + }, + { + "key": "4", + "status": true, + "statusCode": 201 + }, + { + "key": "5", + "status": true, + "statusCode": 201 + }, + { + "key": "6", + "status": true, + "statusCode": 201 + }, + { + "key": "7", + "status": true, + "statusCode": 201 + }, + { + "key": "8", + "status": true, + "statusCode": 201 + }, + { + "key": "9", + "status": true, + "statusCode": 201 + }, + { + "key": "10", + "status": true, + "statusCode": 201 + }, + { + "key": "11", + "status": true, + "statusCode": 201 + }, + { + "key": "12", + "status": true, + "statusCode": 201 + }, + { + "key": "13", + "status": true, + "statusCode": 201 + }, + { + "key": "14", + "status": true, + "statusCode": 201 + }, + { + "key": "15", + "status": true, + "statusCode": 201 + }, + { + "key": "16", + "status": true, + "statusCode": 201 + }, + { + "key": "17", + "status": true, + "statusCode": 201 + }, + { + "key": "18", + "status": true, + "statusCode": 201 + }, + { + "key": "19", + "status": true, + "statusCode": 201 + }, + { + "key": "20", + "status": true, + "statusCode": 201 + }, + { + "key": "21", + "status": true, + "statusCode": 201 + }, + { + "key": "22", + "status": true, + "statusCode": 201 + }, + { + "key": "23", + "status": true, + "statusCode": 201 + }, + { + "key": "24", + "status": true, + "statusCode": 201 + }, + { + "key": "25", + "status": true, + "statusCode": 201 + }, + { + "key": "26", + "status": true, + "statusCode": 201 + }, + { + "key": "27", + "status": true, + "statusCode": 201 + }, + { + "key": "28", + "status": true, + "statusCode": 201 + }, + { + "key": "29", + "status": true, + "statusCode": 201 + }, + { + "key": "30", + "status": true, + "statusCode": 201 + }, + { + "key": "31", + "status": true, + "statusCode": 201 + }, + { + "key": "32", + "status": true, + "statusCode": 201 + }, + { + "key": "33", + "status": true, + "statusCode": 201 + }, + { + "key": "34", + "status": true, + "statusCode": 201 + }, + { + "key": "35", + "status": true, + "statusCode": 201 + }, + { + "key": "36", + "status": true, + "statusCode": 201 + }, + { + "key": "37", + "status": true, + "statusCode": 201 + }, + { + "key": "38", + "status": true, + "statusCode": 201 + }, + { + "key": "39", + "status": true, + "statusCode": 201 + }, + { + "key": "40", + "status": true, + "statusCode": 201 + }, + { + "key": "41", + "status": true, + "statusCode": 201 + }, + { + "key": "42", + "status": true, + "statusCode": 201 + }, + { + "key": "43", + "status": true, + "statusCode": 201 + }, + { + "key": "44", + "status": true, + "statusCode": 201 + }, + { + "key": "45", + "status": true, + "statusCode": 201 + }, + { + "key": "46", + "status": true, + "statusCode": 201 + }, + { + "key": "47", + "status": true, + "statusCode": 201 + }, + { + "key": "no-vectors", + "status": true, + "statusCode": 201 + }, + { + "key": "empty-vectors", + "status": true, + "statusCode": 201 + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json new file mode 100644 index 000000000000..1267b386a073 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-11-01-preview", + "$count": true, + "facet": [ + "category,count:10,sort:count" + ], + "$filter": "rating gt 10", + "highlight": [ + "title" + ], + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "queryType": "simple", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": [ + "title", + "description" + ], + "searchMode": "any", + "$select": [ + "docId", + "title", + "description" + ], + "$skip": 100, + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.coverage": 80, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json new file mode 100644 index 000000000000..eb57be4b7bc3 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json @@ -0,0 +1,220 @@ +{ + "operationId": "Documents_SearchPost", + "title": "SearchIndexSearchDocumentsPost", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "preview-test", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "searchRequest": { + "count": true, + "facets": [ + "ownerId" + ], + "filter": "category eq 'purple' or category eq 'pink'", + "highlight": "category", + "highlightPostTag": "", + "highlightPreTag": "", + "orderby": "id desc", + "queryType": "simple", + "scoringStatistics": "global", + "sessionId": "mysessionid", + "scoringParameters": [ + "categoryTag:desiredCategoryValue" + ], + "scoringProfile": "stringFieldBoost", + "search": "purple", + "searchFields": "id,name,description,category,ownerId", + "searchMode": "any", + "select": "id,name,description,category,ownerId", + "skip": 0, + "top": 10, + "vectorQueries": [ + { + "vector": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ], + "kind": "vector", + "k": 50, + "fields": "vector22, vector1b", + "oversampling": 20, + "weight": 1, + "threshold": { + "value": 0.984, + "kind": "vectorSimilarity" + }, + "filterOverride": "ownerId eq 'sam'" + } + ], + "vectorFilterMode": "preFilter", + "hybridSearch": { + "maxTextRecallSize": 100, + "countAndFacetMode": "countAllResults" + } + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 27, + "@search.facets": { + "ownerId": [ + { + "count": 16, + "value": "sam" + }, + { + "count": 8, + "value": "ryan" + }, + { + "count": 3, + "value": "benny" + } + ] + }, + "value": [ + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "no-vectors", + "name": "test", + "description": "no vector", + "category": "purple", + "ownerId": "sam" + }, + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "empty-vectors", + "name": "test", + "description": "no vector", + "category": "purple", + "ownerId": "sam" + }, + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "9", + "name": "test", + "description": "test9 hello", + "category": "purple", + "ownerId": "ryan" + }, + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "8", + "name": "test", + "description": "test8 hello", + "category": "purple", + "ownerId": "sam" + }, + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "7", + "name": "test", + "description": "test7 hello", + "category": "purple", + "ownerId": "sam" + }, + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "6", + "name": "test", + "description": "test6 hello", + "category": "purple", + "ownerId": "ryan" + }, + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "5", + "name": "test", + "description": "test5 hello", + "category": "purple", + "ownerId": "sam" + }, + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "4", + "name": "test", + "description": "test4 hello", + "category": "purple", + "ownerId": "sam" + }, + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "3", + "name": "test", + "description": "test3 hello", + "category": "purple", + "ownerId": "ryan" + }, + { + "@search.score": 1.0, + "@search.highlights": { + "category": [ + "purple" + ] + }, + "id": "24", + "name": "test", + "description": "test24 hello", + "category": "purple", + "ownerId": "ryan" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json new file mode 100644 index 000000000000..656b6db2b4a6 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-11-01-preview", + "$count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json new file mode 100644 index 000000000000..1b03fad7f52b --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-11-01-preview", + "searchRequest": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "@search.nextPageParameters": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780, + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-11-01-preview" + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json new file mode 100644 index 000000000000..c7b3a006ad5b --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-11-01-preview", + "$filter": "rating gt 10", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "search": "hote", + "searchFields": [ + "title" + ], + "suggesterName": "sg", + "$select": [ + "docId", + "title", + "description" + ], + "$top": 10 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json new file mode 100644 index 000000000000..1d1c05aba34d --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json @@ -0,0 +1,59 @@ +{ + "operationId": "Documents_SuggestPost", + "title": "SearchIndexSuggestDocumentsPost", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "preview-test", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "suggestRequest": { + "filter": "ownerId eq 'sam' and id lt '15'", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "orderby": "id desc", + "search": "p", + "searchFields": "category", + "select": "id,name,category,ownerId", + "suggesterName": "sg", + "top": 10 + } + }, + "responses": { + "200": { + "body": { + "@search.coverage": 100.0, + "value": [ + { + "@search.text": "purple", + "id": "14", + "name": "test", + "category": "purple", + "ownerId": "sam" + }, + { + "@search.text": "purple", + "id": "13", + "name": "test", + "category": "purple", + "ownerId": "sam" + }, + { + "@search.text": "purple", + "id": "11", + "name": "test", + "category": "purple", + "ownerId": "sam" + }, + { + "@search.text": "purple", + "id": "1", + "name": "test", + "category": "purple", + "ownerId": "sam" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateAlias.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateAlias.json new file mode 100644 index 000000000000..bc0e3d0410d0 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateAlias.json @@ -0,0 +1,25 @@ +{ + "operationId": "Aliases_Create", + "title": "SearchServiceCreateAlias", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "alias": { + "name": "tempalias", + "indexes": [ + "preview-test" + ] + } + }, + "responses": { + "201": { + "body": { + "name": "tempalias", + "indexes": [ + "preview-test" + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json new file mode 100644 index 000000000000..dfeca99c161c --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json @@ -0,0 +1,73 @@ +{ + "operationId": "DataSources_Create", + "title": "SearchServiceCreateDataSource", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "dataSource": { + "name": "tempdatasource", + "description": "My Azure Blob data source.", + "type": "azureblob", + "credentials": { + "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " + }, + "container": { + "name": "doc-extraction-skillset", + "query": "E2E_Dsat" + }, + "dataChangeDetectionPolicy": { + "highWaterMarkColumnName": "metadata_storage_last_modified", + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" + }, + "dataDeletionDetectionPolicy": { + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true", + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "tempdatasource", + "description": "My Azure Blob data source.", + "type": "azureblob", + "credentials": { + "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " + }, + "container": { + "name": "doc-extraction-skillset", + "query": "E2E_Dsat" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "metadata_storage_last_modified" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json new file mode 100644 index 000000000000..7112b1f89d15 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json @@ -0,0 +1,582 @@ +{ + "operationId": "Indexes_Create", + "title": "SearchServiceCreateIndex", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "index": { + "name": "temp-preview-test", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "key": true, + "sortable": true + }, + { + "name": "vector1", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 20, + "vectorSearchProfile": "config1" + }, + { + "name": "vector1b", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 10, + "vectorSearchProfile": "config2" + }, + { + "name": "vector2", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 5, + "vectorSearchProfile": "config3" + }, + { + "name": "vector3", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 5, + "vectorSearchProfile": "config3" + }, + { + "name": "vector22", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 10, + "vectorSearchProfile": "config2" + }, + { + "name": "name", + "type": "Edm.String", + "retrievable": true, + "searchable": true, + "filterable": true, + "sortable": true, + "facetable": true, + "analyzer": "en.lucene" + }, + { + "name": "description", + "type": "Edm.String", + "retrievable": true, + "searchable": true, + "filterable": true, + "sortable": true, + "facetable": true, + "analyzer": "standard.lucene" + }, + { + "name": "category", + "type": "Edm.String", + "retrievable": true, + "searchable": true, + "filterable": true, + "sortable": true, + "facetable": true, + "analyzer": "en.lucene" + }, + { + "name": "ownerId", + "type": "Edm.String", + "retrievable": true, + "searchable": true, + "filterable": true, + "sortable": true, + "facetable": true, + "analyzer": "en.lucene" + } + ], + "scoringProfiles": [ + { + "name": "stringFieldBoost", + "text": { + "weights": { + "name": 3, + "description": 1, + "category": 2, + "ownerId": 1 + } + }, + "functions": [ + { + "tag": { + "tagsParameter": "categoryTag" + }, + "type": "tag", + "fieldName": "category", + "boost": 2 + } + ] + } + ], + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "category", + "ownerId" + ] + } + ], + "analyzers": [ + { + "tokenizer": "standard_v2", + "tokenFilters": [ + "common_grams" + ], + "charFilters": [ + "html_strip" + ], + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "name": "tagsAnalyzer" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "normalizers": [], + "semantic": {}, + "vectorSearch": { + "profiles": [ + { + "name": "config1", + "algorithm": "cosine", + "vectorizer": "openai", + "compression": "mySQ8" + }, + { + "name": "config2", + "algorithm": "euclidean", + "vectorizer": "custom-web-api", + "compression": "mySQ8" + }, + { + "name": "config3", + "algorithm": "dotProduct", + "vectorizer": "custom-web-api", + "compression": "myBQC" + } + ], + "algorithms": [ + { + "hnswParameters": { + "metric": "cosine" + }, + "name": "cosine", + "kind": "hnsw" + }, + { + "hnswParameters": { + "metric": "euclidean" + }, + "name": "euclidean", + "kind": "hnsw" + }, + { + "hnswParameters": { + "metric": "dotProduct" + }, + "name": "dotProduct", + "kind": "hnsw" + } + ], + "vectorizers": [ + { + "azureOpenAIParameters": { + "resourceUri": "https://test-sample.openai.azure.com/", + "deploymentId": "model", + "apiKey": "api-key", + "modelName": "text-embedding-3-large" + }, + "name": "openai", + "kind": "azureOpenAI" + }, + { + "customWebApiParameters": { + "uri": "https://my-custom-endpoint.org/", + "httpHeaders": { + "header1": "value1", + "header2": "value2" + }, + "httpMethod": "POST", + "timeout": "PT1M", + "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", + "authIdentity": { + "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" + } + }, + "name": "custom-web-api", + "kind": "customWebApi" + }, + { + "amlParameters": { + "uri": "https://my-custom-endpoint.org/", + "resourceId": "aml resource id", + "timeout": "PT1M", + "region": "aml region", + "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" + }, + "name": "aml", + "kind": "aml" + } + ], + "compressions": [ + { + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "name": "mySQ8", + "kind": "scalarQuantization", + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10, + "rescoreStorageMethod": "preserveOriginals" + }, + "truncationDimension": 2 + }, + { + "name": "myBQC", + "kind": "binaryQuantization", + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10, + "rescoreStorageMethod": "preserveOriginals" + }, + "truncationDimension": 2 + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "temp-preview-test", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": true, + "synonymMaps": [] + }, + { + "name": "vector1", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 20, + "vectorSearchProfile": "config1", + "synonymMaps": [] + }, + { + "name": "vector1b", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "vector2", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector3", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector22", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "name", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "standard.lucene", + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "ownerId", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "stringFieldBoost", + "functionAggregation": "sum", + "text": { + "weights": { + "name": 3.0, + "description": 1.0, + "category": 2.0, + "ownerId": 1.0 + } + }, + "functions": [ + { + "fieldName": "category", + "interpolation": "linear", + "type": "tag", + "boost": 2.0, + "tag": { + "tagsParameter": "categoryTag" + } + } + ] + } + ], + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "category", + "ownerId" + ] + } + ], + "analyzers": [ + { + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "name": "tagsAnalyzer", + "tokenizer": "standard_v2", + "tokenFilters": [ + "common_grams" + ], + "charFilters": [ + "html_strip" + ] + } + ], + "normalizers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" + }, + "semantic": { + "configurations": [] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "cosine", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "euclidean", + "kind": "hnsw", + "hnswParameters": { + "metric": "euclidean", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "dotProduct", + "kind": "hnsw", + "hnswParameters": { + "metric": "dotProduct", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + } + ], + "profiles": [ + { + "name": "config1", + "algorithm": "cosine", + "vectorizer": "openai", + "compression": "mySQ8" + }, + { + "name": "config2", + "algorithm": "euclidean", + "vectorizer": "custom-web-api", + "compression": "mySQ8" + }, + { + "name": "config3", + "algorithm": "dotProduct", + "vectorizer": "custom-web-api", + "compression": "myBQC" + } + ], + "vectorizers": [ + { + "name": "openai", + "kind": "azureOpenAI", + "azureOpenAIParameters": { + "resourceUri": "https://test-sample.openai.azure.com", + "deploymentId": "model", + "apiKey": "api-key", + "modelName": "text-embedding-3-large" + } + }, + { + "name": "custom-web-api", + "kind": "customWebApi", + "customWebApiParameters": { + "httpMethod": "POST", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", + "httpHeaders": { + "header1": "value1", + "header2": "value2" + }, + "authIdentity": { + "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" + } + } + }, + { + "name": "aml", + "kind": "aml", + "amlParameters": { + "resourceId": "aml resource id", + "region": "aml region", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" + } + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "truncationDimension": 2, + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + }, + { + "name": "myBQC", + "kind": "binaryQuantization", + "truncationDimension": 2, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json new file mode 100644 index 000000000000..9731be059de3 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json @@ -0,0 +1,74 @@ +{ + "operationId": "Indexers_Create", + "title": "SearchServiceCreateIndexer", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "indexer": { + "name": "myindexer", + "description": "Description of the indexer", + "dataSourceName": "mydocdbdatasource", + "skillsetName": "myskillset", + "targetIndexName": "preview-test", + "schedule": { + "interval": "P1D" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "configuration": { + "parsingMode": "markdown", + "markdownParsingSubmode": "oneToMany" + } + }, + "fieldMappings": [], + "outputFieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myindexer", + "description": "Description of the indexer", + "dataSourceName": "mydocdbdatasource", + "skillsetName": "myskillset", + "targetIndexName": "preview-test", + "disabled": false, + "schedule": { + "interval": "P1D", + "startTime": "2024-06-06T00:01:50.265Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "configuration": { + "parsingMode": "markdown", + "markdownParsingSubmode": "oneToMany" + } + }, + "fieldMappings": [], + "outputFieldMappings": [], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateAlias.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateAlias.json new file mode 100644 index 000000000000..67ec8b97cf71 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateAlias.json @@ -0,0 +1,37 @@ +{ + "operationId": "Aliases_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateAlias", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "aliasName": "myalias", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null, + "Prefer": "return=representation", + "alias": { + "name": "myalias", + "indexes": [ + "preview-test" + ] + } + }, + "responses": { + "200": { + "body": { + "name": "myalias", + "indexes": [ + "preview-test" + ] + } + }, + "201": { + "body": { + "name": "myalias", + "indexes": [ + "preview-test" + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json new file mode 100644 index 000000000000..833560453684 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json @@ -0,0 +1,112 @@ +{ + "operationId": "DataSources_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateDataSource", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "dataSourceName": "tempdatasource", + "api-version": "2024-11-01-preview", + "ignoreResetRequirements": null, + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null, + "Prefer": "return=representation", + "dataSource": { + "name": "tempdatasource", + "description": "My Azure Blob data source.", + "type": "azureblob", + "credentials": { + "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " + }, + "container": { + "name": "doc-extraction-skillset", + "query": "E2E_Dsat" + }, + "dataChangeDetectionPolicy": { + "highWaterMarkColumnName": "metadata_storage_last_modified", + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" + }, + "dataDeletionDetectionPolicy": { + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true", + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "tempdatasource", + "description": "My Azure Blob data source.", + "type": "azureblob", + "credentials": { + "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " + }, + "container": { + "name": "doc-extraction-skillset", + "query": "E2E_Dsat" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "metadata_storage_last_modified" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "201": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "tempdatasource", + "description": "My Azure Blob data source.", + "type": "azureblob", + "credentials": { + "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " + }, + "container": { + "name": "doc-extraction-skillset", + "query": "E2E_Dsat" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "metadata_storage_last_modified" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json new file mode 100644 index 000000000000..13234c786119 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json @@ -0,0 +1,904 @@ +{ + "operationId": "Indexes_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateIndex", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "temp-preview-test", + "allowIndexDowntime": null, + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null, + "Prefer": "return=representation", + "index": { + "name": "temp-preview-test", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "key": true, + "sortable": true + }, + { + "name": "vector1", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 20, + "vectorSearchProfile": "config1" + }, + { + "name": "vector1b", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 10, + "vectorSearchProfile": "config2" + }, + { + "name": "vector2", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 5, + "vectorSearchProfile": "config3" + }, + { + "name": "vector3", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 5, + "vectorSearchProfile": "config3" + }, + { + "name": "vector22", + "type": "Collection(Edm.Single)", + "retrievable": true, + "searchable": true, + "dimensions": 10, + "vectorSearchProfile": "config2" + }, + { + "name": "name", + "type": "Edm.String", + "retrievable": true, + "searchable": true, + "filterable": true, + "sortable": true, + "facetable": true, + "analyzer": "en.lucene" + }, + { + "name": "description", + "type": "Edm.String", + "retrievable": true, + "searchable": true, + "filterable": true, + "sortable": true, + "facetable": true, + "analyzer": "standard.lucene" + }, + { + "name": "category", + "type": "Edm.String", + "retrievable": true, + "searchable": true, + "filterable": true, + "sortable": true, + "facetable": true, + "analyzer": "en.lucene" + }, + { + "name": "ownerId", + "type": "Edm.String", + "retrievable": true, + "searchable": true, + "filterable": true, + "sortable": true, + "facetable": true, + "analyzer": "en.lucene" + } + ], + "scoringProfiles": [ + { + "name": "stringFieldBoost", + "text": { + "weights": { + "name": 3, + "description": 1, + "category": 2, + "ownerId": 1 + } + }, + "functions": [ + { + "tag": { + "tagsParameter": "categoryTag" + }, + "type": "tag", + "fieldName": "category", + "boost": 2 + } + ] + } + ], + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "category", + "ownerId" + ] + } + ], + "analyzers": [ + { + "tokenizer": "standard_v2", + "tokenFilters": [ + "common_grams" + ], + "charFilters": [ + "html_strip" + ], + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "name": "tagsAnalyzer" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "normalizers": [], + "semantic": {}, + "vectorSearch": { + "profiles": [ + { + "name": "config1", + "algorithm": "cosine", + "vectorizer": "openai", + "compression": "mySQ8" + }, + { + "name": "config2", + "algorithm": "euclidean", + "vectorizer": "custom-web-api", + "compression": "mySQ8" + }, + { + "name": "config3", + "algorithm": "dotProduct", + "vectorizer": "custom-web-api", + "compression": "myBQC" + } + ], + "algorithms": [ + { + "hnswParameters": { + "metric": "cosine" + }, + "name": "cosine", + "kind": "hnsw" + }, + { + "hnswParameters": { + "metric": "euclidean" + }, + "name": "euclidean", + "kind": "hnsw" + }, + { + "hnswParameters": { + "metric": "dotProduct" + }, + "name": "dotProduct", + "kind": "hnsw" + } + ], + "vectorizers": [ + { + "azureOpenAIParameters": { + "resourceUri": "https://test-sample.openai.azure.com/", + "deploymentId": "model", + "apiKey": "api-key", + "modelName": "text-embedding-3-large" + }, + "name": "openai", + "kind": "azureOpenAI" + }, + { + "customWebApiParameters": { + "uri": "https://my-custom-endpoint.org/", + "httpHeaders": { + "header1": "value1", + "header2": "value2" + }, + "httpMethod": "POST", + "timeout": "PT1M", + "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", + "authIdentity": { + "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" + } + }, + "name": "custom-web-api", + "kind": "customWebApi" + }, + { + "amlParameters": { + "uri": "https://my-custom-endpoint.org/", + "resourceId": "aml resource id", + "timeout": "PT1M", + "region": "aml region", + "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" + }, + "name": "aml", + "kind": "aml" + } + ], + "compressions": [ + { + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "name": "mySQ8", + "kind": "scalarQuantization", + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10, + "rescoreStorageMethod": "preserveOriginals" + }, + "truncationDimension": 2 + }, + { + "name": "myBQC", + "kind": "binaryQuantization", + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10, + "rescoreStorageMethod": "preserveOriginals" + }, + "truncationDimension": 2 + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "temp-preview-test", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": true, + "synonymMaps": [] + }, + { + "name": "vector1", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 20, + "vectorSearchProfile": "config1", + "synonymMaps": [] + }, + { + "name": "vector1b", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "vector2", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector3", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector22", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "name", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "standard.lucene", + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "ownerId", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "stringFieldBoost", + "functionAggregation": "sum", + "text": { + "weights": { + "name": 3.0, + "description": 1.0, + "category": 2.0, + "ownerId": 1.0 + } + }, + "functions": [ + { + "fieldName": "category", + "interpolation": "linear", + "type": "tag", + "boost": 2.0, + "tag": { + "tagsParameter": "categoryTag" + } + } + ] + } + ], + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "category", + "ownerId" + ] + } + ], + "analyzers": [ + { + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "name": "tagsAnalyzer", + "tokenizer": "standard_v2", + "tokenFilters": [ + "common_grams" + ], + "charFilters": [ + "html_strip" + ] + } + ], + "normalizers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" + }, + "semantic": { + "configurations": [] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "cosine", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "euclidean", + "kind": "hnsw", + "hnswParameters": { + "metric": "euclidean", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "dotProduct", + "kind": "hnsw", + "hnswParameters": { + "metric": "dotProduct", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + } + ], + "profiles": [ + { + "name": "config1", + "algorithm": "cosine", + "vectorizer": "openai", + "compression": "mySQ8" + }, + { + "name": "config2", + "algorithm": "euclidean", + "vectorizer": "custom-web-api", + "compression": "mySQ8" + }, + { + "name": "config3", + "algorithm": "dotProduct", + "vectorizer": "custom-web-api", + "compression": "myBQC" + } + ], + "vectorizers": [ + { + "name": "openai", + "kind": "azureOpenAI", + "azureOpenAIParameters": { + "resourceUri": "https://test-sample.openai.azure.com", + "deploymentId": "model", + "apiKey": "api-key", + "modelName": "text-embedding-3-large" + } + }, + { + "name": "custom-web-api", + "kind": "customWebApi", + "customWebApiParameters": { + "httpMethod": "POST", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", + "httpHeaders": { + "header1": "value1", + "header2": "value2" + }, + "authIdentity": { + "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" + } + } + }, + { + "name": "aml", + "kind": "aml", + "amlParameters": { + "resourceId": "aml resource id", + "region": "aml region", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" + } + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "truncationDimension": 2, + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + }, + { + "name": "myBQC", + "kind": "binaryQuantization", + "truncationDimension": 2, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "temp-preview-test", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": true, + "synonymMaps": [] + }, + { + "name": "vector1", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 20, + "vectorSearchProfile": "config1", + "synonymMaps": [] + }, + { + "name": "vector1b", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "vector2", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector3", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector22", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "name", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "standard.lucene", + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "ownerId", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "stringFieldBoost", + "functionAggregation": "sum", + "text": { + "weights": { + "name": 3.0, + "description": 1.0, + "category": 2.0, + "ownerId": 1.0 + } + }, + "functions": [ + { + "fieldName": "category", + "interpolation": "linear", + "type": "tag", + "boost": 2.0, + "tag": { + "tagsParameter": "categoryTag" + } + } + ] + } + ], + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "category", + "ownerId" + ] + } + ], + "analyzers": [ + { + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "name": "tagsAnalyzer", + "tokenizer": "standard_v2", + "tokenFilters": [ + "common_grams" + ], + "charFilters": [ + "html_strip" + ] + } + ], + "normalizers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" + }, + "semantic": { + "configurations": [] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "cosine", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "euclidean", + "kind": "hnsw", + "hnswParameters": { + "metric": "euclidean", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "dotProduct", + "kind": "hnsw", + "hnswParameters": { + "metric": "dotProduct", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + } + ], + "profiles": [ + { + "name": "config1", + "algorithm": "cosine", + "vectorizer": "openai", + "compression": "mySQ8" + }, + { + "name": "config2", + "algorithm": "euclidean", + "vectorizer": "custom-web-api", + "compression": "mySQ8" + }, + { + "name": "config3", + "algorithm": "dotProduct", + "vectorizer": "custom-web-api", + "compression": "myBQC" + } + ], + "vectorizers": [ + { + "name": "openai", + "kind": "azureOpenAI", + "azureOpenAIParameters": { + "resourceUri": "https://test-sample.openai.azure.com", + "deploymentId": "model", + "apiKey": "api-key", + "modelName": "text-embedding-3-large" + } + }, + { + "name": "custom-web-api", + "kind": "customWebApi", + "customWebApiParameters": { + "httpMethod": "POST", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", + "httpHeaders": { + "header1": "value1", + "header2": "value2" + }, + "authIdentity": { + "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" + } + } + }, + { + "name": "aml", + "kind": "aml", + "amlParameters": { + "resourceId": "aml resource id", + "region": "aml region", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" + } + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "truncationDimension": 2, + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + }, + { + "name": "myBQC", + "kind": "binaryQuantization", + "truncationDimension": 2, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json new file mode 100644 index 000000000000..5eaefa934ef2 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json @@ -0,0 +1,115 @@ +{ + "operationId": "Indexers_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateIndexer", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-11-01-preview", + "ignoreResetRequirements": null, + "disableCacheReprocessingChangeDetection": null, + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null, + "Prefer": "return=representation", + "indexer": { + "name": "myindexer", + "description": "Description of the indexer", + "dataSourceName": "mydocdbdatasource", + "skillsetName": "myskillset", + "targetIndexName": "preview-test", + "schedule": { + "interval": "P1D" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "configuration": { + "parsingMode": "markdown", + "markdownParsingSubmode": "oneToOne" + } + }, + "fieldMappings": [], + "outputFieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "myindexer", + "description": "Description of the indexer", + "dataSourceName": "mydocdbdatasource", + "skillsetName": "myskillset", + "targetIndexName": "preview-test", + "disabled": false, + "schedule": { + "interval": "P1D", + "startTime": "2024-06-06T00:01:50.265Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "configuration": { + "parsingMode": "markdown", + "markdownParsingSubmode": "oneToOne" + } + }, + "fieldMappings": [], + "outputFieldMappings": [], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "200": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "myindexer", + "description": "Description of the indexer", + "dataSourceName": "mydocdbdatasource", + "skillsetName": "myskillset", + "targetIndexName": "preview-test", + "disabled": false, + "schedule": { + "interval": "P1D", + "startTime": "2024-06-06T00:01:50.265Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "configuration": { + "parsingMode": "markdown", + "markdownParsingSubmode": "oneToOne" + } + }, + "fieldMappings": [], + "outputFieldMappings": [], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json new file mode 100644 index 000000000000..0385859a626e --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json @@ -0,0 +1,440 @@ +{ + "operationId": "Skillsets_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateSkillset", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "skillsetName": "tempskillset", + "api-version": "2024-11-01-preview", + "ignoreResetRequirements": null, + "disableCacheReprocessingChangeDetection": null, + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null, + "Prefer": "return=representation", + "skillset": { + "name": "tempskillset", + "description": "Skillset for extracting entities and more", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "skill2", + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "countryHint", + "source": "/document/countryHint" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "textSplitMode": "pages", + "maximumPageLength": 4000, + "unit": "azureOpenAITokens", + "azureOpenAITokenizerParameters": { + "encoderModelName": "cl100k_base", + "allowedSpecialTokens": [ + "[START]", + "[END]" + ] + }, + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "skill3", + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "skill4", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "uri": "https://contoso.example.org/", + "httpMethod": "POST", + "timeout": "PT5S", + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "skill5", + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ] + }, + { + "outputMode": "oneToMany", + "markdownHeaderDepth": "h3", + "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", + "name": "docIntelligenceLayoutSkill", + "context": "/document", + "inputs": [ + { + "name": "file_data", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "markdown_document", + "targetName": "markdown_document" + } + ] + } + ], + "cognitiveServices": { + "key": "myKey", + "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com", + "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "tempskillset", + "description": "Skillset for extracting entities and more", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "skill2", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "countryHint", + "source": "/document/countryHint", + "inputs": [] + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "skill3", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "unit": "azureOpenAITokens", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "azureOpenAITokenizerParameters": { + "encoderModelName": "cl100k_base", + "allowedSpecialTokens": [ + "[START]", + "[END]" + ] + } + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "skill4", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "skill5", + "uri": "https://contoso.example.org/", + "httpMethod": "POST", + "timeout": "PT5S", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", + "name": "docIntelligenceLayoutSkill", + "context": "/document", + "outputMode": "oneToMany", + "markdownHeaderDepth": "h3", + "inputs": [ + { + "name": "file_data", + "source": "/document/content", + "inputs": [] + } + ], + "outputs": [ + { + "name": "markdown_document", + "targetName": "markdown_document" + } + ] + } + ], + "cognitiveServices": { + "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey", + "key": "myKey", + "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "201": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "tempskillset", + "description": "Skillset for extracting entities and more", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "skill2", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "countryHint", + "source": "/document/countryHint", + "inputs": [] + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "skill3", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "unit": "azureOpenAITokens", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "azureOpenAITokenizerParameters": { + "encoderModelName": "cl100k_base", + "allowedSpecialTokens": [ + "[START]", + "[END]" + ] + } + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "skill4", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "skill5", + "uri": "https://contoso.example.org/", + "httpMethod": "POST", + "timeout": "PT5S", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", + "name": "docIntelligenceLayoutSkill", + "context": "/document", + "outputMode": "oneToMany", + "markdownHeaderDepth": "h3", + "inputs": [ + { + "name": "file_data", + "source": "/document/content", + "inputs": [] + } + ], + "outputs": [ + { + "name": "markdown_document", + "targetName": "markdown_document" + } + ] + } + ], + "cognitiveServices": { + "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey", + "key": "myKey", + "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json new file mode 100644 index 000000000000..7e14a451af29 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json @@ -0,0 +1,63 @@ +{ + "operationId": "SynonymMaps_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateSynonymMap", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null, + "Prefer": "return=representation", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "201": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json new file mode 100644 index 000000000000..4204b09bc7a2 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json @@ -0,0 +1,288 @@ +{ + "operationId": "Skillsets_Create", + "title": "SearchServiceCreateSkillset", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "skillset": { + "name": "tempskillset", + "description": "Skillset for extracting entities and more", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "skill2", + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "countryHint", + "source": "/document/countryHint" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "textSplitMode": "pages", + "maximumPageLength": 4000, + "unit": "azureOpenAITokens", + "azureOpenAITokenizerParameters": { + "encoderModelName": "cl100k_base", + "allowedSpecialTokens": [ + "[START]", + "[END]" + ] + }, + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "skill3", + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "skill4", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "uri": "https://contoso.example.org/", + "httpMethod": "POST", + "timeout": "PT5S", + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "skill5", + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ] + }, + { + "outputMode": "oneToMany", + "markdownHeaderDepth": "h3", + "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", + "name": "docIntelligenceLayoutSkill", + "context": "/document", + "inputs": [ + { + "name": "file_data", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "markdown_document", + "targetName": "markdown_document" + } + ] + } + ], + "cognitiveServices": { + "key": "myKey", + "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com", + "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "tempskillset", + "description": "Skillset for extracting entities and more", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "skill2", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "countryHint", + "source": "/document/countryHint", + "inputs": [] + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "skill3", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "unit": "azureOpenAITokens", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "azureOpenAITokenizerParameters": { + "encoderModelName": "cl100k_base", + "allowedSpecialTokens": [ + "[START]", + "[END]" + ] + } + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "skill4", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "skill5", + "uri": "https://contoso.example.org/", + "httpMethod": "POST", + "timeout": "PT5S", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", + "name": "docIntelligenceLayoutSkill", + "context": "/document", + "outputMode": "oneToMany", + "markdownHeaderDepth": "h3", + "inputs": [ + { + "name": "file_data", + "source": "/document/content", + "inputs": [] + } + ], + "outputs": [ + { + "name": "markdown_document", + "targetName": "markdown_document" + } + ] + } + ], + "cognitiveServices": { + "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey", + "key": "myKey", + "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json new file mode 100644 index 000000000000..9ee48aae761b --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json @@ -0,0 +1,42 @@ +{ + "operationId": "SynonymMaps_Create", + "title": "SearchServiceCreateSynonymMap", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "synonymMap": { + "name": "tempsynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "tempsynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteAlias.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteAlias.json new file mode 100644 index 000000000000..889089824926 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteAlias.json @@ -0,0 +1,16 @@ +{ + "operationId": "Aliases_Delete", + "title": "SearchServiceDeleteAlias", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "aliasName": "tempalias", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json new file mode 100644 index 000000000000..4d2d7eca9289 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json @@ -0,0 +1,16 @@ +{ + "operationId": "DataSources_Delete", + "title": "SearchServiceDeleteDataSource", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "dataSourceName": "tempdatasource", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json new file mode 100644 index 000000000000..cd5240a09a9e --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json @@ -0,0 +1,16 @@ +{ + "operationId": "Indexes_Delete", + "title": "SearchServiceDeleteIndex", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "temp-preview-test", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json new file mode 100644 index 000000000000..ecc4f149f674 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json @@ -0,0 +1,16 @@ +{ + "operationId": "Indexers_Delete", + "title": "SearchServiceDeleteIndexer", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexerName": "tempindexer", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null + }, + "responses": { + "404": {}, + "204": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json new file mode 100644 index 000000000000..9b43b2af7df4 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json @@ -0,0 +1,16 @@ +{ + "operationId": "Skillsets_Delete", + "title": "SearchServiceDeleteSkillset", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "skillsetName": "tempskillset", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json new file mode 100644 index 000000000000..53b4c7485013 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json @@ -0,0 +1,16 @@ +{ + "operationId": "SynonymMaps_Delete", + "title": "SearchServiceDeleteSynonymMap", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "synonymMapName": "tempsynonymmap", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "If-Match": null, + "If-None-Match": null + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetAlias.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetAlias.json new file mode 100644 index 000000000000..8bdef8764719 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetAlias.json @@ -0,0 +1,20 @@ +{ + "operationId": "Aliases_Get", + "title": "SearchServiceGetAlias", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "aliasName": "myalias", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "name": "myalias", + "indexes": [ + "preview-test" + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json new file mode 100644 index 000000000000..903cb9f52307 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json @@ -0,0 +1,45 @@ +{ + "operationId": "DataSources_Get", + "title": "SearchServiceGetDataSource", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "dataSourceName": "mydocdbdatasource", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "mydocdbdatasource", + "description": "My Azure Blob data source.", + "type": "azureblob", + "credentials": { + "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " + }, + "container": { + "name": "doc-extraction-skillset", + "query": "E2E_Dsat" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "metadata_storage_last_modified" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json new file mode 100644 index 000000000000..adb39be8a2f1 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json @@ -0,0 +1,331 @@ +{ + "operationId": "Indexes_Get", + "title": "SearchServiceGetIndex", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "preview-test", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "preview-test", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": true, + "synonymMaps": [] + }, + { + "name": "vector1", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 20, + "vectorSearchProfile": "config1", + "synonymMaps": [] + }, + { + "name": "vector1b", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "vector2", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector3", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector22", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "name", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "standard.lucene", + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "ownerId", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "stringFieldBoost", + "functionAggregation": "sum", + "text": { + "weights": { + "name": 3.0, + "description": 1.0, + "category": 2.0, + "ownerId": 1.0 + } + }, + "functions": [ + { + "fieldName": "category", + "interpolation": "linear", + "type": "tag", + "boost": 2.0, + "tag": { + "tagsParameter": "categoryTag" + } + } + ] + } + ], + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "category", + "ownerId" + ] + } + ], + "analyzers": [ + { + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "name": "tagsAnalyzer", + "tokenizer": "standard_v2", + "tokenFilters": [ + "common_grams" + ], + "charFilters": [ + "html_strip" + ] + } + ], + "normalizers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" + }, + "semantic": { + "configurations": [] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "cosine", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "euclidean", + "kind": "hnsw", + "hnswParameters": { + "metric": "euclidean", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "dotProduct", + "kind": "hnsw", + "hnswParameters": { + "metric": "dotProduct", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + } + ], + "profiles": [ + { + "name": "config1", + "algorithm": "cosine", + "vectorizer": "openai", + "compression": "mySQ8" + }, + { + "name": "config2", + "algorithm": "euclidean", + "vectorizer": "custom-web-api", + "compression": "mySQ8" + }, + { + "name": "config3", + "algorithm": "dotProduct", + "vectorizer": "custom-web-api", + "compression": "myBQC" + } + ], + "vectorizers": [ + { + "name": "openai", + "kind": "azureOpenAI", + "azureOpenAIParameters": { + "resourceUri": "https://test-sample.openai.azure.com", + "deploymentId": "model", + "apiKey": "", + "modelName": "text-embedding-3-large" + } + }, + { + "name": "custom-web-api", + "kind": "customWebApi", + "customWebApiParameters": { + "httpMethod": "POST", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", + "httpHeaders": { + "header1": "value1", + "header2": "value2" + }, + "authIdentity": { + "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" + } + } + }, + { + "name": "aml", + "kind": "aml", + "amlParameters": { + "resourceId": "aml resource id", + "region": "aml region", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" + } + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "truncationDimension": 2, + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + }, + { + "name": "myBQC", + "kind": "binaryQuantization", + "truncationDimension": 2, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json new file mode 100644 index 000000000000..edca0dc5aa5b --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json @@ -0,0 +1,19 @@ +{ + "operationId": "Indexes_GetStatistics", + "title": "SearchServiceGetIndexStatistics", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "preview-test", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "documentCount": 12, + "storageSize": 123456, + "vectorIndexSize": 123456 + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json new file mode 100644 index 000000000000..b7f67eff7c54 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json @@ -0,0 +1,43 @@ +{ + "operationId": "Indexers_Get", + "title": "SearchServiceGetIndexer", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "myindexer", + "description": "Description of the indexer", + "dataSourceName": "mydocdbdatasource", + "skillsetName": "myskillset", + "targetIndexName": "preview-test", + "disabled": false, + "schedule": { + "interval": "P1D", + "startTime": "2024-06-06T00:01:50.265Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "configuration": {} + }, + "fieldMappings": [], + "outputFieldMappings": [], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json new file mode 100644 index 000000000000..801414653941 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-11-01-preview" + }, + "responses": { + "200": { + "body": { + "status": "running", + "lastResult": { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + "executionHistory": [ + { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + { + "status": "transientFailure", + "errorMessage": null, + "startTime": "2014-11-26T03:28:10.125Z", + "endTime": "2014-11-26T03:28:12.007Z", + "errors": [ + { + "key": "", + "errorMessage": "Document key cannot be missing or empty.", + "statusCode": 400, + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 1", + "errorMessage": "Could not read the value of column 'foo' at index '0'.", + "statusCode": 400, + "name": "DocumentExtraction.AzureBlob.MyDataSource", + "details": "The file could not be parsed.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388" + } + ], + "warnings": [ + { + "key": "document id", + "message": "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob.", + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 2", + "message": "Document was truncated to 50000 characters.", + "name": "Enrichment.LanguageDetectionSkill.#4", + "details": "The skill did something that didn't break anything, nonetheless something we didn't expect happened, so it might be worth double checking.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2099692" + } + ], + "itemsProcessed": 1, + "itemsFailed": 2, + "initialTrackingState": null, + "finalTrackingState": null + } + ], + "limits": { + "maxRunTime": "PT22H", + "maxDocumentExtractionSize": 256000000, + "maxDocumentContentCharactersToExtract": 4000000 + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json new file mode 100644 index 000000000000..4122c86506f5 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json @@ -0,0 +1,58 @@ +{ + "operationId": "GetServiceStatistics", + "title": "SearchServiceGetServiceStatistics", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "counters": { + "documentCount": { + "usage": 12 + }, + "indexesCount": { + "usage": 2, + "quota": 2 + }, + "indexersCount": { + "usage": 2, + "quota": 2 + }, + "dataSourcesCount": { + "usage": 2, + "quota": 2 + }, + "storageSize": { + "usage": 123456, + "quota": 10485760 + }, + "synonymMaps": { + "usage": 3, + "quota": 3 + }, + "skillsetCount": { + "usage": 2, + "quota": 2 + }, + "aliasesCount": { + "usage": 4, + "quota": 4 + }, + "vectorIndexSize": { + "usage": 123456 + } + }, + "limits": { + "maxStoragePerIndex": 10485760, + "maxFieldsPerIndex": 1000, + "maxFieldNestingDepthPerIndex": 10, + "maxComplexCollectionFieldsPerIndex": 40, + "maxComplexObjectsInCollectionsPerDocument": 3000 + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json new file mode 100644 index 000000000000..f5460462a599 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json @@ -0,0 +1,161 @@ +{ + "operationId": "Skillsets_Get", + "title": "SearchServiceGetSkillset", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "skillsetName": "myskillset", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "myskillset", + "description": "Skillset for extracting entities and more", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "skill2", + "context": "/document", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "countryHint", + "source": "/document/countryHint", + "inputs": [] + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "skill3", + "context": "/document", + "defaultLanguageCode": "en", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "pageOverlapLength": 0, + "maximumPagesToTake": 0, + "unit": "azureOpenAITokens", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "azureOpenAITokenizerParameters": { + "encoderModelName": "cl100k_base", + "allowedSpecialTokens": [ + "[START]", + "[END]" + ] + } + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "skill4", + "context": "/document/pages/*", + "defaultLanguageCode": "en", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "skill5", + "context": "/document", + "uri": "https://contoso.example.org/", + "httpMethod": "POST", + "timeout": "PT5S", + "batchSize": 1000, + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + }, + { + "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", + "name": "docIntelligenceLayoutSkill", + "context": "/document", + "outputMode": "oneToMany", + "markdownHeaderDepth": "h3", + "inputs": [ + { + "name": "file_data", + "source": "/document/content", + "inputs": [] + } + ], + "outputs": [ + { + "name": "markdown_document", + "targetName": "markdown_document" + } + ] + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json new file mode 100644 index 000000000000..dafbceb70d0d --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json @@ -0,0 +1,29 @@ +{ + "operationId": "SynonymMaps_Get", + "title": "SearchServiceGetSynonymMap", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "@odata.etag": "0x1234568AE7E58A1", + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json new file mode 100644 index 000000000000..f990fed87fd6 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json @@ -0,0 +1,40 @@ +{ + "operationId": "Indexes_Analyze", + "title": "SearchServiceIndexAnalyze", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexName": "preview-test", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "request": { + "text": "Text to analyze", + "analyzer": "ar.lucene" + } + }, + "responses": { + "200": { + "body": { + "tokens": [ + { + "token": "text", + "startOffset": 0, + "endOffset": 4, + "position": 0 + }, + { + "token": "to", + "startOffset": 5, + "endOffset": 7, + "position": 1 + }, + { + "token": "analyze", + "startOffset": 8, + "endOffset": 15, + "position": 2 + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListAliases.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListAliases.json new file mode 100644 index 000000000000..69c9ecb9b00c --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListAliases.json @@ -0,0 +1,23 @@ +{ + "operationId": "Aliases_List", + "title": "SearchServiceListAliases", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myalias", + "indexes": [ + "preview-test" + ] + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json new file mode 100644 index 000000000000..845e2dd9704e --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json @@ -0,0 +1,49 @@ +{ + "operationId": "DataSources_List", + "title": "SearchServiceListDataSources", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "$select": null, + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@odata.etag": "0x1234568AE7E58A1", + "name": "mydocdbdatasource", + "description": "My Azure Blob data source.", + "type": "azureblob", + "credentials": { + "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " + }, + "container": { + "name": "doc-extraction-skillset", + "query": "E2E_Dsat" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "metadata_storage_last_modified" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json new file mode 100644 index 000000000000..ee4a73b3eed5 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json @@ -0,0 +1,46 @@ +{ + "operationId": "Indexers_List", + "title": "SearchServiceListIndexers", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "$select": "*", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myindexer", + "description": "Description of the indexer", + "dataSourceName": "mydocdbdatasource", + "skillsetName": "myskillset", + "targetIndexName": "preview-test", + "disabled": false, + "schedule": { + "interval": "P1D", + "startTime": "2024-06-06T00:01:50.265Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "configuration": {} + }, + "fieldMappings": [], + "outputFieldMappings": [], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json new file mode 100644 index 000000000000..b633eb879d39 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json @@ -0,0 +1,335 @@ +{ + "operationId": "Indexes_List", + "title": "SearchServiceListIndexes", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "$select": null, + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@odata.etag": "0x1234568AE7E58A1", + "name": "preview-test", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": true, + "synonymMaps": [] + }, + { + "name": "vector1", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 20, + "vectorSearchProfile": "config1", + "synonymMaps": [] + }, + { + "name": "vector1b", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "vector2", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector3", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 5, + "vectorSearchProfile": "config3", + "synonymMaps": [] + }, + { + "name": "vector22", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "stored": true, + "sortable": false, + "facetable": false, + "key": false, + "dimensions": 10, + "vectorSearchProfile": "config2", + "synonymMaps": [] + }, + { + "name": "name", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "standard.lucene", + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + }, + { + "name": "ownerId", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "stored": true, + "sortable": true, + "facetable": true, + "key": false, + "analyzer": "en.lucene", + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "stringFieldBoost", + "functionAggregation": "sum", + "text": { + "weights": { + "name": 3.0, + "description": 1.0, + "category": 2.0, + "ownerId": 1.0 + } + }, + "functions": [ + { + "fieldName": "category", + "interpolation": "linear", + "type": "tag", + "boost": 2.0, + "tag": { + "tagsParameter": "categoryTag" + } + } + ] + } + ], + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "category", + "ownerId" + ] + } + ], + "analyzers": [ + { + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "name": "tagsAnalyzer", + "tokenizer": "standard_v2", + "tokenFilters": [ + "common_grams" + ], + "charFilters": [ + "html_strip" + ] + } + ], + "normalizers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" + }, + "semantic": { + "configurations": [] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "cosine", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "euclidean", + "kind": "hnsw", + "hnswParameters": { + "metric": "euclidean", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "dotProduct", + "kind": "hnsw", + "hnswParameters": { + "metric": "dotProduct", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + } + ], + "profiles": [ + { + "name": "config1", + "algorithm": "cosine", + "vectorizer": "openai", + "compression": "mySQ8" + }, + { + "name": "config2", + "algorithm": "euclidean", + "vectorizer": "custom-web-api", + "compression": "mySQ8" + }, + { + "name": "config3", + "algorithm": "dotProduct", + "vectorizer": "custom-web-api", + "compression": "myBQC" + } + ], + "vectorizers": [ + { + "name": "openai", + "kind": "azureOpenAI", + "azureOpenAIParameters": { + "resourceUri": "https://test-sample.openai.azure.com", + "deploymentId": "model", + "apiKey": "", + "modelName": "text-embedding-3-large" + } + }, + { + "name": "custom-web-api", + "kind": "customWebApi", + "customWebApiParameters": { + "httpMethod": "POST", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", + "httpHeaders": { + "header1": "value1", + "header2": "value2" + }, + "authIdentity": { + "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" + } + } + }, + { + "name": "aml", + "kind": "aml", + "amlParameters": { + "resourceId": "aml resource id", + "region": "aml region", + "uri": "https://my-custom-endpoint.org/", + "timeout": "PT1M", + "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" + } + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "truncationDimension": 2, + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + }, + { + "name": "myBQC", + "kind": "binaryQuantization", + "truncationDimension": 2, + "rescoringOptions": { + "enableRescoring": true, + "defaultOversampling": 10.0, + "rescoreStorageMethod": "preserveOriginals" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json new file mode 100644 index 000000000000..f3a1fcbe4306 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json @@ -0,0 +1,165 @@ +{ + "operationId": "Skillsets_List", + "title": "SearchServiceListSkillsets", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "$select": null, + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@odata.etag": "0x1234568AE7E58A1", + "name": "myskillset", + "description": "Skillset for extracting entities and more", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "skill2", + "context": "/document", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "countryHint", + "source": "/document/countryHint", + "inputs": [] + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "skill3", + "context": "/document", + "defaultLanguageCode": "en", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "pageOverlapLength": 0, + "maximumPagesToTake": 0, + "unit": "azureOpenAITokens", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "azureOpenAITokenizerParameters": { + "encoderModelName": "cl100k_base", + "allowedSpecialTokens": [ + "[START]", + "[END]" + ] + } + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "skill4", + "context": "/document/pages/*", + "defaultLanguageCode": "en", + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "skill5", + "context": "/document", + "uri": "https://contoso.example.org/", + "httpMethod": "POST", + "timeout": "PT5S", + "batchSize": 1000, + "inputs": [ + { + "name": "text", + "source": "/document/content", + "inputs": [] + }, + { + "name": "languageCode", + "source": "/document/languageCode", + "inputs": [] + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + }, + { + "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", + "name": "docIntelligenceLayoutSkill", + "context": "/document", + "outputMode": "oneToMany", + "markdownHeaderDepth": "h3", + "inputs": [ + { + "name": "file_data", + "source": "/document/content", + "inputs": [] + } + ], + "outputs": [ + { + "name": "markdown_document", + "targetName": "markdown_document" + } + ] + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json new file mode 100644 index 000000000000..5c7b199b818c --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json @@ -0,0 +1,33 @@ +{ + "operationId": "SynonymMaps_List", + "title": "SearchServiceListSynonymMaps", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "$select": null, + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@odata.etag": "0x1234568AE7E58A1", + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetDocs.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetDocs.json new file mode 100644 index 000000000000..20a91dd39c69 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetDocs.json @@ -0,0 +1,21 @@ +{ + "operationId": "Indexers_ResetDocs", + "title": "SearchServiceResetDocs", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexerName": "myindexer", + "overwrite": true, + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "keysOrIds": { + "documentKeys": [ + "1", + "2", + "3" + ] + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json new file mode 100644 index 000000000000..9bbe95f61d97 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json @@ -0,0 +1,13 @@ +{ + "operationId": "Indexers_Reset", + "title": "SearchServiceResetIndexer", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "204": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetSkills.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetSkills.json new file mode 100644 index 000000000000..eb179862b112 --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetSkills.json @@ -0,0 +1,20 @@ +{ + "operationId": "Skillsets_ResetSkills", + "title": "SearchServiceResetSkills", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "skillsetName": "myskillset", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "skillNames": { + "skillNames": [ + "skill2", + "skill3", + "skill4" + ] + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json new file mode 100644 index 000000000000..af555c5787cc --- /dev/null +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json @@ -0,0 +1,13 @@ +{ + "operationId": "Indexers_Run", + "title": "SearchServiceRunIndexer", + "parameters": { + "endpoint": "https://previewexampleservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-11-01-preview", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "202": {} + } +} From 9cce3acf46a2f56a8267037f8a56cb91ab58d28f Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 29 Oct 2024 11:27:23 -0700 Subject: [PATCH 25/78] update --- specification/search/Azure.Search/models-service.tsp | 3 --- 1 file changed, 3 deletions(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 7226e40f79db..f57f11429b3e 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -4986,7 +4986,6 @@ model IndexingSchedule { /** * The time when an indexer should start running. */ - // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. startTime?: utcDateTime; } @@ -5235,14 +5234,12 @@ model IndexerExecutionResult { * The start time of this indexer execution. */ @visibility("read") - // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. startTime?: utcDateTime; /** * The end time of this indexer execution, if the execution has already completed. */ @visibility("read") - // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. endTime?: utcDateTime; /** From bfcf73003af7155c7f077ee933dffa487c3eecca Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Fri, 1 Nov 2024 11:09:52 -0700 Subject: [PATCH 26/78] update --- .../2024-07-01/SearchIndexAutocompleteDocumentsGet.json | 2 ++ .../2024-07-01/SearchIndexAutocompleteDocumentsPost.json | 2 ++ .../examples/2024-07-01/SearchIndexCountDocuments.json | 2 ++ .../examples/2024-07-01/SearchIndexGetDocument.json | 2 +- .../examples/2024-07-01/SearchIndexIndexDocuments.json | 2 +- .../examples/2024-07-01/SearchIndexSearchDocumentsGet.json | 2 ++ .../examples/2024-07-01/SearchIndexSearchDocumentsPost.json | 2 ++ .../2024-07-01/SearchIndexSearchDocumentsSemanticGet.json | 2 ++ .../2024-07-01/SearchIndexSearchDocumentsSemanticPost.json | 2 ++ .../examples/2024-07-01/SearchIndexSuggestDocumentsGet.json | 2 ++ .../examples/2024-07-01/SearchIndexSuggestDocumentsPost.json | 2 ++ .../examples/2024-07-01/SearchServiceCreateDataSource.json | 2 ++ .../examples/2024-07-01/SearchServiceCreateIndex.json | 2 ++ .../examples/2024-07-01/SearchServiceCreateIndexer.json | 2 ++ .../2024-07-01/SearchServiceCreateOrUpdateDataSource.json | 2 ++ .../examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json | 2 ++ .../2024-07-01/SearchServiceCreateOrUpdateIndexer.json | 2 ++ .../2024-07-01/SearchServiceCreateOrUpdateSkillset.json | 2 ++ .../2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json | 2 ++ .../examples/2024-07-01/SearchServiceCreateSkillset.json | 2 ++ .../examples/2024-07-01/SearchServiceCreateSynonymMap.json | 2 ++ .../examples/2024-07-01/SearchServiceDeleteDataSource.json | 2 ++ .../examples/2024-07-01/SearchServiceDeleteIndex.json | 2 ++ .../examples/2024-07-01/SearchServiceDeleteIndexer.json | 2 ++ .../examples/2024-07-01/SearchServiceDeleteSkillset.json | 2 ++ .../examples/2024-07-01/SearchServiceDeleteSynonymMap.json | 2 ++ .../examples/2024-07-01/SearchServiceGetDataSource.json | 2 ++ .../examples/2024-07-01/SearchServiceGetIndex.json | 2 ++ .../examples/2024-07-01/SearchServiceGetIndexStatistics.json | 2 ++ .../examples/2024-07-01/SearchServiceGetIndexer.json | 2 ++ .../examples/2024-07-01/SearchServiceGetIndexerStatus.json | 2 ++ .../2024-07-01/SearchServiceGetServiceStatistics.json | 2 ++ .../examples/2024-07-01/SearchServiceGetSkillset.json | 2 ++ .../examples/2024-07-01/SearchServiceGetSynonymMap.json | 2 ++ .../examples/2024-07-01/SearchServiceIndexAnalyze.json | 2 ++ .../examples/2024-07-01/SearchServiceListDataSources.json | 2 ++ .../examples/2024-07-01/SearchServiceListIndexers.json | 2 ++ .../examples/2024-07-01/SearchServiceListIndexes.json | 2 ++ .../examples/2024-07-01/SearchServiceListSkillsets.json | 2 ++ .../examples/2024-07-01/SearchServiceListSynonymMaps.json | 2 ++ .../examples/2024-07-01/SearchServiceResetIndexer.json | 2 ++ .../examples/2024-07-01/SearchServiceRunIndexer.json | 2 ++ .../SearchIndexAutocompleteDocumentsGet.json | 4 +++- .../SearchIndexAutocompleteDocumentsPost.json | 2 +- .../2024-11-01-preview/SearchIndexCountDocuments.json | 4 ++-- .../examples/2024-11-01-preview/SearchIndexGetDocument.json | 2 +- .../2024-11-01-preview/SearchIndexIndexDocuments.json | 2 +- .../2024-11-01-preview/SearchIndexSearchDocumentsGet.json | 2 ++ .../2024-11-01-preview/SearchIndexSearchDocumentsPost.json | 2 +- .../SearchIndexSearchDocumentsSemanticGet.json | 2 ++ .../SearchIndexSearchDocumentsSemanticPost.json | 2 ++ .../2024-11-01-preview/SearchIndexSuggestDocumentsGet.json | 2 ++ .../2024-11-01-preview/SearchIndexSuggestDocumentsPost.json | 2 +- .../2024-11-01-preview/SearchServiceCreateDataSource.json | 2 +- .../examples/2024-11-01-preview/SearchServiceCreateIndex.json | 2 +- .../2024-11-01-preview/SearchServiceCreateIndexer.json | 2 +- .../SearchServiceCreateOrUpdateDataSource.json | 2 +- .../2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json | 2 +- .../SearchServiceCreateOrUpdateIndexer.json | 2 +- .../SearchServiceCreateOrUpdateSkillset.json | 2 +- .../SearchServiceCreateOrUpdateSynonymMap.json | 2 +- .../2024-11-01-preview/SearchServiceCreateSkillset.json | 2 +- .../2024-11-01-preview/SearchServiceCreateSynonymMap.json | 2 +- .../2024-11-01-preview/SearchServiceDeleteDataSource.json | 2 +- .../examples/2024-11-01-preview/SearchServiceDeleteIndex.json | 2 +- .../2024-11-01-preview/SearchServiceDeleteIndexer.json | 2 +- .../2024-11-01-preview/SearchServiceDeleteSkillset.json | 2 +- .../2024-11-01-preview/SearchServiceDeleteSynonymMap.json | 2 +- .../2024-11-01-preview/SearchServiceGetDataSource.json | 2 +- .../examples/2024-11-01-preview/SearchServiceGetIndex.json | 2 +- .../2024-11-01-preview/SearchServiceGetIndexStatistics.json | 2 +- .../examples/2024-11-01-preview/SearchServiceGetIndexer.json | 2 +- .../2024-11-01-preview/SearchServiceGetIndexerStatus.json | 2 ++ .../2024-11-01-preview/SearchServiceGetServiceStatistics.json | 2 +- .../examples/2024-11-01-preview/SearchServiceGetSkillset.json | 2 +- .../2024-11-01-preview/SearchServiceGetSynonymMap.json | 2 +- .../2024-11-01-preview/SearchServiceIndexAnalyze.json | 2 +- .../2024-11-01-preview/SearchServiceListDataSources.json | 2 +- .../2024-11-01-preview/SearchServiceListIndexers.json | 2 +- .../examples/2024-11-01-preview/SearchServiceListIndexes.json | 2 +- .../2024-11-01-preview/SearchServiceListSkillsets.json | 2 +- .../2024-11-01-preview/SearchServiceListSynonymMaps.json | 2 +- .../2024-11-01-preview/SearchServiceResetIndexer.json | 2 +- .../examples/2024-11-01-preview/SearchServiceRunIndexer.json | 2 +- specification/search/Azure.Search/tspconfig.yaml | 1 - 85 files changed, 132 insertions(+), 41 deletions(-) diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json index ba6cc8e52fe2..f8161d4669c0 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_autocompleteGet", + "title": "SearchIndexAutocompleteDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json index 859afde5d944..dbcee6f49bca 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_autocompletePost", + "title": "SearchIndexAutocompleteDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json index 1b29fbd19012..aad2de05dd15 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_count", + "title": "SearchIndexCountDocuments", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json index 64cf2c3e326b..9b29abaf6c9a 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json @@ -1,5 +1,5 @@ { - "operationId": "Documents_Get", + "operationId": "DocumentsOperations_get", "title": "SearchIndexGetDocument", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json index 6f976253c7ca..07048dd6a070 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "Documents_Index", + "operationId": "DocumentsOperations_index", "title": "SearchIndexIndexDocuments", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json index 9701cbfe9947..1d67c957b066 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_searchGet", + "title": "SearchIndexSearchDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json index 7ecedecf6fad..16ae09218b18 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_searchPost", + "title": "SearchIndexSearchDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json index 2fa8b5a0c902..719f2961873d 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_searchGet", + "title": "SearchIndexSearchDocumentsSemanticGet", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json index e74b21e83c67..f9eff1b8cc6f 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_searchPost", + "title": "SearchIndexSearchDocumentsSemanticPost", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json index 24cf118118d0..cb9f58017944 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_suggestGet", + "title": "SearchIndexSuggestDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json index 8008dbc517f3..cf02892d791d 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_suggestPost", + "title": "SearchIndexSuggestDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json index 3ebba14f4e49..ffefd456a3d7 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json @@ -1,4 +1,6 @@ { + "operationId": "DataSourcesOperations_create", + "title": "SearchServiceCreateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", "api-version": "2024-07-01", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json index 5591bedf4097..2320cf6e0cc0 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json @@ -1,4 +1,6 @@ { + "operationId": "IndexesOperations_create", + "title": "SearchServiceCreateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", "api-version": "2024-07-01", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json index 8d15452eb354..6efd0f9026e7 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json @@ -1,4 +1,6 @@ { + "operationId": "IndexersOperations_create", + "title": "SearchServiceCreateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", "api-version": "2024-07-01", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json index 5b27ebdb0a55..22c1465ee625 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json @@ -1,4 +1,6 @@ { + "operationId": "DataSourcesOperations_createOrUpdate", + "title": "SearchServiceCreateOrUpdateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", "dataSourceName": "mydatasource", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json index 72dfe8bb9d81..5122eb5c0ffc 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json @@ -1,4 +1,6 @@ { + "operationId": "IndexesOperations_createOrUpdate", + "title": "SearchServiceCreateOrUpdateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "hotels", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json index dfcdc9fd148b..87756d0b0320 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json @@ -1,4 +1,6 @@ { + "operationId": "IndexersOperations_createOrUpdate", + "title": "SearchServiceCreateOrUpdateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexerName": "myindexer", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json index 1acf71dc07ab..278d5b021ac1 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json @@ -1,4 +1,6 @@ { + "operationId": "SkillsetsOperations_createOrUpdate", + "title": "SearchServiceCreateOrUpdateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", "skillsetName": "demoskillset", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json index 8d7c9e29a646..15cae3107d51 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json @@ -1,4 +1,6 @@ { + "operationId": "SynonymMapsOperations_createOrUpdate", + "title": "SearchServiceCreateOrUpdateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", "synonymMapName": "mysynonymmap", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json index 4769c919ccdf..4e29efaf1d45 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json @@ -1,4 +1,6 @@ { + "operationId": "SkillsetsOperations_create", + "title": "SearchServiceCreateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", "skillsetName": "demoskillset", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json index 5928314232fc..08bd19411064 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json @@ -1,4 +1,6 @@ { + "operationId": "SynonymMapsOperations_create", + "title": "SearchServiceCreateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", "api-version": "2024-07-01", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json index a0a88ff02612..e3164f15539b 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json @@ -1,4 +1,6 @@ { + "operationId": "DataSourcesOperations_delete", + "title": "SearchServiceDeleteDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", "dataSourceName": "mydatasource", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json index 5ab2bfb51a69..9cb45f7f14d3 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json @@ -1,4 +1,6 @@ { + "operationId": "IndexesOperations_delete", + "title": "SearchServiceDeleteIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json index ce97fbb336f5..dd41b705631c 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json @@ -1,4 +1,6 @@ { + "operationId": "IndexersOperations_delete", + "title": "SearchServiceDeleteIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexerName": "myindexer", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json index a54e05711829..ef136a7c4ada 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json @@ -1,4 +1,6 @@ { + "operationId": "SkillsetsOperations_delete", + "title": "SearchServiceDeleteSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", "skillsetName": "demoskillset", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json index 0ce61b4b9aca..53a000edff96 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json @@ -1,4 +1,6 @@ { + "operationId": "SynonymMapsOperations_delete", + "title": "SearchServiceDeleteSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", "synonymMapName": "mysynonymmap", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json index 4ed8bf94cb93..93251a9903ca 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json @@ -1,4 +1,6 @@ { + "operationId": "DataSourcesOperations_get", + "title": "SearchServiceGetDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", "dataSourceName": "mydatasource", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json index bce8ace8241e..8917532b83bb 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json @@ -1,4 +1,6 @@ { + "operationId": "IndexesOperations_get", + "title": "SearchServiceGetIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "hotels", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json index 488b6594ea37..2b5291f9271f 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json @@ -1,4 +1,6 @@ { + "operationId": "IndexesOperations_getStatistics", + "title": "SearchServiceGetIndexStatistics", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "hotels", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json index 36284505e003..dbece0505a3f 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json @@ -1,4 +1,6 @@ { + "operationId": "IndexersOperations_get", + "title": "SearchServiceGetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexerName": "myindexer", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json index 10f679024a3c..5b842cb908ad 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json @@ -1,4 +1,6 @@ { + "operationId": "IndexersOperations_getStatus", + "title": "SearchServiceGetIndexerStatus", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexerName": "myindexer", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json index 68b3c18500bb..138f467b4cec 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json @@ -1,4 +1,6 @@ { + "operationId": "getServiceStatistics", + "title": "SearchServiceGetServiceStatistics", "parameters": { "endpoint": "https://myservice.search.windows.net", "api-version": "2024-07-01" diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json index 3224713ed5cf..4585d964cd92 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json @@ -1,4 +1,6 @@ { + "operationId": "SkillsetsOperations_get", + "title": "SearchServiceGetSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", "skillsetName": "demoskillset", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json index 31a9754f84ed..4698cdda3e68 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json @@ -1,4 +1,6 @@ { + "operationId": "SynonymMapsOperations_get", + "title": "SearchServiceGetSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", "synonymMapName": "mysynonymmap", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json index ca3e97ad91f0..6aee476454c3 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json @@ -1,4 +1,6 @@ { + "operationId": "IndexesOperations_analyze", + "title": "SearchServiceIndexAnalyze", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "hotels", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json index ba4a2ed04626..c197eec38471 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json @@ -1,4 +1,6 @@ { + "operationId": "DataSourcesOperations_list", + "title": "SearchServiceListDataSources", "parameters": { "endpoint": "https://myservice.search.windows.net", "$select": "*", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json index bd39f0576aa3..0bb71df6e4bf 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json @@ -1,4 +1,6 @@ { + "operationId": "IndexersOperations_list", + "title": "SearchServiceListIndexers", "parameters": { "endpoint": "https://myservice.search.windows.net", "$select": "*", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json index 8bbbf44a33cb..04a23cc707fb 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json @@ -1,4 +1,6 @@ { + "operationId": "IndexesOperations_list", + "title": "SearchServiceListIndexes", "parameters": { "endpoint": "https://myservice.search.windows.net", "$select": "*", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json index 4790a21afbe9..0d9ebb53259b 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json @@ -1,4 +1,6 @@ { + "operationId": "SkillsetsOperations_list", + "title": "SearchServiceListSkillsets", "parameters": { "endpoint": "https://myservice.search.windows.net", "$select": "*", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json index a749fa1edbc9..e4be39cd9b7b 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json @@ -1,4 +1,6 @@ { + "operationId": "SynonymMapsOperations_list", + "title": "SearchServiceListSynonymMaps", "parameters": { "endpoint": "https://myservice.search.windows.net", "api-version": "2024-07-01" diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json index 7bd2d1f2b8d3..a51be4c6accf 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json @@ -1,4 +1,6 @@ { + "operationId": "IndexersOperations_reset", + "title": "SearchServiceResetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexerName": "myindexer", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json index 48924939dfbb..fe04b456fe79 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json @@ -1,4 +1,6 @@ { + "operationId": "IndexersOperations_run", + "title": "SearchServiceRunIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexerName": "myindexer", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json index d7e422559283..05c6837c64ea 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_autocompleteGet", + "title": "SearchIndexAutocompleteDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", @@ -34,5 +36,5 @@ } ] } - } + } } diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json index 1e8238c7ac9d..3f0c0bc29a27 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "Documents_AutocompletePost", + "operationId": "DocumentsOperations_autocompletePost", "title": "SearchIndexAutocompleteDocumentsPost", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json index 08553318c0e5..7796fbfd60eb 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "Documents_Count", + "operationId": "DocumentsOperations_count", "title": "SearchIndexCountDocuments", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", @@ -11,5 +11,5 @@ "200": { "body": 50 } - } + } } diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json index d528286f1839..c60c13fa1f1b 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json @@ -1,5 +1,5 @@ { - "operationId": "Documents_Get", + "operationId": "DocumentsOperations_get", "title": "SearchIndexGetDocument", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json index 1376aa34cfae..a2ba91dff52a 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "Documents_Index", + "operationId": "DocumentsOperations_index", "title": "SearchIndexIndexDocuments", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json index 1267b386a073..cd69eabd7e45 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_searchGet", + "title": "SearchIndexSearchDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json index eb57be4b7bc3..c7659d59e5b2 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "Documents_SearchPost", + "operationId": "DocumentsOperations_searchPost", "title": "SearchIndexSearchDocumentsPost", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json index 656b6db2b4a6..59fade17b657 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_searchGet", + "title": "SearchIndexSearchDocumentsSemanticGet", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json index 1b03fad7f52b..2fd4deb936f2 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_searchPost", + "title": "SearchIndexSearchDocumentsSemanticPost", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json index c7b3a006ad5b..be7d519e5f34 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json @@ -1,4 +1,6 @@ { + "operationId": "DocumentsOperations_suggestGet", + "title": "SearchIndexSuggestDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexName": "myindex", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json index 1d1c05aba34d..6a3f93606b55 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "Documents_SuggestPost", + "operationId": "DocumentsOperations_suggestPost", "title": "SearchIndexSuggestDocumentsPost", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json index dfeca99c161c..ec53dfc0dbd2 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSources_Create", + "operationId": "DataSourcesOperations_create", "title": "SearchServiceCreateDataSource", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json index 7112b1f89d15..b7806567add4 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "Indexes_Create", + "operationId": "IndexesOperations_create", "title": "SearchServiceCreateIndex", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json index 9731be059de3..a04be6b45bb0 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "Indexers_Create", + "operationId": "IndexersOperations_create", "title": "SearchServiceCreateIndexer", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json index 833560453684..613864f157fe 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSources_CreateOrUpdate", + "operationId": "DataSourcesOperations_createOrUpdate", "title": "SearchServiceCreateOrUpdateDataSource", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json index 13234c786119..9233f28fa94f 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "Indexes_CreateOrUpdate", + "operationId": "IndexesOperations_createOrUpdate", "title": "SearchServiceCreateOrUpdateIndex", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json index 5eaefa934ef2..2091b4c25533 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "Indexers_CreateOrUpdate", + "operationId": "IndexersOperations_createOrUpdate", "title": "SearchServiceCreateOrUpdateIndexer", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json index 0385859a626e..79c4baf893d1 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "Skillsets_CreateOrUpdate", + "operationId": "SkillsetsOperations_createOrUpdate", "title": "SearchServiceCreateOrUpdateSkillset", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json index 7e14a451af29..08ec9c612e12 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMaps_CreateOrUpdate", + "operationId": "SynonymMapsOperations_createOrUpdate", "title": "SearchServiceCreateOrUpdateSynonymMap", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json index 4204b09bc7a2..b571da40c993 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "Skillsets_Create", + "operationId": "SkillsetsOperations_create", "title": "SearchServiceCreateSkillset", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json index 9ee48aae761b..7e8184177292 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMaps_Create", + "operationId": "SynonymMapsOperations_create", "title": "SearchServiceCreateSynonymMap", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json index 4d2d7eca9289..ac12192f910a 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSources_Delete", + "operationId": "DataSourcesOperations_delete", "title": "SearchServiceDeleteDataSource", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json index cd5240a09a9e..61fa8f96a3a3 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json @@ -1,5 +1,5 @@ { - "operationId": "Indexes_Delete", + "operationId": "IndexesOperations_delete", "title": "SearchServiceDeleteIndex", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json index ecc4f149f674..2da2d587dc1d 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "Indexers_Delete", + "operationId": "IndexersOperations_delete", "title": "SearchServiceDeleteIndexer", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json index 9b43b2af7df4..67f833787eea 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "Skillsets_Delete", + "operationId": "SkillsetsOperations_delete", "title": "SearchServiceDeleteSkillset", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json index 53b4c7485013..b087b8da5ff7 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMaps_Delete", + "operationId": "SynonymMapsOperations_delete", "title": "SearchServiceDeleteSynonymMap", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json index 903cb9f52307..950a169d8442 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSources_Get", + "operationId": "DataSourcesOperations_get", "title": "SearchServiceGetDataSource", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json index adb39be8a2f1..ee3b3da7c8c9 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json @@ -1,5 +1,5 @@ { - "operationId": "Indexes_Get", + "operationId": "IndexesOperations_get", "title": "SearchServiceGetIndex", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json index edca0dc5aa5b..4ff1e2f1d6e1 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json @@ -1,5 +1,5 @@ { - "operationId": "Indexes_GetStatistics", + "operationId": "IndexesOperations_getStatistics", "title": "SearchServiceGetIndexStatistics", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json index b7f67eff7c54..463f19d5eaae 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "Indexers_Get", + "operationId": "IndexersOperations_get", "title": "SearchServiceGetIndexer", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json index 801414653941..65a39aebe8da 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json @@ -1,4 +1,6 @@ { + "operationId": "IndexersOperations_getStatus", + "title": "SearchServiceGetIndexerStatus", "parameters": { "endpoint": "https://myservice.search.windows.net", "indexerName": "myindexer", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json index 4122c86506f5..398720f59e41 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json @@ -1,5 +1,5 @@ { - "operationId": "GetServiceStatistics", + "operationId": "getServiceStatistics", "title": "SearchServiceGetServiceStatistics", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json index f5460462a599..3867b1cfeb3b 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "Skillsets_Get", + "operationId": "SkillsetsOperations_get", "title": "SearchServiceGetSkillset", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json index dafbceb70d0d..822cba37fa3f 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMaps_Get", + "operationId": "SynonymMapsOperations_get", "title": "SearchServiceGetSynonymMap", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json index f990fed87fd6..55d3daa6e7cb 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json @@ -1,5 +1,5 @@ { - "operationId": "Indexes_Analyze", + "operationId": "IndexesOperations_analyze", "title": "SearchServiceIndexAnalyze", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json index 845e2dd9704e..5f4dc9a5f17c 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json @@ -1,5 +1,5 @@ { - "operationId": "DataSources_List", + "operationId": "DataSourcesOperations_list", "title": "SearchServiceListDataSources", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json index ee4a73b3eed5..b4e06e8dbd74 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json @@ -1,5 +1,5 @@ { - "operationId": "Indexers_List", + "operationId": "IndexersOperations_list", "title": "SearchServiceListIndexers", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json index b633eb879d39..d9fb57d326d7 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json @@ -1,5 +1,5 @@ { - "operationId": "Indexes_List", + "operationId": "IndexesOperations_list", "title": "SearchServiceListIndexes", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json index f3a1fcbe4306..7b17c3f7e1ee 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json @@ -1,5 +1,5 @@ { - "operationId": "Skillsets_List", + "operationId": "SkillsetsOperations_list", "title": "SearchServiceListSkillsets", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json index 5c7b199b818c..e5a7fbcc3da4 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMaps_List", + "operationId": "SynonymMapsOperations_list", "title": "SearchServiceListSynonymMaps", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json index 9bbe95f61d97..3859f42d9417 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "Indexers_Reset", + "operationId": "IndexersOperations_reset", "title": "SearchServiceResetIndexer", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json index af555c5787cc..6cfe03607c67 100644 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json +++ b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "Indexers_Run", + "operationId": "IndexersOperations_run", "title": "SearchServiceRunIndexer", "parameters": { "endpoint": "https://previewexampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/tspconfig.yaml b/specification/search/Azure.Search/tspconfig.yaml index 97041dae4a83..27f4054748f6 100644 --- a/specification/search/Azure.Search/tspconfig.yaml +++ b/specification/search/Azure.Search/tspconfig.yaml @@ -10,7 +10,6 @@ options: "@azure-tools/typespec-autorest": azure-resource-provider-folder: "data-plane" emitter-output-dir: "{project-root}/.." - examples-directory: "{project-root}/examples" output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json" "@azure-tools/typespec-python": package-dir: "azure-search-documents" From 34dd5dfb8ebb2934b458c14faa291d5af9ae2f30 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Fri, 1 Nov 2024 11:39:18 -0700 Subject: [PATCH 27/78] add openapi files --- .../preview/2024-11-01-preview/openapi.json | 15561 ++++++++++++++++ .../Search/stable/2024-07-01/openapi.json | 15561 ++++++++++++++++ 2 files changed, 31122 insertions(+) create mode 100644 specification/search/data-plane/Search/preview/2024-11-01-preview/openapi.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/openapi.json diff --git a/specification/search/data-plane/Search/preview/2024-11-01-preview/openapi.json b/specification/search/data-plane/Search/preview/2024-11-01-preview/openapi.json new file mode 100644 index 000000000000..178abe200a1c --- /dev/null +++ b/specification/search/data-plane/Search/preview/2024-11-01-preview/openapi.json @@ -0,0 +1,15561 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure AI Search", + "version": "2024-11-01-preview", + "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://search.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "type": "apiKey", + "name": "api-key", + "in": "header" + }, + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": { + "https://search.azure.com/.default": "" + } + } + }, + "tags": [], + "paths": { + "/datasources": { + "get": { + "operationId": "DataSourcesOperations_List", + "description": "Lists all datasources available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListDataSourcesResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "DataSourcesOperations_Create", + "description": "Creates a new datasource.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSource", + "in": "body", + "description": "The definition of the datasource to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerDataSourceCreate" + } + } + ], + "responses": { + "200": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "201": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/datasources('{dataSourceName}')": { + "get": { + "operationId": "DataSourcesOperations_Get", + "description": "Retrieves a datasource definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "201": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "DataSourcesOperations_CreateOrUpdate", + "description": "Creates a new datasource or updates a datasource if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + }, + { + "name": "dataSource", + "in": "body", + "description": "The definition of the datasource to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerDataSourceCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "201": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "DataSourcesOperations_Delete", + "description": "Deletes a datasource.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers": { + "get": { + "operationId": "IndexersOperations_List", + "description": "Lists all indexers available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListIndexersResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "IndexersOperations_Create", + "description": "Creates a new indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexer", + "in": "body", + "description": "The definition of the indexer to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerCreate" + } + } + ], + "responses": { + "200": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "201": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')": { + "get": { + "operationId": "IndexersOperations_Get", + "description": "Retrieves an indexer definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "201": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "IndexersOperations_CreateOrUpdate", + "description": "Creates a new indexer or updates an indexer if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + }, + { + "name": "indexer", + "in": "body", + "description": "The definition of the indexer to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "201": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "IndexersOperations_Delete", + "description": "Deletes an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.reset": { + "post": { + "operationId": "IndexersOperations_Reset", + "description": "Resets the change tracking state associated with an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.run": { + "post": { + "operationId": "IndexersOperations_Run", + "description": "Runs an indexer on-demand.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.status": { + "get": { + "operationId": "IndexersOperations_GetStatus", + "description": "Returns the current status and execution history of an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerStatus" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes": { + "get": { + "operationId": "IndexesOperations_List", + "description": "Lists all indexes available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListIndexesResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "IndexesOperations_Create", + "description": "Creates a new search index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "index", + "in": "body", + "description": "The definition of the index to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexCreate" + } + } + ], + "responses": { + "200": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "201": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')": { + "get": { + "operationId": "IndexesOperations_Get", + "description": "Retrieves an index definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "201": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "IndexesOperations_CreateOrUpdate", + "description": "Creates a new search index or updates an index if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "allowIndexDowntime", + "in": "query", + "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to\nan index by taking the index offline for at least a few seconds. This\ntemporarily causes indexing and query requests to fail. Performance and write\navailability of the index can be impaired for several minutes after the index\nis updated, or longer for very large indexes.", + "required": false, + "type": "boolean" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "index", + "in": "body", + "description": "The definition of the index to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "201": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "IndexesOperations_Delete", + "description": "Deletes a search index and all the documents it contains. This operation is\npermanent, with no recovery option. Make sure you have a master copy of your\nindex definition, data ingestion code, and a backup of the primary data source\nin case you need to re-build the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs": { + "get": { + "operationId": "DocumentsOperations_SearchGet", + "description": "Searches for documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", + "required": false, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "$count", + "in": "query", + "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", + "required": false, + "type": "boolean", + "x-ms-client-name": "includeTotalResultCount" + }, + { + "name": "facet", + "in": "query", + "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "facets" + }, + { + "name": "$filter", + "in": "query", + "description": "The OData $filter expression to apply to the search query.", + "required": false, + "type": "string" + }, + { + "name": "highlight", + "in": "query", + "description": "The list of field names to use for hit highlights. Only searchable fields can\nbe used for hit highlighting.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "highlightFields" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "$orderby", + "in": "query", + "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, and desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no OrderBy is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "orderBy" + }, + { + "name": "queryType", + "in": "query", + "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax.", + "required": false, + "type": "string", + "enum": [ + "simple", + "full", + "semantic" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": true, + "values": [ + { + "name": "Simple", + "value": "simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." + }, + { + "name": "Full", + "value": "full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." + }, + { + "name": "Semantic", + "value": "semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." + } + ] + } + }, + { + "name": "scoringParameter", + "in": "query", + "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "scoringParameters" + }, + { + "name": "scoringProfile", + "in": "query", + "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results.", + "required": false, + "type": "string" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to which to scope the full-text search. When using\nfielded search (fieldName:searchExpression) in a full Lucene query, the field\nnames of each fielded search expression take precedence over any field names\nlisted in this parameter.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "searchMode", + "in": "query", + "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match.", + "required": false, + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": true, + "values": [ + { + "name": "Any", + "value": "any", + "description": "Any of the search terms must be matched in order to count the document as a\nmatch." + }, + { + "name": "All", + "value": "all", + "description": "All of the search terms must be matched in order to count the document as a\nmatch." + } + ] + } + }, + { + "name": "scoringStatistics", + "in": "query", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency.", + "required": false, + "type": "string", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": true, + "values": [ + { + "name": "Local", + "value": "local", + "description": "The scoring statistics will be calculated locally for lower latency." + }, + { + "name": "Global", + "value": "global", + "description": "The scoring statistics will be calculated globally for more consistent scoring." + } + ] + } + }, + { + "name": "sessionId", + "in": "query", + "description": "A value to be used to create a sticky session, which can help to get more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character.", + "required": false, + "type": "string" + }, + { + "name": "$select", + "in": "query", + "description": "The list of fields to retrieve. If unspecified, all fields marked as\nretrievable in the schema are included.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use $skip due to\nthis limitation, consider using $orderby on a totally-ordered key and $filter\nwith a range query instead.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$top", + "in": "query", + "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "semanticConfiguration", + "in": "query", + "description": "The name of the semantic configuration that lists which fields should be used\nfor semantic ranking, captions, highlights, and answers", + "required": false, + "type": "string" + }, + { + "name": "semanticErrorHandling", + "in": "query", + "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results (default).", + "required": false, + "type": "string", + "enum": [ + "partial", + "fail" + ], + "x-ms-enum": { + "name": "SemanticErrorMode", + "modelAsString": true, + "values": [ + { + "name": "Partial", + "value": "partial", + "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." + }, + { + "name": "Fail", + "value": "fail", + "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." + } + ] + } + }, + { + "name": "semanticMaxWaitInMilliseconds", + "in": "query", + "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 700 + }, + { + "name": "answers", + "in": "query", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", + "required": false, + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryAnswerType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return answers for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." + } + ] + } + }, + { + "name": "captions", + "in": "query", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", + "required": false, + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryCaptionType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return captions for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." + } + ] + } + }, + { + "name": "semanticQuery", + "in": "query", + "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/$count": { + "get": { + "operationId": "DocumentsOperations_Count", + "description": "Queries the number of documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "integer", + "format": "int32" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.autocomplete": { + "get": { + "operationId": "DocumentsOperations_AutocompleteGet", + "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "The incomplete term which should be auto-completed.", + "required": true, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "suggesterName", + "in": "query", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", + "required": true, + "type": "string" + }, + { + "name": "autocompleteMode", + "in": "query", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms.", + "required": false, + "type": "string", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": true, + "values": [ + { + "name": "OneTerm", + "value": "oneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." + }, + { + "name": "TwoTerms", + "value": "twoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and\n'medical assistant'." + }, + { + "name": "OneTermWithContext", + "value": "oneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is\n'washington medic', the suggested terms could include 'washington medicaid' and\n'washington medical'." + } + ] + } + }, + { + "name": "$filter", + "in": "query", + "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result.", + "required": false, + "type": "string" + }, + { + "name": "fuzzy", + "in": "query", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nautocomplete queries are slower and consume more resources.", + "required": false, + "type": "boolean", + "x-ms-client-name": "useFuzzyMatching" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to consider when querying for auto-completed terms.\nTarget fields must be included in the specified suggester.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$top", + "in": "query", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.index": { + "post": { + "operationId": "DocumentsOperations_Index", + "description": "Sends a batch of document write actions to the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "batch", + "in": "body", + "description": "The batch of index actions.", + "required": true, + "schema": { + "$ref": "#/definitions/IndexBatch" + } + } + ], + "responses": { + "200": { + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "207": { + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.autocomplete": { + "post": { + "operationId": "DocumentsOperations_AutocompletePost", + "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "autocompleteRequest", + "in": "body", + "description": "The definition of the Autocomplete request.", + "required": true, + "schema": { + "$ref": "#/definitions/AutocompleteRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.search": { + "post": { + "operationId": "DocumentsOperations_SearchPost", + "description": "Searches for documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "searchRequest", + "in": "body", + "description": "The definition of the Search request.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.suggest": { + "post": { + "operationId": "DocumentsOperations_SuggestPost", + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "suggestRequest", + "in": "body", + "description": "The Suggest request.", + "required": true, + "schema": { + "$ref": "#/definitions/SuggestRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.suggest": { + "get": { + "operationId": "DocumentsOperations_SuggestGet", + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", + "required": true, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "suggesterName", + "in": "query", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData expression that filters the documents considered for suggestions.", + "required": false, + "type": "string" + }, + { + "name": "fuzzy", + "in": "query", + "description": "A value indicating whether to use fuzzy matching for the suggestions query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nsuggestions queries are slower and consume more resources.", + "required": false, + "type": "boolean", + "x-ms-client-name": "useFuzzyMatching" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestions query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "$orderby", + "in": "query", + "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, or desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no $orderby is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "orderBy" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to search for the specified search text. Target fields\nmust be included in the specified suggester.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$select", + "in": "query", + "description": "The list of fields to retrieve. If unspecified, only the key field will be\nincluded in the results.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$top", + "in": "query", + "description": "The number of suggestions to retrieve. The value must be a number between 1 and\n100. The default is 5.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs('{key}')": { + "get": { + "operationId": "DocumentsOperations_Get", + "description": "Retrieves a document from the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "key", + "in": "path", + "description": "The key of the document to retrieve.", + "required": true, + "type": "string" + }, + { + "name": "$select", + "in": "query", + "description": "List of field names to retrieve for the document; Any field not retrieved will\nbe missing from the returned document.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "selectedFields" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "object", + "additionalProperties": {} + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/search.analyze": { + "post": { + "operationId": "IndexesOperations_Analyze", + "description": "Shows how an analyzer breaks text into tokens.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "The text and analyzer or analysis components to test.", + "required": true, + "schema": { + "$ref": "#/definitions/AnalyzeRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AnalyzeResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/search.stats": { + "get": { + "operationId": "IndexesOperations_GetStatistics", + "description": "Returns statistics for the given index, including a document count and storage\nusage.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/GetIndexStatisticsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/servicestats": { + "get": { + "operationId": "GetServiceStatistics", + "description": "Gets service level statistics for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchServiceStatistics" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/skillsets": { + "get": { + "operationId": "SkillsetsOperations_List", + "description": "List all skillsets in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListSkillsetsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "SkillsetsOperations_Create", + "description": "Creates a new skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillset", + "in": "body", + "description": "The skillset containing one or more skills to create in a search service.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerSkillsetCreate" + } + } + ], + "responses": { + "200": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "201": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/skillsets('{skillsetName}')": { + "get": { + "operationId": "SkillsetsOperations_Get", + "description": "Retrieves a skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "201": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "SkillsetsOperations_CreateOrUpdate", + "description": "Creates a new skillset in a search service or updates the skillset if it\nalready exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + }, + { + "name": "skillset", + "in": "body", + "description": "The skillset containing one or more skills to create or update in a search\nservice.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerSkillsetCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "201": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "SkillsetsOperations_Delete", + "description": "Deletes a skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/synonymmaps": { + "get": { + "operationId": "SynonymMapsOperations_List", + "description": "Lists all synonym maps available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListSynonymMapsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "SynonymMapsOperations_Create", + "description": "Creates a new synonym map.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMap", + "in": "body", + "description": "The definition of the synonym map to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMapCreate" + } + } + ], + "responses": { + "200": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/synonymmaps('{synonymMapName}')": { + "get": { + "operationId": "SynonymMapsOperations_Get", + "description": "Retrieves a synonym map definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "SynonymMapsOperations_CreateOrUpdate", + "description": "Creates a new synonym map or updates a synonym map if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + }, + { + "name": "synonymMap", + "in": "body", + "description": "The definition of the synonym map to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMapCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "SynonymMapsOperations_Delete", + "description": "Deletes a synonym map.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AnalyzeRequest": { + "type": "object", + "description": "Specifies some text and analysis components used to break that text into tokens.", + "properties": { + "text": { + "type": "string", + "description": "The text to break into tokens." + }, + "analyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer to use to break the given text. If this parameter is\nnot specified, you must specify a tokenizer instead. The tokenizer and analyzer\nparameters are mutually exclusive." + }, + "tokenizer": { + "$ref": "#/definitions/LexicalTokenizerName", + "description": "The name of the tokenizer to use to break the given text. If this parameter is\nnot specified, you must specify an analyzer instead. The tokenizer and analyzer\nparameters are mutually exclusive." + }, + "tokenFilters": { + "type": "array", + "description": "An optional list of token filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", + "items": { + "$ref": "#/definitions/TokenFilterName" + } + }, + "charFilters": { + "type": "array", + "description": "An optional list of character filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", + "items": { + "$ref": "#/definitions/CharFilterName" + } + } + }, + "required": [ + "text" + ] + }, + "AnalyzeResult": { + "type": "object", + "description": "The result of testing an analyzer on text.", + "properties": { + "tokens": { + "type": "array", + "description": "The list of tokens returned by the analyzer specified in the request.", + "items": { + "$ref": "#/definitions/AnalyzedTokenInfo" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "tokens" + ] + }, + "AnalyzedTokenInfo": { + "type": "object", + "description": "Information about a token returned by an analyzer.", + "properties": { + "token": { + "type": "string", + "description": "The token returned by the analyzer.", + "readOnly": true + }, + "startOffset": { + "type": "integer", + "format": "int32", + "description": "The index of the first character of the token in the input text.", + "readOnly": true + }, + "endOffset": { + "type": "integer", + "format": "int32", + "description": "The index of the last character of the token in the input text.", + "readOnly": true + }, + "position": { + "type": "integer", + "format": "int32", + "description": "The position of the token in the input text relative to other tokens. The first\ntoken in the input text has position 0, the next has position 1, and so on.\nDepending on the analyzer used, some tokens might have the same position, for\nexample if they are synonyms of each other.", + "readOnly": true + } + }, + "required": [ + "token", + "startOffset", + "endOffset", + "position" + ] + }, + "AsciiFoldingTokenFilter": { + "type": "object", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether the original token will be kept. Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" + }, + "AutocompleteItem": { + "type": "object", + "description": "The result of Autocomplete requests.", + "properties": { + "text": { + "type": "string", + "description": "The completed term.", + "readOnly": true + }, + "queryPlusText": { + "type": "string", + "description": "The query along with the completed term.", + "readOnly": true + } + }, + "required": [ + "text", + "queryPlusText" + ] + }, + "AutocompleteMode": { + "type": "string", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context in\nproducing autocomplete terms.", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": true, + "values": [ + { + "name": "OneTerm", + "value": "oneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." + }, + { + "name": "TwoTerms", + "value": "twoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and\n'medical assistant'." + }, + { + "name": "OneTermWithContext", + "value": "oneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is\n'washington medic', the suggested terms could include 'washington medicaid' and\n'washington medical'." + } + ] + } + }, + "AutocompleteRequest": { + "type": "object", + "description": "Parameters for fuzzy matching, and other autocomplete query behaviors.", + "properties": { + "search": { + "type": "string", + "description": "The search text on which to base autocomplete results.", + "x-ms-client-name": "searchText" + }, + "autocompleteMode": { + "$ref": "#/definitions/AutocompleteMode", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms." + }, + "filter": { + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will autocomplete terms even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy autocomplete queries are slower and consume more resources.", + "x-ms-client-name": "useFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to consider when querying for\nauto-completed terms. Target fields must be included in the specified\nsuggester." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ] + }, + "AutocompleteResult": { + "type": "object", + "description": "The result of Autocomplete query.", + "properties": { + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was considered by the\nautocomplete request, or null if minimumCoverage was not specified in the\nrequest.", + "readOnly": true, + "x-ms-client-name": "coverage" + }, + "value": { + "type": "array", + "description": "The list of returned Autocompleted items.", + "items": { + "$ref": "#/definitions/AutocompleteItem" + }, + "readOnly": true, + "x-ms-client-name": "results", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "AzureActiveDirectoryApplicationCredentials": { + "type": "object", + "description": "Credentials of a registered application created for your search service, used\nfor authenticated access to the encryption keys stored in Azure Key Vault.", + "properties": { + "applicationId": { + "type": "string", + "description": "An AAD Application ID that was granted the required access permissions to the\nAzure Key Vault that is to be used when encrypting your data at rest. The\nApplication ID should not be confused with the Object ID for your AAD\nApplication." + }, + "applicationSecret": { + "type": "string", + "description": "The authentication key of the specified AAD application." + } + }, + "required": [ + "applicationId" + ] + }, + "AzureOpenAIEmbeddingSkill": { + "type": "object", + "description": "Allows you to generate a vector embedding for a given text input using the\nAzure OpenAI resource.", + "properties": { + "resourceUri": { + "type": "string", + "format": "uri", + "description": "The resource URI of the Azure OpenAI resource.", + "x-ms-client-name": "resourceUrl" + }, + "deploymentId": { + "type": "string", + "description": "ID of the Azure OpenAI model deployment on the designated resource.", + "x-ms-client-name": "deploymentName" + }, + "apiKey": { + "type": "string", + "description": "API key of the designated Azure OpenAI resource." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections." + }, + "modelName": { + "$ref": "#/definitions/AzureOpenAIModelName", + "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." + }, + "dimensions": { + "type": "integer", + "format": "int32", + "description": "The number of dimensions the resulting output embeddings should have. Only\nsupported in text-embedding-3 and later models." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" + }, + "AzureOpenAIModelName": { + "type": "string", + "description": "The Azure Open AI model name that will be called.", + "enum": [ + "text-embedding-ada-002", + "text-embedding-3-large", + "text-embedding-3-small" + ], + "x-ms-enum": { + "name": "AzureOpenAIModelName", + "modelAsString": true, + "values": [ + { + "name": "TextEmbeddingAda002", + "value": "text-embedding-ada-002", + "description": "TextEmbeddingAda002 model." + }, + { + "name": "TextEmbedding3Large", + "value": "text-embedding-3-large", + "description": "TextEmbedding3Large model." + }, + { + "name": "TextEmbedding3Small", + "value": "text-embedding-3-small", + "description": "TextEmbedding3Small model." + } + ] + } + }, + "AzureOpenAIVectorizer": { + "type": "object", + "description": "Specifies the Azure OpenAI resource used to vectorize a query string.", + "properties": { + "azureOpenAIParameters": { + "$ref": "#/definitions/AzureOpenAIVectorizerParameters", + "description": "Contains the parameters specific to Azure OpenAI embedding vectorization.", + "x-ms-client-name": "parameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "x-ms-discriminator-value": "azureOpenAI" + }, + "AzureOpenAIVectorizerParameters": { + "type": "object", + "description": "Specifies the parameters for connecting to the Azure OpenAI resource.", + "properties": { + "resourceUri": { + "type": "string", + "format": "uri", + "description": "The resource URI of the Azure OpenAI resource.", + "x-ms-client-name": "resourceUrl" + }, + "deploymentId": { + "type": "string", + "description": "ID of the Azure OpenAI model deployment on the designated resource.", + "x-ms-client-name": "deploymentName" + }, + "apiKey": { + "type": "string", + "description": "API key of the designated Azure OpenAI resource." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections." + }, + "modelName": { + "$ref": "#/definitions/AzureOpenAIModelName", + "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." + } + } + }, + "BM25SimilarityAlgorithm": { + "type": "object", + "description": "Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a\nTF-IDF-like algorithm that includes length normalization (controlled by the 'b'\nparameter) as well as term frequency saturation (controlled by the 'k1'\nparameter).", + "properties": { + "k1": { + "type": "number", + "format": "double", + "description": "This property controls the scaling function between the term frequency of each\nmatching terms and the final relevance score of a document-query pair. By\ndefault, a value of 1.2 is used. A value of 0.0 means the score does not scale\nwith an increase in term frequency." + }, + "b": { + "type": "number", + "format": "double", + "description": "This property controls how the length of a document affects the relevance\nscore. By default, a value of 0.75 is used. A value of 0.0 means no length\nnormalization is applied, while a value of 1.0 means the score is fully\nnormalized by the length of the document." + }, + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Search.BM25Similarity" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SimilarityAlgorithm" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.BM25Similarity" + }, + "BinaryQuantizationCompression": { + "type": "object", + "description": "Contains configuration options specific to the binary quantization compression\nmethod used during indexing and querying.", + "allOf": [ + { + "$ref": "#/definitions/VectorSearchCompression" + } + ], + "x-ms-discriminator-value": "binaryQuantization" + }, + "BlobIndexerDataToExtract": { + "type": "string", + "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", + "enum": [ + "storageMetadata", + "allMetadata", + "contentAndMetadata" + ], + "x-ms-enum": { + "name": "BlobIndexerDataToExtract", + "modelAsString": true, + "values": [ + { + "name": "StorageMetadata", + "value": "storageMetadata", + "description": "Indexes just the standard blob properties and user-specified metadata." + }, + { + "name": "AllMetadata", + "value": "allMetadata", + "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." + }, + { + "name": "ContentAndMetadata", + "value": "contentAndMetadata", + "description": "Extracts all metadata and textual content from each blob." + } + ] + } + }, + "BlobIndexerImageAction": { + "type": "string", + "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", + "enum": [ + "none", + "generateNormalizedImages", + "generateNormalizedImagePerPage" + ], + "x-ms-enum": { + "name": "BlobIndexerImageAction", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Ignores embedded images or image files in the data set. This is the default." + }, + { + "name": "GenerateNormalizedImages", + "value": "generateNormalizedImages", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." + }, + { + "name": "GenerateNormalizedImagePerPage", + "value": "generateNormalizedImagePerPage", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." + } + ] + } + }, + "BlobIndexerPDFTextRotationAlgorithm": { + "type": "string", + "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", + "enum": [ + "none", + "detectAngles" + ], + "x-ms-enum": { + "name": "BlobIndexerPDFTextRotationAlgorithm", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Leverages normal text extraction. This is the default." + }, + { + "name": "DetectAngles", + "value": "detectAngles", + "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." + } + ] + } + }, + "BlobIndexerParsingMode": { + "type": "string", + "description": "Represents the parsing mode for indexing from an Azure blob data source.", + "enum": [ + "default", + "text", + "delimitedText", + "json", + "jsonArray", + "jsonLines" + ], + "x-ms-enum": { + "name": "BlobIndexerParsingMode", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "default", + "description": "Set to default for normal file processing." + }, + { + "name": "Text", + "value": "text", + "description": "Set to text to improve indexing performance on plain text files in blob storage." + }, + { + "name": "DelimitedText", + "value": "delimitedText", + "description": "Set to delimitedText when blobs are plain CSV files." + }, + { + "name": "Json", + "value": "json", + "description": "Set to json to extract structured content from JSON files." + }, + { + "name": "JsonArray", + "value": "jsonArray", + "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." + }, + { + "name": "JsonLines", + "value": "jsonLines", + "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." + } + ] + } + }, + "CharFilter": { + "type": "object", + "description": "Base type for character filters.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the char filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "name" + ] + }, + "CharFilterName": { + "type": "string", + "description": "Defines the names of all character filters supported by the search engine.", + "enum": [ + "html_strip" + ], + "x-ms-enum": { + "name": "CharFilterName", + "modelAsString": true, + "values": [ + { + "name": "HtmlStrip", + "value": "html_strip", + "description": "A character filter that attempts to strip out HTML constructs. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" + } + ] + } + }, + "CjkBigramTokenFilter": { + "type": "object", + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. This\ntoken filter is implemented using Apache Lucene.", + "properties": { + "ignoreScripts": { + "type": "array", + "description": "The scripts to ignore.", + "items": { + "$ref": "#/definitions/CjkBigramTokenFilterScripts" + } + }, + "outputUnigrams": { + "type": "boolean", + "description": "A value indicating whether to output both unigrams and bigrams (if true), or\njust bigrams (if false). Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.CjkBigramTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter" + }, + "CjkBigramTokenFilterScripts": { + "type": "string", + "description": "Scripts that can be ignored by CjkBigramTokenFilter.", + "enum": [ + "han", + "hiragana", + "katakana", + "hangul" + ], + "x-ms-enum": { + "name": "CjkBigramTokenFilterScripts", + "modelAsString": true, + "values": [ + { + "name": "Han", + "value": "han", + "description": "Ignore Han script when forming bigrams of CJK terms." + }, + { + "name": "Hiragana", + "value": "hiragana", + "description": "Ignore Hiragana script when forming bigrams of CJK terms." + }, + { + "name": "Katakana", + "value": "katakana", + "description": "Ignore Katakana script when forming bigrams of CJK terms." + }, + { + "name": "Hangul", + "value": "hangul", + "description": "Ignore Hangul script when forming bigrams of CJK terms." + } + ] + } + }, + "ClassicSimilarityAlgorithm": { + "type": "object", + "description": "Legacy similarity algorithm which uses the Lucene TFIDFSimilarity\nimplementation of TF-IDF. This variation of TF-IDF introduces static document\nlength normalization as well as coordinating factors that penalize documents\nthat only partially match the searched queries.", + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Search.ClassicSimilarity" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SimilarityAlgorithm" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "ClassicTokenizer": { + "type": "object", + "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. This tokenizer is implemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.ClassicTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer" + }, + "CognitiveServicesAccount": { + "type": "object", + "description": "Base type for describing any Azure AI service resource attached to a skillset.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "description": { + "type": "string", + "description": "Description of the Azure AI service resource attached to a skillset." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "CognitiveServicesAccountKey": { + "type": "object", + "description": "The multi-region account key of an Azure AI service resource that's attached to\na skillset.", + "properties": { + "key": { + "type": "string", + "description": "The key used to provision the Azure AI service resource attached to a skillset." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of Azure AI service resource attached to a\nskillset.", + "enum": [ + "#Microsoft.Azure.Search.CognitiveServicesByKey" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "key", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" + }, + "CommonGramTokenFilter": { + "type": "object", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "commonWords": { + "type": "array", + "description": "The set of common words.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." + }, + "queryMode": { + "type": "boolean", + "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false.", + "x-ms-client-name": "useQueryMode" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.CommonGramTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "commonWords", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" + }, + "ConditionalSkill": { + "type": "object", + "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Util.ConditionalSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill" + }, + "CorsOptions": { + "type": "object", + "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index.", + "properties": { + "allowedOrigins": { + "type": "array", + "description": "The list of origins from which JavaScript code will be granted access to your\nindex. Can contain a list of hosts of the form\n{protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow\nall origins (not recommended).", + "items": { + "type": "string" + } + }, + "maxAgeInSeconds": { + "type": "integer", + "format": "int64", + "description": "The duration for which browsers should cache CORS preflight responses. Defaults\nto 5 minutes." + } + }, + "required": [ + "allowedOrigins" + ] + }, + "CustomAnalyzer": { + "type": "object", + "description": "Allows you to take control over the process of converting text into\nindexable/searchable tokens. It's a user-defined configuration consisting of a\nsingle predefined tokenizer and one or more filters. The tokenizer is\nresponsible for breaking text into tokens, and the filters for modifying tokens\nemitted by the tokenizer.", + "properties": { + "tokenizer": { + "$ref": "#/definitions/LexicalTokenizerName", + "description": "The name of the tokenizer to use to divide continuous text into a sequence of\ntokens, such as breaking a sentence into words." + }, + "tokenFilters": { + "type": "array", + "description": "A list of token filters used to filter out or modify the tokens generated by a\ntokenizer. For example, you can specify a lowercase filter that converts all\ncharacters to lowercase. The filters are run in the order in which they are\nlisted.", + "items": { + "$ref": "#/definitions/TokenFilterName" + } + }, + "charFilters": { + "type": "array", + "description": "A list of character filters used to prepare input text before it is processed\nby the tokenizer. For instance, they can replace certain characters or symbols.\nThe filters are run in the order in which they are listed.", + "items": { + "$ref": "#/definitions/CharFilterName" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of analyzer.", + "enum": [ + "#Microsoft.Azure.Search.CustomAnalyzer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "tokenizer", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer" + }, + "CustomEntity": { + "type": "object", + "description": "An object that contains information about the matches that were found, and\nrelated metadata.", + "properties": { + "name": { + "type": "string", + "description": "The top-level entity descriptor. Matches in the skill output will be grouped by\nthis name, and it should represent the \"normalized\" form of the text being\nfound." + }, + "description": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "type": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "subtype": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "id": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "caseSensitive": { + "type": "boolean", + "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to character casing. Sample case insensitive matches\nof \"Microsoft\" could be: microsoft, microSoft, MICROSOFT." + }, + "accentSensitive": { + "type": "boolean", + "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to accent." + }, + "fuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent\ncharacters that would still constitute a match with the entity name. The\nsmallest possible fuzziness for any given match is returned. For instance, if\nthe edit distance is set to 3, \"Windows10\" would still match \"Windows\",\n\"Windows10\" and \"Windows 7\". When case sensitivity is set to false, case\ndifferences do NOT count towards fuzziness tolerance, but otherwise do." + }, + "defaultCaseSensitive": { + "type": "boolean", + "description": "Changes the default case sensitivity value for this entity. It be used to\nchange the default value of all aliases caseSensitive values." + }, + "defaultAccentSensitive": { + "type": "boolean", + "description": "Changes the default accent sensitivity value for this entity. It be used to\nchange the default value of all aliases accentSensitive values." + }, + "defaultFuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Changes the default fuzzy edit distance value for this entity. It can be used\nto change the default value of all aliases fuzzyEditDistance values." + }, + "aliases": { + "type": "array", + "description": "An array of complex objects that can be used to specify alternative spellings\nor synonyms to the root entity name.", + "items": { + "$ref": "#/definitions/CustomEntityAlias" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name" + ] + }, + "CustomEntityAlias": { + "type": "object", + "description": "A complex object that can be used to specify alternative spellings or synonyms\nto the root entity name.", + "properties": { + "text": { + "type": "string", + "description": "The text of the alias." + }, + "caseSensitive": { + "type": "boolean", + "description": "Determine if the alias is case sensitive." + }, + "accentSensitive": { + "type": "boolean", + "description": "Determine if the alias is accent sensitive." + }, + "fuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Determine the fuzzy edit distance of the alias." + } + }, + "required": [ + "text" + ] + }, + "CustomEntityLookupSkill": { + "type": "object", + "description": "A skill looks for text from a custom, user-defined list of words and phrases.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/CustomEntityLookupSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "entitiesDefinitionUri": { + "type": "string", + "description": "Path to a JSON or CSV file containing all the target text to match against.\nThis entity definition is read at the beginning of an indexer run. Any updates\nto this file during an indexer run will not take effect until subsequent runs.\nThis config must be accessible over HTTPS." + }, + "inlineEntitiesDefinition": { + "type": "array", + "description": "The inline CustomEntity definition.", + "items": { + "$ref": "#/definitions/CustomEntity" + } + }, + "globalDefaultCaseSensitive": { + "type": "boolean", + "description": "A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity,\nthis value will be the default value." + }, + "globalDefaultAccentSensitive": { + "type": "boolean", + "description": "A global flag for AccentSensitive. If AccentSensitive is not set in\nCustomEntity, this value will be the default value." + }, + "globalDefaultFuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in\nCustomEntity, this value will be the default value." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.CustomEntityLookupSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.CustomEntityLookupSkill" + }, + "CustomEntityLookupSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by CustomEntityLookupSkill.", + "enum": [ + "da", + "de", + "en", + "es", + "fi", + "fr", + "it", + "ko", + "pt" + ], + "x-ms-enum": { + "name": "CustomEntityLookupSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + } + ] + } + }, + "DataChangeDetectionPolicy": { + "type": "object", + "description": "Base type for data change detection policies.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "DataDeletionDetectionPolicy": { + "type": "object", + "description": "Base type for data deletion detection policies.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "DataSourceCredentials": { + "type": "object", + "description": "Represents credentials that can be used to connect to a datasource.", + "properties": { + "connectionString": { + "type": "string", + "description": "The connection string for the datasource. Set to `` (with brackets)\nif you don't want the connection string updated. Set to `` if you\nwant to remove the connection string value from the datasource." + } + } + }, + "DefaultCognitiveServicesAccount": { + "type": "object", + "description": "An empty object that represents the default Azure AI service resource for a\nskillset.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of Azure AI service resource attached to a\nskillset.", + "enum": [ + "#Microsoft.Azure.Search.DefaultCognitiveServices" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices" + }, + "DictionaryDecompounderTokenFilter": { + "type": "object", + "description": "Decomposes compound words found in many Germanic languages. This token filter\nis implemented using Apache Lucene.", + "properties": { + "wordList": { + "type": "array", + "description": "The list of words to match against.", + "items": { + "type": "string" + } + }, + "minWordSize": { + "type": "integer", + "format": "int32", + "description": "The minimum word size. Only words longer than this get processed. Default is 5.\nMaximum is 300.", + "default": 5, + "maximum": 300 + }, + "minSubwordSize": { + "type": "integer", + "format": "int32", + "description": "The minimum subword size. Only subwords longer than this are outputted. Default\nis 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "maxSubwordSize": { + "type": "integer", + "format": "int32", + "description": "The maximum subword size. Only subwords shorter than this are outputted.\nDefault is 15. Maximum is 300.", + "default": 15, + "maximum": 300 + }, + "onlyLongestMatch": { + "type": "boolean", + "description": "A value indicating whether to add only the longest matching subword to the\noutput. Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "wordList", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" + }, + "DistanceScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on distance from a geographic\nlocation.", + "properties": { + "distance": { + "$ref": "#/definitions/DistanceScoringParameters", + "description": "Parameter values for the distance scoring function.", + "x-ms-client-name": "parameters" + } + }, + "required": [ + "distance" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "distance" + }, + "DistanceScoringParameters": { + "type": "object", + "description": "Provides parameter values to a distance scoring function.", + "properties": { + "referencePointParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the reference\nlocation." + }, + "boostingDistance": { + "type": "number", + "format": "double", + "description": "The distance in kilometers from the reference location where the boosting range\nends." + } + }, + "required": [ + "referencePointParameter", + "boostingDistance" + ] + }, + "DocumentExtractionSkill": { + "type": "object", + "description": "A skill that extracts content from a file within the enrichment pipeline.", + "properties": { + "parsingMode": { + "type": "string", + "description": "The parsingMode for the skill. Will be set to 'default' if not defined." + }, + "dataToExtract": { + "type": "string", + "description": "The type of data to be extracted for the skill. Will be set to\n'contentAndMetadata' if not defined." + }, + "configuration": { + "type": "object", + "description": "A dictionary of configurations for the skill.", + "additionalProperties": {} + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Util.DocumentExtractionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.DocumentExtractionSkill" + }, + "EdgeNGramTokenFilter": { + "type": "object", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", + "default": 1 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2.", + "default": 2 + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.EdgeNGramTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter" + }, + "EdgeNGramTokenFilterSide": { + "type": "string", + "description": "Specifies which side of the input an n-gram should be generated from.", + "enum": [ + "front", + "back" + ], + "x-ms-enum": { + "name": "EdgeNGramTokenFilterSide", + "modelAsString": true, + "values": [ + { + "name": "Front", + "value": "front", + "description": "Specifies that the n-gram should be generated from the front of the input." + }, + { + "name": "Back", + "value": "back", + "description": "Specifies that the n-gram should be generated from the back of the input." + } + ] + } + }, + "EdgeNGramTokenFilterV2": { + "type": "object", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" + }, + "EdgeNGramTokenizer": { + "type": "object", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). This\ntokenizer is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "tokenChars": { + "type": "array", + "description": "Character classes to keep in the tokens.", + "items": { + "$ref": "#/definitions/TokenCharacterKind" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.EdgeNGramTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer" + }, + "ElisionTokenFilter": { + "type": "object", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). This token filter is implemented using Apache Lucene.", + "properties": { + "articles": { + "type": "array", + "description": "The set of articles to remove.", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.ElisionTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter" + }, + "EntityCategory": { + "type": "string", + "description": "A string indicating what entity categories to return.", + "enum": [ + "location", + "organization", + "person", + "quantity", + "datetime", + "url", + "email" + ], + "x-ms-enum": { + "name": "EntityCategory", + "modelAsString": true, + "values": [ + { + "name": "Location", + "value": "location", + "description": "Entities describing a physical location." + }, + { + "name": "Organization", + "value": "organization", + "description": "Entities describing an organization." + }, + { + "name": "Person", + "value": "person", + "description": "Entities describing a person." + }, + { + "name": "Quantity", + "value": "quantity", + "description": "Entities describing a quantity." + }, + { + "name": "Datetime", + "value": "datetime", + "description": "Entities describing a date and time." + }, + { + "name": "Url", + "value": "url", + "description": "Entities describing a URL." + }, + { + "name": "Email", + "value": "email", + "description": "Entities describing an email address." + } + ] + } + }, + "EntityLinkingSkill": { + "type": "object", + "description": "Using the Text Analytics API, extracts linked entities from text.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.V3.EntityLinkingSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityLinkingSkill" + }, + "EntityRecognitionSkill": { + "type": "object", + "description": "This skill is deprecated. Use the V3.EntityRecognitionSkill instead.", + "properties": { + "categories": { + "type": "array", + "description": "A list of entity categories that should be extracted.", + "items": { + "$ref": "#/definitions/EntityCategory" + } + }, + "defaultLanguageCode": { + "$ref": "#/definitions/EntityRecognitionSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "includeTypelessEntities": { + "type": "boolean", + "description": "Determines whether or not to include entities which are well known but don't\nconform to a pre-defined type. If this configuration is not set (default), set\nto null or set to false, entities which don't conform to one of the pre-defined\ntypes will not be surfaced." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.EntityRecognitionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill" + }, + "EntityRecognitionSkillLanguage": { + "type": "string", + "description": "Deprecated. The language codes supported for input text by\nEntityRecognitionSkill.", + "enum": [ + "ar", + "cs", + "zh-Hans", + "zh-Hant", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "EntityRecognitionSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + } + ] + } + }, + "EntityRecognitionSkillV3": { + "type": "object", + "description": "Using the Text Analytics API, extracts entities of different types from text.", + "properties": { + "categories": { + "type": "array", + "description": "A list of entity categories that should be extracted.", + "items": { + "type": "string" + } + }, + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics API. It will\ndefault to the latest available when not specified. We recommend you do not\nspecify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" + }, + "ErrorAdditionalInfo": { + "type": "object", + "description": "The resource management error additional info.", + "properties": { + "type": { + "type": "string", + "description": "The additional info type.", + "readOnly": true + }, + "info": { + "type": "object", + "description": "The additional info.", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "The error detail.", + "properties": { + "code": { + "type": "string", + "description": "The error code.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "The error message.", + "readOnly": true + }, + "target": { + "type": "string", + "description": "The error target.", + "readOnly": true + }, + "details": { + "type": "array", + "description": "The error details.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "additionalInfo": { + "type": "array", + "description": "The error additional info.", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Common error response for all Azure Resource Manager APIs to return error\ndetails for failed operations. (This also follows the OData error response\nformat.).", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetail", + "description": "The error object." + } + } + }, + "ExhaustiveKnnAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the exhaustive KNN algorithm used\nduring querying, which will perform brute-force search across the entire vector\nindex.", + "properties": { + "exhaustiveKnnParameters": { + "$ref": "#/definitions/ExhaustiveKnnParameters", + "description": "Contains the parameters specific to exhaustive KNN algorithm.", + "x-ms-client-name": "parameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + } + ], + "x-ms-discriminator-value": "exhaustiveKnn" + }, + "ExhaustiveKnnParameters": { + "type": "object", + "description": "Contains the parameters specific to exhaustive KNN algorithm.", + "properties": { + "metric": { + "$ref": "#/definitions/VectorSearchAlgorithmMetric", + "description": "The similarity metric to use for vector comparisons." + } + } + }, + "FacetResult": { + "type": "object", + "description": "A single bucket of a facet query result. Reports the number of documents with a\nfield value falling within a particular range or having a particular value or\ninterval.", + "properties": { + "count": { + "type": "integer", + "format": "int64", + "description": "The approximate count of documents falling within the bucket described by this\nfacet.", + "readOnly": true + } + }, + "additionalProperties": {} + }, + "FieldMapping": { + "type": "object", + "description": "Defines a mapping between a field in a data source and a target field in an\nindex.", + "properties": { + "sourceFieldName": { + "type": "string", + "description": "The name of the field in the data source." + }, + "targetFieldName": { + "type": "string", + "description": "The name of the target field in the index. Same as the source field name by\ndefault." + }, + "mappingFunction": { + "$ref": "#/definitions/FieldMappingFunction", + "description": "A function to apply to each source field value before indexing." + } + }, + "required": [ + "sourceFieldName" + ] + }, + "FieldMappingFunction": { + "type": "object", + "description": "Represents a function that transforms a value from a data source before\nindexing.", + "properties": { + "name": { + "type": "string", + "description": "The name of the field mapping function." + }, + "parameters": { + "type": "object", + "description": "A dictionary of parameter name/value pairs to pass to the function. Each value\nmust be of a primitive type.", + "additionalProperties": {} + } + }, + "required": [ + "name" + ] + }, + "FreshnessScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on the value of a date-time field.", + "properties": { + "freshness": { + "$ref": "#/definitions/FreshnessScoringParameters", + "description": "Parameter values for the freshness scoring function.", + "x-ms-client-name": "parameters" + } + }, + "required": [ + "freshness" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "freshness" + }, + "FreshnessScoringParameters": { + "type": "object", + "description": "Provides parameter values to a freshness scoring function.", + "properties": { + "boostingDuration": { + "type": "string", + "format": "duration", + "description": "The expiration period after which boosting will stop for a particular document." + } + }, + "required": [ + "boostingDuration" + ] + }, + "GetIndexStatisticsResult": { + "type": "object", + "description": "Statistics for a given index. Statistics are collected periodically and are not\nguaranteed to always be up-to-date.", + "properties": { + "documentCount": { + "type": "integer", + "format": "int64", + "description": "The number of documents in the index.", + "readOnly": true + }, + "storageSize": { + "type": "integer", + "format": "int64", + "description": "The amount of storage in bytes consumed by the index.", + "readOnly": true + }, + "vectorIndexSize": { + "type": "integer", + "format": "int64", + "description": "The amount of memory in bytes consumed by vectors in the index.", + "readOnly": true + } + }, + "required": [ + "documentCount", + "storageSize", + "vectorIndexSize" + ] + }, + "HighWaterMarkChangeDetectionPolicy": { + "type": "object", + "description": "Defines a data change detection policy that captures changes based on the value\nof a high water mark column.", + "properties": { + "highWaterMarkColumnName": { + "type": "string", + "description": "The name of the high water mark column." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of data change detection policy.", + "enum": [ + "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "highWaterMarkColumnName", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" + }, + "HnswAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the HNSW approximate nearest\nneighbors algorithm used during indexing and querying. The HNSW algorithm\noffers a tunable trade-off between search speed and accuracy.", + "properties": { + "hnswParameters": { + "$ref": "#/definitions/HnswParameters", + "description": "Contains the parameters specific to HNSW algorithm.", + "x-ms-client-name": "parameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + } + ], + "x-ms-discriminator-value": "hnsw" + }, + "HnswParameters": { + "type": "object", + "description": "Contains the parameters specific to the HNSW algorithm.", + "properties": { + "m": { + "type": "integer", + "format": "int32", + "description": "The number of bi-directional links created for every new element during\nconstruction. Increasing this parameter value may improve recall and reduce\nretrieval times for datasets with high intrinsic dimensionality at the expense\nof increased memory consumption and longer indexing time.", + "default": 4, + "minimum": 4, + "maximum": 10 + }, + "efConstruction": { + "type": "integer", + "format": "int32", + "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring index time. Increasing this parameter may improve index quality, at the\nexpense of increased indexing time. At a certain point, increasing this\nparameter leads to diminishing returns.", + "default": 400, + "minimum": 100, + "maximum": 1000 + }, + "efSearch": { + "type": "integer", + "format": "int32", + "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring search time. Increasing this parameter may improve search results, at\nthe expense of slower search. At a certain point, increasing this parameter\nleads to diminishing returns.", + "default": 500, + "minimum": 100, + "maximum": 1000 + }, + "metric": { + "$ref": "#/definitions/VectorSearchAlgorithmMetric", + "description": "The similarity metric to use for vector comparisons." + } + } + }, + "ImageAnalysisSkill": { + "type": "object", + "description": "A skill that analyzes image files. It extracts a rich set of visual features\nbased on the image content.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/ImageAnalysisSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "visualFeatures": { + "type": "array", + "description": "A list of visual features.", + "items": { + "$ref": "#/definitions/VisualFeature" + } + }, + "details": { + "type": "array", + "description": "A string indicating which domain-specific details to return.", + "items": { + "$ref": "#/definitions/ImageDetail" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Vision.ImageAnalysisSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill" + }, + "ImageAnalysisSkillLanguage": { + "type": "string", + "description": "The language codes supported for input by ImageAnalysisSkill.", + "enum": [ + "ar", + "az", + "bg", + "bs", + "ca", + "cs", + "cy", + "da", + "de", + "el", + "en", + "es", + "et", + "eu", + "fi", + "fr", + "ga", + "gl", + "he", + "hi", + "hr", + "hu", + "id", + "it", + "ja", + "kk", + "ko", + "lt", + "lv", + "mk", + "ms", + "nb", + "nl", + "pl", + "prs", + "pt-BR", + "pt", + "pt-PT", + "ro", + "ru", + "sk", + "sl", + "sr-Cyrl", + "sr-Latn", + "sv", + "th", + "tr", + "uk", + "vi", + "zh", + "zh-Hans", + "zh-Hant" + ], + "x-ms-enum": { + "name": "ImageAnalysisSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "az", + "value": "az", + "description": "Azerbaijani" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian Latin" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "eu", + "value": "eu", + "description": "Basque" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "gl", + "value": "gl", + "description": "Galician" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "kk", + "value": "kk", + "description": "Kazakh" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "mk", + "value": "mk", + "description": "Macedonian" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay Malaysia" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian (Bokmal)" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "prs", + "value": "prs", + "description": "Dari" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese-Brazil" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese-Portugal" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese-Portugal" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian - Cyrillic RS" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian - Latin RS" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "th", + "value": "th", + "description": "Thai" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "uk", + "value": "uk", + "description": "Ukrainian" + }, + { + "name": "vi", + "value": "vi", + "description": "Vietnamese" + }, + { + "name": "zh", + "value": "zh", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + } + ] + } + }, + "ImageDetail": { + "type": "string", + "description": "A string indicating which domain-specific details to return.", + "enum": [ + "celebrities", + "landmarks" + ], + "x-ms-enum": { + "name": "ImageDetail", + "modelAsString": true, + "values": [ + { + "name": "Celebrities", + "value": "celebrities", + "description": "Details recognized as celebrities." + }, + { + "name": "Landmarks", + "value": "landmarks", + "description": "Details recognized as landmarks." + } + ] + } + }, + "IndexAction": { + "type": "object", + "description": "Represents an index action that operates on a document.", + "properties": { + "@search.action": { + "$ref": "#/definitions/IndexActionType", + "description": "The operation to perform on a document in an indexing batch.", + "x-ms-client-name": "actionType" + } + }, + "additionalProperties": {} + }, + "IndexActionType": { + "type": "string", + "description": "The operation to perform on a document in an indexing batch.", + "enum": [ + "upload", + "merge", + "mergeOrUpload", + "delete" + ], + "x-ms-enum": { + "name": "IndexActionType", + "modelAsString": true, + "values": [ + { + "name": "Upload", + "value": "upload", + "description": "Inserts the document into the index if it is new and updates it if it exists.\nAll fields are replaced in the update case." + }, + { + "name": "Merge", + "value": "merge", + "description": "Merges the specified field values with an existing document. If the document\ndoes not exist, the merge will fail. Any field you specify in a merge will\nreplace the existing field in the document. This also applies to collections of\nprimitive and complex types." + }, + { + "name": "MergeOrUpload", + "value": "mergeOrUpload", + "description": "Behaves like merge if a document with the given key already exists in the\nindex. If the document does not exist, it behaves like upload with a new\ndocument." + }, + { + "name": "Delete", + "value": "delete", + "description": "Removes the specified document from the index. Any field you specify in a\ndelete operation other than the key field will be ignored. If you want to\nremove an individual field from a document, use merge instead and set the field\nexplicitly to null." + } + ] + } + }, + "IndexBatch": { + "type": "object", + "description": "Contains a batch of document write actions to send to the index.", + "properties": { + "value": { + "type": "array", + "description": "The actions in the batch.", + "items": { + "$ref": "#/definitions/IndexAction" + }, + "x-ms-client-name": "actions", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "IndexDocumentsResult": { + "type": "object", + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "properties": { + "value": { + "type": "array", + "description": "The list of status information for each document in the indexing request.", + "items": { + "$ref": "#/definitions/IndexingResult" + }, + "readOnly": true, + "x-ms-client-name": "results", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "IndexProjectionMode": { + "type": "string", + "description": "Defines behavior of the index projections in relation to the rest of the\nindexer.", + "enum": [ + "skipIndexingParentDocuments", + "includeIndexingParentDocuments" + ], + "x-ms-enum": { + "name": "IndexProjectionMode", + "modelAsString": true, + "values": [ + { + "name": "SkipIndexingParentDocuments", + "value": "skipIndexingParentDocuments", + "description": "The source document will be skipped from writing into the indexer's target\nindex." + }, + { + "name": "IncludeIndexingParentDocuments", + "value": "includeIndexingParentDocuments", + "description": "The source document will be written into the indexer's target index. This is\nthe default pattern." + } + ] + } + }, + "IndexerExecutionEnvironment": { + "type": "string", + "description": "Specifies the environment in which the indexer should execute.", + "enum": [ + "standard", + "private" + ], + "x-ms-enum": { + "name": "IndexerExecutionEnvironment", + "modelAsString": true, + "values": [ + { + "name": "standard", + "value": "standard", + "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." + }, + { + "name": "private", + "value": "private", + "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." + } + ] + } + }, + "IndexerExecutionResult": { + "type": "object", + "description": "Represents the result of an individual indexer execution.", + "properties": { + "status": { + "$ref": "#/definitions/IndexerExecutionStatus", + "description": "The outcome of this indexer execution.", + "readOnly": true + }, + "errorMessage": { + "type": "string", + "description": "The error message indicating the top-level error, if any.", + "readOnly": true + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of this indexer execution.", + "readOnly": true + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of this indexer execution, if the execution has already completed.", + "readOnly": true + }, + "errors": { + "type": "array", + "description": "The item-level indexing errors.", + "items": { + "$ref": "#/definitions/SearchIndexerError" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "warnings": { + "type": "array", + "description": "The item-level indexing warnings.", + "items": { + "$ref": "#/definitions/SearchIndexerWarning" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "itemsProcessed": { + "type": "integer", + "format": "int32", + "description": "The number of items that were processed during this indexer execution. This\nincludes both successfully processed items and items where indexing was\nattempted but failed.", + "readOnly": true, + "x-ms-client-name": "itemCount" + }, + "itemsFailed": { + "type": "integer", + "format": "int32", + "description": "The number of items that failed to be indexed during this indexer execution.", + "readOnly": true, + "x-ms-client-name": "failedItemCount" + }, + "initialTrackingState": { + "type": "string", + "description": "Change tracking state with which an indexer execution started.", + "readOnly": true + }, + "finalTrackingState": { + "type": "string", + "description": "Change tracking state with which an indexer execution finished.", + "readOnly": true + } + }, + "required": [ + "status", + "errors", + "warnings", + "itemsProcessed", + "itemsFailed" + ] + }, + "IndexerExecutionStatus": { + "type": "string", + "description": "Represents the status of an individual indexer execution.", + "enum": [ + "transientFailure", + "success", + "inProgress", + "reset" + ], + "x-ms-enum": { + "name": "IndexerExecutionStatus", + "modelAsString": true, + "values": [ + { + "name": "TransientFailure", + "value": "transientFailure", + "description": "An indexer invocation has failed, but the failure may be transient. Indexer\ninvocations will continue per schedule." + }, + { + "name": "Success", + "value": "success", + "description": "Indexer execution completed successfully." + }, + { + "name": "InProgress", + "value": "inProgress", + "description": "Indexer execution is in progress." + }, + { + "name": "Reset", + "value": "reset", + "description": "Indexer has been reset." + } + ] + } + }, + "IndexerStatus": { + "type": "string", + "description": "Represents the overall indexer status.", + "enum": [ + "unknown", + "error", + "running" + ], + "x-ms-enum": { + "name": "IndexerStatus", + "modelAsString": true, + "values": [ + { + "name": "Unknown", + "value": "unknown", + "description": "Indicates that the indexer is in an unknown state." + }, + { + "name": "Error", + "value": "error", + "description": "Indicates that the indexer experienced an error that cannot be corrected\nwithout human intervention." + }, + { + "name": "Running", + "value": "running", + "description": "Indicates that the indexer is running normally." + } + ] + } + }, + "IndexingParameters": { + "type": "object", + "description": "Represents parameters for indexer execution.", + "properties": { + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The number of items that are read from the data source and indexed as a single\nbatch in order to improve performance. The default depends on the data source\ntype." + }, + "maxFailedItems": { + "type": "integer", + "format": "int32", + "description": "The maximum number of items that can fail indexing for indexer execution to\nstill be considered successful. -1 means no limit. Default is 0." + }, + "maxFailedItemsPerBatch": { + "type": "integer", + "format": "int32", + "description": "The maximum number of items in a single batch that can fail indexing for the\nbatch to still be considered successful. -1 means no limit. Default is 0." + }, + "configuration": { + "$ref": "#/definitions/IndexingParametersConfiguration", + "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type." + } + } + }, + "IndexingParametersConfiguration": { + "type": "object", + "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type.", + "properties": { + "parsingMode": { + "type": "string", + "description": "Represents the parsing mode for indexing from an Azure blob data source.", + "default": "default", + "enum": [ + "default", + "text", + "delimitedText", + "json", + "jsonArray", + "jsonLines" + ], + "x-ms-enum": { + "name": "BlobIndexerParsingMode", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "default", + "description": "Set to default for normal file processing." + }, + { + "name": "Text", + "value": "text", + "description": "Set to text to improve indexing performance on plain text files in blob storage." + }, + { + "name": "DelimitedText", + "value": "delimitedText", + "description": "Set to delimitedText when blobs are plain CSV files." + }, + { + "name": "Json", + "value": "json", + "description": "Set to json to extract structured content from JSON files." + }, + { + "name": "JsonArray", + "value": "jsonArray", + "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." + }, + { + "name": "JsonLines", + "value": "jsonLines", + "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." + } + ] + } + }, + "excludedFileNameExtensions": { + "type": "string", + "description": "Comma-delimited list of filename extensions to ignore when processing from\nAzure blob storage. For example, you could exclude \".png, .mp4\" to skip over\nthose files during indexing." + }, + "indexedFileNameExtensions": { + "type": "string", + "description": "Comma-delimited list of filename extensions to select when processing from\nAzure blob storage. For example, you could focus indexing on specific\napplication files \".docx, .pptx, .msg\" to specifically include those file\ntypes." + }, + "failOnUnsupportedContentType": { + "type": "boolean", + "description": "For Azure blobs, set to false if you want to continue indexing when an\nunsupported content type is encountered, and you don't know all the content\ntypes (file extensions) in advance." + }, + "failOnUnprocessableDocument": { + "type": "boolean", + "description": "For Azure blobs, set to false if you want to continue indexing if a document\nfails indexing." + }, + "indexStorageMetadataOnlyForOversizedDocuments": { + "type": "boolean", + "description": "For Azure blobs, set this property to true to still index storage metadata for\nblob content that is too large to process. Oversized blobs are treated as\nerrors by default. For limits on blob size, see\nhttps://learn.microsoft.com/azure/search/search-limits-quotas-capacity." + }, + "delimitedTextHeaders": { + "type": "string", + "description": "For CSV blobs, specifies a comma-delimited list of column headers, useful for\nmapping source fields to destination fields in an index." + }, + "delimitedTextDelimiter": { + "type": "string", + "description": "For CSV blobs, specifies the end-of-line single-character delimiter for CSV\nfiles where each line starts a new document (for example, \"|\")." + }, + "firstLineContainsHeaders": { + "type": "boolean", + "description": "For CSV blobs, indicates that the first (non-blank) line of each blob contains\nheaders.", + "default": true + }, + "documentRoot": { + "type": "string", + "description": "For JSON arrays, given a structured or semi-structured document, you can\nspecify a path to the array using this property." + }, + "dataToExtract": { + "type": "string", + "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", + "default": "contentAndMetadata", + "enum": [ + "storageMetadata", + "allMetadata", + "contentAndMetadata" + ], + "x-ms-enum": { + "name": "BlobIndexerDataToExtract", + "modelAsString": true, + "values": [ + { + "name": "StorageMetadata", + "value": "storageMetadata", + "description": "Indexes just the standard blob properties and user-specified metadata." + }, + { + "name": "AllMetadata", + "value": "allMetadata", + "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." + }, + { + "name": "ContentAndMetadata", + "value": "contentAndMetadata", + "description": "Extracts all metadata and textual content from each blob." + } + ] + } + }, + "imageAction": { + "type": "string", + "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", + "default": "none", + "enum": [ + "none", + "generateNormalizedImages", + "generateNormalizedImagePerPage" + ], + "x-ms-enum": { + "name": "BlobIndexerImageAction", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Ignores embedded images or image files in the data set. This is the default." + }, + { + "name": "GenerateNormalizedImages", + "value": "generateNormalizedImages", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." + }, + { + "name": "GenerateNormalizedImagePerPage", + "value": "generateNormalizedImagePerPage", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." + } + ] + } + }, + "allowSkillsetToReadFileData": { + "type": "boolean", + "description": "If true, will create a path //document//file_data that is an object\nrepresenting the original file data downloaded from your blob data source.\nThis allows you to pass the original file data to a custom skill for processing\nwithin the enrichment pipeline, or to the Document Extraction skill." + }, + "pdfTextRotationAlgorithm": { + "type": "string", + "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", + "default": "none", + "enum": [ + "none", + "detectAngles" + ], + "x-ms-enum": { + "name": "BlobIndexerPDFTextRotationAlgorithm", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Leverages normal text extraction. This is the default." + }, + { + "name": "DetectAngles", + "value": "detectAngles", + "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." + } + ] + } + }, + "executionEnvironment": { + "type": "string", + "description": "Specifies the environment in which the indexer should execute.", + "default": "standard", + "enum": [ + "standard", + "private" + ], + "x-ms-enum": { + "name": "IndexerExecutionEnvironment", + "modelAsString": true, + "values": [ + { + "name": "standard", + "value": "standard", + "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." + }, + { + "name": "private", + "value": "private", + "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." + } + ] + } + }, + "queryTimeout": { + "type": "string", + "description": "Increases the timeout beyond the 5-minute default for Azure SQL database data\nsources, specified in the format \"hh:mm:ss\".", + "default": "00:05:00" + } + }, + "additionalProperties": {} + }, + "IndexingResult": { + "type": "object", + "description": "Status of an indexing operation for a single document.", + "properties": { + "key": { + "type": "string", + "description": "The key of a document that was in the indexing request.", + "readOnly": true + }, + "errorMessage": { + "type": "string", + "description": "The error message explaining why the indexing operation failed for the document\nidentified by the key; null if indexing succeeded.", + "readOnly": true + }, + "status": { + "type": "boolean", + "description": "A value indicating whether the indexing operation succeeded for the document\nidentified by the key.", + "readOnly": true, + "x-ms-client-name": "succeeded" + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code of the indexing operation. Possible values include: 200 for a\nsuccessful update or delete, 201 for successful document creation, 400 for a\nmalformed input document, 404 for document not found, 409 for a version\nconflict, 422 when the index is temporarily unavailable, or 503 for when the\nservice is too busy.", + "readOnly": true + } + }, + "required": [ + "key", + "status", + "statusCode" + ] + }, + "IndexingSchedule": { + "type": "object", + "description": "Represents a schedule for indexer execution.", + "properties": { + "interval": { + "type": "string", + "format": "duration", + "description": "The interval of time between indexer executions." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time when an indexer should start running." + } + }, + "required": [ + "interval" + ] + }, + "InputFieldMappingEntry": { + "type": "object", + "description": "Input field mapping for a skill.", + "properties": { + "name": { + "type": "string", + "description": "The name of the input." + }, + "source": { + "type": "string", + "description": "The source of the input." + }, + "sourceContext": { + "type": "string", + "description": "The source context used for selecting recursive inputs." + }, + "inputs": { + "type": "array", + "description": "The recursive inputs used when creating a complex type.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name" + ] + }, + "KeepTokenFilter": { + "type": "object", + "description": "A token filter that only keeps tokens with text contained in a specified list\nof words. This token filter is implemented using Apache Lucene.", + "properties": { + "keepWords": { + "type": "array", + "description": "The list of words to keep.", + "items": { + "type": "string" + } + }, + "keepWordsCase": { + "type": "boolean", + "description": "A value indicating whether to lower case all words first. Default is false.", + "x-ms-client-name": "lowerCaseKeepWords" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.KeepTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "keepWords", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter" + }, + "KeyPhraseExtractionSkill": { + "type": "object", + "description": "A skill that uses text analytics for key phrase extraction.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "maxKeyPhraseCount": { + "type": "integer", + "format": "int32", + "description": "A number indicating how many key phrases to return. If absent, all identified\nkey phrases will be returned." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" + }, + "KeyPhraseExtractionSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by KeyPhraseExtractionSkill.", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv" + ], + "x-ms-enum": { + "name": "KeyPhraseExtractionSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + } + ] + } + }, + "KeywordMarkerTokenFilter": { + "type": "object", + "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", + "properties": { + "keywords": { + "type": "array", + "description": "A list of words to mark as keywords.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "keywords", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" + }, + "KeywordTokenizer": { + "type": "object", + "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "bufferSize": { + "type": "integer", + "format": "int32", + "description": "The read buffer size in bytes. Default is 256.", + "default": 256 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.KeywordTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer" + }, + "KeywordTokenizerV2": { + "type": "object", + "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 256. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 256, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.KeywordTokenizerV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2" + }, + "LanguageDetectionSkill": { + "type": "object", + "description": "A skill that detects the language of input text and reports a single language\ncode for every document submitted on the request. The language code is paired\nwith a score indicating the confidence of the analysis.", + "properties": { + "defaultCountryHint": { + "type": "string", + "description": "A country code to use as a hint to the language detection model if it cannot\ndisambiguate the language." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.LanguageDetectionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill" + }, + "LengthTokenFilter": { + "type": "object", + "description": "Removes words that are too long or too short. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "min": { + "type": "integer", + "format": "int32", + "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less\nthan the value of max.", + "maximum": 300, + "x-ms-client-name": "minLength" + }, + "max": { + "type": "integer", + "format": "int32", + "description": "The maximum length in characters. Default and maximum is 300.", + "default": 300, + "maximum": 300, + "x-ms-client-name": "maxLength" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.LengthTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter" + }, + "LexicalAnalyzer": { + "type": "object", + "description": "Base type for analyzers.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "name" + ] + }, + "LexicalAnalyzerName": { + "type": "string", + "description": "Defines the names of all text analyzers supported by the search engine.", + "enum": [ + "ar.microsoft", + "ar.lucene", + "hy.lucene", + "bn.microsoft", + "eu.lucene", + "bg.microsoft", + "bg.lucene", + "ca.microsoft", + "ca.lucene", + "zh-Hans.microsoft", + "zh-Hans.lucene", + "zh-Hant.microsoft", + "zh-Hant.lucene", + "hr.microsoft", + "cs.microsoft", + "cs.lucene", + "da.microsoft", + "da.lucene", + "nl.microsoft", + "nl.lucene", + "en.microsoft", + "en.lucene", + "et.microsoft", + "fi.microsoft", + "fi.lucene", + "fr.microsoft", + "fr.lucene", + "gl.lucene", + "de.microsoft", + "de.lucene", + "el.microsoft", + "el.lucene", + "gu.microsoft", + "he.microsoft", + "hi.microsoft", + "hi.lucene", + "hu.microsoft", + "hu.lucene", + "is.microsoft", + "id.microsoft", + "id.lucene", + "ga.lucene", + "it.microsoft", + "it.lucene", + "ja.microsoft", + "ja.lucene", + "kn.microsoft", + "ko.microsoft", + "ko.lucene", + "lv.microsoft", + "lv.lucene", + "lt.microsoft", + "ml.microsoft", + "ms.microsoft", + "mr.microsoft", + "nb.microsoft", + "no.lucene", + "fa.lucene", + "pl.microsoft", + "pl.lucene", + "pt-BR.microsoft", + "pt-BR.lucene", + "pt-PT.microsoft", + "pt-PT.lucene", + "pa.microsoft", + "ro.microsoft", + "ro.lucene", + "ru.microsoft", + "ru.lucene", + "sr-cyrillic.microsoft", + "sr-latin.microsoft", + "sk.microsoft", + "sl.microsoft", + "es.microsoft", + "es.lucene", + "sv.microsoft", + "sv.lucene", + "ta.microsoft", + "te.microsoft", + "th.microsoft", + "th.lucene", + "tr.microsoft", + "tr.lucene", + "uk.microsoft", + "ur.microsoft", + "vi.microsoft", + "standard.lucene", + "standardasciifolding.lucene", + "keyword", + "pattern", + "simple", + "stop", + "whitespace" + ], + "x-ms-enum": { + "name": "LexicalAnalyzerName", + "modelAsString": true, + "values": [ + { + "name": "ArMicrosoft", + "value": "ar.microsoft", + "description": "Microsoft analyzer for Arabic." + }, + { + "name": "ArLucene", + "value": "ar.lucene", + "description": "Lucene analyzer for Arabic." + }, + { + "name": "HyLucene", + "value": "hy.lucene", + "description": "Lucene analyzer for Armenian." + }, + { + "name": "BnMicrosoft", + "value": "bn.microsoft", + "description": "Microsoft analyzer for Bangla." + }, + { + "name": "EuLucene", + "value": "eu.lucene", + "description": "Lucene analyzer for Basque." + }, + { + "name": "BgMicrosoft", + "value": "bg.microsoft", + "description": "Microsoft analyzer for Bulgarian." + }, + { + "name": "BgLucene", + "value": "bg.lucene", + "description": "Lucene analyzer for Bulgarian." + }, + { + "name": "CaMicrosoft", + "value": "ca.microsoft", + "description": "Microsoft analyzer for Catalan." + }, + { + "name": "CaLucene", + "value": "ca.lucene", + "description": "Lucene analyzer for Catalan." + }, + { + "name": "ZhHansMicrosoft", + "value": "zh-Hans.microsoft", + "description": "Microsoft analyzer for Chinese (Simplified)." + }, + { + "name": "ZhHansLucene", + "value": "zh-Hans.lucene", + "description": "Lucene analyzer for Chinese (Simplified)." + }, + { + "name": "ZhHantMicrosoft", + "value": "zh-Hant.microsoft", + "description": "Microsoft analyzer for Chinese (Traditional)." + }, + { + "name": "ZhHantLucene", + "value": "zh-Hant.lucene", + "description": "Lucene analyzer for Chinese (Traditional)." + }, + { + "name": "HrMicrosoft", + "value": "hr.microsoft", + "description": "Microsoft analyzer for Croatian." + }, + { + "name": "CsMicrosoft", + "value": "cs.microsoft", + "description": "Microsoft analyzer for Czech." + }, + { + "name": "CsLucene", + "value": "cs.lucene", + "description": "Lucene analyzer for Czech." + }, + { + "name": "DaMicrosoft", + "value": "da.microsoft", + "description": "Microsoft analyzer for Danish." + }, + { + "name": "DaLucene", + "value": "da.lucene", + "description": "Lucene analyzer for Danish." + }, + { + "name": "NlMicrosoft", + "value": "nl.microsoft", + "description": "Microsoft analyzer for Dutch." + }, + { + "name": "NlLucene", + "value": "nl.lucene", + "description": "Lucene analyzer for Dutch." + }, + { + "name": "EnMicrosoft", + "value": "en.microsoft", + "description": "Microsoft analyzer for English." + }, + { + "name": "EnLucene", + "value": "en.lucene", + "description": "Lucene analyzer for English." + }, + { + "name": "EtMicrosoft", + "value": "et.microsoft", + "description": "Microsoft analyzer for Estonian." + }, + { + "name": "FiMicrosoft", + "value": "fi.microsoft", + "description": "Microsoft analyzer for Finnish." + }, + { + "name": "FiLucene", + "value": "fi.lucene", + "description": "Lucene analyzer for Finnish." + }, + { + "name": "FrMicrosoft", + "value": "fr.microsoft", + "description": "Microsoft analyzer for French." + }, + { + "name": "FrLucene", + "value": "fr.lucene", + "description": "Lucene analyzer for French." + }, + { + "name": "GlLucene", + "value": "gl.lucene", + "description": "Lucene analyzer for Galician." + }, + { + "name": "DeMicrosoft", + "value": "de.microsoft", + "description": "Microsoft analyzer for German." + }, + { + "name": "DeLucene", + "value": "de.lucene", + "description": "Lucene analyzer for German." + }, + { + "name": "ElMicrosoft", + "value": "el.microsoft", + "description": "Microsoft analyzer for Greek." + }, + { + "name": "ElLucene", + "value": "el.lucene", + "description": "Lucene analyzer for Greek." + }, + { + "name": "GuMicrosoft", + "value": "gu.microsoft", + "description": "Microsoft analyzer for Gujarati." + }, + { + "name": "HeMicrosoft", + "value": "he.microsoft", + "description": "Microsoft analyzer for Hebrew." + }, + { + "name": "HiMicrosoft", + "value": "hi.microsoft", + "description": "Microsoft analyzer for Hindi." + }, + { + "name": "HiLucene", + "value": "hi.lucene", + "description": "Lucene analyzer for Hindi." + }, + { + "name": "HuMicrosoft", + "value": "hu.microsoft", + "description": "Microsoft analyzer for Hungarian." + }, + { + "name": "HuLucene", + "value": "hu.lucene", + "description": "Lucene analyzer for Hungarian." + }, + { + "name": "IsMicrosoft", + "value": "is.microsoft", + "description": "Microsoft analyzer for Icelandic." + }, + { + "name": "IdMicrosoft", + "value": "id.microsoft", + "description": "Microsoft analyzer for Indonesian (Bahasa)." + }, + { + "name": "IdLucene", + "value": "id.lucene", + "description": "Lucene analyzer for Indonesian." + }, + { + "name": "GaLucene", + "value": "ga.lucene", + "description": "Lucene analyzer for Irish." + }, + { + "name": "ItMicrosoft", + "value": "it.microsoft", + "description": "Microsoft analyzer for Italian." + }, + { + "name": "ItLucene", + "value": "it.lucene", + "description": "Lucene analyzer for Italian." + }, + { + "name": "JaMicrosoft", + "value": "ja.microsoft", + "description": "Microsoft analyzer for Japanese." + }, + { + "name": "JaLucene", + "value": "ja.lucene", + "description": "Lucene analyzer for Japanese." + }, + { + "name": "KnMicrosoft", + "value": "kn.microsoft", + "description": "Microsoft analyzer for Kannada." + }, + { + "name": "KoMicrosoft", + "value": "ko.microsoft", + "description": "Microsoft analyzer for Korean." + }, + { + "name": "KoLucene", + "value": "ko.lucene", + "description": "Lucene analyzer for Korean." + }, + { + "name": "LvMicrosoft", + "value": "lv.microsoft", + "description": "Microsoft analyzer for Latvian." + }, + { + "name": "LvLucene", + "value": "lv.lucene", + "description": "Lucene analyzer for Latvian." + }, + { + "name": "LtMicrosoft", + "value": "lt.microsoft", + "description": "Microsoft analyzer for Lithuanian." + }, + { + "name": "MlMicrosoft", + "value": "ml.microsoft", + "description": "Microsoft analyzer for Malayalam." + }, + { + "name": "MsMicrosoft", + "value": "ms.microsoft", + "description": "Microsoft analyzer for Malay (Latin)." + }, + { + "name": "MrMicrosoft", + "value": "mr.microsoft", + "description": "Microsoft analyzer for Marathi." + }, + { + "name": "NbMicrosoft", + "value": "nb.microsoft", + "description": "Microsoft analyzer for Norwegian (Bokmål)." + }, + { + "name": "NoLucene", + "value": "no.lucene", + "description": "Lucene analyzer for Norwegian." + }, + { + "name": "FaLucene", + "value": "fa.lucene", + "description": "Lucene analyzer for Persian." + }, + { + "name": "PlMicrosoft", + "value": "pl.microsoft", + "description": "Microsoft analyzer for Polish." + }, + { + "name": "PlLucene", + "value": "pl.lucene", + "description": "Lucene analyzer for Polish." + }, + { + "name": "PtBrMicrosoft", + "value": "pt-BR.microsoft", + "description": "Microsoft analyzer for Portuguese (Brazil)." + }, + { + "name": "PtBrLucene", + "value": "pt-BR.lucene", + "description": "Lucene analyzer for Portuguese (Brazil)." + }, + { + "name": "PtPtMicrosoft", + "value": "pt-PT.microsoft", + "description": "Microsoft analyzer for Portuguese (Portugal)." + }, + { + "name": "PtPtLucene", + "value": "pt-PT.lucene", + "description": "Lucene analyzer for Portuguese (Portugal)." + }, + { + "name": "PaMicrosoft", + "value": "pa.microsoft", + "description": "Microsoft analyzer for Punjabi." + }, + { + "name": "RoMicrosoft", + "value": "ro.microsoft", + "description": "Microsoft analyzer for Romanian." + }, + { + "name": "RoLucene", + "value": "ro.lucene", + "description": "Lucene analyzer for Romanian." + }, + { + "name": "RuMicrosoft", + "value": "ru.microsoft", + "description": "Microsoft analyzer for Russian." + }, + { + "name": "RuLucene", + "value": "ru.lucene", + "description": "Lucene analyzer for Russian." + }, + { + "name": "SrCyrillicMicrosoft", + "value": "sr-cyrillic.microsoft", + "description": "Microsoft analyzer for Serbian (Cyrillic)." + }, + { + "name": "SrLatinMicrosoft", + "value": "sr-latin.microsoft", + "description": "Microsoft analyzer for Serbian (Latin)." + }, + { + "name": "SkMicrosoft", + "value": "sk.microsoft", + "description": "Microsoft analyzer for Slovak." + }, + { + "name": "SlMicrosoft", + "value": "sl.microsoft", + "description": "Microsoft analyzer for Slovenian." + }, + { + "name": "EsMicrosoft", + "value": "es.microsoft", + "description": "Microsoft analyzer for Spanish." + }, + { + "name": "EsLucene", + "value": "es.lucene", + "description": "Lucene analyzer for Spanish." + }, + { + "name": "SvMicrosoft", + "value": "sv.microsoft", + "description": "Microsoft analyzer for Swedish." + }, + { + "name": "SvLucene", + "value": "sv.lucene", + "description": "Lucene analyzer for Swedish." + }, + { + "name": "TaMicrosoft", + "value": "ta.microsoft", + "description": "Microsoft analyzer for Tamil." + }, + { + "name": "TeMicrosoft", + "value": "te.microsoft", + "description": "Microsoft analyzer for Telugu." + }, + { + "name": "ThMicrosoft", + "value": "th.microsoft", + "description": "Microsoft analyzer for Thai." + }, + { + "name": "ThLucene", + "value": "th.lucene", + "description": "Lucene analyzer for Thai." + }, + { + "name": "TrMicrosoft", + "value": "tr.microsoft", + "description": "Microsoft analyzer for Turkish." + }, + { + "name": "TrLucene", + "value": "tr.lucene", + "description": "Lucene analyzer for Turkish." + }, + { + "name": "UkMicrosoft", + "value": "uk.microsoft", + "description": "Microsoft analyzer for Ukrainian." + }, + { + "name": "UrMicrosoft", + "value": "ur.microsoft", + "description": "Microsoft analyzer for Urdu." + }, + { + "name": "ViMicrosoft", + "value": "vi.microsoft", + "description": "Microsoft analyzer for Vietnamese." + }, + { + "name": "StandardLucene", + "value": "standard.lucene", + "description": "Standard Lucene analyzer." + }, + { + "name": "StandardAsciiFoldingLucene", + "value": "standardasciifolding.lucene", + "description": "Standard ASCII Folding Lucene analyzer. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers" + }, + { + "name": "Keyword", + "value": "keyword", + "description": "Treats the entire content of a field as a single token. This is useful for data\nlike zip codes, ids, and some product names. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html" + }, + { + "name": "Pattern", + "value": "pattern", + "description": "Flexibly separates text into terms via a regular expression pattern. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" + }, + { + "name": "Simple", + "value": "simple", + "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html" + }, + { + "name": "Stop", + "value": "stop", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "An analyzer that uses the whitespace tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html" + } + ] + } + }, + "LexicalTokenizer": { + "type": "object", + "description": "Base type for tokenizers.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "name" + ] + }, + "LexicalTokenizerName": { + "type": "string", + "description": "Defines the names of all tokenizers supported by the search engine.", + "enum": [ + "classic", + "edgeNGram", + "keyword_v2", + "letter", + "lowercase", + "microsoft_language_tokenizer", + "microsoft_language_stemming_tokenizer", + "nGram", + "path_hierarchy_v2", + "pattern", + "standard_v2", + "uax_url_email", + "whitespace" + ], + "x-ms-enum": { + "name": "LexicalTokenizerName", + "modelAsString": true, + "values": [ + { + "name": "Classic", + "value": "classic", + "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + }, + { + "name": "EdgeNGram", + "value": "edgeNGram", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + }, + { + "name": "Keyword", + "value": "keyword_v2", + "description": "Emits the entire input as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + { + "name": "Letter", + "value": "letter", + "description": "Divides text at non-letters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" + }, + { + "name": "Lowercase", + "value": "lowercase", + "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" + }, + { + "name": "MicrosoftLanguageTokenizer", + "value": "microsoft_language_tokenizer", + "description": "Divides text using language-specific rules." + }, + { + "name": "MicrosoftLanguageStemmingTokenizer", + "value": "microsoft_language_stemming_tokenizer", + "description": "Divides text using language-specific rules and reduces words to their base\nforms." + }, + { + "name": "NGram", + "value": "nGram", + "description": "Tokenizes the input into n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + }, + { + "name": "PathHierarchy", + "value": "path_hierarchy_v2", + "description": "Tokenizer for path-like hierarchies. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + }, + { + "name": "Pattern", + "value": "pattern", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + }, + { + "name": "Standard", + "value": "standard_v2", + "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter\nand stop filter. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + { + "name": "UaxUrlEmail", + "value": "uax_url_email", + "description": "Tokenizes urls and emails as one token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "Divides text at whitespace. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" + } + ] + } + }, + "LimitTokenFilter": { + "type": "object", + "description": "Limits the number of tokens while indexing. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "maxTokenCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of tokens to produce. Default is 1.", + "default": 1 + }, + "consumeAllTokens": { + "type": "boolean", + "description": "A value indicating whether all tokens from the input must be consumed even if\nmaxTokenCount is reached. Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.LimitTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter" + }, + "ListDataSourcesResult": { + "type": "object", + "description": "Response from a List Datasources request. If successful, it includes the full\ndefinitions of all datasources.", + "properties": { + "value": { + "type": "array", + "description": "The datasources in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerDataSourceItem" + }, + "readOnly": true, + "x-ms-client-name": "dataSources", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListIndexersResult": { + "type": "object", + "description": "Response from a List Indexers request. If successful, it includes the full\ndefinitions of all indexers.", + "properties": { + "value": { + "type": "array", + "description": "The indexers in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerItem" + }, + "readOnly": true, + "x-ms-client-name": "indexers", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListIndexesResult": { + "type": "object", + "description": "Response from a List Indexes request. If successful, it includes the full\ndefinitions of all indexes.", + "properties": { + "value": { + "type": "array", + "description": "The indexes in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexItem" + }, + "readOnly": true, + "x-ms-client-name": "indexes", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListSkillsetsResult": { + "type": "object", + "description": "Response from a list skillset request. If successful, it includes the full\ndefinitions of all skillsets.", + "properties": { + "value": { + "type": "array", + "description": "The skillsets defined in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerSkillsetItem" + }, + "readOnly": true, + "x-ms-client-name": "skillsets", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListSynonymMapsResult": { + "type": "object", + "description": "Response from a List SynonymMaps request. If successful, it includes the full\ndefinitions of all synonym maps.", + "properties": { + "value": { + "type": "array", + "description": "The synonym maps in the Search service.", + "items": { + "$ref": "#/definitions/SynonymMapItem" + }, + "readOnly": true, + "x-ms-client-name": "synonymMaps", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "LuceneStandardAnalyzer": { + "type": "object", + "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase\nfilter and stop filter.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of analyzer.", + "enum": [ + "#Microsoft.Azure.Search.StandardAnalyzer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer" + }, + "LuceneStandardTokenizer": { + "type": "object", + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split.", + "default": 255 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.StandardTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer" + }, + "LuceneStandardTokenizerV2": { + "type": "object", + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.StandardTokenizerV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2" + }, + "MagnitudeScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on the magnitude of a numeric field.", + "properties": { + "magnitude": { + "$ref": "#/definitions/MagnitudeScoringParameters", + "description": "Parameter values for the magnitude scoring function.", + "x-ms-client-name": "parameters" + } + }, + "required": [ + "magnitude" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "magnitude" + }, + "MagnitudeScoringParameters": { + "type": "object", + "description": "Provides parameter values to a magnitude scoring function.", + "properties": { + "boostingRangeStart": { + "type": "number", + "format": "double", + "description": "The field value at which boosting starts." + }, + "boostingRangeEnd": { + "type": "number", + "format": "double", + "description": "The field value at which boosting ends." + }, + "constantBoostBeyondRange": { + "type": "boolean", + "description": "A value indicating whether to apply a constant boost for field values beyond\nthe range end value; default is false.", + "x-ms-client-name": "shouldBoostBeyondRangeByConstant" + } + }, + "required": [ + "boostingRangeStart", + "boostingRangeEnd" + ] + }, + "MappingCharFilter": { + "type": "object", + "description": "A character filter that applies mappings defined with the mappings option.\nMatching is greedy (longest pattern matching at a given point wins).\nReplacement is allowed to be the empty string. This character filter is\nimplemented using Apache Lucene.", + "properties": { + "mappings": { + "type": "array", + "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the\ncharacter \"a\" will be replaced with character \"b\").", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of char filter.", + "enum": [ + "#Microsoft.Azure.Search.MappingCharFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "mappings", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter" + }, + "MergeSkill": { + "type": "object", + "description": "A skill for merging two or more strings into a single unified string, with an\noptional user-defined delimiter separating each component part.", + "properties": { + "insertPreTag": { + "type": "string", + "description": "The tag indicates the start of the merged text. By default, the tag is an empty\nspace.", + "default": " " + }, + "insertPostTag": { + "type": "string", + "description": "The tag indicates the end of the merged text. By default, the tag is an empty\nspace.", + "default": " " + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.MergeSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill" + }, + "MicrosoftLanguageStemmingTokenizer": { + "type": "object", + "description": "Divides text using language-specific rules and reduces words to their base\nforms.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", + "default": 255, + "maximum": 300 + }, + "isSearchTokenizer": { + "type": "boolean", + "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", + "description": "The language to use. The default is English." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" + }, + "MicrosoftLanguageTokenizer": { + "type": "object", + "description": "Divides text using language-specific rules.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", + "default": 255, + "maximum": 300 + }, + "isSearchTokenizer": { + "type": "boolean", + "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftTokenizerLanguage", + "description": "The language to use. The default is English." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" + }, + "MicrosoftStemmingTokenizerLanguage": { + "type": "string", + "description": "Lists the languages supported by the Microsoft language stemming tokenizer.", + "enum": [ + "arabic", + "bangla", + "bulgarian", + "catalan", + "croatian", + "czech", + "danish", + "dutch", + "english", + "estonian", + "finnish", + "french", + "german", + "greek", + "gujarati", + "hebrew", + "hindi", + "hungarian", + "icelandic", + "indonesian", + "italian", + "kannada", + "latvian", + "lithuanian", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovak", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "turkish", + "ukrainian", + "urdu" + ], + "x-ms-enum": { + "name": "MicrosoftStemmingTokenizerLanguage", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the Microsoft stemming tokenizer for Arabic." + }, + { + "name": "Bangla", + "value": "bangla", + "description": "Selects the Microsoft stemming tokenizer for Bangla." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Microsoft stemming tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Microsoft stemming tokenizer for Catalan." + }, + { + "name": "Croatian", + "value": "croatian", + "description": "Selects the Microsoft stemming tokenizer for Croatian." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Microsoft stemming tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Microsoft stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Microsoft stemming tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Microsoft stemming tokenizer for English." + }, + { + "name": "Estonian", + "value": "estonian", + "description": "Selects the Microsoft stemming tokenizer for Estonian." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Microsoft stemming tokenizer for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Microsoft stemming tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Microsoft stemming tokenizer for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Microsoft stemming tokenizer for Greek." + }, + { + "name": "Gujarati", + "value": "gujarati", + "description": "Selects the Microsoft stemming tokenizer for Gujarati." + }, + { + "name": "Hebrew", + "value": "hebrew", + "description": "Selects the Microsoft stemming tokenizer for Hebrew." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Microsoft stemming tokenizer for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Microsoft stemming tokenizer for Hungarian." + }, + { + "name": "Icelandic", + "value": "icelandic", + "description": "Selects the Microsoft stemming tokenizer for Icelandic." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Microsoft stemming tokenizer for Indonesian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Microsoft stemming tokenizer for Italian." + }, + { + "name": "Kannada", + "value": "kannada", + "description": "Selects the Microsoft stemming tokenizer for Kannada." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the Microsoft stemming tokenizer for Latvian." + }, + { + "name": "Lithuanian", + "value": "lithuanian", + "description": "Selects the Microsoft stemming tokenizer for Lithuanian." + }, + { + "name": "Malay", + "value": "malay", + "description": "Selects the Microsoft stemming tokenizer for Malay." + }, + { + "name": "Malayalam", + "value": "malayalam", + "description": "Selects the Microsoft stemming tokenizer for Malayalam." + }, + { + "name": "Marathi", + "value": "marathi", + "description": "Selects the Microsoft stemming tokenizer for Marathi." + }, + { + "name": "NorwegianBokmaal", + "value": "norwegianBokmaal", + "description": "Selects the Microsoft stemming tokenizer for Norwegian (Bokmål)." + }, + { + "name": "Polish", + "value": "polish", + "description": "Selects the Microsoft stemming tokenizer for Polish." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Microsoft stemming tokenizer for Portuguese." + }, + { + "name": "PortugueseBrazilian", + "value": "portugueseBrazilian", + "description": "Selects the Microsoft stemming tokenizer for Portuguese (Brazil)." + }, + { + "name": "Punjabi", + "value": "punjabi", + "description": "Selects the Microsoft stemming tokenizer for Punjabi." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Microsoft stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Microsoft stemming tokenizer for Russian." + }, + { + "name": "SerbianCyrillic", + "value": "serbianCyrillic", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Cyrillic)." + }, + { + "name": "SerbianLatin", + "value": "serbianLatin", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Latin)." + }, + { + "name": "Slovak", + "value": "slovak", + "description": "Selects the Microsoft stemming tokenizer for Slovak." + }, + { + "name": "Slovenian", + "value": "slovenian", + "description": "Selects the Microsoft stemming tokenizer for Slovenian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Microsoft stemming tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Microsoft stemming tokenizer for Swedish." + }, + { + "name": "Tamil", + "value": "tamil", + "description": "Selects the Microsoft stemming tokenizer for Tamil." + }, + { + "name": "Telugu", + "value": "telugu", + "description": "Selects the Microsoft stemming tokenizer for Telugu." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Microsoft stemming tokenizer for Turkish." + }, + { + "name": "Ukrainian", + "value": "ukrainian", + "description": "Selects the Microsoft stemming tokenizer for Ukrainian." + }, + { + "name": "Urdu", + "value": "urdu", + "description": "Selects the Microsoft stemming tokenizer for Urdu." + } + ] + } + }, + "MicrosoftTokenizerLanguage": { + "type": "string", + "description": "Lists the languages supported by the Microsoft language tokenizer.", + "enum": [ + "bangla", + "bulgarian", + "catalan", + "chineseSimplified", + "chineseTraditional", + "croatian", + "czech", + "danish", + "dutch", + "english", + "french", + "german", + "greek", + "gujarati", + "hindi", + "icelandic", + "indonesian", + "italian", + "japanese", + "kannada", + "korean", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "thai", + "ukrainian", + "urdu", + "vietnamese" + ], + "x-ms-enum": { + "name": "MicrosoftTokenizerLanguage", + "modelAsString": true, + "values": [ + { + "name": "Bangla", + "value": "bangla", + "description": "Selects the Microsoft tokenizer for Bangla." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Microsoft tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Microsoft tokenizer for Catalan." + }, + { + "name": "ChineseSimplified", + "value": "chineseSimplified", + "description": "Selects the Microsoft tokenizer for Chinese (Simplified)." + }, + { + "name": "ChineseTraditional", + "value": "chineseTraditional", + "description": "Selects the Microsoft tokenizer for Chinese (Traditional)." + }, + { + "name": "Croatian", + "value": "croatian", + "description": "Selects the Microsoft tokenizer for Croatian." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Microsoft tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Microsoft tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Microsoft tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Microsoft tokenizer for English." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Microsoft tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Microsoft tokenizer for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Microsoft tokenizer for Greek." + }, + { + "name": "Gujarati", + "value": "gujarati", + "description": "Selects the Microsoft tokenizer for Gujarati." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Microsoft tokenizer for Hindi." + }, + { + "name": "Icelandic", + "value": "icelandic", + "description": "Selects the Microsoft tokenizer for Icelandic." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Microsoft tokenizer for Indonesian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Microsoft tokenizer for Italian." + }, + { + "name": "Japanese", + "value": "japanese", + "description": "Selects the Microsoft tokenizer for Japanese." + }, + { + "name": "Kannada", + "value": "kannada", + "description": "Selects the Microsoft tokenizer for Kannada." + }, + { + "name": "Korean", + "value": "korean", + "description": "Selects the Microsoft tokenizer for Korean." + }, + { + "name": "Malay", + "value": "malay", + "description": "Selects the Microsoft tokenizer for Malay." + }, + { + "name": "Malayalam", + "value": "malayalam", + "description": "Selects the Microsoft tokenizer for Malayalam." + }, + { + "name": "Marathi", + "value": "marathi", + "description": "Selects the Microsoft tokenizer for Marathi." + }, + { + "name": "NorwegianBokmaal", + "value": "norwegianBokmaal", + "description": "Selects the Microsoft tokenizer for Norwegian (Bokmål)." + }, + { + "name": "Polish", + "value": "polish", + "description": "Selects the Microsoft tokenizer for Polish." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Microsoft tokenizer for Portuguese." + }, + { + "name": "PortugueseBrazilian", + "value": "portugueseBrazilian", + "description": "Selects the Microsoft tokenizer for Portuguese (Brazil)." + }, + { + "name": "Punjabi", + "value": "punjabi", + "description": "Selects the Microsoft tokenizer for Punjabi." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Microsoft tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Microsoft tokenizer for Russian." + }, + { + "name": "SerbianCyrillic", + "value": "serbianCyrillic", + "description": "Selects the Microsoft tokenizer for Serbian (Cyrillic)." + }, + { + "name": "SerbianLatin", + "value": "serbianLatin", + "description": "Selects the Microsoft tokenizer for Serbian (Latin)." + }, + { + "name": "Slovenian", + "value": "slovenian", + "description": "Selects the Microsoft tokenizer for Slovenian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Microsoft tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Microsoft tokenizer for Swedish." + }, + { + "name": "Tamil", + "value": "tamil", + "description": "Selects the Microsoft tokenizer for Tamil." + }, + { + "name": "Telugu", + "value": "telugu", + "description": "Selects the Microsoft tokenizer for Telugu." + }, + { + "name": "Thai", + "value": "thai", + "description": "Selects the Microsoft tokenizer for Thai." + }, + { + "name": "Ukrainian", + "value": "ukrainian", + "description": "Selects the Microsoft tokenizer for Ukrainian." + }, + { + "name": "Urdu", + "value": "urdu", + "description": "Selects the Microsoft tokenizer for Urdu." + }, + { + "name": "Vietnamese", + "value": "vietnamese", + "description": "Selects the Microsoft tokenizer for Vietnamese." + } + ] + } + }, + "NGramTokenFilter": { + "type": "object", + "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", + "default": 1 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2.", + "default": 2 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.NGramTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter" + }, + "NGramTokenFilterV2": { + "type": "object", + "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.NGramTokenFilterV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2" + }, + "NGramTokenizer": { + "type": "object", + "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "tokenChars": { + "type": "array", + "description": "Character classes to keep in the tokens.", + "items": { + "$ref": "#/definitions/TokenCharacterKind" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.NGramTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer" + }, + "OcrLineEnding": { + "type": "string", + "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\".", + "enum": [ + "space", + "carriageReturn", + "lineFeed", + "carriageReturnLineFeed" + ], + "x-ms-enum": { + "name": "OcrLineEnding", + "modelAsString": true, + "values": [ + { + "name": "Space", + "value": "space", + "description": "Lines are separated by a single space character." + }, + { + "name": "CarriageReturn", + "value": "carriageReturn", + "description": "Lines are separated by a carriage return ('\\r') character." + }, + { + "name": "LineFeed", + "value": "lineFeed", + "description": "Lines are separated by a single line feed ('\\n') character." + }, + { + "name": "CarriageReturnLineFeed", + "value": "carriageReturnLineFeed", + "description": "Lines are separated by a carriage return and a line feed ('\\r\\n') character." + } + ] + } + }, + "OcrSkill": { + "type": "object", + "description": "A skill that extracts text from image files.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/OcrSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "detectOrientation": { + "type": "boolean", + "description": "A value indicating to turn orientation detection on or not. Default is false.", + "x-ms-client-name": "shouldDetectOrientation" + }, + "lineEnding": { + "$ref": "#/definitions/OcrLineEnding", + "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\"." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Vision.OcrSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill" + }, + "OcrSkillLanguage": { + "type": "string", + "description": "The language codes supported for input by OcrSkill.", + "enum": [ + "af", + "sq", + "anp", + "ar", + "ast", + "awa", + "az", + "bfy", + "eu", + "be", + "be-cyrl", + "be-latn", + "bho", + "bi", + "brx", + "bs", + "bra", + "br", + "bg", + "bns", + "bua", + "ca", + "ceb", + "rab", + "ch", + "hne", + "zh-Hans", + "zh-Hant", + "kw", + "co", + "crh", + "hr", + "cs", + "da", + "prs", + "dhi", + "doi", + "nl", + "en", + "myv", + "et", + "fo", + "fj", + "fil", + "fi", + "fr", + "fur", + "gag", + "gl", + "de", + "gil", + "gon", + "el", + "kl", + "gvr", + "ht", + "hlb", + "hni", + "bgc", + "haw", + "hi", + "mww", + "hoc", + "hu", + "is", + "smn", + "id", + "ia", + "iu", + "ga", + "it", + "ja", + "Jns", + "jv", + "kea", + "kac", + "xnr", + "krc", + "kaa-cyrl", + "kaa", + "csb", + "kk-cyrl", + "kk-latn", + "klr", + "kha", + "quc", + "ko", + "kfq", + "kpy", + "kos", + "kum", + "ku-arab", + "ku-latn", + "kru", + "ky", + "lkt", + "la", + "lt", + "dsb", + "smj", + "lb", + "bfz", + "ms", + "mt", + "kmj", + "gv", + "mi", + "mr", + "mn", + "cnr-cyrl", + "cnr-latn", + "nap", + "ne", + "niu", + "nog", + "sme", + "nb", + "no", + "oc", + "os", + "ps", + "fa", + "pl", + "pt", + "pa", + "ksh", + "ro", + "rm", + "ru", + "sck", + "sm", + "sa", + "sat", + "sco", + "gd", + "sr", + "sr-Cyrl", + "sr-Latn", + "xsr", + "srx", + "sms", + "sk", + "sl", + "so", + "sma", + "es", + "sw", + "sv", + "tg", + "tt", + "tet", + "thf", + "to", + "tr", + "tk", + "tyv", + "hsb", + "ur", + "ug", + "uz-arab", + "uz-cyrl", + "uz", + "vo", + "wae", + "cy", + "fy", + "yua", + "za", + "zu", + "unk" + ], + "x-ms-enum": { + "name": "OcrSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "af", + "value": "af", + "description": "Afrikaans" + }, + { + "name": "sq", + "value": "sq", + "description": "Albanian" + }, + { + "name": "anp", + "value": "anp", + "description": "Angika (Devanagiri)" + }, + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "ast", + "value": "ast", + "description": "Asturian" + }, + { + "name": "awa", + "value": "awa", + "description": "Awadhi-Hindi (Devanagiri)" + }, + { + "name": "az", + "value": "az", + "description": "Azerbaijani (Latin)" + }, + { + "name": "bfy", + "value": "bfy", + "description": "Bagheli" + }, + { + "name": "eu", + "value": "eu", + "description": "Basque" + }, + { + "name": "be", + "value": "be", + "description": "Belarusian (Cyrillic and Latin)" + }, + { + "name": "be-cyrl", + "value": "be-cyrl", + "description": "Belarusian (Cyrillic)" + }, + { + "name": "be-latn", + "value": "be-latn", + "description": "Belarusian (Latin)" + }, + { + "name": "bho", + "value": "bho", + "description": "Bhojpuri-Hindi (Devanagiri)" + }, + { + "name": "bi", + "value": "bi", + "description": "Bislama" + }, + { + "name": "brx", + "value": "brx", + "description": "Bodo (Devanagiri)" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian Latin" + }, + { + "name": "bra", + "value": "bra", + "description": "Brajbha" + }, + { + "name": "br", + "value": "br", + "description": "Breton" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "bns", + "value": "bns", + "description": "Bundeli" + }, + { + "name": "bua", + "value": "bua", + "description": "Buryat (Cyrillic)" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "ceb", + "value": "ceb", + "description": "Cebuano" + }, + { + "name": "rab", + "value": "rab", + "description": "Chamling" + }, + { + "name": "ch", + "value": "ch", + "description": "Chamorro" + }, + { + "name": "hne", + "value": "hne", + "description": "Chhattisgarhi (Devanagiri)" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "name": "kw", + "value": "kw", + "description": "Cornish" + }, + { + "name": "co", + "value": "co", + "description": "Corsican" + }, + { + "name": "crh", + "value": "crh", + "description": "Crimean Tatar (Latin)" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "prs", + "value": "prs", + "description": "Dari" + }, + { + "name": "dhi", + "value": "dhi", + "description": "Dhimal (Devanagiri)" + }, + { + "name": "doi", + "value": "doi", + "description": "Dogri (Devanagiri)" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "myv", + "value": "myv", + "description": "Erzya (Cyrillic)" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fo", + "value": "fo", + "description": "Faroese" + }, + { + "name": "fj", + "value": "fj", + "description": "Fijian" + }, + { + "name": "fil", + "value": "fil", + "description": "Filipino" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "fur", + "value": "fur", + "description": "Frulian" + }, + { + "name": "gag", + "value": "gag", + "description": "Gagauz (Latin)" + }, + { + "name": "gl", + "value": "gl", + "description": "Galician" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "gil", + "value": "gil", + "description": "Gilbertese" + }, + { + "name": "gon", + "value": "gon", + "description": "Gondi (Devanagiri)" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "kl", + "value": "kl", + "description": "Greenlandic" + }, + { + "name": "gvr", + "value": "gvr", + "description": "Gurung (Devanagiri)" + }, + { + "name": "ht", + "value": "ht", + "description": "Haitian Creole" + }, + { + "name": "hlb", + "value": "hlb", + "description": "Halbi (Devanagiri)" + }, + { + "name": "hni", + "value": "hni", + "description": "Hani" + }, + { + "name": "bgc", + "value": "bgc", + "description": "Haryanvi" + }, + { + "name": "haw", + "value": "haw", + "description": "Hawaiian" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "mww", + "value": "mww", + "description": "Hmong Daw (Latin)" + }, + { + "name": "hoc", + "value": "hoc", + "description": "Ho (Devanagiri)" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "smn", + "value": "smn", + "description": "Inari Sami" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "ia", + "value": "ia", + "description": "Interlingua" + }, + { + "name": "iu", + "value": "iu", + "description": "Inuktitut (Latin)" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "Jns", + "value": "Jns", + "description": "Jaunsari (Devanagiri)" + }, + { + "name": "jv", + "value": "jv", + "description": "Javanese" + }, + { + "name": "kea", + "value": "kea", + "description": "Kabuverdianu" + }, + { + "name": "kac", + "value": "kac", + "description": "Kachin (Latin)" + }, + { + "name": "xnr", + "value": "xnr", + "description": "Kangri (Devanagiri)" + }, + { + "name": "krc", + "value": "krc", + "description": "Karachay-Balkar" + }, + { + "name": "kaa-cyrl", + "value": "kaa-cyrl", + "description": "Kara-Kalpak (Cyrillic)" + }, + { + "name": "kaa", + "value": "kaa", + "description": "Kara-Kalpak (Latin)" + }, + { + "name": "csb", + "value": "csb", + "description": "Kashubian" + }, + { + "name": "kk-cyrl", + "value": "kk-cyrl", + "description": "Kazakh (Cyrillic)" + }, + { + "name": "kk-latn", + "value": "kk-latn", + "description": "Kazakh (Latin)" + }, + { + "name": "klr", + "value": "klr", + "description": "Khaling" + }, + { + "name": "kha", + "value": "kha", + "description": "Khasi" + }, + { + "name": "quc", + "value": "quc", + "description": "K'iche'" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "kfq", + "value": "kfq", + "description": "Korku" + }, + { + "name": "kpy", + "value": "kpy", + "description": "Koryak" + }, + { + "name": "kos", + "value": "kos", + "description": "Kosraean" + }, + { + "name": "kum", + "value": "kum", + "description": "Kumyk (Cyrillic)" + }, + { + "name": "ku-arab", + "value": "ku-arab", + "description": "Kurdish (Arabic)" + }, + { + "name": "ku-latn", + "value": "ku-latn", + "description": "Kurdish (Latin)" + }, + { + "name": "kru", + "value": "kru", + "description": "Kurukh (Devanagiri)" + }, + { + "name": "ky", + "value": "ky", + "description": "Kyrgyz (Cyrillic)" + }, + { + "name": "lkt", + "value": "lkt", + "description": "Lakota" + }, + { + "name": "la", + "value": "la", + "description": "Latin" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "dsb", + "value": "dsb", + "description": "Lower Sorbian" + }, + { + "name": "smj", + "value": "smj", + "description": "Lule Sami" + }, + { + "name": "lb", + "value": "lb", + "description": "Luxembourgish" + }, + { + "name": "bfz", + "value": "bfz", + "description": "Mahasu Pahari (Devanagiri)" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay (Latin)" + }, + { + "name": "mt", + "value": "mt", + "description": "Maltese" + }, + { + "name": "kmj", + "value": "kmj", + "description": "Malto (Devanagiri)" + }, + { + "name": "gv", + "value": "gv", + "description": "Manx" + }, + { + "name": "mi", + "value": "mi", + "description": "Maori" + }, + { + "name": "mr", + "value": "mr", + "description": "Marathi" + }, + { + "name": "mn", + "value": "mn", + "description": "Mongolian (Cyrillic)" + }, + { + "name": "cnr-cyrl", + "value": "cnr-cyrl", + "description": "Montenegrin (Cyrillic)" + }, + { + "name": "cnr-latn", + "value": "cnr-latn", + "description": "Montenegrin (Latin)" + }, + { + "name": "nap", + "value": "nap", + "description": "Neapolitan" + }, + { + "name": "ne", + "value": "ne", + "description": "Nepali" + }, + { + "name": "niu", + "value": "niu", + "description": "Niuean" + }, + { + "name": "nog", + "value": "nog", + "description": "Nogay" + }, + { + "name": "sme", + "value": "sme", + "description": "Northern Sami (Latin)" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian" + }, + { + "name": "oc", + "value": "oc", + "description": "Occitan" + }, + { + "name": "os", + "value": "os", + "description": "Ossetic" + }, + { + "name": "ps", + "value": "ps", + "description": "Pashto" + }, + { + "name": "fa", + "value": "fa", + "description": "Persian" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + }, + { + "name": "pa", + "value": "pa", + "description": "Punjabi (Arabic)" + }, + { + "name": "ksh", + "value": "ksh", + "description": "Ripuarian" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "rm", + "value": "rm", + "description": "Romansh" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sck", + "value": "sck", + "description": "Sadri (Devanagiri)" + }, + { + "name": "sm", + "value": "sm", + "description": "Samoan (Latin)" + }, + { + "name": "sa", + "value": "sa", + "description": "Sanskrit (Devanagiri)" + }, + { + "name": "sat", + "value": "sat", + "description": "Santali (Devanagiri)" + }, + { + "name": "sco", + "value": "sco", + "description": "Scots" + }, + { + "name": "gd", + "value": "gd", + "description": "Scottish Gaelic" + }, + { + "name": "sr", + "value": "sr", + "description": "Serbian (Latin)" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "name": "xsr", + "value": "xsr", + "description": "Sherpa (Devanagiri)" + }, + { + "name": "srx", + "value": "srx", + "description": "Sirmauri (Devanagiri)" + }, + { + "name": "sms", + "value": "sms", + "description": "Skolt Sami" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "so", + "value": "so", + "description": "Somali (Arabic)" + }, + { + "name": "sma", + "value": "sma", + "description": "Southern Sami" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sw", + "value": "sw", + "description": "Swahili (Latin)" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tg", + "value": "tg", + "description": "Tajik (Cyrillic)" + }, + { + "name": "tt", + "value": "tt", + "description": "Tatar (Latin)" + }, + { + "name": "tet", + "value": "tet", + "description": "Tetum" + }, + { + "name": "thf", + "value": "thf", + "description": "Thangmi" + }, + { + "name": "to", + "value": "to", + "description": "Tongan" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "tk", + "value": "tk", + "description": "Turkmen (Latin)" + }, + { + "name": "tyv", + "value": "tyv", + "description": "Tuvan" + }, + { + "name": "hsb", + "value": "hsb", + "description": "Upper Sorbian" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "ug", + "value": "ug", + "description": "Uyghur (Arabic)" + }, + { + "name": "uz-arab", + "value": "uz-arab", + "description": "Uzbek (Arabic)" + }, + { + "name": "uz-cyrl", + "value": "uz-cyrl", + "description": "Uzbek (Cyrillic)" + }, + { + "name": "uz", + "value": "uz", + "description": "Uzbek (Latin)" + }, + { + "name": "vo", + "value": "vo", + "description": "Volapük" + }, + { + "name": "wae", + "value": "wae", + "description": "Walser" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "fy", + "value": "fy", + "description": "Western Frisian" + }, + { + "name": "yua", + "value": "yua", + "description": "Yucatec Maya" + }, + { + "name": "za", + "value": "za", + "description": "Zhuang" + }, + { + "name": "zu", + "value": "zu", + "description": "Zulu" + }, + { + "name": "unk", + "value": "unk", + "description": "Unknown (All)" + } + ] + } + }, + "OutputFieldMappingEntry": { + "type": "object", + "description": "Output field mapping for a skill.", + "properties": { + "name": { + "type": "string", + "description": "The name of the output defined by the skill." + }, + "targetName": { + "type": "string", + "description": "The target name of the output. It is optional and default to name." + } + }, + "required": [ + "name" + ] + }, + "PIIDetectionSkill": { + "type": "object", + "description": "Using the Text Analytics API, extracts personal information from an input text\nand gives you the option of masking it.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "maskingMode": { + "$ref": "#/definitions/PIIDetectionSkillMaskingMode", + "description": "A parameter that provides various ways to mask the personal information\ndetected in the input text. Default is 'none'." + }, + "maskingCharacter": { + "type": "string", + "description": "The character used to mask the text if the maskingMode parameter is set to\nreplace. Default is '*'.", + "maxLength": 1, + "x-ms-client-name": "mask" + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "piiCategories": { + "type": "array", + "description": "A list of PII entity categories that should be extracted and masked.", + "items": { + "type": "string" + } + }, + "domain": { + "type": "string", + "description": "If specified, will set the PII domain to include only a subset of the entity\ncategories. Possible values include: 'phi', 'none'. Default is 'none'." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.PIIDetectionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.PIIDetectionSkill" + }, + "PIIDetectionSkillMaskingMode": { + "type": "string", + "description": "A string indicating what maskingMode to use to mask the personal information\ndetected in the input text.", + "enum": [ + "none", + "replace" + ], + "x-ms-enum": { + "name": "PIIDetectionSkillMaskingMode", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "No masking occurs and the maskedText output will not be returned." + }, + { + "name": "Replace", + "value": "replace", + "description": "Replaces the detected entities with the character given in the maskingCharacter\nparameter. The character will be repeated to the length of the detected entity\nso that the offsets will correctly correspond to both the input text as well as\nthe output maskedText." + } + ] + } + }, + "PathHierarchyTokenizerV2": { + "type": "object", + "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache\nLucene.", + "properties": { + "delimiter": { + "type": "string", + "description": "The delimiter character to use. Default is \"/\".", + "default": "/" + }, + "replacement": { + "type": "string", + "description": "A value that, if set, replaces the delimiter character. Default is \"/\".", + "default": "/" + }, + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default and maximum is 300.", + "default": 300, + "maximum": 300 + }, + "reverse": { + "type": "boolean", + "description": "A value indicating whether to generate tokens in reverse order. Default is\nfalse.", + "x-ms-client-name": "reverseTokenOrder" + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of initial tokens to skip. Default is 0.", + "x-ms-client-name": "numberOfTokensToSkip" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" + }, + "PatternAnalyzer": { + "type": "object", + "description": "Flexibly separates text into terms via a regular expression pattern. This\nanalyzer is implemented using Apache Lucene.", + "properties": { + "lowercase": { + "type": "boolean", + "description": "A value indicating whether terms should be lower-cased. Default is true.", + "default": true, + "x-ms-client-name": "lowerCaseTerms" + }, + "pattern": { + "type": "string", + "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", + "default": "\\W+" + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer" + }, + "PatternCaptureTokenFilter": { + "type": "object", + "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one\nor more patterns. This token filter is implemented using Apache Lucene.", + "properties": { + "patterns": { + "type": "array", + "description": "A list of patterns to match against each token.", + "items": { + "type": "string" + } + }, + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether to return the original token even if one of the\npatterns matches. Default is true.", + "default": true + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.PatternCaptureTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "patterns", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter" + }, + "PatternReplaceCharFilter": { + "type": "object", + "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This character filter is implemented using\nApache Lucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of char filter.", + "enum": [ + "#Microsoft.Azure.Search.PatternReplaceCharFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "pattern", + "replacement", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter" + }, + "PatternReplaceTokenFilter": { + "type": "object", + "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This token filter is implemented using Apache\nLucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.PatternReplaceTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "pattern", + "replacement", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter" + }, + "PatternTokenizer": { + "type": "object", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This\ntokenizer is implemented using Apache Lucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", + "default": "\\W+" + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "group": { + "type": "integer", + "format": "int32", + "description": "The zero-based ordinal of the matching group in the regular expression pattern\nto extract into tokens. Use -1 if you want to use the entire pattern to split\nthe input into tokens, irrespective of matching groups. Default is -1.", + "default": -1 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.PatternTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer" + }, + "PhoneticEncoder": { + "type": "string", + "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter.", + "enum": [ + "metaphone", + "doubleMetaphone", + "soundex", + "refinedSoundex", + "caverphone1", + "caverphone2", + "cologne", + "nysiis", + "koelnerPhonetik", + "haasePhonetik", + "beiderMorse" + ], + "x-ms-enum": { + "name": "PhoneticEncoder", + "modelAsString": true, + "values": [ + { + "name": "Metaphone", + "value": "metaphone", + "description": "Encodes a token into a Metaphone value." + }, + { + "name": "DoubleMetaphone", + "value": "doubleMetaphone", + "description": "Encodes a token into a double metaphone value." + }, + { + "name": "Soundex", + "value": "soundex", + "description": "Encodes a token into a Soundex value." + }, + { + "name": "RefinedSoundex", + "value": "refinedSoundex", + "description": "Encodes a token into a Refined Soundex value." + }, + { + "name": "Caverphone1", + "value": "caverphone1", + "description": "Encodes a token into a Caverphone 1.0 value." + }, + { + "name": "Caverphone2", + "value": "caverphone2", + "description": "Encodes a token into a Caverphone 2.0 value." + }, + { + "name": "Cologne", + "value": "cologne", + "description": "Encodes a token into a Cologne Phonetic value." + }, + { + "name": "Nysiis", + "value": "nysiis", + "description": "Encodes a token into a NYSIIS value." + }, + { + "name": "KoelnerPhonetik", + "value": "koelnerPhonetik", + "description": "Encodes a token using the Kölner Phonetik algorithm." + }, + { + "name": "HaasePhonetik", + "value": "haasePhonetik", + "description": "Encodes a token using the Haase refinement of the Kölner Phonetik algorithm." + }, + { + "name": "BeiderMorse", + "value": "beiderMorse", + "description": "Encodes a token into a Beider-Morse value." + } + ] + } + }, + "PhoneticTokenFilter": { + "type": "object", + "description": "Create tokens for phonetic matches. This token filter is implemented using\nApache Lucene.", + "properties": { + "encoder": { + "$ref": "#/definitions/PhoneticEncoder", + "description": "The phonetic encoder to use. Default is \"metaphone\"." + }, + "replace": { + "type": "boolean", + "description": "A value indicating whether encoded tokens should replace original tokens. If\nfalse, encoded tokens are added as synonyms. Default is true.", + "default": true, + "x-ms-client-name": "replaceOriginalTokens" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.PhoneticTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter" + }, + "QueryAnswerResult": { + "type": "object", + "description": "An answer is a text passage extracted from the contents of the most relevant\ndocuments that matched the query. Answers are extracted from the top search\nresults. Answer candidates are scored and the top answers are selected.", + "properties": { + "score": { + "type": "number", + "format": "double", + "description": "The score value represents how relevant the answer is to the query relative to\nother answers returned for the query.", + "readOnly": true + }, + "key": { + "type": "string", + "description": "The key of the document the answer was extracted from.", + "readOnly": true + }, + "text": { + "type": "string", + "description": "The text passage extracted from the document contents as the answer.", + "readOnly": true + }, + "highlights": { + "type": "string", + "description": "Same text passage as in the Text property with highlighted text phrases most\nrelevant to the query.", + "readOnly": true + } + }, + "additionalProperties": {} + }, + "QueryAnswerType": { + "type": "string", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryAnswerType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return answers for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." + } + ] + } + }, + "QueryCaptionResult": { + "type": "object", + "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type `semantic`.", + "properties": { + "text": { + "type": "string", + "description": "A representative text passage extracted from the document most relevant to the\nsearch query.", + "readOnly": true + }, + "highlights": { + "type": "string", + "description": "Same text passage as in the Text property with highlighted phrases most\nrelevant to the query.", + "readOnly": true + } + }, + "additionalProperties": {} + }, + "QueryCaptionType": { + "type": "string", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryCaptionType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return captions for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." + } + ] + } + }, + "QueryType": { + "type": "string", + "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full'\nif your query uses the Lucene query syntax.", + "enum": [ + "simple", + "full", + "semantic" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": true, + "values": [ + { + "name": "Simple", + "value": "simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." + }, + { + "name": "Full", + "value": "full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." + }, + { + "name": "Semantic", + "value": "semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." + } + ] + } + }, + "RegexFlags": { + "type": "string", + "description": "Defines flags that can be combined to control how regular expressions are used\nin the pattern analyzer and pattern tokenizer.", + "enum": [ + "CANON_EQ", + "CASE_INSENSITIVE", + "COMMENTS", + "DOTALL", + "LITERAL", + "MULTILINE", + "UNICODE_CASE", + "UNIX_LINES" + ], + "x-ms-enum": { + "name": "RegexFlags", + "modelAsString": true, + "values": [ + { + "name": "CanonEq", + "value": "CANON_EQ", + "description": "Enables canonical equivalence." + }, + { + "name": "CaseInsensitive", + "value": "CASE_INSENSITIVE", + "description": "Enables case-insensitive matching." + }, + { + "name": "Comments", + "value": "COMMENTS", + "description": "Permits whitespace and comments in the pattern." + }, + { + "name": "DotAll", + "value": "DOTALL", + "description": "Enables dotall mode." + }, + { + "name": "Literal", + "value": "LITERAL", + "description": "Enables literal parsing of the pattern." + }, + { + "name": "Multiline", + "value": "MULTILINE", + "description": "Enables multiline mode." + }, + { + "name": "UnicodeCase", + "value": "UNICODE_CASE", + "description": "Enables Unicode-aware case folding." + }, + { + "name": "UnixLines", + "value": "UNIX_LINES", + "description": "Enables Unix lines mode." + } + ] + } + }, + "ResourceCounter": { + "type": "object", + "description": "Represents a resource's usage and quota.", + "properties": { + "usage": { + "type": "integer", + "format": "int64", + "description": "The resource usage amount." + }, + "quota": { + "type": "integer", + "format": "int64", + "description": "The resource amount quota." + } + }, + "required": [ + "usage" + ] + }, + "ScalarQuantizationCompression": { + "type": "object", + "description": "Contains configuration options specific to the scalar quantization compression\nmethod used during indexing and querying.", + "properties": { + "scalarQuantizationParameters": { + "$ref": "#/definitions/ScalarQuantizationParameters", + "description": "Contains the parameters specific to Scalar Quantization.", + "x-ms-client-name": "parameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchCompression" + } + ], + "x-ms-discriminator-value": "scalarQuantization" + }, + "ScalarQuantizationParameters": { + "type": "object", + "description": "Contains the parameters specific to Scalar Quantization.", + "properties": { + "quantizedDataType": { + "$ref": "#/definitions/VectorSearchCompressionTarget", + "description": "The quantized data type of compressed vector values." + } + } + }, + "ScoringFunction": { + "type": "object", + "description": "Base type for functions that can modify document scores during ranking.", + "properties": { + "type": { + "type": "string", + "description": "Discriminator property for ScoringFunction." + }, + "fieldName": { + "type": "string", + "description": "The name of the field used as input to the scoring function." + }, + "boost": { + "type": "number", + "format": "double", + "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." + }, + "interpolation": { + "$ref": "#/definitions/ScoringFunctionInterpolation", + "description": "A value indicating how boosting will be interpolated across document scores;\ndefaults to \"Linear\"." + }, + "kind": { + "type": "string", + "description": "Type of ScoringFunction." + } + }, + "discriminator": "type", + "required": [ + "type", + "fieldName", + "boost", + "kind" + ] + }, + "ScoringFunctionAggregation": { + "type": "string", + "description": "Defines the aggregation function used to combine the results of all the scoring\nfunctions in a scoring profile.", + "enum": [ + "sum", + "average", + "minimum", + "maximum", + "firstMatching" + ], + "x-ms-enum": { + "name": "ScoringFunctionAggregation", + "modelAsString": true, + "values": [ + { + "name": "Sum", + "value": "sum", + "description": "Boost scores by the sum of all scoring function results." + }, + { + "name": "Average", + "value": "average", + "description": "Boost scores by the average of all scoring function results." + }, + { + "name": "Minimum", + "value": "minimum", + "description": "Boost scores by the minimum of all scoring function results." + }, + { + "name": "Maximum", + "value": "maximum", + "description": "Boost scores by the maximum of all scoring function results." + }, + { + "name": "FirstMatching", + "value": "firstMatching", + "description": "Boost scores using the first applicable scoring function in the scoring profile." + } + ] + } + }, + "ScoringFunctionInterpolation": { + "type": "string", + "description": "Defines the function used to interpolate score boosting across a range of\ndocuments.", + "enum": [ + "linear", + "constant", + "quadratic", + "logarithmic" + ], + "x-ms-enum": { + "name": "ScoringFunctionInterpolation", + "modelAsString": true, + "values": [ + { + "name": "Linear", + "value": "linear", + "description": "Boosts scores by a linearly decreasing amount. This is the default\ninterpolation for scoring functions." + }, + { + "name": "Constant", + "value": "constant", + "description": "Boosts scores by a constant factor." + }, + { + "name": "Quadratic", + "value": "quadratic", + "description": "Boosts scores by an amount that decreases quadratically. Boosts decrease slowly\nfor higher scores, and more quickly as the scores decrease. This interpolation\noption is not allowed in tag scoring functions." + }, + { + "name": "Logarithmic", + "value": "logarithmic", + "description": "Boosts scores by an amount that decreases logarithmically. Boosts decrease\nquickly for higher scores, and more slowly as the scores decrease. This\ninterpolation option is not allowed in tag scoring functions." + } + ] + } + }, + "ScoringProfile": { + "type": "object", + "description": "Defines parameters for a search index that influence scoring in search queries.", + "properties": { + "name": { + "type": "string", + "description": "The name of the scoring profile." + }, + "text": { + "$ref": "#/definitions/TextWeights", + "description": "Parameters that boost scoring based on text matches in certain index fields.", + "x-ms-client-name": "textWeights" + }, + "functions": { + "type": "array", + "description": "The collection of functions that influence the scoring of documents.", + "items": { + "$ref": "#/definitions/ScoringFunction" + }, + "x-ms-identifiers": [] + }, + "functionAggregation": { + "$ref": "#/definitions/ScoringFunctionAggregation", + "description": "A value indicating how the results of individual scoring functions should be\ncombined. Defaults to \"Sum\". Ignored if there are no scoring functions." + } + }, + "required": [ + "name" + ] + }, + "ScoringStatistics": { + "type": "string", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries.", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": true, + "values": [ + { + "name": "Local", + "value": "local", + "description": "The scoring statistics will be calculated locally for lower latency." + }, + { + "name": "Global", + "value": "global", + "description": "The scoring statistics will be calculated globally for more consistent scoring." + } + ] + } + }, + "SearchDocumentsResult": { + "type": "object", + "description": "Response containing search results from an index.", + "properties": { + "@odata.count": { + "type": "integer", + "format": "int64", + "description": "The total count of results found by the search operation, or null if the count\nwas not requested. If present, the count may be greater than the number of\nresults in this response. This can happen if you use the $top or $skip\nparameters, or if the query can't return all the requested documents in a\nsingle response.", + "readOnly": true, + "x-ms-client-name": "count" + }, + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not specified in the request.", + "readOnly": true, + "x-ms-client-name": "coverage" + }, + "@search.facets": { + "type": "object", + "description": "The facet query results for the search operation, organized as a collection of\nbuckets for each faceted field; null if the query did not include any facet\nexpressions.", + "additionalProperties": { + "items": { + "$ref": "#/definitions/FacetResult" + }, + "type": "array", + "x-ms-identifiers": [] + }, + "readOnly": true, + "x-ms-client-name": "facets" + }, + "@search.answers": { + "type": "array", + "description": "The answers query results for the search operation; null if the answers query\nparameter was not specified or set to 'none'.", + "items": { + "$ref": "#/definitions/QueryAnswerResult" + }, + "readOnly": true, + "x-ms-client-name": "answers", + "x-ms-identifiers": [] + }, + "@search.nextPageParameters": { + "$ref": "#/definitions/SearchRequest", + "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with\n@odata.nextLink to formulate another POST Search request to get the next part\nof the search response.", + "readOnly": true, + "x-ms-client-name": "nextPageParameters" + }, + "value": { + "type": "array", + "description": "The sequence of results returned by the query.", + "items": { + "$ref": "#/definitions/SearchResult" + }, + "readOnly": true, + "x-ms-client-name": "results", + "x-ms-identifiers": [] + }, + "@odata.nextLink": { + "type": "string", + "description": "Continuation URL returned when the query can't return all the requested results\nin a single response. You can use this URL to formulate another GET or POST\nSearch request to get the next part of the search response. Make sure to use\nthe same verb (GET or POST) as the request that produced this response.", + "readOnly": true, + "x-ms-client-name": "nextLink" + }, + "@search.semanticPartialResponseReason": { + "$ref": "#/definitions/SemanticErrorReason", + "description": "Reason that a partial response was returned for a semantic ranking request.", + "readOnly": true, + "x-ms-client-name": "semanticPartialResponseReason" + }, + "@search.semanticPartialResponseType": { + "$ref": "#/definitions/SemanticSearchResultsType", + "description": "Type of partial response that was returned for a semantic ranking request.", + "readOnly": true, + "x-ms-client-name": "semanticPartialResponseType" + } + }, + "required": [ + "value" + ] + }, + "SearchField": { + "type": "object", + "description": "Represents a field in an index definition, which describes the name, data type,\nand search behavior of a field.", + "properties": { + "name": { + "type": "string", + "description": "The name of the field, which must be unique within the fields collection of the\nindex or parent field." + }, + "type": { + "$ref": "#/definitions/SearchFieldDataType", + "description": "The data type of the field." + }, + "key": { + "type": "boolean", + "description": "A value indicating whether the field uniquely identifies documents in the\nindex. Exactly one top-level field in each index must be chosen as the key\nfield and it must be of type Edm.String. Key fields can be used to look up\ndocuments directly and update or delete specific documents. Default is false\nfor simple fields and null for complex fields." + }, + "retrievable": { + "type": "boolean", + "description": "A value indicating whether the field can be returned in a search result. You\ncan disable this option if you want to use a field (for example, margin) as a\nfilter, sorting, or scoring mechanism but do not want the field to be visible\nto the end user. This property must be true for key fields, and it must be null\nfor complex fields. This property can be changed on existing fields. Enabling\nthis property does not cause any increase in index storage requirements.\nDefault is true for simple fields, false for vector fields, and null for\ncomplex fields." + }, + "stored": { + "type": "boolean", + "description": "An immutable value indicating whether the field will be persisted separately on\ndisk to be returned in a search result. You can disable this option if you\ndon't plan to return the field contents in a search response to save on storage\noverhead. This can only be set during index creation and only for vector\nfields. This property cannot be changed for existing fields or set as false for\nnew fields. If this property is set as false, the property 'retrievable' must\nalso be set to false. This property must be true or unset for key fields, for\nnew fields, and for non-vector fields, and it must be null for complex fields.\nDisabling this property will reduce index storage requirements. The default is\ntrue for vector fields." + }, + "searchable": { + "type": "boolean", + "description": "A value indicating whether the field is full-text searchable. This means it\nwill undergo analysis such as word-breaking during indexing. If you set a\nsearchable field to a value like \"sunny day\", internally it will be split into\nthe individual tokens \"sunny\" and \"day\". This enables full-text searches for\nthese terms. Fields of type Edm.String or Collection(Edm.String) are searchable\nby default. This property must be false for simple fields of other non-string\ndata types, and it must be null for complex fields. Note: searchable fields\nconsume extra space in your index to accommodate additional tokenized versions\nof the field value for full-text searches. If you want to save space in your\nindex and you don't need a field to be included in searches, set searchable to\nfalse." + }, + "filterable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $filter\nqueries. filterable differs from searchable in how strings are handled. Fields\nof type Edm.String or Collection(Edm.String) that are filterable do not undergo\nword-breaking, so comparisons are for exact matches only. For example, if you\nset such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches,\nbut $filter=f eq 'sunny day' will. This property must be null for complex\nfields. Default is true for simple fields and null for complex fields." + }, + "sortable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $orderby\nexpressions. By default, the search engine sorts results by score, but in many\nexperiences users will want to sort by fields in the documents. A simple field\ncan be sortable only if it is single-valued (it has a single value in the scope\nof the parent document). Simple collection fields cannot be sortable, since\nthey are multi-valued. Simple sub-fields of complex collections are also\nmulti-valued, and therefore cannot be sortable. This is true whether it's an\nimmediate parent field, or an ancestor field, that's the complex collection.\nComplex fields cannot be sortable and the sortable property must be null for\nsuch fields. The default for sortable is true for single-valued simple fields,\nfalse for multi-valued simple fields, and null for complex fields." + }, + "facetable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in facet\nqueries. Typically used in a presentation of search results that includes hit\ncount by category (for example, search for digital cameras and see hits by\nbrand, by megapixels, by price, and so on). This property must be null for\ncomplex fields. Fields of type Edm.GeographyPoint or\nCollection(Edm.GeographyPoint) cannot be facetable. Default is true for all\nother simple fields." + }, + "analyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer to use for the field. This option can be used only\nwith searchable fields and it can't be set together with either searchAnalyzer\nor indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the\nfield. Must be null for complex fields." + }, + "searchAnalyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at search time for the field. This option can be\nused only with searchable fields. It must be set together with indexAnalyzer\nand it cannot be set together with the analyzer option. This property cannot be\nset to the name of a language analyzer; use the analyzer property instead if\nyou need a language analyzer. This analyzer can be updated on an existing\nfield. Must be null for complex fields." + }, + "indexAnalyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at indexing time for the field. This option can\nbe used only with searchable fields. It must be set together with\nsearchAnalyzer and it cannot be set together with the analyzer option. This\nproperty cannot be set to the name of a language analyzer; use the analyzer\nproperty instead if you need a language analyzer. Once the analyzer is chosen,\nit cannot be changed for the field. Must be null for complex fields." + }, + "dimensions": { + "type": "integer", + "format": "int32", + "description": "The dimensionality of the vector field.", + "minimum": 2, + "maximum": 2048, + "x-ms-client-name": "vectorSearchDimensions" + }, + "vectorSearchProfile": { + "type": "string", + "description": "The name of the vector search profile that specifies the algorithm and\nvectorizer to use when searching the vector field.", + "x-ms-client-name": "vectorSearchProfileName" + }, + "vectorEncoding": { + "$ref": "#/definitions/VectorEncodingFormat", + "description": "The encoding format to interpret the field contents.", + "x-ms-client-name": "vectorEncodingFormat" + }, + "synonymMaps": { + "type": "array", + "description": "A list of the names of synonym maps to associate with this field. This option\ncan be used only with searchable fields. Currently only one synonym map per\nfield is supported. Assigning a synonym map to a field ensures that query terms\ntargeting that field are expanded at query-time using the rules in the synonym\nmap. This attribute can be changed on existing fields. Must be null or an empty\ncollection for complex fields.", + "items": { + "type": "string" + } + }, + "fields": { + "type": "array", + "description": "A list of sub-fields if this is a field of type Edm.ComplexType or\nCollection(Edm.ComplexType). Must be null or empty for simple fields.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name", + "type" + ] + }, + "SearchFieldDataType": { + "type": "string", + "description": "Defines the data type of a field in a search index.", + "enum": [ + "Edm.String", + "Edm.Int32", + "Edm.Int64", + "Edm.Double", + "Edm.Boolean", + "Edm.DateTimeOffset", + "Edm.GeographyPoint", + "Edm.ComplexType", + "Edm.Single", + "Edm.Half", + "Edm.Int16", + "Edm.SByte", + "Edm.Byte" + ], + "x-ms-enum": { + "name": "SearchFieldDataType", + "modelAsString": true, + "values": [ + { + "name": "String", + "value": "Edm.String", + "description": "Indicates that a field contains a string." + }, + { + "name": "Int32", + "value": "Edm.Int32", + "description": "Indicates that a field contains a 32-bit signed integer." + }, + { + "name": "Int64", + "value": "Edm.Int64", + "description": "Indicates that a field contains a 64-bit signed integer." + }, + { + "name": "Double", + "value": "Edm.Double", + "description": "Indicates that a field contains an IEEE double-precision floating point number." + }, + { + "name": "Boolean", + "value": "Edm.Boolean", + "description": "Indicates that a field contains a Boolean value (true or false)." + }, + { + "name": "DateTimeOffset", + "value": "Edm.DateTimeOffset", + "description": "Indicates that a field contains a date/time value, including timezone\ninformation." + }, + { + "name": "GeographyPoint", + "value": "Edm.GeographyPoint", + "description": "Indicates that a field contains a geo-location in terms of longitude and\nlatitude." + }, + { + "name": "Complex", + "value": "Edm.ComplexType", + "description": "Indicates that a field contains one or more complex objects that in turn have\nsub-fields of other types." + }, + { + "name": "Single", + "value": "Edm.Single", + "description": "Indicates that a field contains a single-precision floating point number. This\nis only valid when used with Collection(Edm.Single)." + }, + { + "name": "Half", + "value": "Edm.Half", + "description": "Indicates that a field contains a half-precision floating point number. This is\nonly valid when used with Collection(Edm.Half)." + }, + { + "name": "Int16", + "value": "Edm.Int16", + "description": "Indicates that a field contains a 16-bit signed integer. This is only valid\nwhen used with Collection(Edm.Int16)." + }, + { + "name": "SByte", + "value": "Edm.SByte", + "description": "Indicates that a field contains a 8-bit signed integer. This is only valid when\nused with Collection(Edm.SByte)." + }, + { + "name": "Byte", + "value": "Edm.Byte", + "description": "Indicates that a field contains a 8-bit unsigned integer. This is only valid\nwhen used with Collection(Edm.Byte)." + } + ] + } + }, + "SearchIndex": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "x-ms-client-name": "semanticSearch" + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "name", + "fields" + ] + }, + "SearchIndexCreate": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "x-ms-client-name": "semanticSearch" + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "fields" + ] + }, + "SearchIndexCreateOrUpdate": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "x-ms-client-name": "semanticSearch" + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "fields" + ] + }, + "SearchIndexItem": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "x-ms-client-name": "semanticSearch" + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "fields" + ] + }, + "SearchIndexer": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false.", + "x-ms-client-name": "isDisabled" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerCreate": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false.", + "x-ms-client-name": "isDisabled" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerCreateOrUpdate": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false.", + "x-ms-client-name": "isDisabled" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerDataContainer": { + "type": "object", + "description": "Represents information about the entity (such as Azure SQL table or CosmosDB\ncollection) that will be indexed.", + "properties": { + "name": { + "type": "string", + "description": "The name of the table or view (for Azure SQL data source) or collection (for\nCosmosDB data source) that will be indexed." + }, + "query": { + "type": "string", + "description": "A query that is applied to this data container. The syntax and meaning of this\nparameter is datasource-specific. Not supported by Azure SQL datasources." + } + }, + "required": [ + "name" + ] + }, + "SearchIndexerDataIdentity": { + "type": "object", + "description": "Abstract base type for data identities.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "SearchIndexerDataNoneIdentity": { + "type": "object", + "description": "Clears the identity property of a datasource.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of identity.", + "enum": [ + "#Microsoft.Azure.Search.DataNoneIdentity" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerDataIdentity" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataNoneIdentity" + }, + "SearchIndexerDataSource": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceCreate": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceCreateOrUpdate": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceItem": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceType": { + "type": "string", + "description": "Defines the type of a datasource.", + "enum": [ + "azuresql", + "cosmosdb", + "azureblob", + "azuretable", + "mysql", + "adlsgen2" + ], + "x-ms-enum": { + "name": "SearchIndexerDataSourceType", + "modelAsString": true, + "values": [ + { + "name": "AzureSql", + "value": "azuresql", + "description": "Indicates an Azure SQL datasource." + }, + { + "name": "CosmosDb", + "value": "cosmosdb", + "description": "Indicates a CosmosDB datasource." + }, + { + "name": "AzureBlob", + "value": "azureblob", + "description": "Indicates an Azure Blob datasource." + }, + { + "name": "AzureTable", + "value": "azuretable", + "description": "Indicates an Azure Table datasource." + }, + { + "name": "MySql", + "value": "mysql", + "description": "Indicates a MySql datasource." + }, + { + "name": "AdlsGen2", + "value": "adlsgen2", + "description": "Indicates an ADLS Gen2 datasource." + } + ] + } + }, + "SearchIndexerDataUserAssignedIdentity": { + "type": "object", + "description": "Specifies the identity for a datasource to use.", + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The fully qualified Azure resource Id of a user assigned managed identity\ntypically in the form\n\"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\"\nthat should have been assigned to the search service.", + "x-ms-client-name": "resourceId" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of identity.", + "enum": [ + "#Microsoft.Azure.Search.DataUserAssignedIdentity" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "userAssignedIdentity", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerDataIdentity" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataUserAssignedIdentity" + }, + "SearchIndexerError": { + "type": "object", + "description": "Represents an item- or document-level indexing error.", + "properties": { + "key": { + "type": "string", + "description": "The key of the item for which indexing failed.", + "readOnly": true + }, + "errorMessage": { + "type": "string", + "description": "The message describing the error that occurred while processing the item.", + "readOnly": true + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code indicating why the indexing operation failed. Possible values\ninclude: 400 for a malformed input document, 404 for document not found, 409\nfor a version conflict, 422 when the index is temporarily unavailable, or 503\nfor when the service is too busy.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the source at which the error originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable.", + "readOnly": true + }, + "details": { + "type": "string", + "description": "Additional, verbose details about the error to assist in debugging the indexer.\nThis may not be always available.", + "readOnly": true + }, + "documentationLink": { + "type": "string", + "description": "A link to a troubleshooting guide for these classes of errors. This may not be\nalways available.", + "readOnly": true + } + }, + "required": [ + "errorMessage", + "statusCode" + ] + }, + "SearchIndexerIndexProjection": { + "type": "object", + "description": "Definition of additional projections to secondary search indexes.", + "properties": { + "selectors": { + "type": "array", + "description": "A list of projections to be performed to secondary search indexes.", + "items": { + "$ref": "#/definitions/SearchIndexerIndexProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "parameters": { + "$ref": "#/definitions/SearchIndexerIndexProjectionsParameters", + "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type." + } + }, + "required": [ + "selectors" + ] + }, + "SearchIndexerIndexProjectionSelector": { + "type": "object", + "description": "Description for what data to store in the designated search index.", + "properties": { + "targetIndexName": { + "type": "string", + "description": "Name of the search index to project to. Must have a key field with the\n'keyword' analyzer set." + }, + "parentKeyFieldName": { + "type": "string", + "description": "Name of the field in the search index to map the parent document's key value\nto. Must be a string field that is filterable and not the key field." + }, + "sourceContext": { + "type": "string", + "description": "Source context for the projections. Represents the cardinality at which the\ndocument will be split into multiple sub documents." + }, + "mappings": { + "type": "array", + "description": "Mappings for the projection, or which source should be mapped to which field in\nthe target index.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "targetIndexName", + "parentKeyFieldName", + "sourceContext", + "mappings" + ] + }, + "SearchIndexerIndexProjectionsParameters": { + "type": "object", + "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type.", + "properties": { + "projectionMode": { + "$ref": "#/definitions/IndexProjectionMode", + "description": "Defines behavior of the index projections in relation to the rest of the\nindexer." + } + }, + "additionalProperties": {} + }, + "SearchIndexerItem": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false.", + "x-ms-client-name": "isDisabled" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerKnowledgeStore": { + "type": "object", + "description": "Definition of additional projections to azure blob, table, or files, of\nenriched data.", + "properties": { + "storageConnectionString": { + "type": "string", + "description": "The connection string to the storage account projections will be stored in." + }, + "projections": { + "type": "array", + "description": "A list of additional projections to perform during indexing.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjection" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "storageConnectionString", + "projections" + ] + }, + "SearchIndexerKnowledgeStoreBlobProjectionSelector": { + "type": "object", + "description": "Abstract class to share properties between concrete selectors.", + "properties": { + "storageContainer": { + "type": "string", + "description": "Blob container to store projections in." + } + }, + "required": [ + "storageContainer" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreFileProjectionSelector": { + "type": "object", + "description": "Projection definition for what data to store in Azure Files.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreObjectProjectionSelector": { + "type": "object", + "description": "Projection definition for what data to store in Azure Blob.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreParameters": { + "type": "object", + "description": "A dictionary of knowledge store-specific configuration properties. Each name is\nthe name of a specific property. Each value must be of a primitive type.", + "properties": { + "synthesizeGeneratedKeyName": { + "type": "boolean", + "description": "Whether or not projections should synthesize a generated key name if one isn't\nalready present." + } + }, + "additionalProperties": {} + }, + "SearchIndexerKnowledgeStoreProjection": { + "type": "object", + "description": "Container object for various projection selectors.", + "properties": { + "tables": { + "type": "array", + "description": "Projections to Azure Table storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreTableProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "objects": { + "type": "array", + "description": "Projections to Azure Blob storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreObjectProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "files": { + "type": "array", + "description": "Projections to Azure File storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreFileProjectionSelector" + }, + "x-ms-identifiers": [] + } + } + }, + "SearchIndexerKnowledgeStoreProjectionSelector": { + "type": "object", + "description": "Abstract class to share properties between concrete selectors.", + "properties": { + "referenceKeyName": { + "type": "string", + "description": "Name of reference key to different projection." + }, + "generatedKeyName": { + "type": "string", + "description": "Name of generated key to store projection under." + }, + "source": { + "type": "string", + "description": "Source data to project." + }, + "sourceContext": { + "type": "string", + "description": "Source context for complex projections." + }, + "inputs": { + "type": "array", + "description": "Nested inputs for complex projections.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + } + }, + "SearchIndexerKnowledgeStoreTableProjectionSelector": { + "type": "object", + "description": "Description for what data to store in Azure Tables.", + "properties": { + "tableName": { + "type": "string", + "description": "Name of the Azure table to store projected data in." + } + }, + "required": [ + "tableName" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ] + }, + "SearchIndexerLimits": { + "type": "object", + "description": "Represents the limits that can be applied to an indexer.", + "properties": { + "maxRunTime": { + "type": "string", + "format": "duration", + "description": "The maximum duration that the indexer is permitted to run for one execution.", + "readOnly": true + }, + "maxDocumentExtractionSize": { + "type": "integer", + "format": "int64", + "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing.", + "readOnly": true + }, + "maxDocumentContentCharactersToExtract": { + "type": "integer", + "format": "int64", + "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing.", + "readOnly": true + } + } + }, + "SearchIndexerSkill": { + "type": "object", + "description": "Base type for skills.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the skill which uniquely identifies it within the skillset. A skill\nwith no name defined will be given a default name of its 1-based index in the\nskills array, prefixed with the character '#'." + }, + "description": { + "type": "string", + "description": "The description of the skill which describes the inputs, outputs, and usage of\nthe skill." + }, + "context": { + "type": "string", + "description": "Represents the level at which operations take place, such as the document root\nor document content (for example, /document or /document/content). The default\nis /document." + }, + "inputs": { + "type": "array", + "description": "Inputs of the skills could be a column in the source data set, or the output of\nan upstream skill.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + }, + "outputs": { + "type": "array", + "description": "The output of a skill is either a field in a search index, or a value that can\nbe consumed as an input by another skill.", + "items": { + "$ref": "#/definitions/OutputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "inputs", + "outputs" + ] + }, + "SearchIndexerSkillset": { + "type": "object", + "description": "A list of skills.", + "properties": { + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills.", + "x-ms-client-name": "cognitiveServicesAccount" + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es).", + "x-ms-client-name": "indexProjection" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "name", + "skills" + ] + }, + "SearchIndexerSkillsetCreate": { + "type": "object", + "description": "A list of skills.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills.", + "x-ms-client-name": "cognitiveServicesAccount" + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es).", + "x-ms-client-name": "indexProjection" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "_", + "name", + "skills" + ] + }, + "SearchIndexerSkillsetCreateOrUpdate": { + "type": "object", + "description": "A list of skills.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills.", + "x-ms-client-name": "cognitiveServicesAccount" + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es).", + "x-ms-client-name": "indexProjection" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "_", + "name", + "skills" + ] + }, + "SearchIndexerSkillsetItem": { + "type": "object", + "description": "A list of skills.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills.", + "x-ms-client-name": "cognitiveServicesAccount" + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es).", + "x-ms-client-name": "indexProjection" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "_", + "name", + "skills" + ] + }, + "SearchIndexerStatus": { + "type": "object", + "description": "Represents the current status and execution history of an indexer.", + "properties": { + "status": { + "$ref": "#/definitions/IndexerStatus", + "description": "Overall indexer status.", + "readOnly": true + }, + "lastResult": { + "$ref": "#/definitions/IndexerExecutionResult", + "description": "The result of the most recent or an in-progress indexer execution.", + "readOnly": true + }, + "executionHistory": { + "type": "array", + "description": "History of the recent indexer executions, sorted in reverse chronological order.", + "items": { + "$ref": "#/definitions/IndexerExecutionResult" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "limits": { + "$ref": "#/definitions/SearchIndexerLimits", + "description": "The execution limits for the indexer.", + "readOnly": true + } + }, + "required": [ + "status", + "executionHistory", + "limits" + ] + }, + "SearchIndexerWarning": { + "type": "object", + "description": "Represents an item-level warning.", + "properties": { + "key": { + "type": "string", + "description": "The key of the item which generated a warning.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "The message describing the warning that occurred while processing the item.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the source at which the warning originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable.", + "readOnly": true + }, + "details": { + "type": "string", + "description": "Additional, verbose details about the warning to assist in debugging the\nindexer. This may not be always available.", + "readOnly": true + }, + "documentationLink": { + "type": "string", + "description": "A link to a troubleshooting guide for these classes of warnings. This may not\nbe always available.", + "readOnly": true + } + }, + "required": [ + "message" + ] + }, + "SearchMode": { + "type": "string", + "description": "Specifies whether any or all of the search terms must be matched in order to\ncount the document as a match.", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": true, + "values": [ + { + "name": "Any", + "value": "any", + "description": "Any of the search terms must be matched in order to count the document as a\nmatch." + }, + { + "name": "All", + "value": "all", + "description": "All of the search terms must be matched in order to count the document as a\nmatch." + } + ] + } + }, + "SearchRequest": { + "type": "object", + "description": "Parameters for filtering, sorting, faceting, paging, and other search query\nbehaviors.", + "properties": { + "count": { + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", + "x-ms-client-name": "includeTotalResultCount" + }, + "facets": { + "type": "array", + "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", + "items": { + "type": "string" + } + }, + "filter": { + "type": "string", + "description": "The OData $filter expression to apply to the search query." + }, + "highlight": { + "type": "string", + "description": "The comma-separated list of field names to use for hit highlights. Only\nsearchable fields can be used for hit highlighting.", + "x-ms-client-name": "highlightFields" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100." + }, + "orderby": { + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses.", + "x-ms-client-name": "orderBy" + }, + "queryType": { + "$ref": "#/definitions/QueryType", + "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax." + }, + "scoringStatistics": { + "$ref": "#/definitions/ScoringStatistics", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries." + }, + "sessionId": { + "type": "string", + "description": "A value to be used to create a sticky session, which can help getting more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character." + }, + "scoringParameters": { + "type": "array", + "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "items": { + "type": "string" + } + }, + "scoringProfile": { + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results." + }, + "search": { + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", + "x-ms-client-name": "searchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to which to scope the full-text search.\nWhen using fielded search (fieldName:searchExpression) in a full Lucene query,\nthe field names of each fielded search expression take precedence over any\nfield names listed in this parameter." + }, + "searchMode": { + "$ref": "#/definitions/SearchMode", + "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, all fields\nmarked as retrievable in the schema are included." + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use skip due to\nthis limitation, consider using orderby on a totally-ordered key and filter\nwith a range query instead." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults." + }, + "semanticConfiguration": { + "type": "string", + "description": "The name of a semantic configuration that will be used when processing\ndocuments for queries of type semantic." + }, + "semanticErrorHandling": { + "$ref": "#/definitions/SemanticErrorMode", + "description": "Allows the user to choose whether a semantic call should fail completely\n(default / current behavior), or to return partial results." + }, + "semanticMaxWaitInMilliseconds": { + "type": "integer", + "format": "int32", + "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", + "minimum": 700 + }, + "semanticQuery": { + "type": "string", + "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase." + }, + "answers": { + "$ref": "#/definitions/QueryAnswerType", + "description": "A value that specifies whether answers should be returned as part of the search\nresponse." + }, + "captions": { + "$ref": "#/definitions/QueryCaptionType", + "description": "A value that specifies whether captions should be returned as part of the\nsearch response." + }, + "vectorQueries": { + "type": "array", + "description": "The query parameters for vector and hybrid search queries.", + "items": { + "$ref": "#/definitions/VectorQuery" + }, + "x-ms-identifiers": [] + }, + "vectorFilterMode": { + "$ref": "#/definitions/VectorFilterMode", + "description": "Determines whether or not filters are applied before or after the vector search\nis performed. Default is 'preFilter' for new indexes." + } + } + }, + "SearchResourceEncryptionKey": { + "type": "object", + "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and\nmanage can be used to encrypt or decrypt data-at-rest, such as indexes and\nsynonym maps.", + "properties": { + "keyVaultKeyName": { + "type": "string", + "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest.", + "x-ms-client-name": "keyName" + }, + "keyVaultKeyVersion": { + "type": "string", + "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest.", + "x-ms-client-name": "keyVersion" + }, + "keyVaultUri": { + "type": "string", + "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains\nthe key to be used to encrypt your data at rest. An example URI might be\n`https://my-keyvault-name.vault.azure.net`.", + "x-ms-client-name": "vaultUri" + }, + "accessCredentials": { + "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", + "description": "Optional Azure Active Directory credentials used for accessing your Azure Key\nVault. Not required if using managed identity instead." + } + }, + "required": [ + "keyVaultKeyName", + "keyVaultKeyVersion", + "keyVaultUri" + ] + }, + "SearchResult": { + "type": "object", + "description": "Contains a document found by a search query, plus associated metadata.", + "properties": { + "@search.score": { + "type": "number", + "format": "double", + "description": "The relevance score of the document compared to other documents returned by the\nquery.", + "readOnly": true, + "x-ms-client-name": "score" + }, + "@search.rerankerScore": { + "type": "number", + "format": "double", + "description": "The relevance score computed by the semantic ranker for the top search results.\nSearch results are sorted by the RerankerScore first and then by the Score.\nRerankerScore is only returned for queries of type 'semantic'.", + "readOnly": true, + "x-ms-client-name": "rerankerScore" + }, + "@search.highlights": { + "type": "object", + "description": "Text fragments from the document that indicate the matching search terms,\norganized by each applicable field; null if hit highlighting was not enabled\nfor the query.", + "additionalProperties": { + "items": { + "type": "string" + }, + "type": "array" + }, + "readOnly": true, + "x-ms-client-name": "highlights" + }, + "@search.captions": { + "type": "array", + "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type 'semantic'.", + "items": { + "$ref": "#/definitions/QueryCaptionResult" + }, + "readOnly": true, + "x-ms-client-name": "captions", + "x-ms-identifiers": [] + } + }, + "required": [ + "@search.score" + ], + "additionalProperties": {} + }, + "SearchServiceCounters": { + "type": "object", + "description": "Represents service-level resource counters and quotas.", + "properties": { + "documentCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of documents across all indexes in the service.", + "x-ms-client-name": "documentCounter" + }, + "indexesCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexes.", + "x-ms-client-name": "indexCounter" + }, + "indexersCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexers.", + "x-ms-client-name": "indexerCounter" + }, + "dataSourcesCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of data sources.", + "x-ms-client-name": "dataSourceCounter" + }, + "storageSize": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total size of used storage in bytes.", + "x-ms-client-name": "storageSizeCounter" + }, + "synonymMaps": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of synonym maps.", + "x-ms-client-name": "synonymMapCounter" + }, + "skillsetCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of skillsets.", + "x-ms-client-name": "skillsetCounter" + }, + "vectorIndexSize": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total memory consumption of all vector indexes within the service, in bytes.", + "x-ms-client-name": "vectorIndexSizeCounter" + } + }, + "required": [ + "documentCount", + "indexesCount", + "indexersCount", + "dataSourcesCount", + "storageSize", + "synonymMaps", + "skillsetCount", + "vectorIndexSize" + ] + }, + "SearchServiceLimits": { + "type": "object", + "description": "Represents various service level limits.", + "properties": { + "maxFieldsPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum allowed fields per index." + }, + "maxFieldNestingDepthPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum depth which you can nest sub-fields in an index, including the\ntop-level complex field. For example, a/b/c has a nesting depth of 3." + }, + "maxComplexCollectionFieldsPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an\nindex." + }, + "maxComplexObjectsInCollectionsPerDocument": { + "type": "integer", + "format": "int32", + "description": "The maximum number of objects in complex collections allowed per document." + }, + "maxStoragePerIndex": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of storage in bytes allowed per index.", + "x-ms-client-name": "maxStoragePerIndexInBytes" + } + } + }, + "SearchServiceStatistics": { + "type": "object", + "description": "Response from a get service statistics request. If successful, it includes\nservice level counters and limits.", + "properties": { + "counters": { + "$ref": "#/definitions/SearchServiceCounters", + "description": "Service level resource counters." + }, + "limits": { + "$ref": "#/definitions/SearchServiceLimits", + "description": "Service level general limits." + } + }, + "required": [ + "counters", + "limits" + ] + }, + "SearchSuggester": { + "type": "object", + "description": "Defines how the Suggest API should apply to a group of fields in the index.", + "properties": { + "name": { + "type": "string", + "description": "The name of the suggester." + }, + "searchMode": { + "type": "string", + "description": "A value indicating the capabilities of the suggester.", + "enum": [ + "analyzingInfixMatching" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "sourceFields": { + "type": "array", + "description": "The list of field names to which the suggester applies. Each field must be\nsearchable.", + "items": { + "type": "string" + } + } + }, + "required": [ + "name", + "searchMode", + "sourceFields" + ] + }, + "SemanticConfiguration": { + "type": "object", + "description": "Defines a specific configuration to be used in the context of semantic\ncapabilities.", + "properties": { + "name": { + "type": "string", + "description": "The name of the semantic configuration." + }, + "prioritizedFields": { + "$ref": "#/definitions/SemanticPrioritizedFields", + "description": "Describes the title, content, and keyword fields to be used for semantic\nranking, captions, highlights, and answers. At least one of the three sub\nproperties (titleField, prioritizedKeywordsFields and prioritizedContentFields)\nneed to be set." + } + }, + "required": [ + "name", + "prioritizedFields" + ] + }, + "SemanticErrorMode": { + "type": "string", + "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results.", + "enum": [ + "partial", + "fail" + ], + "x-ms-enum": { + "name": "SemanticErrorMode", + "modelAsString": true, + "values": [ + { + "name": "Partial", + "value": "partial", + "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." + }, + { + "name": "Fail", + "value": "fail", + "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." + } + ] + } + }, + "SemanticErrorReason": { + "type": "string", + "description": "Reason that a partial response was returned for a semantic ranking request.", + "enum": [ + "maxWaitExceeded", + "capacityOverloaded", + "transient" + ], + "x-ms-enum": { + "name": "SemanticErrorReason", + "modelAsString": true, + "values": [ + { + "name": "MaxWaitExceeded", + "value": "maxWaitExceeded", + "description": "If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration\nexceeded that value. Only the base results were returned." + }, + { + "name": "CapacityOverloaded", + "value": "capacityOverloaded", + "description": "The request was throttled. Only the base results were returned." + }, + { + "name": "Transient", + "value": "transient", + "description": "At least one step of the semantic process failed." + } + ] + } + }, + "SemanticField": { + "type": "object", + "description": "A field that is used as part of the semantic configuration.", + "properties": { + "fieldName": { + "type": "string", + "description": "File name" + } + }, + "required": [ + "fieldName" + ] + }, + "SemanticPrioritizedFields": { + "type": "object", + "description": "Describes the title, content, and keywords fields to be used for semantic\nranking, captions, highlights, and answers.", + "properties": { + "titleField": { + "$ref": "#/definitions/SemanticField", + "description": "Defines the title field to be used for semantic ranking, captions, highlights,\nand answers. If you don't have a title field in your index, leave this blank." + }, + "prioritizedContentFields": { + "type": "array", + "description": "Defines the content fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain text in natural language form. The order of the fields in the array\nrepresents their priority. Fields with lower priority may get truncated if the\ncontent is long.", + "items": { + "$ref": "#/definitions/SemanticField" + }, + "x-ms-client-name": "contentFields", + "x-ms-identifiers": [] + }, + "prioritizedKeywordsFields": { + "type": "array", + "description": "Defines the keyword fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain a list of keywords. The order of the fields in the array represents\ntheir priority. Fields with lower priority may get truncated if the content is\nlong.", + "items": { + "$ref": "#/definitions/SemanticField" + }, + "x-ms-client-name": "keywordsFields", + "x-ms-identifiers": [] + } + } + }, + "SemanticSearch": { + "type": "object", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "properties": { + "defaultConfiguration": { + "type": "string", + "description": "Allows you to set the name of a default semantic configuration in your index,\nmaking it optional to pass it on as a query parameter every time.", + "x-ms-client-name": "defaultConfigurationName" + }, + "configurations": { + "type": "array", + "description": "The semantic configurations for the index.", + "items": { + "$ref": "#/definitions/SemanticConfiguration" + }, + "x-ms-identifiers": [] + } + } + }, + "SemanticSearchResultsType": { + "type": "string", + "description": "Type of partial response that was returned for a semantic ranking request.", + "enum": [ + "baseResults", + "rerankedResults" + ], + "x-ms-enum": { + "name": "SemanticSearchResultsType", + "modelAsString": true, + "values": [ + { + "name": "BaseResults", + "value": "baseResults", + "description": "Results without any semantic enrichment or reranking." + }, + { + "name": "RerankedResults", + "value": "rerankedResults", + "description": "Results have been reranked with the reranker model and will include semantic\ncaptions. They will not include any answers, answers highlights or caption\nhighlights." + } + ] + } + }, + "SentimentSkill": { + "type": "object", + "description": "This skill is deprecated. Use the V3.SentimentSkill instead.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SentimentSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.SentimentSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill" + }, + "SentimentSkillLanguage": { + "type": "string", + "description": "Deprecated. The language codes supported for input text by SentimentSkill.", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "it", + "no", + "pl", + "pt-PT", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "SentimentSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + } + ] + } + }, + "SentimentSkillV3": { + "type": "object", + "description": "Using the Text Analytics API, evaluates unstructured text and for each record,\nprovides sentiment labels (such as \"negative\", \"neutral\" and \"positive\") based\non the highest confidence score found by the service at a sentence and\ndocument-level.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "includeOpinionMining": { + "type": "boolean", + "description": "If set to true, the skill output will include information from Text Analytics\nfor opinion mining, namely targets (nouns or verbs) and their associated\nassessment (adjective) in the text. Default is false." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.V3.SentimentSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.SentimentSkill" + }, + "ShaperSkill": { + "type": "object", + "description": "A skill for reshaping the outputs. It creates a complex type to support\ncomposite fields (also known as multipart fields).", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Util.ShaperSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill" + }, + "ShingleTokenFilter": { + "type": "object", + "description": "Creates combinations of tokens as a single token. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "maxShingleSize": { + "type": "integer", + "format": "int32", + "description": "The maximum shingle size. Default and minimum value is 2.", + "default": 2, + "minimum": 2 + }, + "minShingleSize": { + "type": "integer", + "format": "int32", + "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the\nvalue of maxShingleSize.", + "default": 2, + "minimum": 2 + }, + "outputUnigrams": { + "type": "boolean", + "description": "A value indicating whether the output stream will contain the input tokens\n(unigrams) as well as shingles. Default is true.", + "default": true + }, + "outputUnigramsIfNoShingles": { + "type": "boolean", + "description": "A value indicating whether to output unigrams for those times when no shingles\nare available. This property takes precedence when outputUnigrams is set to\nfalse. Default is false." + }, + "tokenSeparator": { + "type": "string", + "description": "The string to use when joining adjacent tokens to form a shingle. Default is a\nsingle space (\" \").", + "default": " " + }, + "filterToken": { + "type": "string", + "description": "The string to insert for each position at which there is no token. Default is\nan underscore (\"_\").", + "default": "_" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.ShingleTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter" + }, + "SimilarityAlgorithm": { + "type": "object", + "description": "Base type for similarity algorithms. Similarity algorithms are used to\ncalculate scores that tie queries to documents. The higher the score, the more\nrelevant the document is to that specific query. Those scores are used to rank\nthe search results.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "SnowballTokenFilter": { + "type": "object", + "description": "A filter that stems words using a Snowball-generated stemmer. This token filter\nis implemented using Apache Lucene.", + "properties": { + "language": { + "$ref": "#/definitions/SnowballTokenFilterLanguage", + "description": "The language to use." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.SnowballTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "language", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter" + }, + "SnowballTokenFilterLanguage": { + "type": "string", + "description": "The language to use for a Snowball token filter.", + "enum": [ + "armenian", + "basque", + "catalan", + "danish", + "dutch", + "english", + "finnish", + "french", + "german", + "german2", + "hungarian", + "italian", + "kp", + "lovins", + "norwegian", + "porter", + "portuguese", + "romanian", + "russian", + "spanish", + "swedish", + "turkish" + ], + "x-ms-enum": { + "name": "SnowballTokenFilterLanguage", + "modelAsString": true, + "values": [ + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the Lucene Snowball stemming tokenizer for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the Lucene Snowball stemming tokenizer for Basque." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Lucene Snowball stemming tokenizer for Catalan." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Lucene Snowball stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Lucene Snowball stemming tokenizer for English." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Lucene Snowball stemming tokenizer for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Lucene Snowball stemming tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Lucene Snowball stemming tokenizer for German." + }, + { + "name": "German2", + "value": "german2", + "description": "Selects the Lucene Snowball stemming tokenizer that uses the German variant\nalgorithm." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Lucene Snowball stemming tokenizer for Hungarian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Lucene Snowball stemming tokenizer for Italian." + }, + { + "name": "Kp", + "value": "kp", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch that uses the\nKraaij-Pohlmann stemming algorithm." + }, + { + "name": "Lovins", + "value": "lovins", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins\nstemming algorithm." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the Lucene Snowball stemming tokenizer for Norwegian." + }, + { + "name": "Porter", + "value": "porter", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Porter\nstemming algorithm." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Lucene Snowball stemming tokenizer for Portuguese." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Lucene Snowball stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Lucene Snowball stemming tokenizer for Russian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Lucene Snowball stemming tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Lucene Snowball stemming tokenizer for Swedish." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Lucene Snowball stemming tokenizer for Turkish." + } + ] + } + }, + "SoftDeleteColumnDeletionDetectionPolicy": { + "type": "object", + "description": "Defines a data deletion detection policy that implements a soft-deletion\nstrategy. It determines whether an item should be deleted based on the value of\na designated 'soft delete' column.", + "properties": { + "softDeleteColumnName": { + "type": "string", + "description": "The name of the column to use for soft-deletion detection." + }, + "softDeleteMarkerValue": { + "type": "string", + "description": "The marker value that identifies an item as deleted." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of data deletion detection policy.", + "enum": [ + "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/DataDeletionDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" + }, + "SplitSkill": { + "type": "object", + "description": "A skill to split a string into chunks of text.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SplitSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "textSplitMode": { + "$ref": "#/definitions/TextSplitMode", + "description": "A value indicating which split mode to perform." + }, + "maximumPageLength": { + "type": "integer", + "format": "int32", + "description": "The desired maximum page length. Default is 10000." + }, + "pageOverlapLength": { + "type": "integer", + "format": "int32", + "description": "Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk\nwill start with this number of characters/tokens from the end of the nth chunk." + }, + "maximumPagesToTake": { + "type": "integer", + "format": "int32", + "description": "Only applicable when textSplitMode is set to 'pages'. If specified, the\nSplitSkill will discontinue splitting after processing the first\n'maximumPagesToTake' pages, in order to improve performance when only a few\ninitial pages are needed from each document." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.SplitSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill" + }, + "SplitSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by SplitSkill.", + "enum": [ + "am", + "bs", + "cs", + "da", + "de", + "en", + "es", + "et", + "fi", + "fr", + "he", + "hi", + "hr", + "hu", + "id", + "is", + "it", + "ja", + "ko", + "lv", + "nb", + "nl", + "pl", + "pt", + "pt-br", + "ru", + "sk", + "sl", + "sr", + "sv", + "tr", + "ur", + "zh" + ], + "x-ms-enum": { + "name": "SplitSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "am", + "value": "am", + "description": "Amharic" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-br", + "value": "pt-br", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "sr", + "value": "sr", + "description": "Serbian" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "zh", + "value": "zh", + "description": "Chinese (Simplified)" + } + ] + } + }, + "SqlIntegratedChangeTrackingPolicy": { + "type": "object", + "description": "Defines a data change detection policy that captures changes using the\nIntegrated Change Tracking feature of Azure SQL Database.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of data change detection policy.", + "enum": [ + "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" + }, + "StemmerOverrideTokenFilter": { + "type": "object", + "description": "Provides the ability to override other stemming filters with custom\ndictionary-based stemming. Any dictionary-stemmed terms will be marked as\nkeywords so that they will not be stemmed with stemmers down the chain. Must be\nplaced before any stemming filters. This token filter is implemented using\nApache Lucene.", + "properties": { + "rules": { + "type": "array", + "description": "A list of stemming rules in the following format: \"word => stem\", for example:\n\"ran => run\".", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "rules", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" + }, + "StemmerTokenFilter": { + "type": "object", + "description": "Language specific stemming filter. This token filter is implemented using\nApache Lucene.", + "properties": { + "language": { + "$ref": "#/definitions/StemmerTokenFilterLanguage", + "description": "The language to use." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.StemmerTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "language", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter" + }, + "StemmerTokenFilterLanguage": { + "type": "string", + "description": "The language to use for a stemmer token filter.", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "dutchKp", + "english", + "lightEnglish", + "minimalEnglish", + "possessiveEnglish", + "porter2", + "lovins", + "finnish", + "lightFinnish", + "french", + "lightFrench", + "minimalFrench", + "galician", + "minimalGalician", + "german", + "german2", + "lightGerman", + "minimalGerman", + "greek", + "hindi", + "hungarian", + "lightHungarian", + "indonesian", + "irish", + "italian", + "lightItalian", + "sorani", + "latvian", + "norwegian", + "lightNorwegian", + "minimalNorwegian", + "lightNynorsk", + "minimalNynorsk", + "portuguese", + "lightPortuguese", + "minimalPortuguese", + "portugueseRslp", + "romanian", + "russian", + "lightRussian", + "spanish", + "lightSpanish", + "swedish", + "lightSwedish", + "turkish" + ], + "x-ms-enum": { + "name": "StemmerTokenFilterLanguage", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the Lucene stemming tokenizer for Arabic." + }, + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the Lucene stemming tokenizer for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the Lucene stemming tokenizer for Basque." + }, + { + "name": "Brazilian", + "value": "brazilian", + "description": "Selects the Lucene stemming tokenizer for Portuguese (Brazil)." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Lucene stemming tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Lucene stemming tokenizer for Catalan." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Lucene stemming tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Lucene stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Lucene stemming tokenizer for Dutch." + }, + { + "name": "DutchKp", + "value": "dutchKp", + "description": "Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann\nstemming algorithm." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Lucene stemming tokenizer for English." + }, + { + "name": "LightEnglish", + "value": "lightEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does light stemming." + }, + { + "name": "MinimalEnglish", + "value": "minimalEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does minimal stemming." + }, + { + "name": "PossessiveEnglish", + "value": "possessiveEnglish", + "description": "Selects the Lucene stemming tokenizer for English that removes trailing\npossessives from words." + }, + { + "name": "Porter2", + "value": "porter2", + "description": "Selects the Lucene stemming tokenizer for English that uses the Porter2\nstemming algorithm." + }, + { + "name": "Lovins", + "value": "lovins", + "description": "Selects the Lucene stemming tokenizer for English that uses the Lovins stemming\nalgorithm." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Lucene stemming tokenizer for Finnish." + }, + { + "name": "LightFinnish", + "value": "lightFinnish", + "description": "Selects the Lucene stemming tokenizer for Finnish that does light stemming." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Lucene stemming tokenizer for French." + }, + { + "name": "LightFrench", + "value": "lightFrench", + "description": "Selects the Lucene stemming tokenizer for French that does light stemming." + }, + { + "name": "MinimalFrench", + "value": "minimalFrench", + "description": "Selects the Lucene stemming tokenizer for French that does minimal stemming." + }, + { + "name": "Galician", + "value": "galician", + "description": "Selects the Lucene stemming tokenizer for Galician." + }, + { + "name": "MinimalGalician", + "value": "minimalGalician", + "description": "Selects the Lucene stemming tokenizer for Galician that does minimal stemming." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Lucene stemming tokenizer for German." + }, + { + "name": "German2", + "value": "german2", + "description": "Selects the Lucene stemming tokenizer that uses the German variant algorithm." + }, + { + "name": "LightGerman", + "value": "lightGerman", + "description": "Selects the Lucene stemming tokenizer for German that does light stemming." + }, + { + "name": "MinimalGerman", + "value": "minimalGerman", + "description": "Selects the Lucene stemming tokenizer for German that does minimal stemming." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Lucene stemming tokenizer for Greek." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Lucene stemming tokenizer for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian." + }, + { + "name": "LightHungarian", + "value": "lightHungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian that does light stemming." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Lucene stemming tokenizer for Indonesian." + }, + { + "name": "Irish", + "value": "irish", + "description": "Selects the Lucene stemming tokenizer for Irish." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Lucene stemming tokenizer for Italian." + }, + { + "name": "LightItalian", + "value": "lightItalian", + "description": "Selects the Lucene stemming tokenizer for Italian that does light stemming." + }, + { + "name": "Sorani", + "value": "sorani", + "description": "Selects the Lucene stemming tokenizer for Sorani." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the Lucene stemming tokenizer for Latvian." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål)." + }, + { + "name": "LightNorwegian", + "value": "lightNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light\nstemming." + }, + { + "name": "MinimalNorwegian", + "value": "minimalNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal\nstemming." + }, + { + "name": "LightNynorsk", + "value": "lightNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light\nstemming." + }, + { + "name": "MinimalNynorsk", + "value": "minimalNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal\nstemming." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese." + }, + { + "name": "LightPortuguese", + "value": "lightPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does light stemming." + }, + { + "name": "MinimalPortuguese", + "value": "minimalPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming." + }, + { + "name": "PortugueseRslp", + "value": "portugueseRslp", + "description": "Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP\nstemming algorithm." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Lucene stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Lucene stemming tokenizer for Russian." + }, + { + "name": "LightRussian", + "value": "lightRussian", + "description": "Selects the Lucene stemming tokenizer for Russian that does light stemming." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Lucene stemming tokenizer for Spanish." + }, + { + "name": "LightSpanish", + "value": "lightSpanish", + "description": "Selects the Lucene stemming tokenizer for Spanish that does light stemming." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Lucene stemming tokenizer for Swedish." + }, + { + "name": "LightSwedish", + "value": "lightSwedish", + "description": "Selects the Lucene stemming tokenizer for Swedish that does light stemming." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Lucene stemming tokenizer for Turkish." + } + ] + } + }, + "StopAnalyzer": { + "type": "object", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nThis analyzer is implemented using Apache Lucene.", + "properties": { + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of analyzer.", + "enum": [ + "#Microsoft.Azure.Search.StopAnalyzer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer" + }, + "StopwordsList": { + "type": "string", + "description": "Identifies a predefined list of language-specific stopwords.", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "english", + "finnish", + "french", + "galician", + "german", + "greek", + "hindi", + "hungarian", + "indonesian", + "irish", + "italian", + "latvian", + "norwegian", + "persian", + "portuguese", + "romanian", + "russian", + "sorani", + "spanish", + "swedish", + "thai", + "turkish" + ], + "x-ms-enum": { + "name": "StopwordsList", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the stopword list for Arabic." + }, + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the stopword list for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the stopword list for Basque." + }, + { + "name": "Brazilian", + "value": "brazilian", + "description": "Selects the stopword list for Portuguese (Brazil)." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the stopword list for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the stopword list for Catalan." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the stopword list for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the stopword list for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the stopword list for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the stopword list for English." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the stopword list for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the stopword list for French." + }, + { + "name": "Galician", + "value": "galician", + "description": "Selects the stopword list for Galician." + }, + { + "name": "German", + "value": "german", + "description": "Selects the stopword list for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the stopword list for Greek." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the stopword list for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the stopword list for Hungarian." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the stopword list for Indonesian." + }, + { + "name": "Irish", + "value": "irish", + "description": "Selects the stopword list for Irish." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the stopword list for Italian." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the stopword list for Latvian." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the stopword list for Norwegian." + }, + { + "name": "Persian", + "value": "persian", + "description": "Selects the stopword list for Persian." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the stopword list for Portuguese." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the stopword list for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the stopword list for Russian." + }, + { + "name": "Sorani", + "value": "sorani", + "description": "Selects the stopword list for Sorani." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the stopword list for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the stopword list for Swedish." + }, + { + "name": "Thai", + "value": "thai", + "description": "Selects the stopword list for Thai." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the stopword list for Turkish." + } + ] + } + }, + "StopwordsTokenFilter": { + "type": "object", + "description": "Removes stop words from a token stream. This token filter is implemented using\nApache Lucene.", + "properties": { + "stopwords": { + "type": "array", + "description": "The list of stopwords. This property and the stopwords list property cannot\nboth be set.", + "items": { + "type": "string" + } + }, + "stopwordsList": { + "$ref": "#/definitions/StopwordsList", + "description": "A predefined list of stopwords to use. This property and the stopwords property\ncannot both be set. Default is English." + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." + }, + "removeTrailing": { + "type": "boolean", + "description": "A value indicating whether to ignore the last search term if it's a stop word.\nDefault is true.", + "default": true, + "x-ms-client-name": "removeTrailingStopWords" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.StopwordsTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter" + }, + "SuggestDocumentsResult": { + "type": "object", + "description": "Response containing suggestion query results from an index.", + "properties": { + "value": { + "type": "array", + "description": "The sequence of results returned by the query.", + "items": { + "$ref": "#/definitions/SuggestResult" + }, + "readOnly": true, + "x-ms-client-name": "results", + "x-ms-identifiers": [] + }, + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not set in the request.", + "readOnly": true, + "x-ms-client-name": "coverage" + } + }, + "required": [ + "value" + ] + }, + "SuggestRequest": { + "type": "object", + "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query\nbehaviors.", + "properties": { + "filter": { + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestion query.\nDefault is false. When set to true, the query will find suggestions even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy suggestion searches are slower and consume more resources.", + "x-ms-client-name": "useFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestion query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." + }, + "orderby": { + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses.", + "x-ms-client-name": "orderBy" + }, + "search": { + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", + "x-ms-client-name": "searchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to search for the specified search\ntext. Target fields must be included in the specified suggester." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, only the key\nfield will be included in the results." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. This must be a value between 1 and 100.\nThe default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ] + }, + "SuggestResult": { + "type": "object", + "description": "A result containing a document found by a suggestion query, plus associated\nmetadata.", + "properties": { + "@search.text": { + "type": "string", + "description": "The text of the suggestion result.", + "readOnly": true, + "x-ms-client-name": "text" + } + }, + "required": [ + "@search.text" + ], + "additionalProperties": {} + }, + "SynonymMap": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "name", + "format", + "synonyms" + ] + }, + "SynonymMapCreate": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "format", + "synonyms" + ] + }, + "SynonymMapCreateOrUpdate": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "format", + "synonyms" + ] + }, + "SynonymMapItem": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "format", + "synonyms" + ] + }, + "SynonymTokenFilter": { + "type": "object", + "description": "Matches single or multi-word synonyms in a token stream. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "synonyms": { + "type": "array", + "description": "A list of synonyms in following one of two formats: 1. incredible,\nunbelievable, fabulous => amazing - all terms on the left side of => symbol\nwill be replaced with all terms on its right side; 2. incredible, unbelievable,\nfabulous, amazing - comma separated list of equivalent words. Set the expand\noption to change how this list is interpreted.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to case-fold input for matching. Default is false." + }, + "expand": { + "type": "boolean", + "description": "A value indicating whether all words in the list of synonyms (if => notation is\nnot used) will map to one another. If true, all words in the list of synonyms\n(if => notation is not used) will map to one another. The following list:\nincredible, unbelievable, fabulous, amazing is equivalent to: incredible,\nunbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing.\nIf false, the following list: incredible, unbelievable, fabulous, amazing will\nbe equivalent to: incredible, unbelievable, fabulous, amazing => incredible.\nDefault is true.", + "default": true + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.SynonymTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "synonyms", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter" + }, + "TagScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores of documents with string values matching\na given list of tags.", + "properties": { + "tag": { + "$ref": "#/definitions/TagScoringParameters", + "description": "Parameter values for the tag scoring function.", + "x-ms-client-name": "parameters" + } + }, + "required": [ + "tag" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "tag" + }, + "TagScoringParameters": { + "type": "object", + "description": "Provides parameter values to a tag scoring function.", + "properties": { + "tagsParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the list of tags\nto compare against the target field." + } + }, + "required": [ + "tagsParameter" + ] + }, + "TextSplitMode": { + "type": "string", + "description": "A value indicating which split mode to perform.", + "enum": [ + "pages", + "sentences" + ], + "x-ms-enum": { + "name": "TextSplitMode", + "modelAsString": true, + "values": [ + { + "name": "Pages", + "value": "pages", + "description": "Split the text into individual pages." + }, + { + "name": "Sentences", + "value": "sentences", + "description": "Split the text into individual sentences." + } + ] + } + }, + "TextTranslationSkill": { + "type": "object", + "description": "A skill to translate text from one language to another.", + "properties": { + "defaultToLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents into for documents that don't specify\nthe to language explicitly." + }, + "defaultFromLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from for documents that don't specify\nthe from language explicitly." + }, + "suggestedFrom": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from when neither the fromLanguageCode\ninput nor the defaultFromLanguageCode parameter are provided, and the automatic\nlanguage detection is unsuccessful. Default is `en`." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.TranslationSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "defaultToLanguageCode", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill" + }, + "TextTranslationSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by TextTranslationSkill.", + "enum": [ + "af", + "ar", + "bn", + "bs", + "bg", + "yue", + "ca", + "zh-Hans", + "zh-Hant", + "hr", + "cs", + "da", + "nl", + "en", + "et", + "fj", + "fil", + "fi", + "fr", + "de", + "el", + "ht", + "he", + "hi", + "mww", + "hu", + "is", + "id", + "it", + "ja", + "sw", + "tlh", + "tlh-Latn", + "tlh-Piqd", + "ko", + "lv", + "lt", + "mg", + "ms", + "mt", + "nb", + "fa", + "pl", + "pt", + "pt-br", + "pt-PT", + "otq", + "ro", + "ru", + "sm", + "sr-Cyrl", + "sr-Latn", + "sk", + "sl", + "es", + "sv", + "ty", + "ta", + "te", + "th", + "to", + "tr", + "uk", + "ur", + "vi", + "cy", + "yua", + "ga", + "kn", + "mi", + "ml", + "pa" + ], + "x-ms-enum": { + "name": "TextTranslationSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "af", + "value": "af", + "description": "Afrikaans" + }, + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "bn", + "value": "bn", + "description": "Bangla" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian (Latin)" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "yue", + "value": "yue", + "description": "Cantonese (Traditional)" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fj", + "value": "fj", + "description": "Fijian" + }, + { + "name": "fil", + "value": "fil", + "description": "Filipino" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "ht", + "value": "ht", + "description": "Haitian Creole" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "mww", + "value": "mww", + "description": "Hmong Daw" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "sw", + "value": "sw", + "description": "Kiswahili" + }, + { + "name": "tlh", + "value": "tlh", + "description": "Klingon" + }, + { + "name": "tlh-Latn", + "value": "tlh-Latn", + "description": "Klingon (Latin script)" + }, + { + "name": "tlh-Piqd", + "value": "tlh-Piqd", + "description": "Klingon (Klingon script)" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "mg", + "value": "mg", + "description": "Malagasy" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay" + }, + { + "name": "mt", + "value": "mt", + "description": "Maltese" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "fa", + "value": "fa", + "description": "Persian" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + }, + { + "name": "pt-br", + "value": "pt-br", + "description": "Portuguese (Brazil)" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "otq", + "value": "otq", + "description": "Queretaro Otomi" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sm", + "value": "sm", + "description": "Samoan" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "ty", + "value": "ty", + "description": "Tahitian" + }, + { + "name": "ta", + "value": "ta", + "description": "Tamil" + }, + { + "name": "te", + "value": "te", + "description": "Telugu" + }, + { + "name": "th", + "value": "th", + "description": "Thai" + }, + { + "name": "to", + "value": "to", + "description": "Tongan" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "uk", + "value": "uk", + "description": "Ukrainian" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "vi", + "value": "vi", + "description": "Vietnamese" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "yua", + "value": "yua", + "description": "Yucatec Maya" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "kn", + "value": "kn", + "description": "Kannada" + }, + { + "name": "mi", + "value": "mi", + "description": "Maori" + }, + { + "name": "ml", + "value": "ml", + "description": "Malayalam" + }, + { + "name": "pa", + "value": "pa", + "description": "Punjabi" + } + ] + } + }, + "TextWeights": { + "type": "object", + "description": "Defines weights on index fields for which matches should boost scoring in\nsearch queries.", + "properties": { + "weights": { + "type": "object", + "description": "The dictionary of per-field weights to boost document scoring. The keys are\nfield names and the values are the weights for each field.", + "additionalProperties": { + "format": "double", + "type": "number" + } + } + }, + "required": [ + "weights" + ] + }, + "TokenCharacterKind": { + "type": "string", + "description": "Represents classes of characters on which a token filter can operate.", + "enum": [ + "letter", + "digit", + "whitespace", + "punctuation", + "symbol" + ], + "x-ms-enum": { + "name": "TokenCharacterKind", + "modelAsString": true, + "values": [ + { + "name": "Letter", + "value": "letter", + "description": "Keeps letters in tokens." + }, + { + "name": "Digit", + "value": "digit", + "description": "Keeps digits in tokens." + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "Keeps whitespace in tokens." + }, + { + "name": "Punctuation", + "value": "punctuation", + "description": "Keeps punctuation in tokens." + }, + { + "name": "Symbol", + "value": "symbol", + "description": "Keeps symbols in tokens." + } + ] + } + }, + "TokenFilter": { + "type": "object", + "description": "Base type for token filters.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the token filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "name" + ] + }, + "TokenFilterName": { + "type": "string", + "description": "Defines the names of all token filters supported by the search engine.", + "enum": [ + "arabic_normalization", + "apostrophe", + "asciifolding", + "cjk_bigram", + "cjk_width", + "classic", + "common_grams", + "edgeNGram_v2", + "elision", + "german_normalization", + "hindi_normalization", + "indic_normalization", + "keyword_repeat", + "kstem", + "length", + "limit", + "lowercase", + "nGram_v2", + "persian_normalization", + "phonetic", + "porter_stem", + "reverse", + "scandinavian_normalization", + "scandinavian_folding", + "shingle", + "snowball", + "sorani_normalization", + "stemmer", + "stopwords", + "trim", + "truncate", + "unique", + "uppercase", + "word_delimiter" + ], + "x-ms-enum": { + "name": "TokenFilterName", + "modelAsString": true, + "values": [ + { + "name": "ArabicNormalization", + "value": "arabic_normalization", + "description": "A token filter that applies the Arabic normalizer to normalize the orthography.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" + }, + { + "name": "Apostrophe", + "value": "apostrophe", + "description": "Strips all characters after an apostrophe (including the apostrophe itself).\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" + }, + { + "name": "AsciiFolding", + "value": "asciifolding", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + }, + { + "name": "CjkBigram", + "value": "cjk_bigram", + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + }, + { + "name": "CjkWidth", + "value": "cjk_width", + "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the\nequivalent basic Latin, and half-width Katakana variants into the equivalent\nKana. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" + }, + { + "name": "Classic", + "value": "classic", + "description": "Removes English possessives, and dots from acronyms. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" + }, + { + "name": "CommonGram", + "value": "common_grams", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + }, + { + "name": "EdgeNGram", + "value": "edgeNGram_v2", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + { + "name": "Elision", + "value": "elision", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + }, + { + "name": "GermanNormalization", + "value": "german_normalization", + "description": "Normalizes German characters according to the heuristics of the German2\nsnowball algorithm. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" + }, + { + "name": "HindiNormalization", + "value": "hindi_normalization", + "description": "Normalizes text in Hindi to remove some differences in spelling variations. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" + }, + { + "name": "IndicNormalization", + "value": "indic_normalization", + "description": "Normalizes the Unicode representation of text in Indian languages. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" + }, + { + "name": "KeywordRepeat", + "value": "keyword_repeat", + "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" + }, + { + "name": "KStem", + "value": "kstem", + "description": "A high-performance kstem filter for English. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" + }, + { + "name": "Length", + "value": "length", + "description": "Removes words that are too long or too short. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + }, + { + "name": "Limit", + "value": "limit", + "description": "Limits the number of tokens while indexing. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + }, + { + "name": "Lowercase", + "value": "lowercase", + "description": "Normalizes token text to lower case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html" + }, + { + "name": "NGram", + "value": "nGram_v2", + "description": "Generates n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + { + "name": "PersianNormalization", + "value": "persian_normalization", + "description": "Applies normalization for Persian. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" + }, + { + "name": "Phonetic", + "value": "phonetic", + "description": "Create tokens for phonetic matches. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + }, + { + "name": "PorterStem", + "value": "porter_stem", + "description": "Uses the Porter stemming algorithm to transform the token stream. See\nhttp://tartarus.org/~martin/PorterStemmer" + }, + { + "name": "Reverse", + "value": "reverse", + "description": "Reverses the token string. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" + }, + { + "name": "ScandinavianNormalization", + "value": "scandinavian_normalization", + "description": "Normalizes use of the interchangeable Scandinavian characters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" + }, + { + "name": "ScandinavianFoldingNormalization", + "value": "scandinavian_folding", + "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also\ndiscriminates against use of double vowels aa, ae, ao, oe and oo, leaving just\nthe first one. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" + }, + { + "name": "Shingle", + "value": "shingle", + "description": "Creates combinations of tokens as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + }, + { + "name": "Snowball", + "value": "snowball", + "description": "A filter that stems words using a Snowball-generated stemmer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + }, + { + "name": "SoraniNormalization", + "value": "sorani_normalization", + "description": "Normalizes the Unicode representation of Sorani text. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" + }, + { + "name": "Stemmer", + "value": "stemmer", + "description": "Language specific stemming filter. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + }, + { + "name": "Stopwords", + "value": "stopwords", + "description": "Removes stop words from a token stream. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + }, + { + "name": "Trim", + "value": "trim", + "description": "Trims leading and trailing whitespace from tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" + }, + { + "name": "Truncate", + "value": "truncate", + "description": "Truncates the terms to a specific length. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + }, + { + "name": "Unique", + "value": "unique", + "description": "Filters out tokens with same text as the previous token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + }, + { + "name": "Uppercase", + "value": "uppercase", + "description": "Normalizes token text to upper case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" + }, + { + "name": "WordDelimiter", + "value": "word_delimiter", + "description": "Splits words into subwords and performs optional transformations on subword\ngroups." + } + ] + } + }, + "TruncateTokenFilter": { + "type": "object", + "description": "Truncates the terms to a specific length. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "length": { + "type": "integer", + "format": "int32", + "description": "The length at which terms will be truncated. Default and maximum is 300.", + "default": 300, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.TruncateTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter" + }, + "UaxUrlEmailTokenizer": { + "type": "object", + "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" + }, + "UniqueTokenFilter": { + "type": "object", + "description": "Filters out tokens with same text as the previous token. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "onlyOnSamePosition": { + "type": "boolean", + "description": "A value indicating whether to remove duplicates only at the same position.\nDefault is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.UniqueTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter" + }, + "VectorEncodingFormat": { + "type": "string", + "description": "The encoding format for interpreting vector field contents.", + "enum": [ + "packedBit" + ], + "x-ms-enum": { + "name": "VectorEncodingFormat", + "modelAsString": true, + "values": [ + { + "name": "PackedBit", + "value": "packedBit", + "description": "Encoding format representing bits packed into a wider data type." + } + ] + } + }, + "VectorFilterMode": { + "type": "string", + "description": "Determines whether or not filters are applied before or after the vector search\nis performed.", + "enum": [ + "postFilter", + "preFilter" + ], + "x-ms-enum": { + "name": "VectorFilterMode", + "modelAsString": true, + "values": [ + { + "name": "PostFilter", + "value": "postFilter", + "description": "The filter will be applied after the candidate set of vector results is\nreturned. Depending on the filter selectivity, this can result in fewer results\nthan requested by the parameter 'k'." + }, + { + "name": "PreFilter", + "value": "preFilter", + "description": "The filter will be applied before the search query." + } + ] + } + }, + "VectorQuery": { + "type": "object", + "description": "The query parameters for vector and hybrid search queries.", + "properties": { + "k": { + "type": "integer", + "format": "int32", + "description": "Number of nearest neighbors to return as top hits." + }, + "fields": { + "type": "string", + "description": "Vector Fields of type Collection(Edm.Single) to be included in the vector\nsearched." + }, + "exhaustive": { + "type": "boolean", + "description": "When true, triggers an exhaustive k-nearest neighbor search across all vectors\nwithin the vector index. Useful for scenarios where exact matches are critical,\nsuch as determining ground truth values." + }, + "oversampling": { + "type": "number", + "format": "double", + "description": "Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling'\nparameter configured in the index definition. It can be set only when\n'rerankWithOriginalVectors' is true. This parameter is only permitted when a\ncompression method is used on the underlying vector field." + }, + "weight": { + "type": "number", + "format": "float", + "description": "Relative weight of the vector query when compared to other vector query and/or\nthe text query within the same search request. This value is used when\ncombining the results of multiple ranking lists produced by the different\nvector queries and/or the results retrieved through the text query. The higher\nthe weight, the higher the documents that matched that query will be in the\nfinal ranking. Default is 1.0 and the value needs to be a positive number\nlarger than zero." + }, + "kind": { + "$ref": "#/definitions/VectorQueryKind", + "description": "Type of query." + } + }, + "discriminator": "kind", + "required": [ + "kind" + ] + }, + "VectorQueryKind": { + "type": "string", + "description": "The kind of vector query being performed.", + "enum": [ + "vector", + "text" + ], + "x-ms-enum": { + "name": "VectorQueryKind", + "modelAsString": true, + "values": [ + { + "name": "Vector", + "value": "vector", + "description": "Vector query where a raw vector value is provided." + }, + { + "name": "Text", + "value": "text", + "description": "Vector query where a text value that needs to be vectorized is provided." + } + ] + } + }, + "VectorSearch": { + "type": "object", + "description": "Contains configuration options related to vector search.", + "properties": { + "profiles": { + "type": "array", + "description": "Defines combinations of configurations to use with vector search.", + "items": { + "$ref": "#/definitions/VectorSearchProfile" + }, + "x-ms-identifiers": [] + }, + "algorithms": { + "type": "array", + "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", + "items": { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + }, + "x-ms-identifiers": [] + }, + "vectorizers": { + "type": "array", + "description": "Contains configuration options on how to vectorize text vector queries.", + "items": { + "$ref": "#/definitions/VectorSearchVectorizer" + }, + "x-ms-identifiers": [] + }, + "compressions": { + "type": "array", + "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", + "items": { + "$ref": "#/definitions/VectorSearchCompression" + }, + "x-ms-identifiers": [] + } + } + }, + "VectorSearchAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular configuration." + }, + "kind": { + "$ref": "#/definitions/VectorSearchAlgorithmKind", + "description": "Type of VectorSearchAlgorithmConfiguration." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchAlgorithmKind": { + "type": "string", + "description": "The algorithm used for indexing and querying.", + "enum": [ + "hnsw", + "exhaustiveKnn" + ], + "x-ms-enum": { + "name": "VectorSearchAlgorithmKind", + "modelAsString": true, + "values": [ + { + "name": "Hnsw", + "value": "hnsw", + "description": "HNSW (Hierarchical Navigable Small World), a type of approximate nearest\nneighbors algorithm." + }, + { + "name": "ExhaustiveKnn", + "value": "exhaustiveKnn", + "description": "Exhaustive KNN algorithm which will perform brute-force search." + } + ] + } + }, + "VectorSearchAlgorithmMetric": { + "type": "string", + "description": "The similarity metric to use for vector comparisons. It is recommended to\nchoose the same similarity metric as the embedding model was trained on.", + "enum": [ + "cosine", + "euclidean", + "dotProduct", + "hamming" + ], + "x-ms-enum": { + "name": "VectorSearchAlgorithmMetric", + "modelAsString": true, + "values": [ + { + "name": "Cosine", + "value": "cosine", + "description": "Measures the angle between vectors to quantify their similarity, disregarding\nmagnitude. The smaller the angle, the closer the similarity." + }, + { + "name": "Euclidean", + "value": "euclidean", + "description": "Computes the straight-line distance between vectors in a multi-dimensional\nspace. The smaller the distance, the closer the similarity." + }, + { + "name": "DotProduct", + "value": "dotProduct", + "description": "Calculates the sum of element-wise products to gauge alignment and magnitude\nsimilarity. The larger and more positive, the closer the similarity." + }, + { + "name": "Hamming", + "value": "hamming", + "description": "Only applicable to bit-packed binary data types. Determines dissimilarity by\ncounting differing positions in binary vectors. The fewer differences, the\ncloser the similarity." + } + ] + } + }, + "VectorSearchCompression": { + "type": "object", + "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular configuration.", + "x-ms-client-name": "compressionName" + }, + "rerankWithOriginalVectors": { + "type": "boolean", + "description": "If set to true, once the ordered set of results calculated using compressed\nvectors are obtained, they will be reranked again by recalculating the\nfull-precision similarity scores. This will improve recall at the expense of\nlatency.", + "default": true + }, + "defaultOversampling": { + "type": "number", + "format": "double", + "description": "Default oversampling factor. Oversampling will internally request more\ndocuments (specified by this multiplier) in the initial search. This increases\nthe set of results that will be reranked using recomputed similarity scores\nfrom full-precision vectors. Minimum value is 1, meaning no oversampling (1x).\nThis parameter can only be set when rerankWithOriginalVectors is true. Higher\nvalues improve recall at the expense of latency." + }, + "kind": { + "$ref": "#/definitions/VectorSearchCompressionKind", + "description": "Type of VectorSearchCompression." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchCompressionKind": { + "type": "string", + "description": "The compression method used for indexing and querying.", + "enum": [ + "scalarQuantization", + "binaryQuantization" + ], + "x-ms-enum": { + "name": "VectorSearchCompressionKind", + "modelAsString": true, + "values": [ + { + "name": "ScalarQuantization", + "value": "scalarQuantization", + "description": "Scalar Quantization, a type of compression method. In scalar quantization, the\noriginal vectors values are compressed to a narrower type by discretizing and\nrepresenting each component of a vector using a reduced set of quantized\nvalues, thereby reducing the overall data size." + }, + { + "name": "BinaryQuantization", + "value": "binaryQuantization", + "description": "Binary Quantization, a type of compression method. In binary quantization, the\noriginal vectors values are compressed to the narrower binary type by\ndiscretizing and representing each component of a vector using binary values,\nthereby reducing the overall data size." + } + ] + } + }, + "VectorSearchCompressionTarget": { + "type": "string", + "description": "The quantized data type of compressed vector values.", + "enum": [ + "int8" + ], + "x-ms-enum": { + "name": "VectorSearchCompressionTarget", + "modelAsString": true, + "values": [ + { + "name": "Int8", + "value": "int8", + "description": "8-bit signed integer." + } + ] + } + }, + "VectorSearchProfile": { + "type": "object", + "description": "Defines a combination of configurations to use with vector search.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular vector search profile." + }, + "algorithm": { + "type": "string", + "description": "The name of the vector search algorithm configuration that specifies the\nalgorithm and optional parameters.", + "x-ms-client-name": "algorithmConfigurationName" + }, + "vectorizer": { + "type": "string", + "description": "The name of the vectorization being configured for use with vector search.", + "x-ms-client-name": "vectorizerName" + }, + "compression": { + "type": "string", + "description": "The name of the compression method configuration that specifies the compression\nmethod and optional parameters.", + "x-ms-client-name": "compressionName" + } + }, + "required": [ + "name", + "algorithm" + ] + }, + "VectorSearchVectorizer": { + "type": "object", + "description": "Specifies the vectorization method to be used during query time.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular vectorization method.", + "x-ms-client-name": "vectorizerName" + }, + "kind": { + "$ref": "#/definitions/VectorSearchVectorizerKind", + "description": "Type of VectorSearchVectorizer." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchVectorizerKind": { + "type": "string", + "description": "The vectorization method to be used during query time.", + "enum": [ + "azureOpenAI", + "customWebApi" + ], + "x-ms-enum": { + "name": "VectorSearchVectorizerKind", + "modelAsString": true, + "values": [ + { + "name": "AzureOpenAI", + "value": "azureOpenAI", + "description": "Generate embeddings using an Azure OpenAI resource at query time." + }, + { + "name": "CustomWebApi", + "value": "customWebApi", + "description": "Generate embeddings using a custom web endpoint at query time." + } + ] + } + }, + "VectorizableTextQuery": { + "type": "object", + "description": "The query parameters to use for vector search when a text value that needs to\nbe vectorized is provided.", + "properties": { + "text": { + "type": "string", + "description": "The text to be vectorized to perform a vector search query." + } + }, + "required": [ + "text" + ], + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "x-ms-discriminator-value": "text" + }, + "VectorizedQuery": { + "type": "object", + "description": "The query parameters to use for vector search when a raw vector value is\nprovided.", + "properties": { + "vector": { + "type": "array", + "description": "The vector representation of a search query.", + "items": { + "type": "number", + "format": "float" + } + } + }, + "required": [ + "vector" + ], + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "x-ms-discriminator-value": "vector" + }, + "VisualFeature": { + "type": "string", + "description": "The strings indicating what visual feature types to return.", + "enum": [ + "adult", + "brands", + "categories", + "description", + "faces", + "objects", + "tags" + ], + "x-ms-enum": { + "name": "VisualFeature", + "modelAsString": true, + "values": [ + { + "name": "Adult", + "value": "adult", + "description": "Visual features recognized as adult persons." + }, + { + "name": "Brands", + "value": "brands", + "description": "Visual features recognized as commercial brands." + }, + { + "name": "Categories", + "value": "categories", + "description": "Categories." + }, + { + "name": "Description", + "value": "description", + "description": "Description." + }, + { + "name": "Faces", + "value": "faces", + "description": "Visual features recognized as people faces." + }, + { + "name": "Objects", + "value": "objects", + "description": "Visual features recognized as objects." + }, + { + "name": "Tags", + "value": "tags", + "description": "Tags." + } + ] + } + }, + "WebApiSkill": { + "type": "object", + "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by\nhaving it call your custom code.", + "properties": { + "uri": { + "type": "string", + "description": "The url for the Web API." + }, + "httpHeaders": { + "type": "object", + "description": "The headers required to make the http request.", + "additionalProperties": { + "type": "string" + } + }, + "httpMethod": { + "type": "string", + "description": "The method for the http request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The desired batch size which indicates number of documents." + }, + "degreeOfParallelism": { + "type": "integer", + "format": "int32", + "description": "If set, the number of parallel calls that can be made to the Web API." + }, + "authResourceId": { + "type": "string", + "description": "Applies to custom skills that connect to external code in an Azure function or\nsome other application that provides the transformations. This value should be\nthe application ID created for the function or app when it was registered with\nAzure Active Directory. When specified, the custom skill connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Custom.WebApiSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "uri", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill" + }, + "WebApiVectorizer": { + "type": "object", + "description": "Specifies a user-defined vectorizer for generating the vector embedding of a\nquery string. Integration of an external vectorizer is achieved using the\ncustom Web API interface of a skillset.", + "properties": { + "customWebApiParameters": { + "$ref": "#/definitions/WebApiVectorizerParameters", + "description": "Specifies the properties of the user-defined vectorizer.", + "x-ms-client-name": "webApiParameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "x-ms-discriminator-value": "customWebApi" + }, + "WebApiVectorizerParameters": { + "type": "object", + "description": "Specifies the properties for connecting to a user-defined vectorizer.", + "properties": { + "uri": { + "type": "string", + "format": "uri", + "description": "The URI of the Web API providing the vectorizer.", + "x-ms-client-name": "url" + }, + "httpHeaders": { + "type": "object", + "description": "The headers required to make the HTTP request.", + "additionalProperties": { + "type": "string" + } + }, + "httpMethod": { + "type": "string", + "description": "The method for the HTTP request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "authResourceId": { + "type": "string", + "description": "Applies to custom endpoints that connect to external code in an Azure function\nor some other application that provides the transformations. This value should\nbe the application ID created for the function or app when it was registered\nwith Azure Active Directory. When specified, the vectorization connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." + } + } + }, + "WordDelimiterTokenFilter": { + "type": "object", + "description": "Splits words into subwords and performs optional transformations on subword\ngroups. This token filter is implemented using Apache Lucene.", + "properties": { + "generateWordParts": { + "type": "boolean", + "description": "A value indicating whether to generate part words. If set, causes parts of\nwords to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\".\nDefault is true.", + "default": true + }, + "generateNumberParts": { + "type": "boolean", + "description": "A value indicating whether to generate number subwords. Default is true.", + "default": true + }, + "catenateWords": { + "type": "boolean", + "description": "A value indicating whether maximum runs of word parts will be catenated. For\nexample, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default\nis false." + }, + "catenateNumbers": { + "type": "boolean", + "description": "A value indicating whether maximum runs of number parts will be catenated. For\nexample, if this is set to true, \"1-2\" becomes \"12\". Default is false." + }, + "catenateAll": { + "type": "boolean", + "description": "A value indicating whether all subword parts will be catenated. For example, if\nthis is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." + }, + "splitOnCaseChange": { + "type": "boolean", + "description": "A value indicating whether to split words on caseChange. For example, if this\nis set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true.", + "default": true + }, + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether original words will be preserved and added to the\nsubword list. Default is false." + }, + "splitOnNumerics": { + "type": "boolean", + "description": "A value indicating whether to split on numbers. For example, if this is set to\ntrue, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true.", + "default": true + }, + "stemEnglishPossessive": { + "type": "boolean", + "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is\ntrue.", + "default": true + }, + "protectedWords": { + "type": "array", + "description": "A list of tokens to protect from being delimited.", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.WordDelimiterTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter" + } + }, + "parameters": { + "Azure.Core.ClientRequestIdHeader": { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "x-ms-client-name": "clientRequestId" + }, + "Azure.Core.Foundations.ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "x-ms-client-name": "apiVersion" + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/openapi.json b/specification/search/data-plane/Search/stable/2024-07-01/openapi.json new file mode 100644 index 000000000000..81a3c88439c6 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/openapi.json @@ -0,0 +1,15561 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure AI Search", + "version": "2024-07-01", + "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://search.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "type": "apiKey", + "name": "api-key", + "in": "header" + }, + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": { + "https://search.azure.com/.default": "" + } + } + }, + "tags": [], + "paths": { + "/datasources": { + "get": { + "operationId": "DataSourcesOperations_List", + "description": "Lists all datasources available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListDataSourcesResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "DataSourcesOperations_Create", + "description": "Creates a new datasource.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSource", + "in": "body", + "description": "The definition of the datasource to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerDataSourceCreate" + } + } + ], + "responses": { + "200": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "201": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/datasources('{dataSourceName}')": { + "get": { + "operationId": "DataSourcesOperations_Get", + "description": "Retrieves a datasource definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "201": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "DataSourcesOperations_CreateOrUpdate", + "description": "Creates a new datasource or updates a datasource if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + }, + { + "name": "dataSource", + "in": "body", + "description": "The definition of the datasource to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerDataSourceCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "201": { + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "DataSourcesOperations_Delete", + "description": "Deletes a datasource.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers": { + "get": { + "operationId": "IndexersOperations_List", + "description": "Lists all indexers available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListIndexersResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "IndexersOperations_Create", + "description": "Creates a new indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexer", + "in": "body", + "description": "The definition of the indexer to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerCreate" + } + } + ], + "responses": { + "200": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "201": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')": { + "get": { + "operationId": "IndexersOperations_Get", + "description": "Retrieves an indexer definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "201": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "IndexersOperations_CreateOrUpdate", + "description": "Creates a new indexer or updates an indexer if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + }, + { + "name": "indexer", + "in": "body", + "description": "The definition of the indexer to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "201": { + "description": "Represents an indexer.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "IndexersOperations_Delete", + "description": "Deletes an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.reset": { + "post": { + "operationId": "IndexersOperations_Reset", + "description": "Resets the change tracking state associated with an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.run": { + "post": { + "operationId": "IndexersOperations_Run", + "description": "Runs an indexer on-demand.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.status": { + "get": { + "operationId": "IndexersOperations_GetStatus", + "description": "Returns the current status and execution history of an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerStatus" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes": { + "get": { + "operationId": "IndexesOperations_List", + "description": "Lists all indexes available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListIndexesResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "IndexesOperations_Create", + "description": "Creates a new search index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "index", + "in": "body", + "description": "The definition of the index to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexCreate" + } + } + ], + "responses": { + "200": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "201": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')": { + "get": { + "operationId": "IndexesOperations_Get", + "description": "Retrieves an index definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "201": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "IndexesOperations_CreateOrUpdate", + "description": "Creates a new search index or updates an index if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "allowIndexDowntime", + "in": "query", + "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to\nan index by taking the index offline for at least a few seconds. This\ntemporarily causes indexing and query requests to fail. Performance and write\navailability of the index can be impaired for several minutes after the index\nis updated, or longer for very large indexes.", + "required": false, + "type": "boolean" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "index", + "in": "body", + "description": "The definition of the index to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "201": { + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "IndexesOperations_Delete", + "description": "Deletes a search index and all the documents it contains. This operation is\npermanent, with no recovery option. Make sure you have a master copy of your\nindex definition, data ingestion code, and a backup of the primary data source\nin case you need to re-build the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs": { + "get": { + "operationId": "DocumentsOperations_SearchGet", + "description": "Searches for documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", + "required": false, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "$count", + "in": "query", + "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", + "required": false, + "type": "boolean", + "x-ms-client-name": "includeTotalResultCount" + }, + { + "name": "facet", + "in": "query", + "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "facets" + }, + { + "name": "$filter", + "in": "query", + "description": "The OData $filter expression to apply to the search query.", + "required": false, + "type": "string" + }, + { + "name": "highlight", + "in": "query", + "description": "The list of field names to use for hit highlights. Only searchable fields can\nbe used for hit highlighting.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "highlightFields" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "$orderby", + "in": "query", + "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, and desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no OrderBy is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "orderBy" + }, + { + "name": "queryType", + "in": "query", + "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax.", + "required": false, + "type": "string", + "enum": [ + "simple", + "full", + "semantic" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": true, + "values": [ + { + "name": "Simple", + "value": "simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." + }, + { + "name": "Full", + "value": "full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." + }, + { + "name": "Semantic", + "value": "semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." + } + ] + } + }, + { + "name": "scoringParameter", + "in": "query", + "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "scoringParameters" + }, + { + "name": "scoringProfile", + "in": "query", + "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results.", + "required": false, + "type": "string" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to which to scope the full-text search. When using\nfielded search (fieldName:searchExpression) in a full Lucene query, the field\nnames of each fielded search expression take precedence over any field names\nlisted in this parameter.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "searchMode", + "in": "query", + "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match.", + "required": false, + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": true, + "values": [ + { + "name": "Any", + "value": "any", + "description": "Any of the search terms must be matched in order to count the document as a\nmatch." + }, + { + "name": "All", + "value": "all", + "description": "All of the search terms must be matched in order to count the document as a\nmatch." + } + ] + } + }, + { + "name": "scoringStatistics", + "in": "query", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency.", + "required": false, + "type": "string", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": true, + "values": [ + { + "name": "Local", + "value": "local", + "description": "The scoring statistics will be calculated locally for lower latency." + }, + { + "name": "Global", + "value": "global", + "description": "The scoring statistics will be calculated globally for more consistent scoring." + } + ] + } + }, + { + "name": "sessionId", + "in": "query", + "description": "A value to be used to create a sticky session, which can help to get more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character.", + "required": false, + "type": "string" + }, + { + "name": "$select", + "in": "query", + "description": "The list of fields to retrieve. If unspecified, all fields marked as\nretrievable in the schema are included.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use $skip due to\nthis limitation, consider using $orderby on a totally-ordered key and $filter\nwith a range query instead.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$top", + "in": "query", + "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "semanticConfiguration", + "in": "query", + "description": "The name of the semantic configuration that lists which fields should be used\nfor semantic ranking, captions, highlights, and answers", + "required": false, + "type": "string" + }, + { + "name": "semanticErrorHandling", + "in": "query", + "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results (default).", + "required": false, + "type": "string", + "enum": [ + "partial", + "fail" + ], + "x-ms-enum": { + "name": "SemanticErrorMode", + "modelAsString": true, + "values": [ + { + "name": "Partial", + "value": "partial", + "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." + }, + { + "name": "Fail", + "value": "fail", + "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." + } + ] + } + }, + { + "name": "semanticMaxWaitInMilliseconds", + "in": "query", + "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 700 + }, + { + "name": "answers", + "in": "query", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", + "required": false, + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryAnswerType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return answers for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." + } + ] + } + }, + { + "name": "captions", + "in": "query", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", + "required": false, + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryCaptionType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return captions for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." + } + ] + } + }, + { + "name": "semanticQuery", + "in": "query", + "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/$count": { + "get": { + "operationId": "DocumentsOperations_Count", + "description": "Queries the number of documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "integer", + "format": "int32" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.autocomplete": { + "get": { + "operationId": "DocumentsOperations_AutocompleteGet", + "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "The incomplete term which should be auto-completed.", + "required": true, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "suggesterName", + "in": "query", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", + "required": true, + "type": "string" + }, + { + "name": "autocompleteMode", + "in": "query", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms.", + "required": false, + "type": "string", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": true, + "values": [ + { + "name": "OneTerm", + "value": "oneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." + }, + { + "name": "TwoTerms", + "value": "twoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and\n'medical assistant'." + }, + { + "name": "OneTermWithContext", + "value": "oneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is\n'washington medic', the suggested terms could include 'washington medicaid' and\n'washington medical'." + } + ] + } + }, + { + "name": "$filter", + "in": "query", + "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result.", + "required": false, + "type": "string" + }, + { + "name": "fuzzy", + "in": "query", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nautocomplete queries are slower and consume more resources.", + "required": false, + "type": "boolean", + "x-ms-client-name": "useFuzzyMatching" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to consider when querying for auto-completed terms.\nTarget fields must be included in the specified suggester.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$top", + "in": "query", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.index": { + "post": { + "operationId": "DocumentsOperations_Index", + "description": "Sends a batch of document write actions to the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "batch", + "in": "body", + "description": "The batch of index actions.", + "required": true, + "schema": { + "$ref": "#/definitions/IndexBatch" + } + } + ], + "responses": { + "200": { + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "207": { + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.autocomplete": { + "post": { + "operationId": "DocumentsOperations_AutocompletePost", + "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "autocompleteRequest", + "in": "body", + "description": "The definition of the Autocomplete request.", + "required": true, + "schema": { + "$ref": "#/definitions/AutocompleteRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.search": { + "post": { + "operationId": "DocumentsOperations_SearchPost", + "description": "Searches for documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "searchRequest", + "in": "body", + "description": "The definition of the Search request.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.suggest": { + "post": { + "operationId": "DocumentsOperations_SuggestPost", + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "suggestRequest", + "in": "body", + "description": "The Suggest request.", + "required": true, + "schema": { + "$ref": "#/definitions/SuggestRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.suggest": { + "get": { + "operationId": "DocumentsOperations_SuggestGet", + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", + "required": true, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "suggesterName", + "in": "query", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData expression that filters the documents considered for suggestions.", + "required": false, + "type": "string" + }, + { + "name": "fuzzy", + "in": "query", + "description": "A value indicating whether to use fuzzy matching for the suggestions query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nsuggestions queries are slower and consume more resources.", + "required": false, + "type": "boolean", + "x-ms-client-name": "useFuzzyMatching" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestions query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "$orderby", + "in": "query", + "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, or desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no $orderby is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "orderBy" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to search for the specified search text. Target fields\nmust be included in the specified suggester.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$select", + "in": "query", + "description": "The list of fields to retrieve. If unspecified, only the key field will be\nincluded in the results.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$top", + "in": "query", + "description": "The number of suggestions to retrieve. The value must be a number between 1 and\n100. The default is 5.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs('{key}')": { + "get": { + "operationId": "DocumentsOperations_Get", + "description": "Retrieves a document from the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "key", + "in": "path", + "description": "The key of the document to retrieve.", + "required": true, + "type": "string" + }, + { + "name": "$select", + "in": "query", + "description": "List of field names to retrieve for the document; Any field not retrieved will\nbe missing from the returned document.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "selectedFields" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "object", + "additionalProperties": {} + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/search.analyze": { + "post": { + "operationId": "IndexesOperations_Analyze", + "description": "Shows how an analyzer breaks text into tokens.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "The text and analyzer or analysis components to test.", + "required": true, + "schema": { + "$ref": "#/definitions/AnalyzeRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AnalyzeResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/search.stats": { + "get": { + "operationId": "IndexesOperations_GetStatistics", + "description": "Returns statistics for the given index, including a document count and storage\nusage.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/GetIndexStatisticsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/servicestats": { + "get": { + "operationId": "GetServiceStatistics", + "description": "Gets service level statistics for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchServiceStatistics" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/skillsets": { + "get": { + "operationId": "SkillsetsOperations_List", + "description": "List all skillsets in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListSkillsetsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "SkillsetsOperations_Create", + "description": "Creates a new skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillset", + "in": "body", + "description": "The skillset containing one or more skills to create in a search service.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerSkillsetCreate" + } + } + ], + "responses": { + "200": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "201": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/skillsets('{skillsetName}')": { + "get": { + "operationId": "SkillsetsOperations_Get", + "description": "Retrieves a skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "201": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "SkillsetsOperations_CreateOrUpdate", + "description": "Creates a new skillset in a search service or updates the skillset if it\nalready exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + }, + { + "name": "skillset", + "in": "body", + "description": "The skillset containing one or more skills to create or update in a search\nservice.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerSkillsetCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "201": { + "description": "A list of skills.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "SkillsetsOperations_Delete", + "description": "Deletes a skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/synonymmaps": { + "get": { + "operationId": "SynonymMapsOperations_List", + "description": "Lists all synonym maps available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListSynonymMapsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "SynonymMapsOperations_Create", + "description": "Creates a new synonym map.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMap", + "in": "body", + "description": "The definition of the synonym map to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMapCreate" + } + } + ], + "responses": { + "200": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/synonymmaps('{synonymMapName}')": { + "get": { + "operationId": "SynonymMapsOperations_Get", + "description": "Retrieves a synonym map definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "SynonymMapsOperations_CreateOrUpdate", + "description": "Creates a new synonym map or updates a synonym map if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + }, + { + "name": "synonymMap", + "in": "body", + "description": "The definition of the synonym map to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMapCreateOrUpdate" + } + } + ], + "responses": { + "200": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "Represents a synonym map definition.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "SynonymMapsOperations_Delete", + "description": "Deletes a synonym map.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AnalyzeRequest": { + "type": "object", + "description": "Specifies some text and analysis components used to break that text into tokens.", + "properties": { + "text": { + "type": "string", + "description": "The text to break into tokens." + }, + "analyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer to use to break the given text. If this parameter is\nnot specified, you must specify a tokenizer instead. The tokenizer and analyzer\nparameters are mutually exclusive." + }, + "tokenizer": { + "$ref": "#/definitions/LexicalTokenizerName", + "description": "The name of the tokenizer to use to break the given text. If this parameter is\nnot specified, you must specify an analyzer instead. The tokenizer and analyzer\nparameters are mutually exclusive." + }, + "tokenFilters": { + "type": "array", + "description": "An optional list of token filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", + "items": { + "$ref": "#/definitions/TokenFilterName" + } + }, + "charFilters": { + "type": "array", + "description": "An optional list of character filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", + "items": { + "$ref": "#/definitions/CharFilterName" + } + } + }, + "required": [ + "text" + ] + }, + "AnalyzeResult": { + "type": "object", + "description": "The result of testing an analyzer on text.", + "properties": { + "tokens": { + "type": "array", + "description": "The list of tokens returned by the analyzer specified in the request.", + "items": { + "$ref": "#/definitions/AnalyzedTokenInfo" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "tokens" + ] + }, + "AnalyzedTokenInfo": { + "type": "object", + "description": "Information about a token returned by an analyzer.", + "properties": { + "token": { + "type": "string", + "description": "The token returned by the analyzer.", + "readOnly": true + }, + "startOffset": { + "type": "integer", + "format": "int32", + "description": "The index of the first character of the token in the input text.", + "readOnly": true + }, + "endOffset": { + "type": "integer", + "format": "int32", + "description": "The index of the last character of the token in the input text.", + "readOnly": true + }, + "position": { + "type": "integer", + "format": "int32", + "description": "The position of the token in the input text relative to other tokens. The first\ntoken in the input text has position 0, the next has position 1, and so on.\nDepending on the analyzer used, some tokens might have the same position, for\nexample if they are synonyms of each other.", + "readOnly": true + } + }, + "required": [ + "token", + "startOffset", + "endOffset", + "position" + ] + }, + "AsciiFoldingTokenFilter": { + "type": "object", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether the original token will be kept. Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" + }, + "AutocompleteItem": { + "type": "object", + "description": "The result of Autocomplete requests.", + "properties": { + "text": { + "type": "string", + "description": "The completed term.", + "readOnly": true + }, + "queryPlusText": { + "type": "string", + "description": "The query along with the completed term.", + "readOnly": true + } + }, + "required": [ + "text", + "queryPlusText" + ] + }, + "AutocompleteMode": { + "type": "string", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context in\nproducing autocomplete terms.", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": true, + "values": [ + { + "name": "OneTerm", + "value": "oneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." + }, + { + "name": "TwoTerms", + "value": "twoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and\n'medical assistant'." + }, + { + "name": "OneTermWithContext", + "value": "oneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is\n'washington medic', the suggested terms could include 'washington medicaid' and\n'washington medical'." + } + ] + } + }, + "AutocompleteRequest": { + "type": "object", + "description": "Parameters for fuzzy matching, and other autocomplete query behaviors.", + "properties": { + "search": { + "type": "string", + "description": "The search text on which to base autocomplete results.", + "x-ms-client-name": "searchText" + }, + "autocompleteMode": { + "$ref": "#/definitions/AutocompleteMode", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms." + }, + "filter": { + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will autocomplete terms even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy autocomplete queries are slower and consume more resources.", + "x-ms-client-name": "useFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to consider when querying for\nauto-completed terms. Target fields must be included in the specified\nsuggester." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ] + }, + "AutocompleteResult": { + "type": "object", + "description": "The result of Autocomplete query.", + "properties": { + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was considered by the\nautocomplete request, or null if minimumCoverage was not specified in the\nrequest.", + "readOnly": true, + "x-ms-client-name": "coverage" + }, + "value": { + "type": "array", + "description": "The list of returned Autocompleted items.", + "items": { + "$ref": "#/definitions/AutocompleteItem" + }, + "readOnly": true, + "x-ms-client-name": "results", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "AzureActiveDirectoryApplicationCredentials": { + "type": "object", + "description": "Credentials of a registered application created for your search service, used\nfor authenticated access to the encryption keys stored in Azure Key Vault.", + "properties": { + "applicationId": { + "type": "string", + "description": "An AAD Application ID that was granted the required access permissions to the\nAzure Key Vault that is to be used when encrypting your data at rest. The\nApplication ID should not be confused with the Object ID for your AAD\nApplication." + }, + "applicationSecret": { + "type": "string", + "description": "The authentication key of the specified AAD application." + } + }, + "required": [ + "applicationId" + ] + }, + "AzureOpenAIEmbeddingSkill": { + "type": "object", + "description": "Allows you to generate a vector embedding for a given text input using the\nAzure OpenAI resource.", + "properties": { + "resourceUri": { + "type": "string", + "format": "uri", + "description": "The resource URI of the Azure OpenAI resource.", + "x-ms-client-name": "resourceUrl" + }, + "deploymentId": { + "type": "string", + "description": "ID of the Azure OpenAI model deployment on the designated resource.", + "x-ms-client-name": "deploymentName" + }, + "apiKey": { + "type": "string", + "description": "API key of the designated Azure OpenAI resource." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections." + }, + "modelName": { + "$ref": "#/definitions/AzureOpenAIModelName", + "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." + }, + "dimensions": { + "type": "integer", + "format": "int32", + "description": "The number of dimensions the resulting output embeddings should have. Only\nsupported in text-embedding-3 and later models." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" + }, + "AzureOpenAIModelName": { + "type": "string", + "description": "The Azure Open AI model name that will be called.", + "enum": [ + "text-embedding-ada-002", + "text-embedding-3-large", + "text-embedding-3-small" + ], + "x-ms-enum": { + "name": "AzureOpenAIModelName", + "modelAsString": true, + "values": [ + { + "name": "TextEmbeddingAda002", + "value": "text-embedding-ada-002", + "description": "TextEmbeddingAda002 model." + }, + { + "name": "TextEmbedding3Large", + "value": "text-embedding-3-large", + "description": "TextEmbedding3Large model." + }, + { + "name": "TextEmbedding3Small", + "value": "text-embedding-3-small", + "description": "TextEmbedding3Small model." + } + ] + } + }, + "AzureOpenAIVectorizer": { + "type": "object", + "description": "Specifies the Azure OpenAI resource used to vectorize a query string.", + "properties": { + "azureOpenAIParameters": { + "$ref": "#/definitions/AzureOpenAIVectorizerParameters", + "description": "Contains the parameters specific to Azure OpenAI embedding vectorization.", + "x-ms-client-name": "parameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "x-ms-discriminator-value": "azureOpenAI" + }, + "AzureOpenAIVectorizerParameters": { + "type": "object", + "description": "Specifies the parameters for connecting to the Azure OpenAI resource.", + "properties": { + "resourceUri": { + "type": "string", + "format": "uri", + "description": "The resource URI of the Azure OpenAI resource.", + "x-ms-client-name": "resourceUrl" + }, + "deploymentId": { + "type": "string", + "description": "ID of the Azure OpenAI model deployment on the designated resource.", + "x-ms-client-name": "deploymentName" + }, + "apiKey": { + "type": "string", + "description": "API key of the designated Azure OpenAI resource." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections." + }, + "modelName": { + "$ref": "#/definitions/AzureOpenAIModelName", + "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." + } + } + }, + "BM25SimilarityAlgorithm": { + "type": "object", + "description": "Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a\nTF-IDF-like algorithm that includes length normalization (controlled by the 'b'\nparameter) as well as term frequency saturation (controlled by the 'k1'\nparameter).", + "properties": { + "k1": { + "type": "number", + "format": "double", + "description": "This property controls the scaling function between the term frequency of each\nmatching terms and the final relevance score of a document-query pair. By\ndefault, a value of 1.2 is used. A value of 0.0 means the score does not scale\nwith an increase in term frequency." + }, + "b": { + "type": "number", + "format": "double", + "description": "This property controls how the length of a document affects the relevance\nscore. By default, a value of 0.75 is used. A value of 0.0 means no length\nnormalization is applied, while a value of 1.0 means the score is fully\nnormalized by the length of the document." + }, + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Search.BM25Similarity" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SimilarityAlgorithm" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.BM25Similarity" + }, + "BinaryQuantizationCompression": { + "type": "object", + "description": "Contains configuration options specific to the binary quantization compression\nmethod used during indexing and querying.", + "allOf": [ + { + "$ref": "#/definitions/VectorSearchCompression" + } + ], + "x-ms-discriminator-value": "binaryQuantization" + }, + "BlobIndexerDataToExtract": { + "type": "string", + "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", + "enum": [ + "storageMetadata", + "allMetadata", + "contentAndMetadata" + ], + "x-ms-enum": { + "name": "BlobIndexerDataToExtract", + "modelAsString": true, + "values": [ + { + "name": "StorageMetadata", + "value": "storageMetadata", + "description": "Indexes just the standard blob properties and user-specified metadata." + }, + { + "name": "AllMetadata", + "value": "allMetadata", + "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." + }, + { + "name": "ContentAndMetadata", + "value": "contentAndMetadata", + "description": "Extracts all metadata and textual content from each blob." + } + ] + } + }, + "BlobIndexerImageAction": { + "type": "string", + "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", + "enum": [ + "none", + "generateNormalizedImages", + "generateNormalizedImagePerPage" + ], + "x-ms-enum": { + "name": "BlobIndexerImageAction", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Ignores embedded images or image files in the data set. This is the default." + }, + { + "name": "GenerateNormalizedImages", + "value": "generateNormalizedImages", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." + }, + { + "name": "GenerateNormalizedImagePerPage", + "value": "generateNormalizedImagePerPage", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." + } + ] + } + }, + "BlobIndexerPDFTextRotationAlgorithm": { + "type": "string", + "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", + "enum": [ + "none", + "detectAngles" + ], + "x-ms-enum": { + "name": "BlobIndexerPDFTextRotationAlgorithm", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Leverages normal text extraction. This is the default." + }, + { + "name": "DetectAngles", + "value": "detectAngles", + "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." + } + ] + } + }, + "BlobIndexerParsingMode": { + "type": "string", + "description": "Represents the parsing mode for indexing from an Azure blob data source.", + "enum": [ + "default", + "text", + "delimitedText", + "json", + "jsonArray", + "jsonLines" + ], + "x-ms-enum": { + "name": "BlobIndexerParsingMode", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "default", + "description": "Set to default for normal file processing." + }, + { + "name": "Text", + "value": "text", + "description": "Set to text to improve indexing performance on plain text files in blob storage." + }, + { + "name": "DelimitedText", + "value": "delimitedText", + "description": "Set to delimitedText when blobs are plain CSV files." + }, + { + "name": "Json", + "value": "json", + "description": "Set to json to extract structured content from JSON files." + }, + { + "name": "JsonArray", + "value": "jsonArray", + "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." + }, + { + "name": "JsonLines", + "value": "jsonLines", + "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." + } + ] + } + }, + "CharFilter": { + "type": "object", + "description": "Base type for character filters.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the char filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "name" + ] + }, + "CharFilterName": { + "type": "string", + "description": "Defines the names of all character filters supported by the search engine.", + "enum": [ + "html_strip" + ], + "x-ms-enum": { + "name": "CharFilterName", + "modelAsString": true, + "values": [ + { + "name": "HtmlStrip", + "value": "html_strip", + "description": "A character filter that attempts to strip out HTML constructs. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" + } + ] + } + }, + "CjkBigramTokenFilter": { + "type": "object", + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. This\ntoken filter is implemented using Apache Lucene.", + "properties": { + "ignoreScripts": { + "type": "array", + "description": "The scripts to ignore.", + "items": { + "$ref": "#/definitions/CjkBigramTokenFilterScripts" + } + }, + "outputUnigrams": { + "type": "boolean", + "description": "A value indicating whether to output both unigrams and bigrams (if true), or\njust bigrams (if false). Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.CjkBigramTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter" + }, + "CjkBigramTokenFilterScripts": { + "type": "string", + "description": "Scripts that can be ignored by CjkBigramTokenFilter.", + "enum": [ + "han", + "hiragana", + "katakana", + "hangul" + ], + "x-ms-enum": { + "name": "CjkBigramTokenFilterScripts", + "modelAsString": true, + "values": [ + { + "name": "Han", + "value": "han", + "description": "Ignore Han script when forming bigrams of CJK terms." + }, + { + "name": "Hiragana", + "value": "hiragana", + "description": "Ignore Hiragana script when forming bigrams of CJK terms." + }, + { + "name": "Katakana", + "value": "katakana", + "description": "Ignore Katakana script when forming bigrams of CJK terms." + }, + { + "name": "Hangul", + "value": "hangul", + "description": "Ignore Hangul script when forming bigrams of CJK terms." + } + ] + } + }, + "ClassicSimilarityAlgorithm": { + "type": "object", + "description": "Legacy similarity algorithm which uses the Lucene TFIDFSimilarity\nimplementation of TF-IDF. This variation of TF-IDF introduces static document\nlength normalization as well as coordinating factors that penalize documents\nthat only partially match the searched queries.", + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Search.ClassicSimilarity" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SimilarityAlgorithm" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "ClassicTokenizer": { + "type": "object", + "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. This tokenizer is implemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.ClassicTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer" + }, + "CognitiveServicesAccount": { + "type": "object", + "description": "Base type for describing any Azure AI service resource attached to a skillset.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "description": { + "type": "string", + "description": "Description of the Azure AI service resource attached to a skillset." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "CognitiveServicesAccountKey": { + "type": "object", + "description": "The multi-region account key of an Azure AI service resource that's attached to\na skillset.", + "properties": { + "key": { + "type": "string", + "description": "The key used to provision the Azure AI service resource attached to a skillset." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of Azure AI service resource attached to a\nskillset.", + "enum": [ + "#Microsoft.Azure.Search.CognitiveServicesByKey" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "key", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" + }, + "CommonGramTokenFilter": { + "type": "object", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "commonWords": { + "type": "array", + "description": "The set of common words.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." + }, + "queryMode": { + "type": "boolean", + "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false.", + "x-ms-client-name": "useQueryMode" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.CommonGramTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "commonWords", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" + }, + "ConditionalSkill": { + "type": "object", + "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Util.ConditionalSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill" + }, + "CorsOptions": { + "type": "object", + "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index.", + "properties": { + "allowedOrigins": { + "type": "array", + "description": "The list of origins from which JavaScript code will be granted access to your\nindex. Can contain a list of hosts of the form\n{protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow\nall origins (not recommended).", + "items": { + "type": "string" + } + }, + "maxAgeInSeconds": { + "type": "integer", + "format": "int64", + "description": "The duration for which browsers should cache CORS preflight responses. Defaults\nto 5 minutes." + } + }, + "required": [ + "allowedOrigins" + ] + }, + "CustomAnalyzer": { + "type": "object", + "description": "Allows you to take control over the process of converting text into\nindexable/searchable tokens. It's a user-defined configuration consisting of a\nsingle predefined tokenizer and one or more filters. The tokenizer is\nresponsible for breaking text into tokens, and the filters for modifying tokens\nemitted by the tokenizer.", + "properties": { + "tokenizer": { + "$ref": "#/definitions/LexicalTokenizerName", + "description": "The name of the tokenizer to use to divide continuous text into a sequence of\ntokens, such as breaking a sentence into words." + }, + "tokenFilters": { + "type": "array", + "description": "A list of token filters used to filter out or modify the tokens generated by a\ntokenizer. For example, you can specify a lowercase filter that converts all\ncharacters to lowercase. The filters are run in the order in which they are\nlisted.", + "items": { + "$ref": "#/definitions/TokenFilterName" + } + }, + "charFilters": { + "type": "array", + "description": "A list of character filters used to prepare input text before it is processed\nby the tokenizer. For instance, they can replace certain characters or symbols.\nThe filters are run in the order in which they are listed.", + "items": { + "$ref": "#/definitions/CharFilterName" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of analyzer.", + "enum": [ + "#Microsoft.Azure.Search.CustomAnalyzer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "tokenizer", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer" + }, + "CustomEntity": { + "type": "object", + "description": "An object that contains information about the matches that were found, and\nrelated metadata.", + "properties": { + "name": { + "type": "string", + "description": "The top-level entity descriptor. Matches in the skill output will be grouped by\nthis name, and it should represent the \"normalized\" form of the text being\nfound." + }, + "description": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "type": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "subtype": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "id": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "caseSensitive": { + "type": "boolean", + "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to character casing. Sample case insensitive matches\nof \"Microsoft\" could be: microsoft, microSoft, MICROSOFT." + }, + "accentSensitive": { + "type": "boolean", + "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to accent." + }, + "fuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent\ncharacters that would still constitute a match with the entity name. The\nsmallest possible fuzziness for any given match is returned. For instance, if\nthe edit distance is set to 3, \"Windows10\" would still match \"Windows\",\n\"Windows10\" and \"Windows 7\". When case sensitivity is set to false, case\ndifferences do NOT count towards fuzziness tolerance, but otherwise do." + }, + "defaultCaseSensitive": { + "type": "boolean", + "description": "Changes the default case sensitivity value for this entity. It be used to\nchange the default value of all aliases caseSensitive values." + }, + "defaultAccentSensitive": { + "type": "boolean", + "description": "Changes the default accent sensitivity value for this entity. It be used to\nchange the default value of all aliases accentSensitive values." + }, + "defaultFuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Changes the default fuzzy edit distance value for this entity. It can be used\nto change the default value of all aliases fuzzyEditDistance values." + }, + "aliases": { + "type": "array", + "description": "An array of complex objects that can be used to specify alternative spellings\nor synonyms to the root entity name.", + "items": { + "$ref": "#/definitions/CustomEntityAlias" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name" + ] + }, + "CustomEntityAlias": { + "type": "object", + "description": "A complex object that can be used to specify alternative spellings or synonyms\nto the root entity name.", + "properties": { + "text": { + "type": "string", + "description": "The text of the alias." + }, + "caseSensitive": { + "type": "boolean", + "description": "Determine if the alias is case sensitive." + }, + "accentSensitive": { + "type": "boolean", + "description": "Determine if the alias is accent sensitive." + }, + "fuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Determine the fuzzy edit distance of the alias." + } + }, + "required": [ + "text" + ] + }, + "CustomEntityLookupSkill": { + "type": "object", + "description": "A skill looks for text from a custom, user-defined list of words and phrases.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/CustomEntityLookupSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "entitiesDefinitionUri": { + "type": "string", + "description": "Path to a JSON or CSV file containing all the target text to match against.\nThis entity definition is read at the beginning of an indexer run. Any updates\nto this file during an indexer run will not take effect until subsequent runs.\nThis config must be accessible over HTTPS." + }, + "inlineEntitiesDefinition": { + "type": "array", + "description": "The inline CustomEntity definition.", + "items": { + "$ref": "#/definitions/CustomEntity" + } + }, + "globalDefaultCaseSensitive": { + "type": "boolean", + "description": "A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity,\nthis value will be the default value." + }, + "globalDefaultAccentSensitive": { + "type": "boolean", + "description": "A global flag for AccentSensitive. If AccentSensitive is not set in\nCustomEntity, this value will be the default value." + }, + "globalDefaultFuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in\nCustomEntity, this value will be the default value." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.CustomEntityLookupSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.CustomEntityLookupSkill" + }, + "CustomEntityLookupSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by CustomEntityLookupSkill.", + "enum": [ + "da", + "de", + "en", + "es", + "fi", + "fr", + "it", + "ko", + "pt" + ], + "x-ms-enum": { + "name": "CustomEntityLookupSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + } + ] + } + }, + "DataChangeDetectionPolicy": { + "type": "object", + "description": "Base type for data change detection policies.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "DataDeletionDetectionPolicy": { + "type": "object", + "description": "Base type for data deletion detection policies.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "DataSourceCredentials": { + "type": "object", + "description": "Represents credentials that can be used to connect to a datasource.", + "properties": { + "connectionString": { + "type": "string", + "description": "The connection string for the datasource. Set to `` (with brackets)\nif you don't want the connection string updated. Set to `` if you\nwant to remove the connection string value from the datasource." + } + } + }, + "DefaultCognitiveServicesAccount": { + "type": "object", + "description": "An empty object that represents the default Azure AI service resource for a\nskillset.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of Azure AI service resource attached to a\nskillset.", + "enum": [ + "#Microsoft.Azure.Search.DefaultCognitiveServices" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices" + }, + "DictionaryDecompounderTokenFilter": { + "type": "object", + "description": "Decomposes compound words found in many Germanic languages. This token filter\nis implemented using Apache Lucene.", + "properties": { + "wordList": { + "type": "array", + "description": "The list of words to match against.", + "items": { + "type": "string" + } + }, + "minWordSize": { + "type": "integer", + "format": "int32", + "description": "The minimum word size. Only words longer than this get processed. Default is 5.\nMaximum is 300.", + "default": 5, + "maximum": 300 + }, + "minSubwordSize": { + "type": "integer", + "format": "int32", + "description": "The minimum subword size. Only subwords longer than this are outputted. Default\nis 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "maxSubwordSize": { + "type": "integer", + "format": "int32", + "description": "The maximum subword size. Only subwords shorter than this are outputted.\nDefault is 15. Maximum is 300.", + "default": 15, + "maximum": 300 + }, + "onlyLongestMatch": { + "type": "boolean", + "description": "A value indicating whether to add only the longest matching subword to the\noutput. Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "wordList", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" + }, + "DistanceScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on distance from a geographic\nlocation.", + "properties": { + "distance": { + "$ref": "#/definitions/DistanceScoringParameters", + "description": "Parameter values for the distance scoring function.", + "x-ms-client-name": "parameters" + } + }, + "required": [ + "distance" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "distance" + }, + "DistanceScoringParameters": { + "type": "object", + "description": "Provides parameter values to a distance scoring function.", + "properties": { + "referencePointParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the reference\nlocation." + }, + "boostingDistance": { + "type": "number", + "format": "double", + "description": "The distance in kilometers from the reference location where the boosting range\nends." + } + }, + "required": [ + "referencePointParameter", + "boostingDistance" + ] + }, + "DocumentExtractionSkill": { + "type": "object", + "description": "A skill that extracts content from a file within the enrichment pipeline.", + "properties": { + "parsingMode": { + "type": "string", + "description": "The parsingMode for the skill. Will be set to 'default' if not defined." + }, + "dataToExtract": { + "type": "string", + "description": "The type of data to be extracted for the skill. Will be set to\n'contentAndMetadata' if not defined." + }, + "configuration": { + "type": "object", + "description": "A dictionary of configurations for the skill.", + "additionalProperties": {} + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Util.DocumentExtractionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.DocumentExtractionSkill" + }, + "EdgeNGramTokenFilter": { + "type": "object", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", + "default": 1 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2.", + "default": 2 + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.EdgeNGramTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter" + }, + "EdgeNGramTokenFilterSide": { + "type": "string", + "description": "Specifies which side of the input an n-gram should be generated from.", + "enum": [ + "front", + "back" + ], + "x-ms-enum": { + "name": "EdgeNGramTokenFilterSide", + "modelAsString": true, + "values": [ + { + "name": "Front", + "value": "front", + "description": "Specifies that the n-gram should be generated from the front of the input." + }, + { + "name": "Back", + "value": "back", + "description": "Specifies that the n-gram should be generated from the back of the input." + } + ] + } + }, + "EdgeNGramTokenFilterV2": { + "type": "object", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" + }, + "EdgeNGramTokenizer": { + "type": "object", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). This\ntokenizer is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "tokenChars": { + "type": "array", + "description": "Character classes to keep in the tokens.", + "items": { + "$ref": "#/definitions/TokenCharacterKind" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.EdgeNGramTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer" + }, + "ElisionTokenFilter": { + "type": "object", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). This token filter is implemented using Apache Lucene.", + "properties": { + "articles": { + "type": "array", + "description": "The set of articles to remove.", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.ElisionTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter" + }, + "EntityCategory": { + "type": "string", + "description": "A string indicating what entity categories to return.", + "enum": [ + "location", + "organization", + "person", + "quantity", + "datetime", + "url", + "email" + ], + "x-ms-enum": { + "name": "EntityCategory", + "modelAsString": true, + "values": [ + { + "name": "Location", + "value": "location", + "description": "Entities describing a physical location." + }, + { + "name": "Organization", + "value": "organization", + "description": "Entities describing an organization." + }, + { + "name": "Person", + "value": "person", + "description": "Entities describing a person." + }, + { + "name": "Quantity", + "value": "quantity", + "description": "Entities describing a quantity." + }, + { + "name": "Datetime", + "value": "datetime", + "description": "Entities describing a date and time." + }, + { + "name": "Url", + "value": "url", + "description": "Entities describing a URL." + }, + { + "name": "Email", + "value": "email", + "description": "Entities describing an email address." + } + ] + } + }, + "EntityLinkingSkill": { + "type": "object", + "description": "Using the Text Analytics API, extracts linked entities from text.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.V3.EntityLinkingSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityLinkingSkill" + }, + "EntityRecognitionSkill": { + "type": "object", + "description": "This skill is deprecated. Use the V3.EntityRecognitionSkill instead.", + "properties": { + "categories": { + "type": "array", + "description": "A list of entity categories that should be extracted.", + "items": { + "$ref": "#/definitions/EntityCategory" + } + }, + "defaultLanguageCode": { + "$ref": "#/definitions/EntityRecognitionSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "includeTypelessEntities": { + "type": "boolean", + "description": "Determines whether or not to include entities which are well known but don't\nconform to a pre-defined type. If this configuration is not set (default), set\nto null or set to false, entities which don't conform to one of the pre-defined\ntypes will not be surfaced." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.EntityRecognitionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill" + }, + "EntityRecognitionSkillLanguage": { + "type": "string", + "description": "Deprecated. The language codes supported for input text by\nEntityRecognitionSkill.", + "enum": [ + "ar", + "cs", + "zh-Hans", + "zh-Hant", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "EntityRecognitionSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + } + ] + } + }, + "EntityRecognitionSkillV3": { + "type": "object", + "description": "Using the Text Analytics API, extracts entities of different types from text.", + "properties": { + "categories": { + "type": "array", + "description": "A list of entity categories that should be extracted.", + "items": { + "type": "string" + } + }, + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics API. It will\ndefault to the latest available when not specified. We recommend you do not\nspecify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" + }, + "ErrorAdditionalInfo": { + "type": "object", + "description": "The resource management error additional info.", + "properties": { + "type": { + "type": "string", + "description": "The additional info type.", + "readOnly": true + }, + "info": { + "type": "object", + "description": "The additional info.", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "The error detail.", + "properties": { + "code": { + "type": "string", + "description": "The error code.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "The error message.", + "readOnly": true + }, + "target": { + "type": "string", + "description": "The error target.", + "readOnly": true + }, + "details": { + "type": "array", + "description": "The error details.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "additionalInfo": { + "type": "array", + "description": "The error additional info.", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Common error response for all Azure Resource Manager APIs to return error\ndetails for failed operations. (This also follows the OData error response\nformat.).", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetail", + "description": "The error object." + } + } + }, + "ExhaustiveKnnAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the exhaustive KNN algorithm used\nduring querying, which will perform brute-force search across the entire vector\nindex.", + "properties": { + "exhaustiveKnnParameters": { + "$ref": "#/definitions/ExhaustiveKnnParameters", + "description": "Contains the parameters specific to exhaustive KNN algorithm.", + "x-ms-client-name": "parameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + } + ], + "x-ms-discriminator-value": "exhaustiveKnn" + }, + "ExhaustiveKnnParameters": { + "type": "object", + "description": "Contains the parameters specific to exhaustive KNN algorithm.", + "properties": { + "metric": { + "$ref": "#/definitions/VectorSearchAlgorithmMetric", + "description": "The similarity metric to use for vector comparisons." + } + } + }, + "FacetResult": { + "type": "object", + "description": "A single bucket of a facet query result. Reports the number of documents with a\nfield value falling within a particular range or having a particular value or\ninterval.", + "properties": { + "count": { + "type": "integer", + "format": "int64", + "description": "The approximate count of documents falling within the bucket described by this\nfacet.", + "readOnly": true + } + }, + "additionalProperties": {} + }, + "FieldMapping": { + "type": "object", + "description": "Defines a mapping between a field in a data source and a target field in an\nindex.", + "properties": { + "sourceFieldName": { + "type": "string", + "description": "The name of the field in the data source." + }, + "targetFieldName": { + "type": "string", + "description": "The name of the target field in the index. Same as the source field name by\ndefault." + }, + "mappingFunction": { + "$ref": "#/definitions/FieldMappingFunction", + "description": "A function to apply to each source field value before indexing." + } + }, + "required": [ + "sourceFieldName" + ] + }, + "FieldMappingFunction": { + "type": "object", + "description": "Represents a function that transforms a value from a data source before\nindexing.", + "properties": { + "name": { + "type": "string", + "description": "The name of the field mapping function." + }, + "parameters": { + "type": "object", + "description": "A dictionary of parameter name/value pairs to pass to the function. Each value\nmust be of a primitive type.", + "additionalProperties": {} + } + }, + "required": [ + "name" + ] + }, + "FreshnessScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on the value of a date-time field.", + "properties": { + "freshness": { + "$ref": "#/definitions/FreshnessScoringParameters", + "description": "Parameter values for the freshness scoring function.", + "x-ms-client-name": "parameters" + } + }, + "required": [ + "freshness" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "freshness" + }, + "FreshnessScoringParameters": { + "type": "object", + "description": "Provides parameter values to a freshness scoring function.", + "properties": { + "boostingDuration": { + "type": "string", + "format": "duration", + "description": "The expiration period after which boosting will stop for a particular document." + } + }, + "required": [ + "boostingDuration" + ] + }, + "GetIndexStatisticsResult": { + "type": "object", + "description": "Statistics for a given index. Statistics are collected periodically and are not\nguaranteed to always be up-to-date.", + "properties": { + "documentCount": { + "type": "integer", + "format": "int64", + "description": "The number of documents in the index.", + "readOnly": true + }, + "storageSize": { + "type": "integer", + "format": "int64", + "description": "The amount of storage in bytes consumed by the index.", + "readOnly": true + }, + "vectorIndexSize": { + "type": "integer", + "format": "int64", + "description": "The amount of memory in bytes consumed by vectors in the index.", + "readOnly": true + } + }, + "required": [ + "documentCount", + "storageSize", + "vectorIndexSize" + ] + }, + "HighWaterMarkChangeDetectionPolicy": { + "type": "object", + "description": "Defines a data change detection policy that captures changes based on the value\nof a high water mark column.", + "properties": { + "highWaterMarkColumnName": { + "type": "string", + "description": "The name of the high water mark column." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of data change detection policy.", + "enum": [ + "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "highWaterMarkColumnName", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" + }, + "HnswAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the HNSW approximate nearest\nneighbors algorithm used during indexing and querying. The HNSW algorithm\noffers a tunable trade-off between search speed and accuracy.", + "properties": { + "hnswParameters": { + "$ref": "#/definitions/HnswParameters", + "description": "Contains the parameters specific to HNSW algorithm.", + "x-ms-client-name": "parameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + } + ], + "x-ms-discriminator-value": "hnsw" + }, + "HnswParameters": { + "type": "object", + "description": "Contains the parameters specific to the HNSW algorithm.", + "properties": { + "m": { + "type": "integer", + "format": "int32", + "description": "The number of bi-directional links created for every new element during\nconstruction. Increasing this parameter value may improve recall and reduce\nretrieval times for datasets with high intrinsic dimensionality at the expense\nof increased memory consumption and longer indexing time.", + "default": 4, + "minimum": 4, + "maximum": 10 + }, + "efConstruction": { + "type": "integer", + "format": "int32", + "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring index time. Increasing this parameter may improve index quality, at the\nexpense of increased indexing time. At a certain point, increasing this\nparameter leads to diminishing returns.", + "default": 400, + "minimum": 100, + "maximum": 1000 + }, + "efSearch": { + "type": "integer", + "format": "int32", + "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring search time. Increasing this parameter may improve search results, at\nthe expense of slower search. At a certain point, increasing this parameter\nleads to diminishing returns.", + "default": 500, + "minimum": 100, + "maximum": 1000 + }, + "metric": { + "$ref": "#/definitions/VectorSearchAlgorithmMetric", + "description": "The similarity metric to use for vector comparisons." + } + } + }, + "ImageAnalysisSkill": { + "type": "object", + "description": "A skill that analyzes image files. It extracts a rich set of visual features\nbased on the image content.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/ImageAnalysisSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "visualFeatures": { + "type": "array", + "description": "A list of visual features.", + "items": { + "$ref": "#/definitions/VisualFeature" + } + }, + "details": { + "type": "array", + "description": "A string indicating which domain-specific details to return.", + "items": { + "$ref": "#/definitions/ImageDetail" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Vision.ImageAnalysisSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill" + }, + "ImageAnalysisSkillLanguage": { + "type": "string", + "description": "The language codes supported for input by ImageAnalysisSkill.", + "enum": [ + "ar", + "az", + "bg", + "bs", + "ca", + "cs", + "cy", + "da", + "de", + "el", + "en", + "es", + "et", + "eu", + "fi", + "fr", + "ga", + "gl", + "he", + "hi", + "hr", + "hu", + "id", + "it", + "ja", + "kk", + "ko", + "lt", + "lv", + "mk", + "ms", + "nb", + "nl", + "pl", + "prs", + "pt-BR", + "pt", + "pt-PT", + "ro", + "ru", + "sk", + "sl", + "sr-Cyrl", + "sr-Latn", + "sv", + "th", + "tr", + "uk", + "vi", + "zh", + "zh-Hans", + "zh-Hant" + ], + "x-ms-enum": { + "name": "ImageAnalysisSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "az", + "value": "az", + "description": "Azerbaijani" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian Latin" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "eu", + "value": "eu", + "description": "Basque" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "gl", + "value": "gl", + "description": "Galician" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "kk", + "value": "kk", + "description": "Kazakh" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "mk", + "value": "mk", + "description": "Macedonian" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay Malaysia" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian (Bokmal)" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "prs", + "value": "prs", + "description": "Dari" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese-Brazil" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese-Portugal" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese-Portugal" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian - Cyrillic RS" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian - Latin RS" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "th", + "value": "th", + "description": "Thai" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "uk", + "value": "uk", + "description": "Ukrainian" + }, + { + "name": "vi", + "value": "vi", + "description": "Vietnamese" + }, + { + "name": "zh", + "value": "zh", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + } + ] + } + }, + "ImageDetail": { + "type": "string", + "description": "A string indicating which domain-specific details to return.", + "enum": [ + "celebrities", + "landmarks" + ], + "x-ms-enum": { + "name": "ImageDetail", + "modelAsString": true, + "values": [ + { + "name": "Celebrities", + "value": "celebrities", + "description": "Details recognized as celebrities." + }, + { + "name": "Landmarks", + "value": "landmarks", + "description": "Details recognized as landmarks." + } + ] + } + }, + "IndexAction": { + "type": "object", + "description": "Represents an index action that operates on a document.", + "properties": { + "@search.action": { + "$ref": "#/definitions/IndexActionType", + "description": "The operation to perform on a document in an indexing batch.", + "x-ms-client-name": "actionType" + } + }, + "additionalProperties": {} + }, + "IndexActionType": { + "type": "string", + "description": "The operation to perform on a document in an indexing batch.", + "enum": [ + "upload", + "merge", + "mergeOrUpload", + "delete" + ], + "x-ms-enum": { + "name": "IndexActionType", + "modelAsString": true, + "values": [ + { + "name": "Upload", + "value": "upload", + "description": "Inserts the document into the index if it is new and updates it if it exists.\nAll fields are replaced in the update case." + }, + { + "name": "Merge", + "value": "merge", + "description": "Merges the specified field values with an existing document. If the document\ndoes not exist, the merge will fail. Any field you specify in a merge will\nreplace the existing field in the document. This also applies to collections of\nprimitive and complex types." + }, + { + "name": "MergeOrUpload", + "value": "mergeOrUpload", + "description": "Behaves like merge if a document with the given key already exists in the\nindex. If the document does not exist, it behaves like upload with a new\ndocument." + }, + { + "name": "Delete", + "value": "delete", + "description": "Removes the specified document from the index. Any field you specify in a\ndelete operation other than the key field will be ignored. If you want to\nremove an individual field from a document, use merge instead and set the field\nexplicitly to null." + } + ] + } + }, + "IndexBatch": { + "type": "object", + "description": "Contains a batch of document write actions to send to the index.", + "properties": { + "value": { + "type": "array", + "description": "The actions in the batch.", + "items": { + "$ref": "#/definitions/IndexAction" + }, + "x-ms-client-name": "actions", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "IndexDocumentsResult": { + "type": "object", + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "properties": { + "value": { + "type": "array", + "description": "The list of status information for each document in the indexing request.", + "items": { + "$ref": "#/definitions/IndexingResult" + }, + "readOnly": true, + "x-ms-client-name": "results", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "IndexProjectionMode": { + "type": "string", + "description": "Defines behavior of the index projections in relation to the rest of the\nindexer.", + "enum": [ + "skipIndexingParentDocuments", + "includeIndexingParentDocuments" + ], + "x-ms-enum": { + "name": "IndexProjectionMode", + "modelAsString": true, + "values": [ + { + "name": "SkipIndexingParentDocuments", + "value": "skipIndexingParentDocuments", + "description": "The source document will be skipped from writing into the indexer's target\nindex." + }, + { + "name": "IncludeIndexingParentDocuments", + "value": "includeIndexingParentDocuments", + "description": "The source document will be written into the indexer's target index. This is\nthe default pattern." + } + ] + } + }, + "IndexerExecutionEnvironment": { + "type": "string", + "description": "Specifies the environment in which the indexer should execute.", + "enum": [ + "standard", + "private" + ], + "x-ms-enum": { + "name": "IndexerExecutionEnvironment", + "modelAsString": true, + "values": [ + { + "name": "standard", + "value": "standard", + "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." + }, + { + "name": "private", + "value": "private", + "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." + } + ] + } + }, + "IndexerExecutionResult": { + "type": "object", + "description": "Represents the result of an individual indexer execution.", + "properties": { + "status": { + "$ref": "#/definitions/IndexerExecutionStatus", + "description": "The outcome of this indexer execution.", + "readOnly": true + }, + "errorMessage": { + "type": "string", + "description": "The error message indicating the top-level error, if any.", + "readOnly": true + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of this indexer execution.", + "readOnly": true + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of this indexer execution, if the execution has already completed.", + "readOnly": true + }, + "errors": { + "type": "array", + "description": "The item-level indexing errors.", + "items": { + "$ref": "#/definitions/SearchIndexerError" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "warnings": { + "type": "array", + "description": "The item-level indexing warnings.", + "items": { + "$ref": "#/definitions/SearchIndexerWarning" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "itemsProcessed": { + "type": "integer", + "format": "int32", + "description": "The number of items that were processed during this indexer execution. This\nincludes both successfully processed items and items where indexing was\nattempted but failed.", + "readOnly": true, + "x-ms-client-name": "itemCount" + }, + "itemsFailed": { + "type": "integer", + "format": "int32", + "description": "The number of items that failed to be indexed during this indexer execution.", + "readOnly": true, + "x-ms-client-name": "failedItemCount" + }, + "initialTrackingState": { + "type": "string", + "description": "Change tracking state with which an indexer execution started.", + "readOnly": true + }, + "finalTrackingState": { + "type": "string", + "description": "Change tracking state with which an indexer execution finished.", + "readOnly": true + } + }, + "required": [ + "status", + "errors", + "warnings", + "itemsProcessed", + "itemsFailed" + ] + }, + "IndexerExecutionStatus": { + "type": "string", + "description": "Represents the status of an individual indexer execution.", + "enum": [ + "transientFailure", + "success", + "inProgress", + "reset" + ], + "x-ms-enum": { + "name": "IndexerExecutionStatus", + "modelAsString": true, + "values": [ + { + "name": "TransientFailure", + "value": "transientFailure", + "description": "An indexer invocation has failed, but the failure may be transient. Indexer\ninvocations will continue per schedule." + }, + { + "name": "Success", + "value": "success", + "description": "Indexer execution completed successfully." + }, + { + "name": "InProgress", + "value": "inProgress", + "description": "Indexer execution is in progress." + }, + { + "name": "Reset", + "value": "reset", + "description": "Indexer has been reset." + } + ] + } + }, + "IndexerStatus": { + "type": "string", + "description": "Represents the overall indexer status.", + "enum": [ + "unknown", + "error", + "running" + ], + "x-ms-enum": { + "name": "IndexerStatus", + "modelAsString": true, + "values": [ + { + "name": "Unknown", + "value": "unknown", + "description": "Indicates that the indexer is in an unknown state." + }, + { + "name": "Error", + "value": "error", + "description": "Indicates that the indexer experienced an error that cannot be corrected\nwithout human intervention." + }, + { + "name": "Running", + "value": "running", + "description": "Indicates that the indexer is running normally." + } + ] + } + }, + "IndexingParameters": { + "type": "object", + "description": "Represents parameters for indexer execution.", + "properties": { + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The number of items that are read from the data source and indexed as a single\nbatch in order to improve performance. The default depends on the data source\ntype." + }, + "maxFailedItems": { + "type": "integer", + "format": "int32", + "description": "The maximum number of items that can fail indexing for indexer execution to\nstill be considered successful. -1 means no limit. Default is 0." + }, + "maxFailedItemsPerBatch": { + "type": "integer", + "format": "int32", + "description": "The maximum number of items in a single batch that can fail indexing for the\nbatch to still be considered successful. -1 means no limit. Default is 0." + }, + "configuration": { + "$ref": "#/definitions/IndexingParametersConfiguration", + "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type." + } + } + }, + "IndexingParametersConfiguration": { + "type": "object", + "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type.", + "properties": { + "parsingMode": { + "type": "string", + "description": "Represents the parsing mode for indexing from an Azure blob data source.", + "default": "default", + "enum": [ + "default", + "text", + "delimitedText", + "json", + "jsonArray", + "jsonLines" + ], + "x-ms-enum": { + "name": "BlobIndexerParsingMode", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "default", + "description": "Set to default for normal file processing." + }, + { + "name": "Text", + "value": "text", + "description": "Set to text to improve indexing performance on plain text files in blob storage." + }, + { + "name": "DelimitedText", + "value": "delimitedText", + "description": "Set to delimitedText when blobs are plain CSV files." + }, + { + "name": "Json", + "value": "json", + "description": "Set to json to extract structured content from JSON files." + }, + { + "name": "JsonArray", + "value": "jsonArray", + "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." + }, + { + "name": "JsonLines", + "value": "jsonLines", + "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." + } + ] + } + }, + "excludedFileNameExtensions": { + "type": "string", + "description": "Comma-delimited list of filename extensions to ignore when processing from\nAzure blob storage. For example, you could exclude \".png, .mp4\" to skip over\nthose files during indexing." + }, + "indexedFileNameExtensions": { + "type": "string", + "description": "Comma-delimited list of filename extensions to select when processing from\nAzure blob storage. For example, you could focus indexing on specific\napplication files \".docx, .pptx, .msg\" to specifically include those file\ntypes." + }, + "failOnUnsupportedContentType": { + "type": "boolean", + "description": "For Azure blobs, set to false if you want to continue indexing when an\nunsupported content type is encountered, and you don't know all the content\ntypes (file extensions) in advance." + }, + "failOnUnprocessableDocument": { + "type": "boolean", + "description": "For Azure blobs, set to false if you want to continue indexing if a document\nfails indexing." + }, + "indexStorageMetadataOnlyForOversizedDocuments": { + "type": "boolean", + "description": "For Azure blobs, set this property to true to still index storage metadata for\nblob content that is too large to process. Oversized blobs are treated as\nerrors by default. For limits on blob size, see\nhttps://learn.microsoft.com/azure/search/search-limits-quotas-capacity." + }, + "delimitedTextHeaders": { + "type": "string", + "description": "For CSV blobs, specifies a comma-delimited list of column headers, useful for\nmapping source fields to destination fields in an index." + }, + "delimitedTextDelimiter": { + "type": "string", + "description": "For CSV blobs, specifies the end-of-line single-character delimiter for CSV\nfiles where each line starts a new document (for example, \"|\")." + }, + "firstLineContainsHeaders": { + "type": "boolean", + "description": "For CSV blobs, indicates that the first (non-blank) line of each blob contains\nheaders.", + "default": true + }, + "documentRoot": { + "type": "string", + "description": "For JSON arrays, given a structured or semi-structured document, you can\nspecify a path to the array using this property." + }, + "dataToExtract": { + "type": "string", + "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", + "default": "contentAndMetadata", + "enum": [ + "storageMetadata", + "allMetadata", + "contentAndMetadata" + ], + "x-ms-enum": { + "name": "BlobIndexerDataToExtract", + "modelAsString": true, + "values": [ + { + "name": "StorageMetadata", + "value": "storageMetadata", + "description": "Indexes just the standard blob properties and user-specified metadata." + }, + { + "name": "AllMetadata", + "value": "allMetadata", + "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." + }, + { + "name": "ContentAndMetadata", + "value": "contentAndMetadata", + "description": "Extracts all metadata and textual content from each blob." + } + ] + } + }, + "imageAction": { + "type": "string", + "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", + "default": "none", + "enum": [ + "none", + "generateNormalizedImages", + "generateNormalizedImagePerPage" + ], + "x-ms-enum": { + "name": "BlobIndexerImageAction", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Ignores embedded images or image files in the data set. This is the default." + }, + { + "name": "GenerateNormalizedImages", + "value": "generateNormalizedImages", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." + }, + { + "name": "GenerateNormalizedImagePerPage", + "value": "generateNormalizedImagePerPage", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." + } + ] + } + }, + "allowSkillsetToReadFileData": { + "type": "boolean", + "description": "If true, will create a path //document//file_data that is an object\nrepresenting the original file data downloaded from your blob data source.\nThis allows you to pass the original file data to a custom skill for processing\nwithin the enrichment pipeline, or to the Document Extraction skill." + }, + "pdfTextRotationAlgorithm": { + "type": "string", + "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", + "default": "none", + "enum": [ + "none", + "detectAngles" + ], + "x-ms-enum": { + "name": "BlobIndexerPDFTextRotationAlgorithm", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Leverages normal text extraction. This is the default." + }, + { + "name": "DetectAngles", + "value": "detectAngles", + "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." + } + ] + } + }, + "executionEnvironment": { + "type": "string", + "description": "Specifies the environment in which the indexer should execute.", + "default": "standard", + "enum": [ + "standard", + "private" + ], + "x-ms-enum": { + "name": "IndexerExecutionEnvironment", + "modelAsString": true, + "values": [ + { + "name": "standard", + "value": "standard", + "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." + }, + { + "name": "private", + "value": "private", + "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." + } + ] + } + }, + "queryTimeout": { + "type": "string", + "description": "Increases the timeout beyond the 5-minute default for Azure SQL database data\nsources, specified in the format \"hh:mm:ss\".", + "default": "00:05:00" + } + }, + "additionalProperties": {} + }, + "IndexingResult": { + "type": "object", + "description": "Status of an indexing operation for a single document.", + "properties": { + "key": { + "type": "string", + "description": "The key of a document that was in the indexing request.", + "readOnly": true + }, + "errorMessage": { + "type": "string", + "description": "The error message explaining why the indexing operation failed for the document\nidentified by the key; null if indexing succeeded.", + "readOnly": true + }, + "status": { + "type": "boolean", + "description": "A value indicating whether the indexing operation succeeded for the document\nidentified by the key.", + "readOnly": true, + "x-ms-client-name": "succeeded" + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code of the indexing operation. Possible values include: 200 for a\nsuccessful update or delete, 201 for successful document creation, 400 for a\nmalformed input document, 404 for document not found, 409 for a version\nconflict, 422 when the index is temporarily unavailable, or 503 for when the\nservice is too busy.", + "readOnly": true + } + }, + "required": [ + "key", + "status", + "statusCode" + ] + }, + "IndexingSchedule": { + "type": "object", + "description": "Represents a schedule for indexer execution.", + "properties": { + "interval": { + "type": "string", + "format": "duration", + "description": "The interval of time between indexer executions." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time when an indexer should start running." + } + }, + "required": [ + "interval" + ] + }, + "InputFieldMappingEntry": { + "type": "object", + "description": "Input field mapping for a skill.", + "properties": { + "name": { + "type": "string", + "description": "The name of the input." + }, + "source": { + "type": "string", + "description": "The source of the input." + }, + "sourceContext": { + "type": "string", + "description": "The source context used for selecting recursive inputs." + }, + "inputs": { + "type": "array", + "description": "The recursive inputs used when creating a complex type.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name" + ] + }, + "KeepTokenFilter": { + "type": "object", + "description": "A token filter that only keeps tokens with text contained in a specified list\nof words. This token filter is implemented using Apache Lucene.", + "properties": { + "keepWords": { + "type": "array", + "description": "The list of words to keep.", + "items": { + "type": "string" + } + }, + "keepWordsCase": { + "type": "boolean", + "description": "A value indicating whether to lower case all words first. Default is false.", + "x-ms-client-name": "lowerCaseKeepWords" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.KeepTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "keepWords", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter" + }, + "KeyPhraseExtractionSkill": { + "type": "object", + "description": "A skill that uses text analytics for key phrase extraction.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "maxKeyPhraseCount": { + "type": "integer", + "format": "int32", + "description": "A number indicating how many key phrases to return. If absent, all identified\nkey phrases will be returned." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" + }, + "KeyPhraseExtractionSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by KeyPhraseExtractionSkill.", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv" + ], + "x-ms-enum": { + "name": "KeyPhraseExtractionSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + } + ] + } + }, + "KeywordMarkerTokenFilter": { + "type": "object", + "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", + "properties": { + "keywords": { + "type": "array", + "description": "A list of words to mark as keywords.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "keywords", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" + }, + "KeywordTokenizer": { + "type": "object", + "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "bufferSize": { + "type": "integer", + "format": "int32", + "description": "The read buffer size in bytes. Default is 256.", + "default": 256 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.KeywordTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer" + }, + "KeywordTokenizerV2": { + "type": "object", + "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 256. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 256, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.KeywordTokenizerV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2" + }, + "LanguageDetectionSkill": { + "type": "object", + "description": "A skill that detects the language of input text and reports a single language\ncode for every document submitted on the request. The language code is paired\nwith a score indicating the confidence of the analysis.", + "properties": { + "defaultCountryHint": { + "type": "string", + "description": "A country code to use as a hint to the language detection model if it cannot\ndisambiguate the language." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.LanguageDetectionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill" + }, + "LengthTokenFilter": { + "type": "object", + "description": "Removes words that are too long or too short. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "min": { + "type": "integer", + "format": "int32", + "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less\nthan the value of max.", + "maximum": 300, + "x-ms-client-name": "minLength" + }, + "max": { + "type": "integer", + "format": "int32", + "description": "The maximum length in characters. Default and maximum is 300.", + "default": 300, + "maximum": 300, + "x-ms-client-name": "maxLength" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.LengthTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter" + }, + "LexicalAnalyzer": { + "type": "object", + "description": "Base type for analyzers.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "name" + ] + }, + "LexicalAnalyzerName": { + "type": "string", + "description": "Defines the names of all text analyzers supported by the search engine.", + "enum": [ + "ar.microsoft", + "ar.lucene", + "hy.lucene", + "bn.microsoft", + "eu.lucene", + "bg.microsoft", + "bg.lucene", + "ca.microsoft", + "ca.lucene", + "zh-Hans.microsoft", + "zh-Hans.lucene", + "zh-Hant.microsoft", + "zh-Hant.lucene", + "hr.microsoft", + "cs.microsoft", + "cs.lucene", + "da.microsoft", + "da.lucene", + "nl.microsoft", + "nl.lucene", + "en.microsoft", + "en.lucene", + "et.microsoft", + "fi.microsoft", + "fi.lucene", + "fr.microsoft", + "fr.lucene", + "gl.lucene", + "de.microsoft", + "de.lucene", + "el.microsoft", + "el.lucene", + "gu.microsoft", + "he.microsoft", + "hi.microsoft", + "hi.lucene", + "hu.microsoft", + "hu.lucene", + "is.microsoft", + "id.microsoft", + "id.lucene", + "ga.lucene", + "it.microsoft", + "it.lucene", + "ja.microsoft", + "ja.lucene", + "kn.microsoft", + "ko.microsoft", + "ko.lucene", + "lv.microsoft", + "lv.lucene", + "lt.microsoft", + "ml.microsoft", + "ms.microsoft", + "mr.microsoft", + "nb.microsoft", + "no.lucene", + "fa.lucene", + "pl.microsoft", + "pl.lucene", + "pt-BR.microsoft", + "pt-BR.lucene", + "pt-PT.microsoft", + "pt-PT.lucene", + "pa.microsoft", + "ro.microsoft", + "ro.lucene", + "ru.microsoft", + "ru.lucene", + "sr-cyrillic.microsoft", + "sr-latin.microsoft", + "sk.microsoft", + "sl.microsoft", + "es.microsoft", + "es.lucene", + "sv.microsoft", + "sv.lucene", + "ta.microsoft", + "te.microsoft", + "th.microsoft", + "th.lucene", + "tr.microsoft", + "tr.lucene", + "uk.microsoft", + "ur.microsoft", + "vi.microsoft", + "standard.lucene", + "standardasciifolding.lucene", + "keyword", + "pattern", + "simple", + "stop", + "whitespace" + ], + "x-ms-enum": { + "name": "LexicalAnalyzerName", + "modelAsString": true, + "values": [ + { + "name": "ArMicrosoft", + "value": "ar.microsoft", + "description": "Microsoft analyzer for Arabic." + }, + { + "name": "ArLucene", + "value": "ar.lucene", + "description": "Lucene analyzer for Arabic." + }, + { + "name": "HyLucene", + "value": "hy.lucene", + "description": "Lucene analyzer for Armenian." + }, + { + "name": "BnMicrosoft", + "value": "bn.microsoft", + "description": "Microsoft analyzer for Bangla." + }, + { + "name": "EuLucene", + "value": "eu.lucene", + "description": "Lucene analyzer for Basque." + }, + { + "name": "BgMicrosoft", + "value": "bg.microsoft", + "description": "Microsoft analyzer for Bulgarian." + }, + { + "name": "BgLucene", + "value": "bg.lucene", + "description": "Lucene analyzer for Bulgarian." + }, + { + "name": "CaMicrosoft", + "value": "ca.microsoft", + "description": "Microsoft analyzer for Catalan." + }, + { + "name": "CaLucene", + "value": "ca.lucene", + "description": "Lucene analyzer for Catalan." + }, + { + "name": "ZhHansMicrosoft", + "value": "zh-Hans.microsoft", + "description": "Microsoft analyzer for Chinese (Simplified)." + }, + { + "name": "ZhHansLucene", + "value": "zh-Hans.lucene", + "description": "Lucene analyzer for Chinese (Simplified)." + }, + { + "name": "ZhHantMicrosoft", + "value": "zh-Hant.microsoft", + "description": "Microsoft analyzer for Chinese (Traditional)." + }, + { + "name": "ZhHantLucene", + "value": "zh-Hant.lucene", + "description": "Lucene analyzer for Chinese (Traditional)." + }, + { + "name": "HrMicrosoft", + "value": "hr.microsoft", + "description": "Microsoft analyzer for Croatian." + }, + { + "name": "CsMicrosoft", + "value": "cs.microsoft", + "description": "Microsoft analyzer for Czech." + }, + { + "name": "CsLucene", + "value": "cs.lucene", + "description": "Lucene analyzer for Czech." + }, + { + "name": "DaMicrosoft", + "value": "da.microsoft", + "description": "Microsoft analyzer for Danish." + }, + { + "name": "DaLucene", + "value": "da.lucene", + "description": "Lucene analyzer for Danish." + }, + { + "name": "NlMicrosoft", + "value": "nl.microsoft", + "description": "Microsoft analyzer for Dutch." + }, + { + "name": "NlLucene", + "value": "nl.lucene", + "description": "Lucene analyzer for Dutch." + }, + { + "name": "EnMicrosoft", + "value": "en.microsoft", + "description": "Microsoft analyzer for English." + }, + { + "name": "EnLucene", + "value": "en.lucene", + "description": "Lucene analyzer for English." + }, + { + "name": "EtMicrosoft", + "value": "et.microsoft", + "description": "Microsoft analyzer for Estonian." + }, + { + "name": "FiMicrosoft", + "value": "fi.microsoft", + "description": "Microsoft analyzer for Finnish." + }, + { + "name": "FiLucene", + "value": "fi.lucene", + "description": "Lucene analyzer for Finnish." + }, + { + "name": "FrMicrosoft", + "value": "fr.microsoft", + "description": "Microsoft analyzer for French." + }, + { + "name": "FrLucene", + "value": "fr.lucene", + "description": "Lucene analyzer for French." + }, + { + "name": "GlLucene", + "value": "gl.lucene", + "description": "Lucene analyzer for Galician." + }, + { + "name": "DeMicrosoft", + "value": "de.microsoft", + "description": "Microsoft analyzer for German." + }, + { + "name": "DeLucene", + "value": "de.lucene", + "description": "Lucene analyzer for German." + }, + { + "name": "ElMicrosoft", + "value": "el.microsoft", + "description": "Microsoft analyzer for Greek." + }, + { + "name": "ElLucene", + "value": "el.lucene", + "description": "Lucene analyzer for Greek." + }, + { + "name": "GuMicrosoft", + "value": "gu.microsoft", + "description": "Microsoft analyzer for Gujarati." + }, + { + "name": "HeMicrosoft", + "value": "he.microsoft", + "description": "Microsoft analyzer for Hebrew." + }, + { + "name": "HiMicrosoft", + "value": "hi.microsoft", + "description": "Microsoft analyzer for Hindi." + }, + { + "name": "HiLucene", + "value": "hi.lucene", + "description": "Lucene analyzer for Hindi." + }, + { + "name": "HuMicrosoft", + "value": "hu.microsoft", + "description": "Microsoft analyzer for Hungarian." + }, + { + "name": "HuLucene", + "value": "hu.lucene", + "description": "Lucene analyzer for Hungarian." + }, + { + "name": "IsMicrosoft", + "value": "is.microsoft", + "description": "Microsoft analyzer for Icelandic." + }, + { + "name": "IdMicrosoft", + "value": "id.microsoft", + "description": "Microsoft analyzer for Indonesian (Bahasa)." + }, + { + "name": "IdLucene", + "value": "id.lucene", + "description": "Lucene analyzer for Indonesian." + }, + { + "name": "GaLucene", + "value": "ga.lucene", + "description": "Lucene analyzer for Irish." + }, + { + "name": "ItMicrosoft", + "value": "it.microsoft", + "description": "Microsoft analyzer for Italian." + }, + { + "name": "ItLucene", + "value": "it.lucene", + "description": "Lucene analyzer for Italian." + }, + { + "name": "JaMicrosoft", + "value": "ja.microsoft", + "description": "Microsoft analyzer for Japanese." + }, + { + "name": "JaLucene", + "value": "ja.lucene", + "description": "Lucene analyzer for Japanese." + }, + { + "name": "KnMicrosoft", + "value": "kn.microsoft", + "description": "Microsoft analyzer for Kannada." + }, + { + "name": "KoMicrosoft", + "value": "ko.microsoft", + "description": "Microsoft analyzer for Korean." + }, + { + "name": "KoLucene", + "value": "ko.lucene", + "description": "Lucene analyzer for Korean." + }, + { + "name": "LvMicrosoft", + "value": "lv.microsoft", + "description": "Microsoft analyzer for Latvian." + }, + { + "name": "LvLucene", + "value": "lv.lucene", + "description": "Lucene analyzer for Latvian." + }, + { + "name": "LtMicrosoft", + "value": "lt.microsoft", + "description": "Microsoft analyzer for Lithuanian." + }, + { + "name": "MlMicrosoft", + "value": "ml.microsoft", + "description": "Microsoft analyzer for Malayalam." + }, + { + "name": "MsMicrosoft", + "value": "ms.microsoft", + "description": "Microsoft analyzer for Malay (Latin)." + }, + { + "name": "MrMicrosoft", + "value": "mr.microsoft", + "description": "Microsoft analyzer for Marathi." + }, + { + "name": "NbMicrosoft", + "value": "nb.microsoft", + "description": "Microsoft analyzer for Norwegian (Bokmål)." + }, + { + "name": "NoLucene", + "value": "no.lucene", + "description": "Lucene analyzer for Norwegian." + }, + { + "name": "FaLucene", + "value": "fa.lucene", + "description": "Lucene analyzer for Persian." + }, + { + "name": "PlMicrosoft", + "value": "pl.microsoft", + "description": "Microsoft analyzer for Polish." + }, + { + "name": "PlLucene", + "value": "pl.lucene", + "description": "Lucene analyzer for Polish." + }, + { + "name": "PtBrMicrosoft", + "value": "pt-BR.microsoft", + "description": "Microsoft analyzer for Portuguese (Brazil)." + }, + { + "name": "PtBrLucene", + "value": "pt-BR.lucene", + "description": "Lucene analyzer for Portuguese (Brazil)." + }, + { + "name": "PtPtMicrosoft", + "value": "pt-PT.microsoft", + "description": "Microsoft analyzer for Portuguese (Portugal)." + }, + { + "name": "PtPtLucene", + "value": "pt-PT.lucene", + "description": "Lucene analyzer for Portuguese (Portugal)." + }, + { + "name": "PaMicrosoft", + "value": "pa.microsoft", + "description": "Microsoft analyzer for Punjabi." + }, + { + "name": "RoMicrosoft", + "value": "ro.microsoft", + "description": "Microsoft analyzer for Romanian." + }, + { + "name": "RoLucene", + "value": "ro.lucene", + "description": "Lucene analyzer for Romanian." + }, + { + "name": "RuMicrosoft", + "value": "ru.microsoft", + "description": "Microsoft analyzer for Russian." + }, + { + "name": "RuLucene", + "value": "ru.lucene", + "description": "Lucene analyzer for Russian." + }, + { + "name": "SrCyrillicMicrosoft", + "value": "sr-cyrillic.microsoft", + "description": "Microsoft analyzer for Serbian (Cyrillic)." + }, + { + "name": "SrLatinMicrosoft", + "value": "sr-latin.microsoft", + "description": "Microsoft analyzer for Serbian (Latin)." + }, + { + "name": "SkMicrosoft", + "value": "sk.microsoft", + "description": "Microsoft analyzer for Slovak." + }, + { + "name": "SlMicrosoft", + "value": "sl.microsoft", + "description": "Microsoft analyzer for Slovenian." + }, + { + "name": "EsMicrosoft", + "value": "es.microsoft", + "description": "Microsoft analyzer for Spanish." + }, + { + "name": "EsLucene", + "value": "es.lucene", + "description": "Lucene analyzer for Spanish." + }, + { + "name": "SvMicrosoft", + "value": "sv.microsoft", + "description": "Microsoft analyzer for Swedish." + }, + { + "name": "SvLucene", + "value": "sv.lucene", + "description": "Lucene analyzer for Swedish." + }, + { + "name": "TaMicrosoft", + "value": "ta.microsoft", + "description": "Microsoft analyzer for Tamil." + }, + { + "name": "TeMicrosoft", + "value": "te.microsoft", + "description": "Microsoft analyzer for Telugu." + }, + { + "name": "ThMicrosoft", + "value": "th.microsoft", + "description": "Microsoft analyzer for Thai." + }, + { + "name": "ThLucene", + "value": "th.lucene", + "description": "Lucene analyzer for Thai." + }, + { + "name": "TrMicrosoft", + "value": "tr.microsoft", + "description": "Microsoft analyzer for Turkish." + }, + { + "name": "TrLucene", + "value": "tr.lucene", + "description": "Lucene analyzer for Turkish." + }, + { + "name": "UkMicrosoft", + "value": "uk.microsoft", + "description": "Microsoft analyzer for Ukrainian." + }, + { + "name": "UrMicrosoft", + "value": "ur.microsoft", + "description": "Microsoft analyzer for Urdu." + }, + { + "name": "ViMicrosoft", + "value": "vi.microsoft", + "description": "Microsoft analyzer for Vietnamese." + }, + { + "name": "StandardLucene", + "value": "standard.lucene", + "description": "Standard Lucene analyzer." + }, + { + "name": "StandardAsciiFoldingLucene", + "value": "standardasciifolding.lucene", + "description": "Standard ASCII Folding Lucene analyzer. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers" + }, + { + "name": "Keyword", + "value": "keyword", + "description": "Treats the entire content of a field as a single token. This is useful for data\nlike zip codes, ids, and some product names. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html" + }, + { + "name": "Pattern", + "value": "pattern", + "description": "Flexibly separates text into terms via a regular expression pattern. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" + }, + { + "name": "Simple", + "value": "simple", + "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html" + }, + { + "name": "Stop", + "value": "stop", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "An analyzer that uses the whitespace tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html" + } + ] + } + }, + "LexicalTokenizer": { + "type": "object", + "description": "Base type for tokenizers.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "name" + ] + }, + "LexicalTokenizerName": { + "type": "string", + "description": "Defines the names of all tokenizers supported by the search engine.", + "enum": [ + "classic", + "edgeNGram", + "keyword_v2", + "letter", + "lowercase", + "microsoft_language_tokenizer", + "microsoft_language_stemming_tokenizer", + "nGram", + "path_hierarchy_v2", + "pattern", + "standard_v2", + "uax_url_email", + "whitespace" + ], + "x-ms-enum": { + "name": "LexicalTokenizerName", + "modelAsString": true, + "values": [ + { + "name": "Classic", + "value": "classic", + "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + }, + { + "name": "EdgeNGram", + "value": "edgeNGram", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + }, + { + "name": "Keyword", + "value": "keyword_v2", + "description": "Emits the entire input as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + { + "name": "Letter", + "value": "letter", + "description": "Divides text at non-letters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" + }, + { + "name": "Lowercase", + "value": "lowercase", + "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" + }, + { + "name": "MicrosoftLanguageTokenizer", + "value": "microsoft_language_tokenizer", + "description": "Divides text using language-specific rules." + }, + { + "name": "MicrosoftLanguageStemmingTokenizer", + "value": "microsoft_language_stemming_tokenizer", + "description": "Divides text using language-specific rules and reduces words to their base\nforms." + }, + { + "name": "NGram", + "value": "nGram", + "description": "Tokenizes the input into n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + }, + { + "name": "PathHierarchy", + "value": "path_hierarchy_v2", + "description": "Tokenizer for path-like hierarchies. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + }, + { + "name": "Pattern", + "value": "pattern", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + }, + { + "name": "Standard", + "value": "standard_v2", + "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter\nand stop filter. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + { + "name": "UaxUrlEmail", + "value": "uax_url_email", + "description": "Tokenizes urls and emails as one token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "Divides text at whitespace. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" + } + ] + } + }, + "LimitTokenFilter": { + "type": "object", + "description": "Limits the number of tokens while indexing. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "maxTokenCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of tokens to produce. Default is 1.", + "default": 1 + }, + "consumeAllTokens": { + "type": "boolean", + "description": "A value indicating whether all tokens from the input must be consumed even if\nmaxTokenCount is reached. Default is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.LimitTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter" + }, + "ListDataSourcesResult": { + "type": "object", + "description": "Response from a List Datasources request. If successful, it includes the full\ndefinitions of all datasources.", + "properties": { + "value": { + "type": "array", + "description": "The datasources in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerDataSourceItem" + }, + "readOnly": true, + "x-ms-client-name": "dataSources", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListIndexersResult": { + "type": "object", + "description": "Response from a List Indexers request. If successful, it includes the full\ndefinitions of all indexers.", + "properties": { + "value": { + "type": "array", + "description": "The indexers in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerItem" + }, + "readOnly": true, + "x-ms-client-name": "indexers", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListIndexesResult": { + "type": "object", + "description": "Response from a List Indexes request. If successful, it includes the full\ndefinitions of all indexes.", + "properties": { + "value": { + "type": "array", + "description": "The indexes in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexItem" + }, + "readOnly": true, + "x-ms-client-name": "indexes", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListSkillsetsResult": { + "type": "object", + "description": "Response from a list skillset request. If successful, it includes the full\ndefinitions of all skillsets.", + "properties": { + "value": { + "type": "array", + "description": "The skillsets defined in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerSkillsetItem" + }, + "readOnly": true, + "x-ms-client-name": "skillsets", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListSynonymMapsResult": { + "type": "object", + "description": "Response from a List SynonymMaps request. If successful, it includes the full\ndefinitions of all synonym maps.", + "properties": { + "value": { + "type": "array", + "description": "The synonym maps in the Search service.", + "items": { + "$ref": "#/definitions/SynonymMapItem" + }, + "readOnly": true, + "x-ms-client-name": "synonymMaps", + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "LuceneStandardAnalyzer": { + "type": "object", + "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase\nfilter and stop filter.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of analyzer.", + "enum": [ + "#Microsoft.Azure.Search.StandardAnalyzer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer" + }, + "LuceneStandardTokenizer": { + "type": "object", + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split.", + "default": 255 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.StandardTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer" + }, + "LuceneStandardTokenizerV2": { + "type": "object", + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.StandardTokenizerV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2" + }, + "MagnitudeScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on the magnitude of a numeric field.", + "properties": { + "magnitude": { + "$ref": "#/definitions/MagnitudeScoringParameters", + "description": "Parameter values for the magnitude scoring function.", + "x-ms-client-name": "parameters" + } + }, + "required": [ + "magnitude" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "magnitude" + }, + "MagnitudeScoringParameters": { + "type": "object", + "description": "Provides parameter values to a magnitude scoring function.", + "properties": { + "boostingRangeStart": { + "type": "number", + "format": "double", + "description": "The field value at which boosting starts." + }, + "boostingRangeEnd": { + "type": "number", + "format": "double", + "description": "The field value at which boosting ends." + }, + "constantBoostBeyondRange": { + "type": "boolean", + "description": "A value indicating whether to apply a constant boost for field values beyond\nthe range end value; default is false.", + "x-ms-client-name": "shouldBoostBeyondRangeByConstant" + } + }, + "required": [ + "boostingRangeStart", + "boostingRangeEnd" + ] + }, + "MappingCharFilter": { + "type": "object", + "description": "A character filter that applies mappings defined with the mappings option.\nMatching is greedy (longest pattern matching at a given point wins).\nReplacement is allowed to be the empty string. This character filter is\nimplemented using Apache Lucene.", + "properties": { + "mappings": { + "type": "array", + "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the\ncharacter \"a\" will be replaced with character \"b\").", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of char filter.", + "enum": [ + "#Microsoft.Azure.Search.MappingCharFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "mappings", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter" + }, + "MergeSkill": { + "type": "object", + "description": "A skill for merging two or more strings into a single unified string, with an\noptional user-defined delimiter separating each component part.", + "properties": { + "insertPreTag": { + "type": "string", + "description": "The tag indicates the start of the merged text. By default, the tag is an empty\nspace.", + "default": " " + }, + "insertPostTag": { + "type": "string", + "description": "The tag indicates the end of the merged text. By default, the tag is an empty\nspace.", + "default": " " + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.MergeSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill" + }, + "MicrosoftLanguageStemmingTokenizer": { + "type": "object", + "description": "Divides text using language-specific rules and reduces words to their base\nforms.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", + "default": 255, + "maximum": 300 + }, + "isSearchTokenizer": { + "type": "boolean", + "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", + "description": "The language to use. The default is English." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" + }, + "MicrosoftLanguageTokenizer": { + "type": "object", + "description": "Divides text using language-specific rules.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", + "default": 255, + "maximum": 300 + }, + "isSearchTokenizer": { + "type": "boolean", + "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftTokenizerLanguage", + "description": "The language to use. The default is English." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" + }, + "MicrosoftStemmingTokenizerLanguage": { + "type": "string", + "description": "Lists the languages supported by the Microsoft language stemming tokenizer.", + "enum": [ + "arabic", + "bangla", + "bulgarian", + "catalan", + "croatian", + "czech", + "danish", + "dutch", + "english", + "estonian", + "finnish", + "french", + "german", + "greek", + "gujarati", + "hebrew", + "hindi", + "hungarian", + "icelandic", + "indonesian", + "italian", + "kannada", + "latvian", + "lithuanian", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovak", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "turkish", + "ukrainian", + "urdu" + ], + "x-ms-enum": { + "name": "MicrosoftStemmingTokenizerLanguage", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the Microsoft stemming tokenizer for Arabic." + }, + { + "name": "Bangla", + "value": "bangla", + "description": "Selects the Microsoft stemming tokenizer for Bangla." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Microsoft stemming tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Microsoft stemming tokenizer for Catalan." + }, + { + "name": "Croatian", + "value": "croatian", + "description": "Selects the Microsoft stemming tokenizer for Croatian." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Microsoft stemming tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Microsoft stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Microsoft stemming tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Microsoft stemming tokenizer for English." + }, + { + "name": "Estonian", + "value": "estonian", + "description": "Selects the Microsoft stemming tokenizer for Estonian." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Microsoft stemming tokenizer for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Microsoft stemming tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Microsoft stemming tokenizer for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Microsoft stemming tokenizer for Greek." + }, + { + "name": "Gujarati", + "value": "gujarati", + "description": "Selects the Microsoft stemming tokenizer for Gujarati." + }, + { + "name": "Hebrew", + "value": "hebrew", + "description": "Selects the Microsoft stemming tokenizer for Hebrew." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Microsoft stemming tokenizer for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Microsoft stemming tokenizer for Hungarian." + }, + { + "name": "Icelandic", + "value": "icelandic", + "description": "Selects the Microsoft stemming tokenizer for Icelandic." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Microsoft stemming tokenizer for Indonesian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Microsoft stemming tokenizer for Italian." + }, + { + "name": "Kannada", + "value": "kannada", + "description": "Selects the Microsoft stemming tokenizer for Kannada." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the Microsoft stemming tokenizer for Latvian." + }, + { + "name": "Lithuanian", + "value": "lithuanian", + "description": "Selects the Microsoft stemming tokenizer for Lithuanian." + }, + { + "name": "Malay", + "value": "malay", + "description": "Selects the Microsoft stemming tokenizer for Malay." + }, + { + "name": "Malayalam", + "value": "malayalam", + "description": "Selects the Microsoft stemming tokenizer for Malayalam." + }, + { + "name": "Marathi", + "value": "marathi", + "description": "Selects the Microsoft stemming tokenizer for Marathi." + }, + { + "name": "NorwegianBokmaal", + "value": "norwegianBokmaal", + "description": "Selects the Microsoft stemming tokenizer for Norwegian (Bokmål)." + }, + { + "name": "Polish", + "value": "polish", + "description": "Selects the Microsoft stemming tokenizer for Polish." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Microsoft stemming tokenizer for Portuguese." + }, + { + "name": "PortugueseBrazilian", + "value": "portugueseBrazilian", + "description": "Selects the Microsoft stemming tokenizer for Portuguese (Brazil)." + }, + { + "name": "Punjabi", + "value": "punjabi", + "description": "Selects the Microsoft stemming tokenizer for Punjabi." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Microsoft stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Microsoft stemming tokenizer for Russian." + }, + { + "name": "SerbianCyrillic", + "value": "serbianCyrillic", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Cyrillic)." + }, + { + "name": "SerbianLatin", + "value": "serbianLatin", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Latin)." + }, + { + "name": "Slovak", + "value": "slovak", + "description": "Selects the Microsoft stemming tokenizer for Slovak." + }, + { + "name": "Slovenian", + "value": "slovenian", + "description": "Selects the Microsoft stemming tokenizer for Slovenian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Microsoft stemming tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Microsoft stemming tokenizer for Swedish." + }, + { + "name": "Tamil", + "value": "tamil", + "description": "Selects the Microsoft stemming tokenizer for Tamil." + }, + { + "name": "Telugu", + "value": "telugu", + "description": "Selects the Microsoft stemming tokenizer for Telugu." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Microsoft stemming tokenizer for Turkish." + }, + { + "name": "Ukrainian", + "value": "ukrainian", + "description": "Selects the Microsoft stemming tokenizer for Ukrainian." + }, + { + "name": "Urdu", + "value": "urdu", + "description": "Selects the Microsoft stemming tokenizer for Urdu." + } + ] + } + }, + "MicrosoftTokenizerLanguage": { + "type": "string", + "description": "Lists the languages supported by the Microsoft language tokenizer.", + "enum": [ + "bangla", + "bulgarian", + "catalan", + "chineseSimplified", + "chineseTraditional", + "croatian", + "czech", + "danish", + "dutch", + "english", + "french", + "german", + "greek", + "gujarati", + "hindi", + "icelandic", + "indonesian", + "italian", + "japanese", + "kannada", + "korean", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "thai", + "ukrainian", + "urdu", + "vietnamese" + ], + "x-ms-enum": { + "name": "MicrosoftTokenizerLanguage", + "modelAsString": true, + "values": [ + { + "name": "Bangla", + "value": "bangla", + "description": "Selects the Microsoft tokenizer for Bangla." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Microsoft tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Microsoft tokenizer for Catalan." + }, + { + "name": "ChineseSimplified", + "value": "chineseSimplified", + "description": "Selects the Microsoft tokenizer for Chinese (Simplified)." + }, + { + "name": "ChineseTraditional", + "value": "chineseTraditional", + "description": "Selects the Microsoft tokenizer for Chinese (Traditional)." + }, + { + "name": "Croatian", + "value": "croatian", + "description": "Selects the Microsoft tokenizer for Croatian." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Microsoft tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Microsoft tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Microsoft tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Microsoft tokenizer for English." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Microsoft tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Microsoft tokenizer for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Microsoft tokenizer for Greek." + }, + { + "name": "Gujarati", + "value": "gujarati", + "description": "Selects the Microsoft tokenizer for Gujarati." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Microsoft tokenizer for Hindi." + }, + { + "name": "Icelandic", + "value": "icelandic", + "description": "Selects the Microsoft tokenizer for Icelandic." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Microsoft tokenizer for Indonesian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Microsoft tokenizer for Italian." + }, + { + "name": "Japanese", + "value": "japanese", + "description": "Selects the Microsoft tokenizer for Japanese." + }, + { + "name": "Kannada", + "value": "kannada", + "description": "Selects the Microsoft tokenizer for Kannada." + }, + { + "name": "Korean", + "value": "korean", + "description": "Selects the Microsoft tokenizer for Korean." + }, + { + "name": "Malay", + "value": "malay", + "description": "Selects the Microsoft tokenizer for Malay." + }, + { + "name": "Malayalam", + "value": "malayalam", + "description": "Selects the Microsoft tokenizer for Malayalam." + }, + { + "name": "Marathi", + "value": "marathi", + "description": "Selects the Microsoft tokenizer for Marathi." + }, + { + "name": "NorwegianBokmaal", + "value": "norwegianBokmaal", + "description": "Selects the Microsoft tokenizer for Norwegian (Bokmål)." + }, + { + "name": "Polish", + "value": "polish", + "description": "Selects the Microsoft tokenizer for Polish." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Microsoft tokenizer for Portuguese." + }, + { + "name": "PortugueseBrazilian", + "value": "portugueseBrazilian", + "description": "Selects the Microsoft tokenizer for Portuguese (Brazil)." + }, + { + "name": "Punjabi", + "value": "punjabi", + "description": "Selects the Microsoft tokenizer for Punjabi." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Microsoft tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Microsoft tokenizer for Russian." + }, + { + "name": "SerbianCyrillic", + "value": "serbianCyrillic", + "description": "Selects the Microsoft tokenizer for Serbian (Cyrillic)." + }, + { + "name": "SerbianLatin", + "value": "serbianLatin", + "description": "Selects the Microsoft tokenizer for Serbian (Latin)." + }, + { + "name": "Slovenian", + "value": "slovenian", + "description": "Selects the Microsoft tokenizer for Slovenian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Microsoft tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Microsoft tokenizer for Swedish." + }, + { + "name": "Tamil", + "value": "tamil", + "description": "Selects the Microsoft tokenizer for Tamil." + }, + { + "name": "Telugu", + "value": "telugu", + "description": "Selects the Microsoft tokenizer for Telugu." + }, + { + "name": "Thai", + "value": "thai", + "description": "Selects the Microsoft tokenizer for Thai." + }, + { + "name": "Ukrainian", + "value": "ukrainian", + "description": "Selects the Microsoft tokenizer for Ukrainian." + }, + { + "name": "Urdu", + "value": "urdu", + "description": "Selects the Microsoft tokenizer for Urdu." + }, + { + "name": "Vietnamese", + "value": "vietnamese", + "description": "Selects the Microsoft tokenizer for Vietnamese." + } + ] + } + }, + "NGramTokenFilter": { + "type": "object", + "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", + "default": 1 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2.", + "default": 2 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.NGramTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter" + }, + "NGramTokenFilterV2": { + "type": "object", + "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.NGramTokenFilterV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2" + }, + "NGramTokenizer": { + "type": "object", + "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "tokenChars": { + "type": "array", + "description": "Character classes to keep in the tokens.", + "items": { + "$ref": "#/definitions/TokenCharacterKind" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.NGramTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer" + }, + "OcrLineEnding": { + "type": "string", + "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\".", + "enum": [ + "space", + "carriageReturn", + "lineFeed", + "carriageReturnLineFeed" + ], + "x-ms-enum": { + "name": "OcrLineEnding", + "modelAsString": true, + "values": [ + { + "name": "Space", + "value": "space", + "description": "Lines are separated by a single space character." + }, + { + "name": "CarriageReturn", + "value": "carriageReturn", + "description": "Lines are separated by a carriage return ('\\r') character." + }, + { + "name": "LineFeed", + "value": "lineFeed", + "description": "Lines are separated by a single line feed ('\\n') character." + }, + { + "name": "CarriageReturnLineFeed", + "value": "carriageReturnLineFeed", + "description": "Lines are separated by a carriage return and a line feed ('\\r\\n') character." + } + ] + } + }, + "OcrSkill": { + "type": "object", + "description": "A skill that extracts text from image files.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/OcrSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "detectOrientation": { + "type": "boolean", + "description": "A value indicating to turn orientation detection on or not. Default is false.", + "x-ms-client-name": "shouldDetectOrientation" + }, + "lineEnding": { + "$ref": "#/definitions/OcrLineEnding", + "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\"." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Vision.OcrSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill" + }, + "OcrSkillLanguage": { + "type": "string", + "description": "The language codes supported for input by OcrSkill.", + "enum": [ + "af", + "sq", + "anp", + "ar", + "ast", + "awa", + "az", + "bfy", + "eu", + "be", + "be-cyrl", + "be-latn", + "bho", + "bi", + "brx", + "bs", + "bra", + "br", + "bg", + "bns", + "bua", + "ca", + "ceb", + "rab", + "ch", + "hne", + "zh-Hans", + "zh-Hant", + "kw", + "co", + "crh", + "hr", + "cs", + "da", + "prs", + "dhi", + "doi", + "nl", + "en", + "myv", + "et", + "fo", + "fj", + "fil", + "fi", + "fr", + "fur", + "gag", + "gl", + "de", + "gil", + "gon", + "el", + "kl", + "gvr", + "ht", + "hlb", + "hni", + "bgc", + "haw", + "hi", + "mww", + "hoc", + "hu", + "is", + "smn", + "id", + "ia", + "iu", + "ga", + "it", + "ja", + "Jns", + "jv", + "kea", + "kac", + "xnr", + "krc", + "kaa-cyrl", + "kaa", + "csb", + "kk-cyrl", + "kk-latn", + "klr", + "kha", + "quc", + "ko", + "kfq", + "kpy", + "kos", + "kum", + "ku-arab", + "ku-latn", + "kru", + "ky", + "lkt", + "la", + "lt", + "dsb", + "smj", + "lb", + "bfz", + "ms", + "mt", + "kmj", + "gv", + "mi", + "mr", + "mn", + "cnr-cyrl", + "cnr-latn", + "nap", + "ne", + "niu", + "nog", + "sme", + "nb", + "no", + "oc", + "os", + "ps", + "fa", + "pl", + "pt", + "pa", + "ksh", + "ro", + "rm", + "ru", + "sck", + "sm", + "sa", + "sat", + "sco", + "gd", + "sr", + "sr-Cyrl", + "sr-Latn", + "xsr", + "srx", + "sms", + "sk", + "sl", + "so", + "sma", + "es", + "sw", + "sv", + "tg", + "tt", + "tet", + "thf", + "to", + "tr", + "tk", + "tyv", + "hsb", + "ur", + "ug", + "uz-arab", + "uz-cyrl", + "uz", + "vo", + "wae", + "cy", + "fy", + "yua", + "za", + "zu", + "unk" + ], + "x-ms-enum": { + "name": "OcrSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "af", + "value": "af", + "description": "Afrikaans" + }, + { + "name": "sq", + "value": "sq", + "description": "Albanian" + }, + { + "name": "anp", + "value": "anp", + "description": "Angika (Devanagiri)" + }, + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "ast", + "value": "ast", + "description": "Asturian" + }, + { + "name": "awa", + "value": "awa", + "description": "Awadhi-Hindi (Devanagiri)" + }, + { + "name": "az", + "value": "az", + "description": "Azerbaijani (Latin)" + }, + { + "name": "bfy", + "value": "bfy", + "description": "Bagheli" + }, + { + "name": "eu", + "value": "eu", + "description": "Basque" + }, + { + "name": "be", + "value": "be", + "description": "Belarusian (Cyrillic and Latin)" + }, + { + "name": "be-cyrl", + "value": "be-cyrl", + "description": "Belarusian (Cyrillic)" + }, + { + "name": "be-latn", + "value": "be-latn", + "description": "Belarusian (Latin)" + }, + { + "name": "bho", + "value": "bho", + "description": "Bhojpuri-Hindi (Devanagiri)" + }, + { + "name": "bi", + "value": "bi", + "description": "Bislama" + }, + { + "name": "brx", + "value": "brx", + "description": "Bodo (Devanagiri)" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian Latin" + }, + { + "name": "bra", + "value": "bra", + "description": "Brajbha" + }, + { + "name": "br", + "value": "br", + "description": "Breton" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "bns", + "value": "bns", + "description": "Bundeli" + }, + { + "name": "bua", + "value": "bua", + "description": "Buryat (Cyrillic)" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "ceb", + "value": "ceb", + "description": "Cebuano" + }, + { + "name": "rab", + "value": "rab", + "description": "Chamling" + }, + { + "name": "ch", + "value": "ch", + "description": "Chamorro" + }, + { + "name": "hne", + "value": "hne", + "description": "Chhattisgarhi (Devanagiri)" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "name": "kw", + "value": "kw", + "description": "Cornish" + }, + { + "name": "co", + "value": "co", + "description": "Corsican" + }, + { + "name": "crh", + "value": "crh", + "description": "Crimean Tatar (Latin)" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "prs", + "value": "prs", + "description": "Dari" + }, + { + "name": "dhi", + "value": "dhi", + "description": "Dhimal (Devanagiri)" + }, + { + "name": "doi", + "value": "doi", + "description": "Dogri (Devanagiri)" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "myv", + "value": "myv", + "description": "Erzya (Cyrillic)" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fo", + "value": "fo", + "description": "Faroese" + }, + { + "name": "fj", + "value": "fj", + "description": "Fijian" + }, + { + "name": "fil", + "value": "fil", + "description": "Filipino" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "fur", + "value": "fur", + "description": "Frulian" + }, + { + "name": "gag", + "value": "gag", + "description": "Gagauz (Latin)" + }, + { + "name": "gl", + "value": "gl", + "description": "Galician" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "gil", + "value": "gil", + "description": "Gilbertese" + }, + { + "name": "gon", + "value": "gon", + "description": "Gondi (Devanagiri)" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "kl", + "value": "kl", + "description": "Greenlandic" + }, + { + "name": "gvr", + "value": "gvr", + "description": "Gurung (Devanagiri)" + }, + { + "name": "ht", + "value": "ht", + "description": "Haitian Creole" + }, + { + "name": "hlb", + "value": "hlb", + "description": "Halbi (Devanagiri)" + }, + { + "name": "hni", + "value": "hni", + "description": "Hani" + }, + { + "name": "bgc", + "value": "bgc", + "description": "Haryanvi" + }, + { + "name": "haw", + "value": "haw", + "description": "Hawaiian" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "mww", + "value": "mww", + "description": "Hmong Daw (Latin)" + }, + { + "name": "hoc", + "value": "hoc", + "description": "Ho (Devanagiri)" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "smn", + "value": "smn", + "description": "Inari Sami" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "ia", + "value": "ia", + "description": "Interlingua" + }, + { + "name": "iu", + "value": "iu", + "description": "Inuktitut (Latin)" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "Jns", + "value": "Jns", + "description": "Jaunsari (Devanagiri)" + }, + { + "name": "jv", + "value": "jv", + "description": "Javanese" + }, + { + "name": "kea", + "value": "kea", + "description": "Kabuverdianu" + }, + { + "name": "kac", + "value": "kac", + "description": "Kachin (Latin)" + }, + { + "name": "xnr", + "value": "xnr", + "description": "Kangri (Devanagiri)" + }, + { + "name": "krc", + "value": "krc", + "description": "Karachay-Balkar" + }, + { + "name": "kaa-cyrl", + "value": "kaa-cyrl", + "description": "Kara-Kalpak (Cyrillic)" + }, + { + "name": "kaa", + "value": "kaa", + "description": "Kara-Kalpak (Latin)" + }, + { + "name": "csb", + "value": "csb", + "description": "Kashubian" + }, + { + "name": "kk-cyrl", + "value": "kk-cyrl", + "description": "Kazakh (Cyrillic)" + }, + { + "name": "kk-latn", + "value": "kk-latn", + "description": "Kazakh (Latin)" + }, + { + "name": "klr", + "value": "klr", + "description": "Khaling" + }, + { + "name": "kha", + "value": "kha", + "description": "Khasi" + }, + { + "name": "quc", + "value": "quc", + "description": "K'iche'" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "kfq", + "value": "kfq", + "description": "Korku" + }, + { + "name": "kpy", + "value": "kpy", + "description": "Koryak" + }, + { + "name": "kos", + "value": "kos", + "description": "Kosraean" + }, + { + "name": "kum", + "value": "kum", + "description": "Kumyk (Cyrillic)" + }, + { + "name": "ku-arab", + "value": "ku-arab", + "description": "Kurdish (Arabic)" + }, + { + "name": "ku-latn", + "value": "ku-latn", + "description": "Kurdish (Latin)" + }, + { + "name": "kru", + "value": "kru", + "description": "Kurukh (Devanagiri)" + }, + { + "name": "ky", + "value": "ky", + "description": "Kyrgyz (Cyrillic)" + }, + { + "name": "lkt", + "value": "lkt", + "description": "Lakota" + }, + { + "name": "la", + "value": "la", + "description": "Latin" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "dsb", + "value": "dsb", + "description": "Lower Sorbian" + }, + { + "name": "smj", + "value": "smj", + "description": "Lule Sami" + }, + { + "name": "lb", + "value": "lb", + "description": "Luxembourgish" + }, + { + "name": "bfz", + "value": "bfz", + "description": "Mahasu Pahari (Devanagiri)" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay (Latin)" + }, + { + "name": "mt", + "value": "mt", + "description": "Maltese" + }, + { + "name": "kmj", + "value": "kmj", + "description": "Malto (Devanagiri)" + }, + { + "name": "gv", + "value": "gv", + "description": "Manx" + }, + { + "name": "mi", + "value": "mi", + "description": "Maori" + }, + { + "name": "mr", + "value": "mr", + "description": "Marathi" + }, + { + "name": "mn", + "value": "mn", + "description": "Mongolian (Cyrillic)" + }, + { + "name": "cnr-cyrl", + "value": "cnr-cyrl", + "description": "Montenegrin (Cyrillic)" + }, + { + "name": "cnr-latn", + "value": "cnr-latn", + "description": "Montenegrin (Latin)" + }, + { + "name": "nap", + "value": "nap", + "description": "Neapolitan" + }, + { + "name": "ne", + "value": "ne", + "description": "Nepali" + }, + { + "name": "niu", + "value": "niu", + "description": "Niuean" + }, + { + "name": "nog", + "value": "nog", + "description": "Nogay" + }, + { + "name": "sme", + "value": "sme", + "description": "Northern Sami (Latin)" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian" + }, + { + "name": "oc", + "value": "oc", + "description": "Occitan" + }, + { + "name": "os", + "value": "os", + "description": "Ossetic" + }, + { + "name": "ps", + "value": "ps", + "description": "Pashto" + }, + { + "name": "fa", + "value": "fa", + "description": "Persian" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + }, + { + "name": "pa", + "value": "pa", + "description": "Punjabi (Arabic)" + }, + { + "name": "ksh", + "value": "ksh", + "description": "Ripuarian" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "rm", + "value": "rm", + "description": "Romansh" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sck", + "value": "sck", + "description": "Sadri (Devanagiri)" + }, + { + "name": "sm", + "value": "sm", + "description": "Samoan (Latin)" + }, + { + "name": "sa", + "value": "sa", + "description": "Sanskrit (Devanagiri)" + }, + { + "name": "sat", + "value": "sat", + "description": "Santali (Devanagiri)" + }, + { + "name": "sco", + "value": "sco", + "description": "Scots" + }, + { + "name": "gd", + "value": "gd", + "description": "Scottish Gaelic" + }, + { + "name": "sr", + "value": "sr", + "description": "Serbian (Latin)" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "name": "xsr", + "value": "xsr", + "description": "Sherpa (Devanagiri)" + }, + { + "name": "srx", + "value": "srx", + "description": "Sirmauri (Devanagiri)" + }, + { + "name": "sms", + "value": "sms", + "description": "Skolt Sami" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "so", + "value": "so", + "description": "Somali (Arabic)" + }, + { + "name": "sma", + "value": "sma", + "description": "Southern Sami" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sw", + "value": "sw", + "description": "Swahili (Latin)" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tg", + "value": "tg", + "description": "Tajik (Cyrillic)" + }, + { + "name": "tt", + "value": "tt", + "description": "Tatar (Latin)" + }, + { + "name": "tet", + "value": "tet", + "description": "Tetum" + }, + { + "name": "thf", + "value": "thf", + "description": "Thangmi" + }, + { + "name": "to", + "value": "to", + "description": "Tongan" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "tk", + "value": "tk", + "description": "Turkmen (Latin)" + }, + { + "name": "tyv", + "value": "tyv", + "description": "Tuvan" + }, + { + "name": "hsb", + "value": "hsb", + "description": "Upper Sorbian" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "ug", + "value": "ug", + "description": "Uyghur (Arabic)" + }, + { + "name": "uz-arab", + "value": "uz-arab", + "description": "Uzbek (Arabic)" + }, + { + "name": "uz-cyrl", + "value": "uz-cyrl", + "description": "Uzbek (Cyrillic)" + }, + { + "name": "uz", + "value": "uz", + "description": "Uzbek (Latin)" + }, + { + "name": "vo", + "value": "vo", + "description": "Volapük" + }, + { + "name": "wae", + "value": "wae", + "description": "Walser" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "fy", + "value": "fy", + "description": "Western Frisian" + }, + { + "name": "yua", + "value": "yua", + "description": "Yucatec Maya" + }, + { + "name": "za", + "value": "za", + "description": "Zhuang" + }, + { + "name": "zu", + "value": "zu", + "description": "Zulu" + }, + { + "name": "unk", + "value": "unk", + "description": "Unknown (All)" + } + ] + } + }, + "OutputFieldMappingEntry": { + "type": "object", + "description": "Output field mapping for a skill.", + "properties": { + "name": { + "type": "string", + "description": "The name of the output defined by the skill." + }, + "targetName": { + "type": "string", + "description": "The target name of the output. It is optional and default to name." + } + }, + "required": [ + "name" + ] + }, + "PIIDetectionSkill": { + "type": "object", + "description": "Using the Text Analytics API, extracts personal information from an input text\nand gives you the option of masking it.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "maskingMode": { + "$ref": "#/definitions/PIIDetectionSkillMaskingMode", + "description": "A parameter that provides various ways to mask the personal information\ndetected in the input text. Default is 'none'." + }, + "maskingCharacter": { + "type": "string", + "description": "The character used to mask the text if the maskingMode parameter is set to\nreplace. Default is '*'.", + "maxLength": 1, + "x-ms-client-name": "mask" + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "piiCategories": { + "type": "array", + "description": "A list of PII entity categories that should be extracted and masked.", + "items": { + "type": "string" + } + }, + "domain": { + "type": "string", + "description": "If specified, will set the PII domain to include only a subset of the entity\ncategories. Possible values include: 'phi', 'none'. Default is 'none'." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.PIIDetectionSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.PIIDetectionSkill" + }, + "PIIDetectionSkillMaskingMode": { + "type": "string", + "description": "A string indicating what maskingMode to use to mask the personal information\ndetected in the input text.", + "enum": [ + "none", + "replace" + ], + "x-ms-enum": { + "name": "PIIDetectionSkillMaskingMode", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "No masking occurs and the maskedText output will not be returned." + }, + { + "name": "Replace", + "value": "replace", + "description": "Replaces the detected entities with the character given in the maskingCharacter\nparameter. The character will be repeated to the length of the detected entity\nso that the offsets will correctly correspond to both the input text as well as\nthe output maskedText." + } + ] + } + }, + "PathHierarchyTokenizerV2": { + "type": "object", + "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache\nLucene.", + "properties": { + "delimiter": { + "type": "string", + "description": "The delimiter character to use. Default is \"/\".", + "default": "/" + }, + "replacement": { + "type": "string", + "description": "A value that, if set, replaces the delimiter character. Default is \"/\".", + "default": "/" + }, + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default and maximum is 300.", + "default": 300, + "maximum": 300 + }, + "reverse": { + "type": "boolean", + "description": "A value indicating whether to generate tokens in reverse order. Default is\nfalse.", + "x-ms-client-name": "reverseTokenOrder" + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of initial tokens to skip. Default is 0.", + "x-ms-client-name": "numberOfTokensToSkip" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" + }, + "PatternAnalyzer": { + "type": "object", + "description": "Flexibly separates text into terms via a regular expression pattern. This\nanalyzer is implemented using Apache Lucene.", + "properties": { + "lowercase": { + "type": "boolean", + "description": "A value indicating whether terms should be lower-cased. Default is true.", + "default": true, + "x-ms-client-name": "lowerCaseTerms" + }, + "pattern": { + "type": "string", + "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", + "default": "\\W+" + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer" + }, + "PatternCaptureTokenFilter": { + "type": "object", + "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one\nor more patterns. This token filter is implemented using Apache Lucene.", + "properties": { + "patterns": { + "type": "array", + "description": "A list of patterns to match against each token.", + "items": { + "type": "string" + } + }, + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether to return the original token even if one of the\npatterns matches. Default is true.", + "default": true + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.PatternCaptureTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "patterns", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter" + }, + "PatternReplaceCharFilter": { + "type": "object", + "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This character filter is implemented using\nApache Lucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of char filter.", + "enum": [ + "#Microsoft.Azure.Search.PatternReplaceCharFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "pattern", + "replacement", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter" + }, + "PatternReplaceTokenFilter": { + "type": "object", + "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This token filter is implemented using Apache\nLucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.PatternReplaceTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "pattern", + "replacement", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter" + }, + "PatternTokenizer": { + "type": "object", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This\ntokenizer is implemented using Apache Lucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", + "default": "\\W+" + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "group": { + "type": "integer", + "format": "int32", + "description": "The zero-based ordinal of the matching group in the regular expression pattern\nto extract into tokens. Use -1 if you want to use the entire pattern to split\nthe input into tokens, irrespective of matching groups. Default is -1.", + "default": -1 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.PatternTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer" + }, + "PhoneticEncoder": { + "type": "string", + "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter.", + "enum": [ + "metaphone", + "doubleMetaphone", + "soundex", + "refinedSoundex", + "caverphone1", + "caverphone2", + "cologne", + "nysiis", + "koelnerPhonetik", + "haasePhonetik", + "beiderMorse" + ], + "x-ms-enum": { + "name": "PhoneticEncoder", + "modelAsString": true, + "values": [ + { + "name": "Metaphone", + "value": "metaphone", + "description": "Encodes a token into a Metaphone value." + }, + { + "name": "DoubleMetaphone", + "value": "doubleMetaphone", + "description": "Encodes a token into a double metaphone value." + }, + { + "name": "Soundex", + "value": "soundex", + "description": "Encodes a token into a Soundex value." + }, + { + "name": "RefinedSoundex", + "value": "refinedSoundex", + "description": "Encodes a token into a Refined Soundex value." + }, + { + "name": "Caverphone1", + "value": "caverphone1", + "description": "Encodes a token into a Caverphone 1.0 value." + }, + { + "name": "Caverphone2", + "value": "caverphone2", + "description": "Encodes a token into a Caverphone 2.0 value." + }, + { + "name": "Cologne", + "value": "cologne", + "description": "Encodes a token into a Cologne Phonetic value." + }, + { + "name": "Nysiis", + "value": "nysiis", + "description": "Encodes a token into a NYSIIS value." + }, + { + "name": "KoelnerPhonetik", + "value": "koelnerPhonetik", + "description": "Encodes a token using the Kölner Phonetik algorithm." + }, + { + "name": "HaasePhonetik", + "value": "haasePhonetik", + "description": "Encodes a token using the Haase refinement of the Kölner Phonetik algorithm." + }, + { + "name": "BeiderMorse", + "value": "beiderMorse", + "description": "Encodes a token into a Beider-Morse value." + } + ] + } + }, + "PhoneticTokenFilter": { + "type": "object", + "description": "Create tokens for phonetic matches. This token filter is implemented using\nApache Lucene.", + "properties": { + "encoder": { + "$ref": "#/definitions/PhoneticEncoder", + "description": "The phonetic encoder to use. Default is \"metaphone\"." + }, + "replace": { + "type": "boolean", + "description": "A value indicating whether encoded tokens should replace original tokens. If\nfalse, encoded tokens are added as synonyms. Default is true.", + "default": true, + "x-ms-client-name": "replaceOriginalTokens" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.PhoneticTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter" + }, + "QueryAnswerResult": { + "type": "object", + "description": "An answer is a text passage extracted from the contents of the most relevant\ndocuments that matched the query. Answers are extracted from the top search\nresults. Answer candidates are scored and the top answers are selected.", + "properties": { + "score": { + "type": "number", + "format": "double", + "description": "The score value represents how relevant the answer is to the query relative to\nother answers returned for the query.", + "readOnly": true + }, + "key": { + "type": "string", + "description": "The key of the document the answer was extracted from.", + "readOnly": true + }, + "text": { + "type": "string", + "description": "The text passage extracted from the document contents as the answer.", + "readOnly": true + }, + "highlights": { + "type": "string", + "description": "Same text passage as in the Text property with highlighted text phrases most\nrelevant to the query.", + "readOnly": true + } + }, + "additionalProperties": {} + }, + "QueryAnswerType": { + "type": "string", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryAnswerType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return answers for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." + } + ] + } + }, + "QueryCaptionResult": { + "type": "object", + "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type `semantic`.", + "properties": { + "text": { + "type": "string", + "description": "A representative text passage extracted from the document most relevant to the\nsearch query.", + "readOnly": true + }, + "highlights": { + "type": "string", + "description": "Same text passage as in the Text property with highlighted phrases most\nrelevant to the query.", + "readOnly": true + } + }, + "additionalProperties": {} + }, + "QueryCaptionType": { + "type": "string", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryCaptionType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return captions for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." + } + ] + } + }, + "QueryType": { + "type": "string", + "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full'\nif your query uses the Lucene query syntax.", + "enum": [ + "simple", + "full", + "semantic" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": true, + "values": [ + { + "name": "Simple", + "value": "simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." + }, + { + "name": "Full", + "value": "full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." + }, + { + "name": "Semantic", + "value": "semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." + } + ] + } + }, + "RegexFlags": { + "type": "string", + "description": "Defines flags that can be combined to control how regular expressions are used\nin the pattern analyzer and pattern tokenizer.", + "enum": [ + "CANON_EQ", + "CASE_INSENSITIVE", + "COMMENTS", + "DOTALL", + "LITERAL", + "MULTILINE", + "UNICODE_CASE", + "UNIX_LINES" + ], + "x-ms-enum": { + "name": "RegexFlags", + "modelAsString": true, + "values": [ + { + "name": "CanonEq", + "value": "CANON_EQ", + "description": "Enables canonical equivalence." + }, + { + "name": "CaseInsensitive", + "value": "CASE_INSENSITIVE", + "description": "Enables case-insensitive matching." + }, + { + "name": "Comments", + "value": "COMMENTS", + "description": "Permits whitespace and comments in the pattern." + }, + { + "name": "DotAll", + "value": "DOTALL", + "description": "Enables dotall mode." + }, + { + "name": "Literal", + "value": "LITERAL", + "description": "Enables literal parsing of the pattern." + }, + { + "name": "Multiline", + "value": "MULTILINE", + "description": "Enables multiline mode." + }, + { + "name": "UnicodeCase", + "value": "UNICODE_CASE", + "description": "Enables Unicode-aware case folding." + }, + { + "name": "UnixLines", + "value": "UNIX_LINES", + "description": "Enables Unix lines mode." + } + ] + } + }, + "ResourceCounter": { + "type": "object", + "description": "Represents a resource's usage and quota.", + "properties": { + "usage": { + "type": "integer", + "format": "int64", + "description": "The resource usage amount." + }, + "quota": { + "type": "integer", + "format": "int64", + "description": "The resource amount quota." + } + }, + "required": [ + "usage" + ] + }, + "ScalarQuantizationCompression": { + "type": "object", + "description": "Contains configuration options specific to the scalar quantization compression\nmethod used during indexing and querying.", + "properties": { + "scalarQuantizationParameters": { + "$ref": "#/definitions/ScalarQuantizationParameters", + "description": "Contains the parameters specific to Scalar Quantization.", + "x-ms-client-name": "parameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchCompression" + } + ], + "x-ms-discriminator-value": "scalarQuantization" + }, + "ScalarQuantizationParameters": { + "type": "object", + "description": "Contains the parameters specific to Scalar Quantization.", + "properties": { + "quantizedDataType": { + "$ref": "#/definitions/VectorSearchCompressionTarget", + "description": "The quantized data type of compressed vector values." + } + } + }, + "ScoringFunction": { + "type": "object", + "description": "Base type for functions that can modify document scores during ranking.", + "properties": { + "type": { + "type": "string", + "description": "Discriminator property for ScoringFunction." + }, + "fieldName": { + "type": "string", + "description": "The name of the field used as input to the scoring function." + }, + "boost": { + "type": "number", + "format": "double", + "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." + }, + "interpolation": { + "$ref": "#/definitions/ScoringFunctionInterpolation", + "description": "A value indicating how boosting will be interpolated across document scores;\ndefaults to \"Linear\"." + }, + "kind": { + "type": "string", + "description": "Type of ScoringFunction." + } + }, + "discriminator": "type", + "required": [ + "type", + "fieldName", + "boost", + "kind" + ] + }, + "ScoringFunctionAggregation": { + "type": "string", + "description": "Defines the aggregation function used to combine the results of all the scoring\nfunctions in a scoring profile.", + "enum": [ + "sum", + "average", + "minimum", + "maximum", + "firstMatching" + ], + "x-ms-enum": { + "name": "ScoringFunctionAggregation", + "modelAsString": true, + "values": [ + { + "name": "Sum", + "value": "sum", + "description": "Boost scores by the sum of all scoring function results." + }, + { + "name": "Average", + "value": "average", + "description": "Boost scores by the average of all scoring function results." + }, + { + "name": "Minimum", + "value": "minimum", + "description": "Boost scores by the minimum of all scoring function results." + }, + { + "name": "Maximum", + "value": "maximum", + "description": "Boost scores by the maximum of all scoring function results." + }, + { + "name": "FirstMatching", + "value": "firstMatching", + "description": "Boost scores using the first applicable scoring function in the scoring profile." + } + ] + } + }, + "ScoringFunctionInterpolation": { + "type": "string", + "description": "Defines the function used to interpolate score boosting across a range of\ndocuments.", + "enum": [ + "linear", + "constant", + "quadratic", + "logarithmic" + ], + "x-ms-enum": { + "name": "ScoringFunctionInterpolation", + "modelAsString": true, + "values": [ + { + "name": "Linear", + "value": "linear", + "description": "Boosts scores by a linearly decreasing amount. This is the default\ninterpolation for scoring functions." + }, + { + "name": "Constant", + "value": "constant", + "description": "Boosts scores by a constant factor." + }, + { + "name": "Quadratic", + "value": "quadratic", + "description": "Boosts scores by an amount that decreases quadratically. Boosts decrease slowly\nfor higher scores, and more quickly as the scores decrease. This interpolation\noption is not allowed in tag scoring functions." + }, + { + "name": "Logarithmic", + "value": "logarithmic", + "description": "Boosts scores by an amount that decreases logarithmically. Boosts decrease\nquickly for higher scores, and more slowly as the scores decrease. This\ninterpolation option is not allowed in tag scoring functions." + } + ] + } + }, + "ScoringProfile": { + "type": "object", + "description": "Defines parameters for a search index that influence scoring in search queries.", + "properties": { + "name": { + "type": "string", + "description": "The name of the scoring profile." + }, + "text": { + "$ref": "#/definitions/TextWeights", + "description": "Parameters that boost scoring based on text matches in certain index fields.", + "x-ms-client-name": "textWeights" + }, + "functions": { + "type": "array", + "description": "The collection of functions that influence the scoring of documents.", + "items": { + "$ref": "#/definitions/ScoringFunction" + }, + "x-ms-identifiers": [] + }, + "functionAggregation": { + "$ref": "#/definitions/ScoringFunctionAggregation", + "description": "A value indicating how the results of individual scoring functions should be\ncombined. Defaults to \"Sum\". Ignored if there are no scoring functions." + } + }, + "required": [ + "name" + ] + }, + "ScoringStatistics": { + "type": "string", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries.", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": true, + "values": [ + { + "name": "Local", + "value": "local", + "description": "The scoring statistics will be calculated locally for lower latency." + }, + { + "name": "Global", + "value": "global", + "description": "The scoring statistics will be calculated globally for more consistent scoring." + } + ] + } + }, + "SearchDocumentsResult": { + "type": "object", + "description": "Response containing search results from an index.", + "properties": { + "@odata.count": { + "type": "integer", + "format": "int64", + "description": "The total count of results found by the search operation, or null if the count\nwas not requested. If present, the count may be greater than the number of\nresults in this response. This can happen if you use the $top or $skip\nparameters, or if the query can't return all the requested documents in a\nsingle response.", + "readOnly": true, + "x-ms-client-name": "count" + }, + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not specified in the request.", + "readOnly": true, + "x-ms-client-name": "coverage" + }, + "@search.facets": { + "type": "object", + "description": "The facet query results for the search operation, organized as a collection of\nbuckets for each faceted field; null if the query did not include any facet\nexpressions.", + "additionalProperties": { + "items": { + "$ref": "#/definitions/FacetResult" + }, + "type": "array", + "x-ms-identifiers": [] + }, + "readOnly": true, + "x-ms-client-name": "facets" + }, + "@search.answers": { + "type": "array", + "description": "The answers query results for the search operation; null if the answers query\nparameter was not specified or set to 'none'.", + "items": { + "$ref": "#/definitions/QueryAnswerResult" + }, + "readOnly": true, + "x-ms-client-name": "answers", + "x-ms-identifiers": [] + }, + "@search.nextPageParameters": { + "$ref": "#/definitions/SearchRequest", + "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with\n@odata.nextLink to formulate another POST Search request to get the next part\nof the search response.", + "readOnly": true, + "x-ms-client-name": "nextPageParameters" + }, + "value": { + "type": "array", + "description": "The sequence of results returned by the query.", + "items": { + "$ref": "#/definitions/SearchResult" + }, + "readOnly": true, + "x-ms-client-name": "results", + "x-ms-identifiers": [] + }, + "@odata.nextLink": { + "type": "string", + "description": "Continuation URL returned when the query can't return all the requested results\nin a single response. You can use this URL to formulate another GET or POST\nSearch request to get the next part of the search response. Make sure to use\nthe same verb (GET or POST) as the request that produced this response.", + "readOnly": true, + "x-ms-client-name": "nextLink" + }, + "@search.semanticPartialResponseReason": { + "$ref": "#/definitions/SemanticErrorReason", + "description": "Reason that a partial response was returned for a semantic ranking request.", + "readOnly": true, + "x-ms-client-name": "semanticPartialResponseReason" + }, + "@search.semanticPartialResponseType": { + "$ref": "#/definitions/SemanticSearchResultsType", + "description": "Type of partial response that was returned for a semantic ranking request.", + "readOnly": true, + "x-ms-client-name": "semanticPartialResponseType" + } + }, + "required": [ + "value" + ] + }, + "SearchField": { + "type": "object", + "description": "Represents a field in an index definition, which describes the name, data type,\nand search behavior of a field.", + "properties": { + "name": { + "type": "string", + "description": "The name of the field, which must be unique within the fields collection of the\nindex or parent field." + }, + "type": { + "$ref": "#/definitions/SearchFieldDataType", + "description": "The data type of the field." + }, + "key": { + "type": "boolean", + "description": "A value indicating whether the field uniquely identifies documents in the\nindex. Exactly one top-level field in each index must be chosen as the key\nfield and it must be of type Edm.String. Key fields can be used to look up\ndocuments directly and update or delete specific documents. Default is false\nfor simple fields and null for complex fields." + }, + "retrievable": { + "type": "boolean", + "description": "A value indicating whether the field can be returned in a search result. You\ncan disable this option if you want to use a field (for example, margin) as a\nfilter, sorting, or scoring mechanism but do not want the field to be visible\nto the end user. This property must be true for key fields, and it must be null\nfor complex fields. This property can be changed on existing fields. Enabling\nthis property does not cause any increase in index storage requirements.\nDefault is true for simple fields, false for vector fields, and null for\ncomplex fields." + }, + "stored": { + "type": "boolean", + "description": "An immutable value indicating whether the field will be persisted separately on\ndisk to be returned in a search result. You can disable this option if you\ndon't plan to return the field contents in a search response to save on storage\noverhead. This can only be set during index creation and only for vector\nfields. This property cannot be changed for existing fields or set as false for\nnew fields. If this property is set as false, the property 'retrievable' must\nalso be set to false. This property must be true or unset for key fields, for\nnew fields, and for non-vector fields, and it must be null for complex fields.\nDisabling this property will reduce index storage requirements. The default is\ntrue for vector fields." + }, + "searchable": { + "type": "boolean", + "description": "A value indicating whether the field is full-text searchable. This means it\nwill undergo analysis such as word-breaking during indexing. If you set a\nsearchable field to a value like \"sunny day\", internally it will be split into\nthe individual tokens \"sunny\" and \"day\". This enables full-text searches for\nthese terms. Fields of type Edm.String or Collection(Edm.String) are searchable\nby default. This property must be false for simple fields of other non-string\ndata types, and it must be null for complex fields. Note: searchable fields\nconsume extra space in your index to accommodate additional tokenized versions\nof the field value for full-text searches. If you want to save space in your\nindex and you don't need a field to be included in searches, set searchable to\nfalse." + }, + "filterable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $filter\nqueries. filterable differs from searchable in how strings are handled. Fields\nof type Edm.String or Collection(Edm.String) that are filterable do not undergo\nword-breaking, so comparisons are for exact matches only. For example, if you\nset such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches,\nbut $filter=f eq 'sunny day' will. This property must be null for complex\nfields. Default is true for simple fields and null for complex fields." + }, + "sortable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $orderby\nexpressions. By default, the search engine sorts results by score, but in many\nexperiences users will want to sort by fields in the documents. A simple field\ncan be sortable only if it is single-valued (it has a single value in the scope\nof the parent document). Simple collection fields cannot be sortable, since\nthey are multi-valued. Simple sub-fields of complex collections are also\nmulti-valued, and therefore cannot be sortable. This is true whether it's an\nimmediate parent field, or an ancestor field, that's the complex collection.\nComplex fields cannot be sortable and the sortable property must be null for\nsuch fields. The default for sortable is true for single-valued simple fields,\nfalse for multi-valued simple fields, and null for complex fields." + }, + "facetable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in facet\nqueries. Typically used in a presentation of search results that includes hit\ncount by category (for example, search for digital cameras and see hits by\nbrand, by megapixels, by price, and so on). This property must be null for\ncomplex fields. Fields of type Edm.GeographyPoint or\nCollection(Edm.GeographyPoint) cannot be facetable. Default is true for all\nother simple fields." + }, + "analyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer to use for the field. This option can be used only\nwith searchable fields and it can't be set together with either searchAnalyzer\nor indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the\nfield. Must be null for complex fields." + }, + "searchAnalyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at search time for the field. This option can be\nused only with searchable fields. It must be set together with indexAnalyzer\nand it cannot be set together with the analyzer option. This property cannot be\nset to the name of a language analyzer; use the analyzer property instead if\nyou need a language analyzer. This analyzer can be updated on an existing\nfield. Must be null for complex fields." + }, + "indexAnalyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at indexing time for the field. This option can\nbe used only with searchable fields. It must be set together with\nsearchAnalyzer and it cannot be set together with the analyzer option. This\nproperty cannot be set to the name of a language analyzer; use the analyzer\nproperty instead if you need a language analyzer. Once the analyzer is chosen,\nit cannot be changed for the field. Must be null for complex fields." + }, + "dimensions": { + "type": "integer", + "format": "int32", + "description": "The dimensionality of the vector field.", + "minimum": 2, + "maximum": 2048, + "x-ms-client-name": "vectorSearchDimensions" + }, + "vectorSearchProfile": { + "type": "string", + "description": "The name of the vector search profile that specifies the algorithm and\nvectorizer to use when searching the vector field.", + "x-ms-client-name": "vectorSearchProfileName" + }, + "vectorEncoding": { + "$ref": "#/definitions/VectorEncodingFormat", + "description": "The encoding format to interpret the field contents.", + "x-ms-client-name": "vectorEncodingFormat" + }, + "synonymMaps": { + "type": "array", + "description": "A list of the names of synonym maps to associate with this field. This option\ncan be used only with searchable fields. Currently only one synonym map per\nfield is supported. Assigning a synonym map to a field ensures that query terms\ntargeting that field are expanded at query-time using the rules in the synonym\nmap. This attribute can be changed on existing fields. Must be null or an empty\ncollection for complex fields.", + "items": { + "type": "string" + } + }, + "fields": { + "type": "array", + "description": "A list of sub-fields if this is a field of type Edm.ComplexType or\nCollection(Edm.ComplexType). Must be null or empty for simple fields.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name", + "type" + ] + }, + "SearchFieldDataType": { + "type": "string", + "description": "Defines the data type of a field in a search index.", + "enum": [ + "Edm.String", + "Edm.Int32", + "Edm.Int64", + "Edm.Double", + "Edm.Boolean", + "Edm.DateTimeOffset", + "Edm.GeographyPoint", + "Edm.ComplexType", + "Edm.Single", + "Edm.Half", + "Edm.Int16", + "Edm.SByte", + "Edm.Byte" + ], + "x-ms-enum": { + "name": "SearchFieldDataType", + "modelAsString": true, + "values": [ + { + "name": "String", + "value": "Edm.String", + "description": "Indicates that a field contains a string." + }, + { + "name": "Int32", + "value": "Edm.Int32", + "description": "Indicates that a field contains a 32-bit signed integer." + }, + { + "name": "Int64", + "value": "Edm.Int64", + "description": "Indicates that a field contains a 64-bit signed integer." + }, + { + "name": "Double", + "value": "Edm.Double", + "description": "Indicates that a field contains an IEEE double-precision floating point number." + }, + { + "name": "Boolean", + "value": "Edm.Boolean", + "description": "Indicates that a field contains a Boolean value (true or false)." + }, + { + "name": "DateTimeOffset", + "value": "Edm.DateTimeOffset", + "description": "Indicates that a field contains a date/time value, including timezone\ninformation." + }, + { + "name": "GeographyPoint", + "value": "Edm.GeographyPoint", + "description": "Indicates that a field contains a geo-location in terms of longitude and\nlatitude." + }, + { + "name": "Complex", + "value": "Edm.ComplexType", + "description": "Indicates that a field contains one or more complex objects that in turn have\nsub-fields of other types." + }, + { + "name": "Single", + "value": "Edm.Single", + "description": "Indicates that a field contains a single-precision floating point number. This\nis only valid when used with Collection(Edm.Single)." + }, + { + "name": "Half", + "value": "Edm.Half", + "description": "Indicates that a field contains a half-precision floating point number. This is\nonly valid when used with Collection(Edm.Half)." + }, + { + "name": "Int16", + "value": "Edm.Int16", + "description": "Indicates that a field contains a 16-bit signed integer. This is only valid\nwhen used with Collection(Edm.Int16)." + }, + { + "name": "SByte", + "value": "Edm.SByte", + "description": "Indicates that a field contains a 8-bit signed integer. This is only valid when\nused with Collection(Edm.SByte)." + }, + { + "name": "Byte", + "value": "Edm.Byte", + "description": "Indicates that a field contains a 8-bit unsigned integer. This is only valid\nwhen used with Collection(Edm.Byte)." + } + ] + } + }, + "SearchIndex": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "x-ms-client-name": "semanticSearch" + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "name", + "fields" + ] + }, + "SearchIndexCreate": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "x-ms-client-name": "semanticSearch" + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "fields" + ] + }, + "SearchIndexCreateOrUpdate": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "x-ms-client-name": "semanticSearch" + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "fields" + ] + }, + "SearchIndexItem": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "x-ms-client-name": "semanticSearch" + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "fields" + ] + }, + "SearchIndexer": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false.", + "x-ms-client-name": "isDisabled" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerCreate": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false.", + "x-ms-client-name": "isDisabled" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerCreateOrUpdate": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false.", + "x-ms-client-name": "isDisabled" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerDataContainer": { + "type": "object", + "description": "Represents information about the entity (such as Azure SQL table or CosmosDB\ncollection) that will be indexed.", + "properties": { + "name": { + "type": "string", + "description": "The name of the table or view (for Azure SQL data source) or collection (for\nCosmosDB data source) that will be indexed." + }, + "query": { + "type": "string", + "description": "A query that is applied to this data container. The syntax and meaning of this\nparameter is datasource-specific. Not supported by Azure SQL datasources." + } + }, + "required": [ + "name" + ] + }, + "SearchIndexerDataIdentity": { + "type": "object", + "description": "Abstract base type for data identities.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "SearchIndexerDataNoneIdentity": { + "type": "object", + "description": "Clears the identity property of a datasource.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of identity.", + "enum": [ + "#Microsoft.Azure.Search.DataNoneIdentity" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerDataIdentity" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataNoneIdentity" + }, + "SearchIndexerDataSource": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceCreate": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceCreateOrUpdate": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceItem": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceType": { + "type": "string", + "description": "Defines the type of a datasource.", + "enum": [ + "azuresql", + "cosmosdb", + "azureblob", + "azuretable", + "mysql", + "adlsgen2" + ], + "x-ms-enum": { + "name": "SearchIndexerDataSourceType", + "modelAsString": true, + "values": [ + { + "name": "AzureSql", + "value": "azuresql", + "description": "Indicates an Azure SQL datasource." + }, + { + "name": "CosmosDb", + "value": "cosmosdb", + "description": "Indicates a CosmosDB datasource." + }, + { + "name": "AzureBlob", + "value": "azureblob", + "description": "Indicates an Azure Blob datasource." + }, + { + "name": "AzureTable", + "value": "azuretable", + "description": "Indicates an Azure Table datasource." + }, + { + "name": "MySql", + "value": "mysql", + "description": "Indicates a MySql datasource." + }, + { + "name": "AdlsGen2", + "value": "adlsgen2", + "description": "Indicates an ADLS Gen2 datasource." + } + ] + } + }, + "SearchIndexerDataUserAssignedIdentity": { + "type": "object", + "description": "Specifies the identity for a datasource to use.", + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The fully qualified Azure resource Id of a user assigned managed identity\ntypically in the form\n\"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\"\nthat should have been assigned to the search service.", + "x-ms-client-name": "resourceId" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of identity.", + "enum": [ + "#Microsoft.Azure.Search.DataUserAssignedIdentity" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "userAssignedIdentity", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerDataIdentity" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataUserAssignedIdentity" + }, + "SearchIndexerError": { + "type": "object", + "description": "Represents an item- or document-level indexing error.", + "properties": { + "key": { + "type": "string", + "description": "The key of the item for which indexing failed.", + "readOnly": true + }, + "errorMessage": { + "type": "string", + "description": "The message describing the error that occurred while processing the item.", + "readOnly": true + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code indicating why the indexing operation failed. Possible values\ninclude: 400 for a malformed input document, 404 for document not found, 409\nfor a version conflict, 422 when the index is temporarily unavailable, or 503\nfor when the service is too busy.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the source at which the error originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable.", + "readOnly": true + }, + "details": { + "type": "string", + "description": "Additional, verbose details about the error to assist in debugging the indexer.\nThis may not be always available.", + "readOnly": true + }, + "documentationLink": { + "type": "string", + "description": "A link to a troubleshooting guide for these classes of errors. This may not be\nalways available.", + "readOnly": true + } + }, + "required": [ + "errorMessage", + "statusCode" + ] + }, + "SearchIndexerIndexProjection": { + "type": "object", + "description": "Definition of additional projections to secondary search indexes.", + "properties": { + "selectors": { + "type": "array", + "description": "A list of projections to be performed to secondary search indexes.", + "items": { + "$ref": "#/definitions/SearchIndexerIndexProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "parameters": { + "$ref": "#/definitions/SearchIndexerIndexProjectionsParameters", + "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type." + } + }, + "required": [ + "selectors" + ] + }, + "SearchIndexerIndexProjectionSelector": { + "type": "object", + "description": "Description for what data to store in the designated search index.", + "properties": { + "targetIndexName": { + "type": "string", + "description": "Name of the search index to project to. Must have a key field with the\n'keyword' analyzer set." + }, + "parentKeyFieldName": { + "type": "string", + "description": "Name of the field in the search index to map the parent document's key value\nto. Must be a string field that is filterable and not the key field." + }, + "sourceContext": { + "type": "string", + "description": "Source context for the projections. Represents the cardinality at which the\ndocument will be split into multiple sub documents." + }, + "mappings": { + "type": "array", + "description": "Mappings for the projection, or which source should be mapped to which field in\nthe target index.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "targetIndexName", + "parentKeyFieldName", + "sourceContext", + "mappings" + ] + }, + "SearchIndexerIndexProjectionsParameters": { + "type": "object", + "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type.", + "properties": { + "projectionMode": { + "$ref": "#/definitions/IndexProjectionMode", + "description": "Defines behavior of the index projections in relation to the rest of the\nindexer." + } + }, + "additionalProperties": {} + }, + "SearchIndexerItem": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false.", + "x-ms-client-name": "isDisabled" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "_", + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerKnowledgeStore": { + "type": "object", + "description": "Definition of additional projections to azure blob, table, or files, of\nenriched data.", + "properties": { + "storageConnectionString": { + "type": "string", + "description": "The connection string to the storage account projections will be stored in." + }, + "projections": { + "type": "array", + "description": "A list of additional projections to perform during indexing.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjection" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "storageConnectionString", + "projections" + ] + }, + "SearchIndexerKnowledgeStoreBlobProjectionSelector": { + "type": "object", + "description": "Abstract class to share properties between concrete selectors.", + "properties": { + "storageContainer": { + "type": "string", + "description": "Blob container to store projections in." + } + }, + "required": [ + "storageContainer" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreFileProjectionSelector": { + "type": "object", + "description": "Projection definition for what data to store in Azure Files.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreObjectProjectionSelector": { + "type": "object", + "description": "Projection definition for what data to store in Azure Blob.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreParameters": { + "type": "object", + "description": "A dictionary of knowledge store-specific configuration properties. Each name is\nthe name of a specific property. Each value must be of a primitive type.", + "properties": { + "synthesizeGeneratedKeyName": { + "type": "boolean", + "description": "Whether or not projections should synthesize a generated key name if one isn't\nalready present." + } + }, + "additionalProperties": {} + }, + "SearchIndexerKnowledgeStoreProjection": { + "type": "object", + "description": "Container object for various projection selectors.", + "properties": { + "tables": { + "type": "array", + "description": "Projections to Azure Table storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreTableProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "objects": { + "type": "array", + "description": "Projections to Azure Blob storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreObjectProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "files": { + "type": "array", + "description": "Projections to Azure File storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreFileProjectionSelector" + }, + "x-ms-identifiers": [] + } + } + }, + "SearchIndexerKnowledgeStoreProjectionSelector": { + "type": "object", + "description": "Abstract class to share properties between concrete selectors.", + "properties": { + "referenceKeyName": { + "type": "string", + "description": "Name of reference key to different projection." + }, + "generatedKeyName": { + "type": "string", + "description": "Name of generated key to store projection under." + }, + "source": { + "type": "string", + "description": "Source data to project." + }, + "sourceContext": { + "type": "string", + "description": "Source context for complex projections." + }, + "inputs": { + "type": "array", + "description": "Nested inputs for complex projections.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + } + }, + "SearchIndexerKnowledgeStoreTableProjectionSelector": { + "type": "object", + "description": "Description for what data to store in Azure Tables.", + "properties": { + "tableName": { + "type": "string", + "description": "Name of the Azure table to store projected data in." + } + }, + "required": [ + "tableName" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ] + }, + "SearchIndexerLimits": { + "type": "object", + "description": "Represents the limits that can be applied to an indexer.", + "properties": { + "maxRunTime": { + "type": "string", + "format": "duration", + "description": "The maximum duration that the indexer is permitted to run for one execution.", + "readOnly": true + }, + "maxDocumentExtractionSize": { + "type": "integer", + "format": "int64", + "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing.", + "readOnly": true + }, + "maxDocumentContentCharactersToExtract": { + "type": "integer", + "format": "int64", + "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing.", + "readOnly": true + } + } + }, + "SearchIndexerSkill": { + "type": "object", + "description": "Base type for skills.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the skill which uniquely identifies it within the skillset. A skill\nwith no name defined will be given a default name of its 1-based index in the\nskills array, prefixed with the character '#'." + }, + "description": { + "type": "string", + "description": "The description of the skill which describes the inputs, outputs, and usage of\nthe skill." + }, + "context": { + "type": "string", + "description": "Represents the level at which operations take place, such as the document root\nor document content (for example, /document or /document/content). The default\nis /document." + }, + "inputs": { + "type": "array", + "description": "Inputs of the skills could be a column in the source data set, or the output of\nan upstream skill.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + }, + "outputs": { + "type": "array", + "description": "The output of a skill is either a field in a search index, or a value that can\nbe consumed as an input by another skill.", + "items": { + "$ref": "#/definitions/OutputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "inputs", + "outputs" + ] + }, + "SearchIndexerSkillset": { + "type": "object", + "description": "A list of skills.", + "properties": { + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills.", + "x-ms-client-name": "cognitiveServicesAccount" + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es).", + "x-ms-client-name": "indexProjection" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "name", + "skills" + ] + }, + "SearchIndexerSkillsetCreate": { + "type": "object", + "description": "A list of skills.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills.", + "x-ms-client-name": "cognitiveServicesAccount" + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es).", + "x-ms-client-name": "indexProjection" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "_", + "name", + "skills" + ] + }, + "SearchIndexerSkillsetCreateOrUpdate": { + "type": "object", + "description": "A list of skills.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills.", + "x-ms-client-name": "cognitiveServicesAccount" + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es).", + "x-ms-client-name": "indexProjection" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "_", + "name", + "skills" + ] + }, + "SearchIndexerSkillsetItem": { + "type": "object", + "description": "A list of skills.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills.", + "x-ms-client-name": "cognitiveServicesAccount" + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es).", + "x-ms-client-name": "indexProjection" + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "_", + "name", + "skills" + ] + }, + "SearchIndexerStatus": { + "type": "object", + "description": "Represents the current status and execution history of an indexer.", + "properties": { + "status": { + "$ref": "#/definitions/IndexerStatus", + "description": "Overall indexer status.", + "readOnly": true + }, + "lastResult": { + "$ref": "#/definitions/IndexerExecutionResult", + "description": "The result of the most recent or an in-progress indexer execution.", + "readOnly": true + }, + "executionHistory": { + "type": "array", + "description": "History of the recent indexer executions, sorted in reverse chronological order.", + "items": { + "$ref": "#/definitions/IndexerExecutionResult" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "limits": { + "$ref": "#/definitions/SearchIndexerLimits", + "description": "The execution limits for the indexer.", + "readOnly": true + } + }, + "required": [ + "status", + "executionHistory", + "limits" + ] + }, + "SearchIndexerWarning": { + "type": "object", + "description": "Represents an item-level warning.", + "properties": { + "key": { + "type": "string", + "description": "The key of the item which generated a warning.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "The message describing the warning that occurred while processing the item.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the source at which the warning originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable.", + "readOnly": true + }, + "details": { + "type": "string", + "description": "Additional, verbose details about the warning to assist in debugging the\nindexer. This may not be always available.", + "readOnly": true + }, + "documentationLink": { + "type": "string", + "description": "A link to a troubleshooting guide for these classes of warnings. This may not\nbe always available.", + "readOnly": true + } + }, + "required": [ + "message" + ] + }, + "SearchMode": { + "type": "string", + "description": "Specifies whether any or all of the search terms must be matched in order to\ncount the document as a match.", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": true, + "values": [ + { + "name": "Any", + "value": "any", + "description": "Any of the search terms must be matched in order to count the document as a\nmatch." + }, + { + "name": "All", + "value": "all", + "description": "All of the search terms must be matched in order to count the document as a\nmatch." + } + ] + } + }, + "SearchRequest": { + "type": "object", + "description": "Parameters for filtering, sorting, faceting, paging, and other search query\nbehaviors.", + "properties": { + "count": { + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", + "x-ms-client-name": "includeTotalResultCount" + }, + "facets": { + "type": "array", + "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", + "items": { + "type": "string" + } + }, + "filter": { + "type": "string", + "description": "The OData $filter expression to apply to the search query." + }, + "highlight": { + "type": "string", + "description": "The comma-separated list of field names to use for hit highlights. Only\nsearchable fields can be used for hit highlighting.", + "x-ms-client-name": "highlightFields" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100." + }, + "orderby": { + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses.", + "x-ms-client-name": "orderBy" + }, + "queryType": { + "$ref": "#/definitions/QueryType", + "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax." + }, + "scoringStatistics": { + "$ref": "#/definitions/ScoringStatistics", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries." + }, + "sessionId": { + "type": "string", + "description": "A value to be used to create a sticky session, which can help getting more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character." + }, + "scoringParameters": { + "type": "array", + "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "items": { + "type": "string" + } + }, + "scoringProfile": { + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results." + }, + "search": { + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", + "x-ms-client-name": "searchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to which to scope the full-text search.\nWhen using fielded search (fieldName:searchExpression) in a full Lucene query,\nthe field names of each fielded search expression take precedence over any\nfield names listed in this parameter." + }, + "searchMode": { + "$ref": "#/definitions/SearchMode", + "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, all fields\nmarked as retrievable in the schema are included." + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use skip due to\nthis limitation, consider using orderby on a totally-ordered key and filter\nwith a range query instead." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults." + }, + "semanticConfiguration": { + "type": "string", + "description": "The name of a semantic configuration that will be used when processing\ndocuments for queries of type semantic." + }, + "semanticErrorHandling": { + "$ref": "#/definitions/SemanticErrorMode", + "description": "Allows the user to choose whether a semantic call should fail completely\n(default / current behavior), or to return partial results." + }, + "semanticMaxWaitInMilliseconds": { + "type": "integer", + "format": "int32", + "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", + "minimum": 700 + }, + "semanticQuery": { + "type": "string", + "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase." + }, + "answers": { + "$ref": "#/definitions/QueryAnswerType", + "description": "A value that specifies whether answers should be returned as part of the search\nresponse." + }, + "captions": { + "$ref": "#/definitions/QueryCaptionType", + "description": "A value that specifies whether captions should be returned as part of the\nsearch response." + }, + "vectorQueries": { + "type": "array", + "description": "The query parameters for vector and hybrid search queries.", + "items": { + "$ref": "#/definitions/VectorQuery" + }, + "x-ms-identifiers": [] + }, + "vectorFilterMode": { + "$ref": "#/definitions/VectorFilterMode", + "description": "Determines whether or not filters are applied before or after the vector search\nis performed. Default is 'preFilter' for new indexes." + } + } + }, + "SearchResourceEncryptionKey": { + "type": "object", + "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and\nmanage can be used to encrypt or decrypt data-at-rest, such as indexes and\nsynonym maps.", + "properties": { + "keyVaultKeyName": { + "type": "string", + "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest.", + "x-ms-client-name": "keyName" + }, + "keyVaultKeyVersion": { + "type": "string", + "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest.", + "x-ms-client-name": "keyVersion" + }, + "keyVaultUri": { + "type": "string", + "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains\nthe key to be used to encrypt your data at rest. An example URI might be\n`https://my-keyvault-name.vault.azure.net`.", + "x-ms-client-name": "vaultUri" + }, + "accessCredentials": { + "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", + "description": "Optional Azure Active Directory credentials used for accessing your Azure Key\nVault. Not required if using managed identity instead." + } + }, + "required": [ + "keyVaultKeyName", + "keyVaultKeyVersion", + "keyVaultUri" + ] + }, + "SearchResult": { + "type": "object", + "description": "Contains a document found by a search query, plus associated metadata.", + "properties": { + "@search.score": { + "type": "number", + "format": "double", + "description": "The relevance score of the document compared to other documents returned by the\nquery.", + "readOnly": true, + "x-ms-client-name": "score" + }, + "@search.rerankerScore": { + "type": "number", + "format": "double", + "description": "The relevance score computed by the semantic ranker for the top search results.\nSearch results are sorted by the RerankerScore first and then by the Score.\nRerankerScore is only returned for queries of type 'semantic'.", + "readOnly": true, + "x-ms-client-name": "rerankerScore" + }, + "@search.highlights": { + "type": "object", + "description": "Text fragments from the document that indicate the matching search terms,\norganized by each applicable field; null if hit highlighting was not enabled\nfor the query.", + "additionalProperties": { + "items": { + "type": "string" + }, + "type": "array" + }, + "readOnly": true, + "x-ms-client-name": "highlights" + }, + "@search.captions": { + "type": "array", + "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type 'semantic'.", + "items": { + "$ref": "#/definitions/QueryCaptionResult" + }, + "readOnly": true, + "x-ms-client-name": "captions", + "x-ms-identifiers": [] + } + }, + "required": [ + "@search.score" + ], + "additionalProperties": {} + }, + "SearchServiceCounters": { + "type": "object", + "description": "Represents service-level resource counters and quotas.", + "properties": { + "documentCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of documents across all indexes in the service.", + "x-ms-client-name": "documentCounter" + }, + "indexesCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexes.", + "x-ms-client-name": "indexCounter" + }, + "indexersCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexers.", + "x-ms-client-name": "indexerCounter" + }, + "dataSourcesCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of data sources.", + "x-ms-client-name": "dataSourceCounter" + }, + "storageSize": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total size of used storage in bytes.", + "x-ms-client-name": "storageSizeCounter" + }, + "synonymMaps": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of synonym maps.", + "x-ms-client-name": "synonymMapCounter" + }, + "skillsetCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of skillsets.", + "x-ms-client-name": "skillsetCounter" + }, + "vectorIndexSize": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total memory consumption of all vector indexes within the service, in bytes.", + "x-ms-client-name": "vectorIndexSizeCounter" + } + }, + "required": [ + "documentCount", + "indexesCount", + "indexersCount", + "dataSourcesCount", + "storageSize", + "synonymMaps", + "skillsetCount", + "vectorIndexSize" + ] + }, + "SearchServiceLimits": { + "type": "object", + "description": "Represents various service level limits.", + "properties": { + "maxFieldsPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum allowed fields per index." + }, + "maxFieldNestingDepthPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum depth which you can nest sub-fields in an index, including the\ntop-level complex field. For example, a/b/c has a nesting depth of 3." + }, + "maxComplexCollectionFieldsPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an\nindex." + }, + "maxComplexObjectsInCollectionsPerDocument": { + "type": "integer", + "format": "int32", + "description": "The maximum number of objects in complex collections allowed per document." + }, + "maxStoragePerIndex": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of storage in bytes allowed per index.", + "x-ms-client-name": "maxStoragePerIndexInBytes" + } + } + }, + "SearchServiceStatistics": { + "type": "object", + "description": "Response from a get service statistics request. If successful, it includes\nservice level counters and limits.", + "properties": { + "counters": { + "$ref": "#/definitions/SearchServiceCounters", + "description": "Service level resource counters." + }, + "limits": { + "$ref": "#/definitions/SearchServiceLimits", + "description": "Service level general limits." + } + }, + "required": [ + "counters", + "limits" + ] + }, + "SearchSuggester": { + "type": "object", + "description": "Defines how the Suggest API should apply to a group of fields in the index.", + "properties": { + "name": { + "type": "string", + "description": "The name of the suggester." + }, + "searchMode": { + "type": "string", + "description": "A value indicating the capabilities of the suggester.", + "enum": [ + "analyzingInfixMatching" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "sourceFields": { + "type": "array", + "description": "The list of field names to which the suggester applies. Each field must be\nsearchable.", + "items": { + "type": "string" + } + } + }, + "required": [ + "name", + "searchMode", + "sourceFields" + ] + }, + "SemanticConfiguration": { + "type": "object", + "description": "Defines a specific configuration to be used in the context of semantic\ncapabilities.", + "properties": { + "name": { + "type": "string", + "description": "The name of the semantic configuration." + }, + "prioritizedFields": { + "$ref": "#/definitions/SemanticPrioritizedFields", + "description": "Describes the title, content, and keyword fields to be used for semantic\nranking, captions, highlights, and answers. At least one of the three sub\nproperties (titleField, prioritizedKeywordsFields and prioritizedContentFields)\nneed to be set." + } + }, + "required": [ + "name", + "prioritizedFields" + ] + }, + "SemanticErrorMode": { + "type": "string", + "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results.", + "enum": [ + "partial", + "fail" + ], + "x-ms-enum": { + "name": "SemanticErrorMode", + "modelAsString": true, + "values": [ + { + "name": "Partial", + "value": "partial", + "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." + }, + { + "name": "Fail", + "value": "fail", + "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." + } + ] + } + }, + "SemanticErrorReason": { + "type": "string", + "description": "Reason that a partial response was returned for a semantic ranking request.", + "enum": [ + "maxWaitExceeded", + "capacityOverloaded", + "transient" + ], + "x-ms-enum": { + "name": "SemanticErrorReason", + "modelAsString": true, + "values": [ + { + "name": "MaxWaitExceeded", + "value": "maxWaitExceeded", + "description": "If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration\nexceeded that value. Only the base results were returned." + }, + { + "name": "CapacityOverloaded", + "value": "capacityOverloaded", + "description": "The request was throttled. Only the base results were returned." + }, + { + "name": "Transient", + "value": "transient", + "description": "At least one step of the semantic process failed." + } + ] + } + }, + "SemanticField": { + "type": "object", + "description": "A field that is used as part of the semantic configuration.", + "properties": { + "fieldName": { + "type": "string", + "description": "File name" + } + }, + "required": [ + "fieldName" + ] + }, + "SemanticPrioritizedFields": { + "type": "object", + "description": "Describes the title, content, and keywords fields to be used for semantic\nranking, captions, highlights, and answers.", + "properties": { + "titleField": { + "$ref": "#/definitions/SemanticField", + "description": "Defines the title field to be used for semantic ranking, captions, highlights,\nand answers. If you don't have a title field in your index, leave this blank." + }, + "prioritizedContentFields": { + "type": "array", + "description": "Defines the content fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain text in natural language form. The order of the fields in the array\nrepresents their priority. Fields with lower priority may get truncated if the\ncontent is long.", + "items": { + "$ref": "#/definitions/SemanticField" + }, + "x-ms-client-name": "contentFields", + "x-ms-identifiers": [] + }, + "prioritizedKeywordsFields": { + "type": "array", + "description": "Defines the keyword fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain a list of keywords. The order of the fields in the array represents\ntheir priority. Fields with lower priority may get truncated if the content is\nlong.", + "items": { + "$ref": "#/definitions/SemanticField" + }, + "x-ms-client-name": "keywordsFields", + "x-ms-identifiers": [] + } + } + }, + "SemanticSearch": { + "type": "object", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "properties": { + "defaultConfiguration": { + "type": "string", + "description": "Allows you to set the name of a default semantic configuration in your index,\nmaking it optional to pass it on as a query parameter every time.", + "x-ms-client-name": "defaultConfigurationName" + }, + "configurations": { + "type": "array", + "description": "The semantic configurations for the index.", + "items": { + "$ref": "#/definitions/SemanticConfiguration" + }, + "x-ms-identifiers": [] + } + } + }, + "SemanticSearchResultsType": { + "type": "string", + "description": "Type of partial response that was returned for a semantic ranking request.", + "enum": [ + "baseResults", + "rerankedResults" + ], + "x-ms-enum": { + "name": "SemanticSearchResultsType", + "modelAsString": true, + "values": [ + { + "name": "BaseResults", + "value": "baseResults", + "description": "Results without any semantic enrichment or reranking." + }, + { + "name": "RerankedResults", + "value": "rerankedResults", + "description": "Results have been reranked with the reranker model and will include semantic\ncaptions. They will not include any answers, answers highlights or caption\nhighlights." + } + ] + } + }, + "SentimentSkill": { + "type": "object", + "description": "This skill is deprecated. Use the V3.SentimentSkill instead.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SentimentSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.SentimentSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill" + }, + "SentimentSkillLanguage": { + "type": "string", + "description": "Deprecated. The language codes supported for input text by SentimentSkill.", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "it", + "no", + "pl", + "pt-PT", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "SentimentSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + } + ] + } + }, + "SentimentSkillV3": { + "type": "object", + "description": "Using the Text Analytics API, evaluates unstructured text and for each record,\nprovides sentiment labels (such as \"negative\", \"neutral\" and \"positive\") based\non the highest confidence score found by the service at a sentence and\ndocument-level.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "includeOpinionMining": { + "type": "boolean", + "description": "If set to true, the skill output will include information from Text Analytics\nfor opinion mining, namely targets (nouns or verbs) and their associated\nassessment (adjective) in the text. Default is false." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.V3.SentimentSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.SentimentSkill" + }, + "ShaperSkill": { + "type": "object", + "description": "A skill for reshaping the outputs. It creates a complex type to support\ncomposite fields (also known as multipart fields).", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Util.ShaperSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill" + }, + "ShingleTokenFilter": { + "type": "object", + "description": "Creates combinations of tokens as a single token. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "maxShingleSize": { + "type": "integer", + "format": "int32", + "description": "The maximum shingle size. Default and minimum value is 2.", + "default": 2, + "minimum": 2 + }, + "minShingleSize": { + "type": "integer", + "format": "int32", + "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the\nvalue of maxShingleSize.", + "default": 2, + "minimum": 2 + }, + "outputUnigrams": { + "type": "boolean", + "description": "A value indicating whether the output stream will contain the input tokens\n(unigrams) as well as shingles. Default is true.", + "default": true + }, + "outputUnigramsIfNoShingles": { + "type": "boolean", + "description": "A value indicating whether to output unigrams for those times when no shingles\nare available. This property takes precedence when outputUnigrams is set to\nfalse. Default is false." + }, + "tokenSeparator": { + "type": "string", + "description": "The string to use when joining adjacent tokens to form a shingle. Default is a\nsingle space (\" \").", + "default": " " + }, + "filterToken": { + "type": "string", + "description": "The string to insert for each position at which there is no token. Default is\nan underscore (\"_\").", + "default": "_" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.ShingleTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter" + }, + "SimilarityAlgorithm": { + "type": "object", + "description": "Base type for similarity algorithms. Similarity algorithms are used to\ncalculate scores that tie queries to documents. The higher the score, the more\nrelevant the document is to that specific query. Those scores are used to rank\nthe search results.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "SnowballTokenFilter": { + "type": "object", + "description": "A filter that stems words using a Snowball-generated stemmer. This token filter\nis implemented using Apache Lucene.", + "properties": { + "language": { + "$ref": "#/definitions/SnowballTokenFilterLanguage", + "description": "The language to use." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.SnowballTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "language", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter" + }, + "SnowballTokenFilterLanguage": { + "type": "string", + "description": "The language to use for a Snowball token filter.", + "enum": [ + "armenian", + "basque", + "catalan", + "danish", + "dutch", + "english", + "finnish", + "french", + "german", + "german2", + "hungarian", + "italian", + "kp", + "lovins", + "norwegian", + "porter", + "portuguese", + "romanian", + "russian", + "spanish", + "swedish", + "turkish" + ], + "x-ms-enum": { + "name": "SnowballTokenFilterLanguage", + "modelAsString": true, + "values": [ + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the Lucene Snowball stemming tokenizer for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the Lucene Snowball stemming tokenizer for Basque." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Lucene Snowball stemming tokenizer for Catalan." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Lucene Snowball stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Lucene Snowball stemming tokenizer for English." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Lucene Snowball stemming tokenizer for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Lucene Snowball stemming tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Lucene Snowball stemming tokenizer for German." + }, + { + "name": "German2", + "value": "german2", + "description": "Selects the Lucene Snowball stemming tokenizer that uses the German variant\nalgorithm." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Lucene Snowball stemming tokenizer for Hungarian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Lucene Snowball stemming tokenizer for Italian." + }, + { + "name": "Kp", + "value": "kp", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch that uses the\nKraaij-Pohlmann stemming algorithm." + }, + { + "name": "Lovins", + "value": "lovins", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins\nstemming algorithm." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the Lucene Snowball stemming tokenizer for Norwegian." + }, + { + "name": "Porter", + "value": "porter", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Porter\nstemming algorithm." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Lucene Snowball stemming tokenizer for Portuguese." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Lucene Snowball stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Lucene Snowball stemming tokenizer for Russian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Lucene Snowball stemming tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Lucene Snowball stemming tokenizer for Swedish." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Lucene Snowball stemming tokenizer for Turkish." + } + ] + } + }, + "SoftDeleteColumnDeletionDetectionPolicy": { + "type": "object", + "description": "Defines a data deletion detection policy that implements a soft-deletion\nstrategy. It determines whether an item should be deleted based on the value of\na designated 'soft delete' column.", + "properties": { + "softDeleteColumnName": { + "type": "string", + "description": "The name of the column to use for soft-deletion detection." + }, + "softDeleteMarkerValue": { + "type": "string", + "description": "The marker value that identifies an item as deleted." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of data deletion detection policy.", + "enum": [ + "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/DataDeletionDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" + }, + "SplitSkill": { + "type": "object", + "description": "A skill to split a string into chunks of text.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SplitSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "textSplitMode": { + "$ref": "#/definitions/TextSplitMode", + "description": "A value indicating which split mode to perform." + }, + "maximumPageLength": { + "type": "integer", + "format": "int32", + "description": "The desired maximum page length. Default is 10000." + }, + "pageOverlapLength": { + "type": "integer", + "format": "int32", + "description": "Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk\nwill start with this number of characters/tokens from the end of the nth chunk." + }, + "maximumPagesToTake": { + "type": "integer", + "format": "int32", + "description": "Only applicable when textSplitMode is set to 'pages'. If specified, the\nSplitSkill will discontinue splitting after processing the first\n'maximumPagesToTake' pages, in order to improve performance when only a few\ninitial pages are needed from each document." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.SplitSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill" + }, + "SplitSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by SplitSkill.", + "enum": [ + "am", + "bs", + "cs", + "da", + "de", + "en", + "es", + "et", + "fi", + "fr", + "he", + "hi", + "hr", + "hu", + "id", + "is", + "it", + "ja", + "ko", + "lv", + "nb", + "nl", + "pl", + "pt", + "pt-br", + "ru", + "sk", + "sl", + "sr", + "sv", + "tr", + "ur", + "zh" + ], + "x-ms-enum": { + "name": "SplitSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "am", + "value": "am", + "description": "Amharic" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-br", + "value": "pt-br", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "sr", + "value": "sr", + "description": "Serbian" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "zh", + "value": "zh", + "description": "Chinese (Simplified)" + } + ] + } + }, + "SqlIntegratedChangeTrackingPolicy": { + "type": "object", + "description": "Defines a data change detection policy that captures changes using the\nIntegrated Change Tracking feature of Azure SQL Database.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of data change detection policy.", + "enum": [ + "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" + }, + "StemmerOverrideTokenFilter": { + "type": "object", + "description": "Provides the ability to override other stemming filters with custom\ndictionary-based stemming. Any dictionary-stemmed terms will be marked as\nkeywords so that they will not be stemmed with stemmers down the chain. Must be\nplaced before any stemming filters. This token filter is implemented using\nApache Lucene.", + "properties": { + "rules": { + "type": "array", + "description": "A list of stemming rules in the following format: \"word => stem\", for example:\n\"ran => run\".", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "rules", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" + }, + "StemmerTokenFilter": { + "type": "object", + "description": "Language specific stemming filter. This token filter is implemented using\nApache Lucene.", + "properties": { + "language": { + "$ref": "#/definitions/StemmerTokenFilterLanguage", + "description": "The language to use." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.StemmerTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "language", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter" + }, + "StemmerTokenFilterLanguage": { + "type": "string", + "description": "The language to use for a stemmer token filter.", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "dutchKp", + "english", + "lightEnglish", + "minimalEnglish", + "possessiveEnglish", + "porter2", + "lovins", + "finnish", + "lightFinnish", + "french", + "lightFrench", + "minimalFrench", + "galician", + "minimalGalician", + "german", + "german2", + "lightGerman", + "minimalGerman", + "greek", + "hindi", + "hungarian", + "lightHungarian", + "indonesian", + "irish", + "italian", + "lightItalian", + "sorani", + "latvian", + "norwegian", + "lightNorwegian", + "minimalNorwegian", + "lightNynorsk", + "minimalNynorsk", + "portuguese", + "lightPortuguese", + "minimalPortuguese", + "portugueseRslp", + "romanian", + "russian", + "lightRussian", + "spanish", + "lightSpanish", + "swedish", + "lightSwedish", + "turkish" + ], + "x-ms-enum": { + "name": "StemmerTokenFilterLanguage", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the Lucene stemming tokenizer for Arabic." + }, + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the Lucene stemming tokenizer for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the Lucene stemming tokenizer for Basque." + }, + { + "name": "Brazilian", + "value": "brazilian", + "description": "Selects the Lucene stemming tokenizer for Portuguese (Brazil)." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Lucene stemming tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Lucene stemming tokenizer for Catalan." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Lucene stemming tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Lucene stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Lucene stemming tokenizer for Dutch." + }, + { + "name": "DutchKp", + "value": "dutchKp", + "description": "Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann\nstemming algorithm." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Lucene stemming tokenizer for English." + }, + { + "name": "LightEnglish", + "value": "lightEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does light stemming." + }, + { + "name": "MinimalEnglish", + "value": "minimalEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does minimal stemming." + }, + { + "name": "PossessiveEnglish", + "value": "possessiveEnglish", + "description": "Selects the Lucene stemming tokenizer for English that removes trailing\npossessives from words." + }, + { + "name": "Porter2", + "value": "porter2", + "description": "Selects the Lucene stemming tokenizer for English that uses the Porter2\nstemming algorithm." + }, + { + "name": "Lovins", + "value": "lovins", + "description": "Selects the Lucene stemming tokenizer for English that uses the Lovins stemming\nalgorithm." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Lucene stemming tokenizer for Finnish." + }, + { + "name": "LightFinnish", + "value": "lightFinnish", + "description": "Selects the Lucene stemming tokenizer for Finnish that does light stemming." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Lucene stemming tokenizer for French." + }, + { + "name": "LightFrench", + "value": "lightFrench", + "description": "Selects the Lucene stemming tokenizer for French that does light stemming." + }, + { + "name": "MinimalFrench", + "value": "minimalFrench", + "description": "Selects the Lucene stemming tokenizer for French that does minimal stemming." + }, + { + "name": "Galician", + "value": "galician", + "description": "Selects the Lucene stemming tokenizer for Galician." + }, + { + "name": "MinimalGalician", + "value": "minimalGalician", + "description": "Selects the Lucene stemming tokenizer for Galician that does minimal stemming." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Lucene stemming tokenizer for German." + }, + { + "name": "German2", + "value": "german2", + "description": "Selects the Lucene stemming tokenizer that uses the German variant algorithm." + }, + { + "name": "LightGerman", + "value": "lightGerman", + "description": "Selects the Lucene stemming tokenizer for German that does light stemming." + }, + { + "name": "MinimalGerman", + "value": "minimalGerman", + "description": "Selects the Lucene stemming tokenizer for German that does minimal stemming." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Lucene stemming tokenizer for Greek." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Lucene stemming tokenizer for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian." + }, + { + "name": "LightHungarian", + "value": "lightHungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian that does light stemming." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Lucene stemming tokenizer for Indonesian." + }, + { + "name": "Irish", + "value": "irish", + "description": "Selects the Lucene stemming tokenizer for Irish." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Lucene stemming tokenizer for Italian." + }, + { + "name": "LightItalian", + "value": "lightItalian", + "description": "Selects the Lucene stemming tokenizer for Italian that does light stemming." + }, + { + "name": "Sorani", + "value": "sorani", + "description": "Selects the Lucene stemming tokenizer for Sorani." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the Lucene stemming tokenizer for Latvian." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål)." + }, + { + "name": "LightNorwegian", + "value": "lightNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light\nstemming." + }, + { + "name": "MinimalNorwegian", + "value": "minimalNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal\nstemming." + }, + { + "name": "LightNynorsk", + "value": "lightNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light\nstemming." + }, + { + "name": "MinimalNynorsk", + "value": "minimalNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal\nstemming." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese." + }, + { + "name": "LightPortuguese", + "value": "lightPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does light stemming." + }, + { + "name": "MinimalPortuguese", + "value": "minimalPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming." + }, + { + "name": "PortugueseRslp", + "value": "portugueseRslp", + "description": "Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP\nstemming algorithm." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Lucene stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Lucene stemming tokenizer for Russian." + }, + { + "name": "LightRussian", + "value": "lightRussian", + "description": "Selects the Lucene stemming tokenizer for Russian that does light stemming." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Lucene stemming tokenizer for Spanish." + }, + { + "name": "LightSpanish", + "value": "lightSpanish", + "description": "Selects the Lucene stemming tokenizer for Spanish that does light stemming." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Lucene stemming tokenizer for Swedish." + }, + { + "name": "LightSwedish", + "value": "lightSwedish", + "description": "Selects the Lucene stemming tokenizer for Swedish that does light stemming." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Lucene stemming tokenizer for Turkish." + } + ] + } + }, + "StopAnalyzer": { + "type": "object", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nThis analyzer is implemented using Apache Lucene.", + "properties": { + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of analyzer.", + "enum": [ + "#Microsoft.Azure.Search.StopAnalyzer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer" + }, + "StopwordsList": { + "type": "string", + "description": "Identifies a predefined list of language-specific stopwords.", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "english", + "finnish", + "french", + "galician", + "german", + "greek", + "hindi", + "hungarian", + "indonesian", + "irish", + "italian", + "latvian", + "norwegian", + "persian", + "portuguese", + "romanian", + "russian", + "sorani", + "spanish", + "swedish", + "thai", + "turkish" + ], + "x-ms-enum": { + "name": "StopwordsList", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the stopword list for Arabic." + }, + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the stopword list for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the stopword list for Basque." + }, + { + "name": "Brazilian", + "value": "brazilian", + "description": "Selects the stopword list for Portuguese (Brazil)." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the stopword list for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the stopword list for Catalan." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the stopword list for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the stopword list for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the stopword list for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the stopword list for English." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the stopword list for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the stopword list for French." + }, + { + "name": "Galician", + "value": "galician", + "description": "Selects the stopword list for Galician." + }, + { + "name": "German", + "value": "german", + "description": "Selects the stopword list for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the stopword list for Greek." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the stopword list for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the stopword list for Hungarian." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the stopword list for Indonesian." + }, + { + "name": "Irish", + "value": "irish", + "description": "Selects the stopword list for Irish." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the stopword list for Italian." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the stopword list for Latvian." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the stopword list for Norwegian." + }, + { + "name": "Persian", + "value": "persian", + "description": "Selects the stopword list for Persian." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the stopword list for Portuguese." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the stopword list for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the stopword list for Russian." + }, + { + "name": "Sorani", + "value": "sorani", + "description": "Selects the stopword list for Sorani." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the stopword list for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the stopword list for Swedish." + }, + { + "name": "Thai", + "value": "thai", + "description": "Selects the stopword list for Thai." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the stopword list for Turkish." + } + ] + } + }, + "StopwordsTokenFilter": { + "type": "object", + "description": "Removes stop words from a token stream. This token filter is implemented using\nApache Lucene.", + "properties": { + "stopwords": { + "type": "array", + "description": "The list of stopwords. This property and the stopwords list property cannot\nboth be set.", + "items": { + "type": "string" + } + }, + "stopwordsList": { + "$ref": "#/definitions/StopwordsList", + "description": "A predefined list of stopwords to use. This property and the stopwords property\ncannot both be set. Default is English." + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." + }, + "removeTrailing": { + "type": "boolean", + "description": "A value indicating whether to ignore the last search term if it's a stop word.\nDefault is true.", + "default": true, + "x-ms-client-name": "removeTrailingStopWords" + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.StopwordsTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter" + }, + "SuggestDocumentsResult": { + "type": "object", + "description": "Response containing suggestion query results from an index.", + "properties": { + "value": { + "type": "array", + "description": "The sequence of results returned by the query.", + "items": { + "$ref": "#/definitions/SuggestResult" + }, + "readOnly": true, + "x-ms-client-name": "results", + "x-ms-identifiers": [] + }, + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not set in the request.", + "readOnly": true, + "x-ms-client-name": "coverage" + } + }, + "required": [ + "value" + ] + }, + "SuggestRequest": { + "type": "object", + "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query\nbehaviors.", + "properties": { + "filter": { + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestion query.\nDefault is false. When set to true, the query will find suggestions even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy suggestion searches are slower and consume more resources.", + "x-ms-client-name": "useFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestion query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." + }, + "orderby": { + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses.", + "x-ms-client-name": "orderBy" + }, + "search": { + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", + "x-ms-client-name": "searchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to search for the specified search\ntext. Target fields must be included in the specified suggester." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, only the key\nfield will be included in the results." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. This must be a value between 1 and 100.\nThe default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ] + }, + "SuggestResult": { + "type": "object", + "description": "A result containing a document found by a suggestion query, plus associated\nmetadata.", + "properties": { + "@search.text": { + "type": "string", + "description": "The text of the suggestion result.", + "readOnly": true, + "x-ms-client-name": "text" + } + }, + "required": [ + "@search.text" + ], + "additionalProperties": {} + }, + "SynonymMap": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "name", + "format", + "synonyms" + ] + }, + "SynonymMapCreate": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "format", + "synonyms" + ] + }, + "SynonymMapCreateOrUpdate": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "format", + "synonyms" + ] + }, + "SynonymMapItem": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "_": { + "type": "number", + "description": "Succesfully created or updated", + "enum": [ + 200, + 201 + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "_", + "name", + "format", + "synonyms" + ] + }, + "SynonymTokenFilter": { + "type": "object", + "description": "Matches single or multi-word synonyms in a token stream. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "synonyms": { + "type": "array", + "description": "A list of synonyms in following one of two formats: 1. incredible,\nunbelievable, fabulous => amazing - all terms on the left side of => symbol\nwill be replaced with all terms on its right side; 2. incredible, unbelievable,\nfabulous, amazing - comma separated list of equivalent words. Set the expand\noption to change how this list is interpreted.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to case-fold input for matching. Default is false." + }, + "expand": { + "type": "boolean", + "description": "A value indicating whether all words in the list of synonyms (if => notation is\nnot used) will map to one another. If true, all words in the list of synonyms\n(if => notation is not used) will map to one another. The following list:\nincredible, unbelievable, fabulous, amazing is equivalent to: incredible,\nunbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing.\nIf false, the following list: incredible, unbelievable, fabulous, amazing will\nbe equivalent to: incredible, unbelievable, fabulous, amazing => incredible.\nDefault is true.", + "default": true + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.SynonymTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "synonyms", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter" + }, + "TagScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores of documents with string values matching\na given list of tags.", + "properties": { + "tag": { + "$ref": "#/definitions/TagScoringParameters", + "description": "Parameter values for the tag scoring function.", + "x-ms-client-name": "parameters" + } + }, + "required": [ + "tag" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "tag" + }, + "TagScoringParameters": { + "type": "object", + "description": "Provides parameter values to a tag scoring function.", + "properties": { + "tagsParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the list of tags\nto compare against the target field." + } + }, + "required": [ + "tagsParameter" + ] + }, + "TextSplitMode": { + "type": "string", + "description": "A value indicating which split mode to perform.", + "enum": [ + "pages", + "sentences" + ], + "x-ms-enum": { + "name": "TextSplitMode", + "modelAsString": true, + "values": [ + { + "name": "Pages", + "value": "pages", + "description": "Split the text into individual pages." + }, + { + "name": "Sentences", + "value": "sentences", + "description": "Split the text into individual sentences." + } + ] + } + }, + "TextTranslationSkill": { + "type": "object", + "description": "A skill to translate text from one language to another.", + "properties": { + "defaultToLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents into for documents that don't specify\nthe to language explicitly." + }, + "defaultFromLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from for documents that don't specify\nthe from language explicitly." + }, + "suggestedFrom": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from when neither the fromLanguageCode\ninput nor the defaultFromLanguageCode parameter are provided, and the automatic\nlanguage detection is unsuccessful. Default is `en`." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Text.TranslationSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "defaultToLanguageCode", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill" + }, + "TextTranslationSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by TextTranslationSkill.", + "enum": [ + "af", + "ar", + "bn", + "bs", + "bg", + "yue", + "ca", + "zh-Hans", + "zh-Hant", + "hr", + "cs", + "da", + "nl", + "en", + "et", + "fj", + "fil", + "fi", + "fr", + "de", + "el", + "ht", + "he", + "hi", + "mww", + "hu", + "is", + "id", + "it", + "ja", + "sw", + "tlh", + "tlh-Latn", + "tlh-Piqd", + "ko", + "lv", + "lt", + "mg", + "ms", + "mt", + "nb", + "fa", + "pl", + "pt", + "pt-br", + "pt-PT", + "otq", + "ro", + "ru", + "sm", + "sr-Cyrl", + "sr-Latn", + "sk", + "sl", + "es", + "sv", + "ty", + "ta", + "te", + "th", + "to", + "tr", + "uk", + "ur", + "vi", + "cy", + "yua", + "ga", + "kn", + "mi", + "ml", + "pa" + ], + "x-ms-enum": { + "name": "TextTranslationSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "af", + "value": "af", + "description": "Afrikaans" + }, + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "bn", + "value": "bn", + "description": "Bangla" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian (Latin)" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "yue", + "value": "yue", + "description": "Cantonese (Traditional)" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fj", + "value": "fj", + "description": "Fijian" + }, + { + "name": "fil", + "value": "fil", + "description": "Filipino" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "ht", + "value": "ht", + "description": "Haitian Creole" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "mww", + "value": "mww", + "description": "Hmong Daw" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "sw", + "value": "sw", + "description": "Kiswahili" + }, + { + "name": "tlh", + "value": "tlh", + "description": "Klingon" + }, + { + "name": "tlh-Latn", + "value": "tlh-Latn", + "description": "Klingon (Latin script)" + }, + { + "name": "tlh-Piqd", + "value": "tlh-Piqd", + "description": "Klingon (Klingon script)" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "mg", + "value": "mg", + "description": "Malagasy" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay" + }, + { + "name": "mt", + "value": "mt", + "description": "Maltese" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "fa", + "value": "fa", + "description": "Persian" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + }, + { + "name": "pt-br", + "value": "pt-br", + "description": "Portuguese (Brazil)" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "otq", + "value": "otq", + "description": "Queretaro Otomi" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sm", + "value": "sm", + "description": "Samoan" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "ty", + "value": "ty", + "description": "Tahitian" + }, + { + "name": "ta", + "value": "ta", + "description": "Tamil" + }, + { + "name": "te", + "value": "te", + "description": "Telugu" + }, + { + "name": "th", + "value": "th", + "description": "Thai" + }, + { + "name": "to", + "value": "to", + "description": "Tongan" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "uk", + "value": "uk", + "description": "Ukrainian" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "vi", + "value": "vi", + "description": "Vietnamese" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "yua", + "value": "yua", + "description": "Yucatec Maya" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "kn", + "value": "kn", + "description": "Kannada" + }, + { + "name": "mi", + "value": "mi", + "description": "Maori" + }, + { + "name": "ml", + "value": "ml", + "description": "Malayalam" + }, + { + "name": "pa", + "value": "pa", + "description": "Punjabi" + } + ] + } + }, + "TextWeights": { + "type": "object", + "description": "Defines weights on index fields for which matches should boost scoring in\nsearch queries.", + "properties": { + "weights": { + "type": "object", + "description": "The dictionary of per-field weights to boost document scoring. The keys are\nfield names and the values are the weights for each field.", + "additionalProperties": { + "format": "double", + "type": "number" + } + } + }, + "required": [ + "weights" + ] + }, + "TokenCharacterKind": { + "type": "string", + "description": "Represents classes of characters on which a token filter can operate.", + "enum": [ + "letter", + "digit", + "whitespace", + "punctuation", + "symbol" + ], + "x-ms-enum": { + "name": "TokenCharacterKind", + "modelAsString": true, + "values": [ + { + "name": "Letter", + "value": "letter", + "description": "Keeps letters in tokens." + }, + { + "name": "Digit", + "value": "digit", + "description": "Keeps digits in tokens." + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "Keeps whitespace in tokens." + }, + { + "name": "Punctuation", + "value": "punctuation", + "description": "Keeps punctuation in tokens." + }, + { + "name": "Symbol", + "value": "symbol", + "description": "Keeps symbols in tokens." + } + ] + } + }, + "TokenFilter": { + "type": "object", + "description": "Base type for token filters.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + }, + "name": { + "type": "string", + "description": "The name of the token filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type", + "name" + ] + }, + "TokenFilterName": { + "type": "string", + "description": "Defines the names of all token filters supported by the search engine.", + "enum": [ + "arabic_normalization", + "apostrophe", + "asciifolding", + "cjk_bigram", + "cjk_width", + "classic", + "common_grams", + "edgeNGram_v2", + "elision", + "german_normalization", + "hindi_normalization", + "indic_normalization", + "keyword_repeat", + "kstem", + "length", + "limit", + "lowercase", + "nGram_v2", + "persian_normalization", + "phonetic", + "porter_stem", + "reverse", + "scandinavian_normalization", + "scandinavian_folding", + "shingle", + "snowball", + "sorani_normalization", + "stemmer", + "stopwords", + "trim", + "truncate", + "unique", + "uppercase", + "word_delimiter" + ], + "x-ms-enum": { + "name": "TokenFilterName", + "modelAsString": true, + "values": [ + { + "name": "ArabicNormalization", + "value": "arabic_normalization", + "description": "A token filter that applies the Arabic normalizer to normalize the orthography.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" + }, + { + "name": "Apostrophe", + "value": "apostrophe", + "description": "Strips all characters after an apostrophe (including the apostrophe itself).\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" + }, + { + "name": "AsciiFolding", + "value": "asciifolding", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + }, + { + "name": "CjkBigram", + "value": "cjk_bigram", + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + }, + { + "name": "CjkWidth", + "value": "cjk_width", + "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the\nequivalent basic Latin, and half-width Katakana variants into the equivalent\nKana. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" + }, + { + "name": "Classic", + "value": "classic", + "description": "Removes English possessives, and dots from acronyms. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" + }, + { + "name": "CommonGram", + "value": "common_grams", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + }, + { + "name": "EdgeNGram", + "value": "edgeNGram_v2", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + { + "name": "Elision", + "value": "elision", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + }, + { + "name": "GermanNormalization", + "value": "german_normalization", + "description": "Normalizes German characters according to the heuristics of the German2\nsnowball algorithm. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" + }, + { + "name": "HindiNormalization", + "value": "hindi_normalization", + "description": "Normalizes text in Hindi to remove some differences in spelling variations. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" + }, + { + "name": "IndicNormalization", + "value": "indic_normalization", + "description": "Normalizes the Unicode representation of text in Indian languages. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" + }, + { + "name": "KeywordRepeat", + "value": "keyword_repeat", + "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" + }, + { + "name": "KStem", + "value": "kstem", + "description": "A high-performance kstem filter for English. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" + }, + { + "name": "Length", + "value": "length", + "description": "Removes words that are too long or too short. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + }, + { + "name": "Limit", + "value": "limit", + "description": "Limits the number of tokens while indexing. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + }, + { + "name": "Lowercase", + "value": "lowercase", + "description": "Normalizes token text to lower case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html" + }, + { + "name": "NGram", + "value": "nGram_v2", + "description": "Generates n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + { + "name": "PersianNormalization", + "value": "persian_normalization", + "description": "Applies normalization for Persian. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" + }, + { + "name": "Phonetic", + "value": "phonetic", + "description": "Create tokens for phonetic matches. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + }, + { + "name": "PorterStem", + "value": "porter_stem", + "description": "Uses the Porter stemming algorithm to transform the token stream. See\nhttp://tartarus.org/~martin/PorterStemmer" + }, + { + "name": "Reverse", + "value": "reverse", + "description": "Reverses the token string. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" + }, + { + "name": "ScandinavianNormalization", + "value": "scandinavian_normalization", + "description": "Normalizes use of the interchangeable Scandinavian characters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" + }, + { + "name": "ScandinavianFoldingNormalization", + "value": "scandinavian_folding", + "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also\ndiscriminates against use of double vowels aa, ae, ao, oe and oo, leaving just\nthe first one. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" + }, + { + "name": "Shingle", + "value": "shingle", + "description": "Creates combinations of tokens as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + }, + { + "name": "Snowball", + "value": "snowball", + "description": "A filter that stems words using a Snowball-generated stemmer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + }, + { + "name": "SoraniNormalization", + "value": "sorani_normalization", + "description": "Normalizes the Unicode representation of Sorani text. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" + }, + { + "name": "Stemmer", + "value": "stemmer", + "description": "Language specific stemming filter. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + }, + { + "name": "Stopwords", + "value": "stopwords", + "description": "Removes stop words from a token stream. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + }, + { + "name": "Trim", + "value": "trim", + "description": "Trims leading and trailing whitespace from tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" + }, + { + "name": "Truncate", + "value": "truncate", + "description": "Truncates the terms to a specific length. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + }, + { + "name": "Unique", + "value": "unique", + "description": "Filters out tokens with same text as the previous token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + }, + { + "name": "Uppercase", + "value": "uppercase", + "description": "Normalizes token text to upper case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" + }, + { + "name": "WordDelimiter", + "value": "word_delimiter", + "description": "Splits words into subwords and performs optional transformations on subword\ngroups." + } + ] + } + }, + "TruncateTokenFilter": { + "type": "object", + "description": "Truncates the terms to a specific length. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "length": { + "type": "integer", + "format": "int32", + "description": "The length at which terms will be truncated. Default and maximum is 300.", + "default": 300, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.TruncateTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter" + }, + "UaxUrlEmailTokenizer": { + "type": "object", + "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of tokenizer.", + "enum": [ + "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" + }, + "UniqueTokenFilter": { + "type": "object", + "description": "Filters out tokens with same text as the previous token. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "onlyOnSamePosition": { + "type": "boolean", + "description": "A value indicating whether to remove duplicates only at the same position.\nDefault is false." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.UniqueTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter" + }, + "VectorEncodingFormat": { + "type": "string", + "description": "The encoding format for interpreting vector field contents.", + "enum": [ + "packedBit" + ], + "x-ms-enum": { + "name": "VectorEncodingFormat", + "modelAsString": true, + "values": [ + { + "name": "PackedBit", + "value": "packedBit", + "description": "Encoding format representing bits packed into a wider data type." + } + ] + } + }, + "VectorFilterMode": { + "type": "string", + "description": "Determines whether or not filters are applied before or after the vector search\nis performed.", + "enum": [ + "postFilter", + "preFilter" + ], + "x-ms-enum": { + "name": "VectorFilterMode", + "modelAsString": true, + "values": [ + { + "name": "PostFilter", + "value": "postFilter", + "description": "The filter will be applied after the candidate set of vector results is\nreturned. Depending on the filter selectivity, this can result in fewer results\nthan requested by the parameter 'k'." + }, + { + "name": "PreFilter", + "value": "preFilter", + "description": "The filter will be applied before the search query." + } + ] + } + }, + "VectorQuery": { + "type": "object", + "description": "The query parameters for vector and hybrid search queries.", + "properties": { + "k": { + "type": "integer", + "format": "int32", + "description": "Number of nearest neighbors to return as top hits." + }, + "fields": { + "type": "string", + "description": "Vector Fields of type Collection(Edm.Single) to be included in the vector\nsearched." + }, + "exhaustive": { + "type": "boolean", + "description": "When true, triggers an exhaustive k-nearest neighbor search across all vectors\nwithin the vector index. Useful for scenarios where exact matches are critical,\nsuch as determining ground truth values." + }, + "oversampling": { + "type": "number", + "format": "double", + "description": "Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling'\nparameter configured in the index definition. It can be set only when\n'rerankWithOriginalVectors' is true. This parameter is only permitted when a\ncompression method is used on the underlying vector field." + }, + "weight": { + "type": "number", + "format": "float", + "description": "Relative weight of the vector query when compared to other vector query and/or\nthe text query within the same search request. This value is used when\ncombining the results of multiple ranking lists produced by the different\nvector queries and/or the results retrieved through the text query. The higher\nthe weight, the higher the documents that matched that query will be in the\nfinal ranking. Default is 1.0 and the value needs to be a positive number\nlarger than zero." + }, + "kind": { + "$ref": "#/definitions/VectorQueryKind", + "description": "Type of query." + } + }, + "discriminator": "kind", + "required": [ + "kind" + ] + }, + "VectorQueryKind": { + "type": "string", + "description": "The kind of vector query being performed.", + "enum": [ + "vector", + "text" + ], + "x-ms-enum": { + "name": "VectorQueryKind", + "modelAsString": true, + "values": [ + { + "name": "Vector", + "value": "vector", + "description": "Vector query where a raw vector value is provided." + }, + { + "name": "Text", + "value": "text", + "description": "Vector query where a text value that needs to be vectorized is provided." + } + ] + } + }, + "VectorSearch": { + "type": "object", + "description": "Contains configuration options related to vector search.", + "properties": { + "profiles": { + "type": "array", + "description": "Defines combinations of configurations to use with vector search.", + "items": { + "$ref": "#/definitions/VectorSearchProfile" + }, + "x-ms-identifiers": [] + }, + "algorithms": { + "type": "array", + "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", + "items": { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + }, + "x-ms-identifiers": [] + }, + "vectorizers": { + "type": "array", + "description": "Contains configuration options on how to vectorize text vector queries.", + "items": { + "$ref": "#/definitions/VectorSearchVectorizer" + }, + "x-ms-identifiers": [] + }, + "compressions": { + "type": "array", + "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", + "items": { + "$ref": "#/definitions/VectorSearchCompression" + }, + "x-ms-identifiers": [] + } + } + }, + "VectorSearchAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular configuration." + }, + "kind": { + "$ref": "#/definitions/VectorSearchAlgorithmKind", + "description": "Type of VectorSearchAlgorithmConfiguration." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchAlgorithmKind": { + "type": "string", + "description": "The algorithm used for indexing and querying.", + "enum": [ + "hnsw", + "exhaustiveKnn" + ], + "x-ms-enum": { + "name": "VectorSearchAlgorithmKind", + "modelAsString": true, + "values": [ + { + "name": "Hnsw", + "value": "hnsw", + "description": "HNSW (Hierarchical Navigable Small World), a type of approximate nearest\nneighbors algorithm." + }, + { + "name": "ExhaustiveKnn", + "value": "exhaustiveKnn", + "description": "Exhaustive KNN algorithm which will perform brute-force search." + } + ] + } + }, + "VectorSearchAlgorithmMetric": { + "type": "string", + "description": "The similarity metric to use for vector comparisons. It is recommended to\nchoose the same similarity metric as the embedding model was trained on.", + "enum": [ + "cosine", + "euclidean", + "dotProduct", + "hamming" + ], + "x-ms-enum": { + "name": "VectorSearchAlgorithmMetric", + "modelAsString": true, + "values": [ + { + "name": "Cosine", + "value": "cosine", + "description": "Measures the angle between vectors to quantify their similarity, disregarding\nmagnitude. The smaller the angle, the closer the similarity." + }, + { + "name": "Euclidean", + "value": "euclidean", + "description": "Computes the straight-line distance between vectors in a multi-dimensional\nspace. The smaller the distance, the closer the similarity." + }, + { + "name": "DotProduct", + "value": "dotProduct", + "description": "Calculates the sum of element-wise products to gauge alignment and magnitude\nsimilarity. The larger and more positive, the closer the similarity." + }, + { + "name": "Hamming", + "value": "hamming", + "description": "Only applicable to bit-packed binary data types. Determines dissimilarity by\ncounting differing positions in binary vectors. The fewer differences, the\ncloser the similarity." + } + ] + } + }, + "VectorSearchCompression": { + "type": "object", + "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular configuration.", + "x-ms-client-name": "compressionName" + }, + "rerankWithOriginalVectors": { + "type": "boolean", + "description": "If set to true, once the ordered set of results calculated using compressed\nvectors are obtained, they will be reranked again by recalculating the\nfull-precision similarity scores. This will improve recall at the expense of\nlatency.", + "default": true + }, + "defaultOversampling": { + "type": "number", + "format": "double", + "description": "Default oversampling factor. Oversampling will internally request more\ndocuments (specified by this multiplier) in the initial search. This increases\nthe set of results that will be reranked using recomputed similarity scores\nfrom full-precision vectors. Minimum value is 1, meaning no oversampling (1x).\nThis parameter can only be set when rerankWithOriginalVectors is true. Higher\nvalues improve recall at the expense of latency." + }, + "kind": { + "$ref": "#/definitions/VectorSearchCompressionKind", + "description": "Type of VectorSearchCompression." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchCompressionKind": { + "type": "string", + "description": "The compression method used for indexing and querying.", + "enum": [ + "scalarQuantization", + "binaryQuantization" + ], + "x-ms-enum": { + "name": "VectorSearchCompressionKind", + "modelAsString": true, + "values": [ + { + "name": "ScalarQuantization", + "value": "scalarQuantization", + "description": "Scalar Quantization, a type of compression method. In scalar quantization, the\noriginal vectors values are compressed to a narrower type by discretizing and\nrepresenting each component of a vector using a reduced set of quantized\nvalues, thereby reducing the overall data size." + }, + { + "name": "BinaryQuantization", + "value": "binaryQuantization", + "description": "Binary Quantization, a type of compression method. In binary quantization, the\noriginal vectors values are compressed to the narrower binary type by\ndiscretizing and representing each component of a vector using binary values,\nthereby reducing the overall data size." + } + ] + } + }, + "VectorSearchCompressionTarget": { + "type": "string", + "description": "The quantized data type of compressed vector values.", + "enum": [ + "int8" + ], + "x-ms-enum": { + "name": "VectorSearchCompressionTarget", + "modelAsString": true, + "values": [ + { + "name": "Int8", + "value": "int8", + "description": "8-bit signed integer." + } + ] + } + }, + "VectorSearchProfile": { + "type": "object", + "description": "Defines a combination of configurations to use with vector search.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular vector search profile." + }, + "algorithm": { + "type": "string", + "description": "The name of the vector search algorithm configuration that specifies the\nalgorithm and optional parameters.", + "x-ms-client-name": "algorithmConfigurationName" + }, + "vectorizer": { + "type": "string", + "description": "The name of the vectorization being configured for use with vector search.", + "x-ms-client-name": "vectorizerName" + }, + "compression": { + "type": "string", + "description": "The name of the compression method configuration that specifies the compression\nmethod and optional parameters.", + "x-ms-client-name": "compressionName" + } + }, + "required": [ + "name", + "algorithm" + ] + }, + "VectorSearchVectorizer": { + "type": "object", + "description": "Specifies the vectorization method to be used during query time.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular vectorization method.", + "x-ms-client-name": "vectorizerName" + }, + "kind": { + "$ref": "#/definitions/VectorSearchVectorizerKind", + "description": "Type of VectorSearchVectorizer." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchVectorizerKind": { + "type": "string", + "description": "The vectorization method to be used during query time.", + "enum": [ + "azureOpenAI", + "customWebApi" + ], + "x-ms-enum": { + "name": "VectorSearchVectorizerKind", + "modelAsString": true, + "values": [ + { + "name": "AzureOpenAI", + "value": "azureOpenAI", + "description": "Generate embeddings using an Azure OpenAI resource at query time." + }, + { + "name": "CustomWebApi", + "value": "customWebApi", + "description": "Generate embeddings using a custom web endpoint at query time." + } + ] + } + }, + "VectorizableTextQuery": { + "type": "object", + "description": "The query parameters to use for vector search when a text value that needs to\nbe vectorized is provided.", + "properties": { + "text": { + "type": "string", + "description": "The text to be vectorized to perform a vector search query." + } + }, + "required": [ + "text" + ], + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "x-ms-discriminator-value": "text" + }, + "VectorizedQuery": { + "type": "object", + "description": "The query parameters to use for vector search when a raw vector value is\nprovided.", + "properties": { + "vector": { + "type": "array", + "description": "The vector representation of a search query.", + "items": { + "type": "number", + "format": "float" + } + } + }, + "required": [ + "vector" + ], + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "x-ms-discriminator-value": "vector" + }, + "VisualFeature": { + "type": "string", + "description": "The strings indicating what visual feature types to return.", + "enum": [ + "adult", + "brands", + "categories", + "description", + "faces", + "objects", + "tags" + ], + "x-ms-enum": { + "name": "VisualFeature", + "modelAsString": true, + "values": [ + { + "name": "Adult", + "value": "adult", + "description": "Visual features recognized as adult persons." + }, + { + "name": "Brands", + "value": "brands", + "description": "Visual features recognized as commercial brands." + }, + { + "name": "Categories", + "value": "categories", + "description": "Categories." + }, + { + "name": "Description", + "value": "description", + "description": "Description." + }, + { + "name": "Faces", + "value": "faces", + "description": "Visual features recognized as people faces." + }, + { + "name": "Objects", + "value": "objects", + "description": "Visual features recognized as objects." + }, + { + "name": "Tags", + "value": "tags", + "description": "Tags." + } + ] + } + }, + "WebApiSkill": { + "type": "object", + "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by\nhaving it call your custom code.", + "properties": { + "uri": { + "type": "string", + "description": "The url for the Web API." + }, + "httpHeaders": { + "type": "object", + "description": "The headers required to make the http request.", + "additionalProperties": { + "type": "string" + } + }, + "httpMethod": { + "type": "string", + "description": "The method for the http request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The desired batch size which indicates number of documents." + }, + "degreeOfParallelism": { + "type": "integer", + "format": "int32", + "description": "If set, the number of parallel calls that can be made to the Web API." + }, + "authResourceId": { + "type": "string", + "description": "Applies to custom skills that connect to external code in an Azure function or\nsome other application that provides the transformations. This value should be\nthe application ID created for the function or app when it was registered with\nAzure Active Directory. When specified, the custom skill connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of skill.", + "enum": [ + "#Microsoft.Skills.Custom.WebApiSkill" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "uri", + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill" + }, + "WebApiVectorizer": { + "type": "object", + "description": "Specifies a user-defined vectorizer for generating the vector embedding of a\nquery string. Integration of an external vectorizer is achieved using the\ncustom Web API interface of a skillset.", + "properties": { + "customWebApiParameters": { + "$ref": "#/definitions/WebApiVectorizerParameters", + "description": "Specifies the properties of the user-defined vectorizer.", + "x-ms-client-name": "webApiParameters" + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "x-ms-discriminator-value": "customWebApi" + }, + "WebApiVectorizerParameters": { + "type": "object", + "description": "Specifies the properties for connecting to a user-defined vectorizer.", + "properties": { + "uri": { + "type": "string", + "format": "uri", + "description": "The URI of the Web API providing the vectorizer.", + "x-ms-client-name": "url" + }, + "httpHeaders": { + "type": "object", + "description": "The headers required to make the HTTP request.", + "additionalProperties": { + "type": "string" + } + }, + "httpMethod": { + "type": "string", + "description": "The method for the HTTP request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "authResourceId": { + "type": "string", + "description": "Applies to custom endpoints that connect to external code in an Azure function\nor some other application that provides the transformations. This value should\nbe the application ID created for the function or app when it was registered\nwith Azure Active Directory. When specified, the vectorization connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." + } + } + }, + "WordDelimiterTokenFilter": { + "type": "object", + "description": "Splits words into subwords and performs optional transformations on subword\ngroups. This token filter is implemented using Apache Lucene.", + "properties": { + "generateWordParts": { + "type": "boolean", + "description": "A value indicating whether to generate part words. If set, causes parts of\nwords to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\".\nDefault is true.", + "default": true + }, + "generateNumberParts": { + "type": "boolean", + "description": "A value indicating whether to generate number subwords. Default is true.", + "default": true + }, + "catenateWords": { + "type": "boolean", + "description": "A value indicating whether maximum runs of word parts will be catenated. For\nexample, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default\nis false." + }, + "catenateNumbers": { + "type": "boolean", + "description": "A value indicating whether maximum runs of number parts will be catenated. For\nexample, if this is set to true, \"1-2\" becomes \"12\". Default is false." + }, + "catenateAll": { + "type": "boolean", + "description": "A value indicating whether all subword parts will be catenated. For example, if\nthis is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." + }, + "splitOnCaseChange": { + "type": "boolean", + "description": "A value indicating whether to split words on caseChange. For example, if this\nis set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true.", + "default": true + }, + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether original words will be preserved and added to the\nsubword list. Default is false." + }, + "splitOnNumerics": { + "type": "boolean", + "description": "A value indicating whether to split on numbers. For example, if this is set to\ntrue, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true.", + "default": true + }, + "stemEnglishPossessive": { + "type": "boolean", + "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is\ntrue.", + "default": true + }, + "protectedWords": { + "type": "array", + "description": "A list of tokens to protect from being delimited.", + "items": { + "type": "string" + } + }, + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of token filter.", + "enum": [ + "#Microsoft.Azure.Search.WordDelimiterTokenFilter" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter" + } + }, + "parameters": { + "Azure.Core.ClientRequestIdHeader": { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "x-ms-client-name": "clientRequestId" + }, + "Azure.Core.Foundations.ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "x-ms-client-name": "apiVersion" + } + } +} From 9a6797472c9128825458164c72eec7ccaec888c2 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 5 Nov 2024 09:19:07 -0800 Subject: [PATCH 28/78] Update specification/search/Azure.Search/models-shared.tsp Co-authored-by: catalinaperalta --- specification/search/Azure.Search/models-shared.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/search/Azure.Search/models-shared.tsp b/specification/search/Azure.Search/models-shared.tsp index 948b18fa1742..f1b1aace0971 100644 --- a/specification/search/Azure.Search/models-shared.tsp +++ b/specification/search/Azure.Search/models-shared.tsp @@ -30,7 +30,7 @@ alias selectQuery = { Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties. """) - @query("$select") + @query $select?: string; }; From 4fcaf0d265c1520b3059582a6f7a21f47a07c71f Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 5 Nov 2024 09:36:40 -0800 Subject: [PATCH 29/78] Update specification/search/Azure.Search/routes-index.tsp Co-authored-by: catalinaperalta --- specification/search/Azure.Search/routes-index.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index aac52cc9c937..bc6fcd75f2a3 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -84,7 +84,7 @@ interface DocumentsOperations { * A string tag that is prepended to hit highlights. Must be set with * highlightPostTag. Default is <em>. */ - @query("highlightPreTag") + @query highlightPreTag?: string; /** From 6e0c88bf8945bab893e38c674fef0605c0ddba73 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 5 Nov 2024 14:08:33 -0800 Subject: [PATCH 30/78] update --- .../search/Azure.Search/models-service.tsp | 1 + .../search/Azure.Search/routes-index.tsp | 62 +++++++++---------- .../search/Azure.Search/routes-service.tsp | 22 ++----- 3 files changed, 37 insertions(+), 48 deletions(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index f57f11429b3e..f238af6285a6 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -5284,6 +5284,7 @@ model IndexerExecutionResult { /** * Represents an item- or document-level indexing error. */ +@error model SearchIndexerError { /** * The key of the item for which indexing failed. diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index bc6fcd75f2a3..b4cc1f70ddbd 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -61,7 +61,7 @@ interface DocumentsOperations { /** * The OData $filter expression to apply to the search query. */ - @query("$filter") + @query $filter?: string; /** @@ -77,7 +77,7 @@ interface DocumentsOperations { * A string tag that is appended to hit highlights. Must be set with * highlightPreTag. Default is </em>. */ - @query("highlightPostTag") + @query highlightPostTag?: string; /** @@ -93,7 +93,7 @@ interface DocumentsOperations { * This parameter can be useful for ensuring search availability even for services * with only one replica. The default is 100. */ - @query("minimumCoverage") + @query minimumCoverage?: float64; /** @@ -105,16 +105,14 @@ interface DocumentsOperations { * specified, the default sort order is descending by document match score. There * can be at most 32 $orderby clauses. */ - @query(#{ - name: "$orderby", - }) + @query orderBy?: string[]; /** * A value that specifies the syntax of the search query. The default is 'simple'. * Use 'full' if your query uses the Lucene query syntax. */ - @query("queryType") + @query queryType?: QueryType; /** @@ -134,7 +132,7 @@ interface DocumentsOperations { * The name of a scoring profile to evaluate match scores for matching documents * in order to sort the results. */ - @query("scoringProfile") + @query scoringProfile?: string; /** @@ -152,7 +150,7 @@ interface DocumentsOperations { * A value that specifies whether any or all of the search terms must be matched * in order to count the document as a match. */ - @query("searchMode") + @query searchMode?: SearchMode; /** @@ -160,7 +158,7 @@ interface DocumentsOperations { * document frequency) globally for more consistent scoring, or locally, for lower * latency. */ - @query("scoringStatistics") + @query scoringStatistics?: ScoringStatistics; /** @@ -171,7 +169,7 @@ interface DocumentsOperations { * requests across replicas and adversely affect the performance of the search * service. The value used as sessionId cannot start with a '_' character. */ - @query("sessionId") + @query sessionId?: string; /** @@ -189,7 +187,7 @@ interface DocumentsOperations { * this limitation, consider using $orderby on a totally-ordered key and $filter * with a range query instead. */ - @query("$skip") + @query $skip?: int32; /** @@ -199,21 +197,21 @@ interface DocumentsOperations { * token that can be used to issue another Search request for the next page of * results. */ - @query("$top") + @query $top?: int32; /** * The name of the semantic configuration that lists which fields should be used * for semantic ranking, captions, highlights, and answers */ - @query("semanticConfiguration") + @query semanticConfiguration?: string; /** * Allows the user to choose whether a semantic call should fail completely, or to * return partial results (default). */ - @query("semanticErrorHandling") + @query semanticErrorHandling?: SemanticErrorMode; /** @@ -221,7 +219,7 @@ interface DocumentsOperations { * semantic enrichment to finish processing before the request fails. */ @minValue(700) - @query("semanticMaxWaitInMilliseconds") + @query semanticMaxWaitInMilliseconds?: int32; /** @@ -234,7 +232,7 @@ interface DocumentsOperations { * followed by the `threshold-` option after the answers * parameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7. */ - @query("answers") + @query answers?: QueryAnswerType; /** @@ -245,7 +243,7 @@ interface DocumentsOperations { * `highlight-` option, such as `extractive|highlight-true`. Defaults * to `None`. */ - @query("captions") + @query captions?: QueryCaptionType; /** @@ -254,7 +252,7 @@ interface DocumentsOperations { * where there is a need to use different queries between the base retrieval and * ranking phase, and the L2 semantic phase. */ - @query("semanticQuery") + @query semanticQuery?: string; }, SearchDocumentsResult @@ -322,13 +320,13 @@ interface DocumentsOperations { * The name of the suggester as specified in the suggesters collection that's part * of the index definition. */ - @query("suggesterName") + @query suggesterName: string; /** * An OData expression that filters the documents considered for suggestions. */ - @query("$filter") + @query $filter?: string; /** @@ -345,14 +343,14 @@ interface DocumentsOperations { * A string tag that is appended to hit highlights. Must be set with * highlightPreTag. If omitted, hit highlighting of suggestions is disabled. */ - @query("highlightPostTag") + @query highlightPostTag?: string; /** * A string tag that is prepended to hit highlights. Must be set with * highlightPostTag. If omitted, hit highlighting of suggestions is disabled. */ - @query("highlightPreTag") + @query highlightPreTag?: string; /** @@ -361,7 +359,7 @@ interface DocumentsOperations { * success. This parameter can be useful for ensuring search availability even for * services with only one replica. The default is 80. */ - @query("minimumCoverage") + @query minimumCoverage?: float64; /** @@ -400,7 +398,7 @@ interface DocumentsOperations { * The number of suggestions to retrieve. The value must be a number between 1 and * 100. The default is 5. */ - @query("$top") + @query $top?: int32; }, SuggestDocumentsResult @@ -459,7 +457,7 @@ interface DocumentsOperations { * The name of the suggester as specified in the suggesters collection that's part * of the index definition. */ - @query("suggesterName") + @query suggesterName: string; /** @@ -467,14 +465,14 @@ interface DocumentsOperations { * to get shingles and 'oneTermWithContext' to use the current context while * producing auto-completed terms. */ - @query("autocompleteMode") + @query autocompleteMode?: AutocompleteMode; /** * An OData expression that filters the documents used to produce completed terms * for the Autocomplete result. */ - @query("$filter") + @query $filter?: string; /** @@ -491,14 +489,14 @@ interface DocumentsOperations { * A string tag that is appended to hit highlights. Must be set with * highlightPreTag. If omitted, hit highlighting is disabled. */ - @query("highlightPostTag") + @query highlightPostTag?: string; /** * A string tag that is prepended to hit highlights. Must be set with * highlightPostTag. If omitted, hit highlighting is disabled. */ - @query("highlightPreTag") + @query highlightPreTag?: string; /** @@ -507,7 +505,7 @@ interface DocumentsOperations { * success. This parameter can be useful for ensuring search availability even for * services with only one replica. The default is 80. */ - @query("minimumCoverage") + @query minimumCoverage?: float64; /** @@ -523,7 +521,7 @@ interface DocumentsOperations { * The number of auto-completed terms to retrieve. This must be a value between 1 * and 100. The default is 5. */ - @query("$top") + @query $top?: int32; }, AutocompleteResult diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index c71524d3c34a..1256831e15bd 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -58,9 +58,7 @@ interface DataSourcesOperations { @route("/datasources") @get list is SearchOperation< - { - ...selectQuery; - }, + selectQuery, ListDataSourcesResult >; @@ -155,9 +153,7 @@ interface IndexersOperations { @route("/indexers") @get list is SearchOperation< - { - ...selectQuery; - }, + selectQuery, ListIndexersResult >; @@ -243,9 +239,7 @@ interface SkillsetsOperations { @route("/skillsets") @get list is SearchOperation< - { - ...selectQuery; - }, + selectQuery, ListSkillsetsResult >; @@ -318,9 +312,7 @@ interface SynonymMapsOperations { @route("/synonymmaps") @get list is SearchOperation< - { - ...selectQuery; - }, + selectQuery, ListSynonymMapsResult >; @@ -367,9 +359,7 @@ interface IndexesOperations { @route("/indexes") @get list is SearchOperation< - { - ...selectQuery; - }, + selectQuery, ListIndexesResult >; @@ -389,7 +379,7 @@ interface IndexesOperations { * availability of the index can be impaired for several minutes after the index * is updated, or longer for very large indexes. */ - @query("allowIndexDowntime") + @query allowIndexDowntime?: boolean; ...preferHeader; /** From e1ab20db22c44c8abe819fdef89b3b6e58934dcb Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 5 Nov 2024 14:43:04 -0800 Subject: [PATCH 31/78] update --- .../search/Azure.Search/routes-index.tsp | 34 +++++-------------- 1 file changed, 9 insertions(+), 25 deletions(-) diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index b4cc1f70ddbd..5a6a55982a0a 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -68,9 +68,7 @@ interface DocumentsOperations { * The list of field names to use for hit highlights. Only searchable fields can * be used for hit highlighting. */ - @query(#{ - name: "highlight", - }) + @query("highlight") highlightFields?: string[]; /** @@ -105,7 +103,7 @@ interface DocumentsOperations { * specified, the default sort order is descending by document match score. There * can be at most 32 $orderby clauses. */ - @query + @query("$orderby") orderBy?: string[]; /** @@ -141,9 +139,7 @@ interface DocumentsOperations { * names of each fielded search expression take precedence over any field names * listed in this parameter. */ - @query(#{ - name: "searchFields", - }) + @query searchFields?: string[]; /** @@ -176,9 +172,7 @@ interface DocumentsOperations { * The list of fields to retrieve. If unspecified, all fields marked as * retrievable in the schema are included. */ - @query(#{ - name: "$select", - }) + @query $select?: string[]; /** @@ -293,9 +287,7 @@ interface DocumentsOperations { * List of field names to retrieve for the document; Any field not retrieved will * be missing from the returned document. */ - @query(#{ - name: "$select", - }) + @query("$select") selectedFields?: string[]; }, Record @@ -371,27 +363,21 @@ interface DocumentsOperations { * specified, the default sort order is descending by document match score. There * can be at most 32 $orderby clauses. */ - @query(#{ - name: "$orderby", - }) + @query("$orderby") orderBy?: string[]; /** * The list of field names to search for the specified search text. Target fields * must be included in the specified suggester. */ - @query(#{ - name: "searchFields", - }) + @query searchFields?: string[]; /** * The list of fields to retrieve. If unspecified, only the key field will be * included in the results. */ - @query(#{ - name: "$select", - }) + @query $select?: string[]; /** @@ -512,9 +498,7 @@ interface DocumentsOperations { * The list of field names to consider when querying for auto-completed terms. * Target fields must be included in the specified suggester. */ - @query(#{ - name: "searchFields", - }) + @query searchFields?: string[]; /** From 49e6b83c0166676aa4f955734b061f792665c890 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 6 Nov 2024 08:52:23 -0800 Subject: [PATCH 32/78] update --- specification/search/Azure.Search/tspconfig.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/search/Azure.Search/tspconfig.yaml b/specification/search/Azure.Search/tspconfig.yaml index 27f4054748f6..48ca1fd3a10d 100644 --- a/specification/search/Azure.Search/tspconfig.yaml +++ b/specification/search/Azure.Search/tspconfig.yaml @@ -13,6 +13,7 @@ options: output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json" "@azure-tools/typespec-python": package-dir: "azure-search-documents" + api-version: "2024-07-01" package-name: "{package-dir}" flavor: azure "@azure-tools/typespec-csharp": From 2cfcda0c665cad38f72caf1143846ae5af97d2c8 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 7 Nov 2024 08:22:56 -0800 Subject: [PATCH 33/78] update --- specification/search/Azure.Search/main.tsp | 6 ------ 1 file changed, 6 deletions(-) diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp index 0c92559e7543..431c07d6f27e 100644 --- a/specification/search/Azure.Search/main.tsp +++ b/specification/search/Azure.Search/main.tsp @@ -38,10 +38,4 @@ enum Versions { */ @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2024_07_01: "2024-07-01", - - /** - * The 2024-11-01-preview API version. - */ - @useDependency(Azure.Core.Versions.v1_0_Preview_2) - v2024_11_01_preview: "2024-11-01-preview", } From 544f5bb832f76300cd5857958d6c55396204eaa8 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 7 Nov 2024 09:57:57 -0800 Subject: [PATCH 34/78] Update specification/search/Azure.Search/models-service.tsp --- specification/search/Azure.Search/models-service.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index f238af6285a6..bbd386ae112e 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -6109,7 +6109,7 @@ model ScoringFunction { interpolation?: ScoringFunctionInterpolation; @doc("Type of ScoringFunction.") - kind: string; + type: string; } /** From 009589d0e2e925a8757d528db0c25c58d0ea8b4e Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 7 Nov 2024 10:18:57 -0800 Subject: [PATCH 35/78] formatting --- specification/search/Azure.Search/client.tsp | 32 +++++-- specification/search/Azure.Search/main.tsp | 6 +- .../search/Azure.Search/models-index.tsp | 5 +- .../search/Azure.Search/models-service.tsp | 26 ++++-- .../search/Azure.Search/models-shared.tsp | 8 +- .../search/Azure.Search/routes-index.tsp | 24 ++--- .../search/Azure.Search/routes-service.tsp | 92 +++++++------------ 7 files changed, 96 insertions(+), 97 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 27afeb69a053..35570353f6d5 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -36,7 +36,9 @@ namespace Customizations; @@clientName(ListIndexersResult.value, "indexers"); @@clientName(IndexerExecutionResult.itemsProcessed, "itemCount"); @@clientName(IndexerExecutionResult.itemsFailed, "failedItemCount"); -@@clientName(SearchIndexerSkillset.cognitiveServices, "cognitiveServicesAccount"); +@@clientName(SearchIndexerSkillset.cognitiveServices, + "cognitiveServicesAccount" +); @@clientName(SearchIndexerSkillset.indexProjections, "indexProjection"); @@clientName(ListSkillsetsResult.value, "skillsets"); @@clientName(ListSynonymMapsResult.value, "synonymMaps"); @@ -46,8 +48,12 @@ namespace Customizations; @@clientName(SearchField.vectorEncoding, "vectorEncodingFormat"); @@clientName(ScoringProfile.text, "textWeights"); @@clientName(SemanticSearch.defaultConfiguration, "defaultConfigurationName"); -@@clientName(SemanticPrioritizedFields.prioritizedContentFields, "contentFields"); -@@clientName(SemanticPrioritizedFields.prioritizedKeywordsFields, "keywordsFields"); +@@clientName(SemanticPrioritizedFields.prioritizedContentFields, + "contentFields" +); +@@clientName(SemanticPrioritizedFields.prioritizedKeywordsFields, + "keywordsFields" +); @@clientName(VectorSearchProfile.algorithm, "algorithmConfigurationName"); @@clientName(VectorSearchProfile.vectorizer, "vectorizerName"); @@clientName(VectorSearchProfile.compression, "compressionName"); @@ -62,7 +68,9 @@ namespace Customizations; @@clientName(SearchServiceCounters.synonymMaps, "synonymMapCounter"); @@clientName(SearchServiceCounters.skillsetCount, "skillsetCounter"); @@clientName(SearchServiceCounters.vectorIndexSize, "vectorIndexSizeCounter"); -@@clientName(SearchServiceLimits.maxStoragePerIndex, "maxStoragePerIndexInBytes"); +@@clientName(SearchServiceLimits.maxStoragePerIndex, + "maxStoragePerIndexInBytes" +); @@clientName(PatternAnalyzer.lowercase, "lowerCaseTerms"); @@clientName(PathHierarchyTokenizerV2.reverse, "reverseTokenOrder"); @@clientName(PathHierarchyTokenizerV2.skip, "numberOfTokensToSkip"); @@ -73,18 +81,26 @@ namespace Customizations; @@clientName(PhoneticTokenFilter.replace, "replaceOriginalTokens"); @@clientName(StopwordsTokenFilter.removeTrailing, "removeTrailingStopWords"); @@clientName(HnswAlgorithmConfiguration.hnswParameters, "parameters"); -@@clientName(ExhaustiveKnnAlgorithmConfiguration.exhaustiveKnnParameters, "parameters"); -@@clientName(ScalarQuantizationCompression.scalarQuantizationParameters, "parameters"); +@@clientName(ExhaustiveKnnAlgorithmConfiguration.exhaustiveKnnParameters, + "parameters" +); +@@clientName(ScalarQuantizationCompression.scalarQuantizationParameters, + "parameters" +); @@clientName(AzureOpenAIVectorizer.azureOpenAIParameters, "parameters"); @@clientName(AzureOpenAIVectorizerParameters.resourceUri, "resourceUrl"); @@clientName(AzureOpenAIVectorizerParameters.deploymentId, "deploymentName"); @@clientName(WebApiVectorizer.customWebApiParameters, "webApiParameters"); @@clientName(WebApiVectorizerParameters.uri, "url"); -@@clientName(SearchIndexerDataUserAssignedIdentity.userAssignedIdentity, "resourceId"); +@@clientName(SearchIndexerDataUserAssignedIdentity.userAssignedIdentity, + "resourceId" +); @@clientName(DistanceScoringFunction.distance, "parameters"); @@clientName(FreshnessScoringFunction.freshness, "parameters"); @@clientName(MagnitudeScoringFunction.magnitude, "parameters"); -@@clientName(MagnitudeScoringParameters.constantBoostBeyondRange, "shouldBoostBeyondRangeByConstant"); +@@clientName(MagnitudeScoringParameters.constantBoostBeyondRange, + "shouldBoostBeyondRangeByConstant" +); @@clientName(TagScoringFunction.tag, "parameters"); @@clientName(OcrSkill.detectOrientation, "shouldDetectOrientation"); @@clientName(PIIDetectionSkill.maskingCharacter, "mask"); diff --git a/specification/search/Azure.Search/main.tsp b/specification/search/Azure.Search/main.tsp index 431c07d6f27e..dceaa9a648ab 100644 --- a/specification/search/Azure.Search/main.tsp +++ b/specification/search/Azure.Search/main.tsp @@ -16,13 +16,15 @@ using TypeSpec.Versioning; * Client that can be used to manage and query indexes and documents, as well as * manage other resources, on a search service. */ -@useAuth(ApiKeyAuth | OAuth2Auth<[ +@useAuth( + ApiKeyAuth | OAuth2Auth<[ { type: OAuth2FlowType.implicit, authorizationUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", scopes: ["https://search.azure.com/.default"], } - ]>) + ]> +) @service({ title: "Azure AI Search", }) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index b6e4d6086691..c0d5ee5c5d54 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -269,6 +269,7 @@ union IndexActionType { */ union AutocompleteMode { string, + /** * Only one term is suggested. If the query has two terms, only the last term is * completed. For example, if the input is 'washington medic', the suggested terms @@ -880,7 +881,9 @@ model IndexAction { model IndexDocumentsResult { #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" @doc("Response containing the status of operations for all actions in the batch.") - @statusCode _: 200 | 207; + @statusCode + _: 200 | 207; + /** * The list of status information for each document in the indexing request. */ diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index f238af6285a6..925f60c0c3ce 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -1246,6 +1246,7 @@ union VectorSearchAlgorithmMetric { */ union VectorSearchCompressionTarget { string, + /** * 8-bit signed integer. */ @@ -1257,14 +1258,17 @@ union VectorSearchCompressionTarget { */ union AzureOpenAIModelName { string, + /** * TextEmbeddingAda002 model. */ TextEmbeddingAda002: "text-embedding-ada-002", + /** * TextEmbedding3Large model. */ TextEmbedding3Large: "text-embedding-3-large", + /** * TextEmbedding3Small model. */ @@ -4724,7 +4728,9 @@ union StopwordsList { model SearchIndexerDataSource { #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" @doc("Succesfully created or updated") - @statusCode _: 200 | 201; + @statusCode + _: 200 | 201; + /** * The name of the datasource. */ @@ -4900,7 +4906,9 @@ model ListDataSourcesResult { model SearchIndexer { #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" @doc("Succesfully created or updated") - @statusCode _: 200 | 201; + @statusCode + _: 200 | 201; + /** * The name of the indexer. */ @@ -5371,7 +5379,7 @@ model SearchIndexerWarning { /** * Represents the limits that can be applied to an indexer. -*/ + */ model SearchIndexerLimits { /** * The maximum duration that the indexer is permitted to run for one execution. @@ -5400,7 +5408,9 @@ model SearchIndexerLimits { model SearchIndexerSkillset { #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" @doc("Succesfully created or updated") - @statusCode _: 200 | 201; + @statusCode + _: 200 | 201; + /** * The name of the skillset. */ @@ -5735,7 +5745,9 @@ model ListSkillsetsResult { model SynonymMap { #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" @doc("Succesfully created or updated") - @statusCode _: 200 | 201; + @statusCode + _: 200 | 201; + /** * The name of the synonym map. */ @@ -5791,7 +5803,9 @@ model ListSynonymMapsResult { model SearchIndex { #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" @doc("Succesfully created or updated") - @statusCode _: 200 | 201; + @statusCode + _: 200 | 201; + /** * The name of the index. */ diff --git a/specification/search/Azure.Search/models-shared.tsp b/specification/search/Azure.Search/models-shared.tsp index f1b1aace0971..a500f1050f09 100644 --- a/specification/search/Azure.Search/models-shared.tsp +++ b/specification/search/Azure.Search/models-shared.tsp @@ -26,10 +26,10 @@ alias preferHeader = { alias selectQuery = { @doc(""" - Selects which top-level properties to retrieve. - Specified as a comma-separated list of JSON property names, - or '*' for all properties. The default is all properties. - """) + Selects which top-level properties to retrieve. + Specified as a comma-separated list of JSON property names, + or '*' for all properties. The default is all properties. + """) @query $select?: string; }; diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index 5a6a55982a0a..05de430627ae 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -8,25 +8,22 @@ using Azure.Core; namespace Search; - @route("/indexes('{indexName}')") interface DocumentsOperations { /** * Queries the number of documents in the index. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/docs/$count") @get - count is SearchIndexOperation< - { - }, - int32 - >; + count is SearchIndexOperation<{}, int32>; /** * Searches for documents in the index. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/docs") @get searchGet is SearchIndexOperation< @@ -52,10 +49,7 @@ interface DocumentsOperations { * of name:value pairs. */ #suppress "@azure-tools/typespec-azure-core/no-query-explode" "Existing" - @query(#{ - name: "facet", - explode: true, - }) + @query(#{ name: "facet", explode: true }) facets?: string[]; /** @@ -120,10 +114,7 @@ interface DocumentsOperations { * parameter string would be "mylocation--122.2,44.8" (without the quotes). */ #suppress "@azure-tools/typespec-azure-core/no-query-explode" "Existing" - @query(#{ - name: "scoringParameter", - explode: true, - }) + @query(#{ name: "scoringParameter", explode: true }) scoringParameters?: string[]; /** @@ -256,6 +247,7 @@ interface DocumentsOperations { * Searches for documents in the index. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/docs/search.post.search") @post searchPost is SearchIndexOperation< @@ -297,6 +289,7 @@ interface DocumentsOperations { * Suggests documents in the index that match the given partial query text. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/docs/search.suggest") @get suggestGet is SearchIndexOperation< @@ -414,7 +407,7 @@ interface DocumentsOperations { @route("/docs/search.index") @post index is SearchIndexOperation< - { + { /** * The batch of index actions. */ @@ -429,6 +422,7 @@ interface DocumentsOperations { * the index. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/docs/search.autocomplete") @get autocompleteGet is SearchIndexOperation< diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index 1256831e15bd..fd2904182327 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -12,12 +12,14 @@ interface DataSourcesOperations { * Creates a new datasource or updates a datasource if it already exists. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @put createOrUpdate is SearchDataSourceOperation< { ...matchingHeader; ...preferHeader; + /** * The definition of the datasource to create or update. */ @@ -46,21 +48,16 @@ interface DataSourcesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/datasources('{dataSourceName}')") @get - get is SearchDataSourceOperation< - {}, - SearchIndexerDataSource - >; + get is SearchDataSourceOperation<{}, SearchIndexerDataSource>; /** * Lists all datasources available for a search service. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/datasources") @get - list is SearchOperation< - selectQuery, - ListDataSourcesResult - >; + list is SearchOperation; /** * Creates a new datasource. @@ -87,10 +84,7 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.reset") @post - reset is SearchIndexerOperation< - {}, - void - >; + reset is SearchIndexerOperation<{}, void>; /** * Runs an indexer on-demand. @@ -98,10 +92,7 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.run") @post - run is SearchIndexerOperation< - {}, - void - >; + run is SearchIndexerOperation<{}, void>; /** * Creates a new indexer or updates an indexer if it already exists. @@ -113,6 +104,7 @@ interface IndexersOperations { { ...matchingHeader; ...preferHeader; + /** * The definition of the indexer to create or update. */ @@ -139,12 +131,10 @@ interface IndexersOperations { * Retrieves an indexer definition. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/indexers('{indexerName}')") @get - get is SearchIndexerOperation< - {}, - SearchIndexer - >; + get is SearchIndexerOperation<{}, SearchIndexer>; /** * Lists all indexers available for a search service. @@ -152,15 +142,13 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers") @get - list is SearchOperation< - selectQuery, - ListIndexersResult - >; + list is SearchOperation; /** * Creates a new indexer. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/indexers") @post create is SearchOperation< @@ -180,10 +168,7 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.status") @get - getStatus is SearchIndexerOperation< - {}, - SearchIndexerStatus - >; + getStatus is SearchIndexerOperation<{}, SearchIndexerStatus>; } interface SkillsetsOperations { @@ -198,6 +183,7 @@ interface SkillsetsOperations { { ...matchingHeader; ...preferHeader; + /** * The skillset containing one or more skills to create or update in a search * service. @@ -212,6 +198,7 @@ interface SkillsetsOperations { * Deletes a skillset in a search service. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @delete delete is SearchSkillsetOperation< @@ -227,21 +214,16 @@ interface SkillsetsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @get - get is SearchSkillsetOperation< - {}, - SearchIndexerSkillset - >; + get is SearchSkillsetOperation<{}, SearchIndexerSkillset>; /** * List all skillsets in a search service. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/skillsets") @get - list is SearchOperation< - selectQuery, - ListSkillsetsResult - >; + list is SearchOperation; /** * Creates a new skillset in a search service. @@ -266,12 +248,14 @@ interface SynonymMapsOperations { * Creates a new synonym map or updates a synonym map if it already exists. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @put createOrUpdate is SearchSynonymMapOperation< { ...matchingHeader; ...preferHeader; + /** * The definition of the synonym map to create or update. */ @@ -298,12 +282,10 @@ interface SynonymMapsOperations { * Retrieves a synonym map definition. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/synonymmaps('{synonymMapName}')") @get - get is SearchSynonymMapOperation< - {}, - SynonymMap - >; + get is SearchSynonymMapOperation<{}, SynonymMap>; /** * Lists all synonym maps available for a search service. @@ -311,10 +293,7 @@ interface SynonymMapsOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/synonymmaps") @get - list is SearchOperation< - selectQuery, - ListSynonymMapsResult - >; + list is SearchOperation; /** * Creates a new synonym map. @@ -358,20 +337,19 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes") @get - list is SearchOperation< - selectQuery, - ListIndexesResult - >; + list is SearchOperation; /** * Creates a new search index or updates an index if it already exists. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/indexes('{indexName}')") @put createOrUpdate is SearchIndexOperation< { ...matchingHeader; + /** * Allows new analyzers, tokenizers, token filters, or char filters to be added to * an index by taking the index offline for at least a few seconds. This @@ -381,7 +359,9 @@ interface IndexesOperations { */ @query allowIndexDowntime?: boolean; + ...preferHeader; + /** * The definition of the index to create or update. */ @@ -413,10 +393,7 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')") @get - get is SearchIndexOperation< - {}, - SearchIndex - >; + get is SearchIndexOperation<{}, SearchIndex>; /** * Returns statistics for the given index, including a document count and storage @@ -425,10 +402,7 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexes('{indexName}')/search.stats") @get - getStatistics is SearchIndexOperation< - {}, - GetIndexStatisticsResult - >; + getStatistics is SearchIndexOperation<{}, GetIndexStatisticsResult>; /** * Shows how an analyzer breaks text into tokens. @@ -454,8 +428,4 @@ interface IndexesOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/servicestats") @get -op getServiceStatistics is SearchOperation< - { - }, - SearchServiceStatistics ->; +op getServiceStatistics is SearchOperation<{}, SearchServiceStatistics>; From 8d665d4aa86807e5a86f2a4f98c785910d512439 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 11 Nov 2024 16:21:06 -0800 Subject: [PATCH 36/78] update --- .../search/Azure.Search/models-service.tsp | 25 ---- .../search/Azure.Search/routes-service.tsp | 123 +++++++++++++++--- 2 files changed, 106 insertions(+), 42 deletions(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 9171c8815c96..4fe034087c70 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -4726,11 +4726,6 @@ union StopwordsList { * Represents a datasource definition, which can be used to configure an indexer. */ model SearchIndexerDataSource { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("Succesfully created or updated") - @statusCode - _: 200 | 201; - /** * The name of the datasource. */ @@ -4904,11 +4899,6 @@ model ListDataSourcesResult { * Represents an indexer. */ model SearchIndexer { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("Succesfully created or updated") - @statusCode - _: 200 | 201; - /** * The name of the indexer. */ @@ -5406,11 +5396,6 @@ model SearchIndexerLimits { * A list of skills. */ model SearchIndexerSkillset { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("Succesfully created or updated") - @statusCode - _: 200 | 201; - /** * The name of the skillset. */ @@ -5743,11 +5728,6 @@ model ListSkillsetsResult { * Represents a synonym map definition. */ model SynonymMap { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("Succesfully created or updated") - @statusCode - _: 200 | 201; - /** * The name of the synonym map. */ @@ -5801,11 +5781,6 @@ model ListSynonymMapsResult { * behavior of an index. */ model SearchIndex { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("Succesfully created or updated") - @statusCode - _: 200 | 201; - /** * The name of the index. */ diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index fd2904182327..f13761f226c6 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -26,7 +26,12 @@ interface DataSourcesOperations { @body dataSource: SearchIndexerDataSource; }, - SearchIndexerDataSource + SearchIndexerDataSource & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } >; /** @@ -39,7 +44,12 @@ interface DataSourcesOperations { { ...matchingHeader; }, - void + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } >; /** @@ -73,7 +83,11 @@ interface DataSourcesOperations { @body dataSource: SearchIndexerDataSource; }, - SearchIndexerDataSource + SearchIndexerDataSource & { + @doc("A process exit code.") + @statusCode + code: "201"; + } >; } @@ -84,7 +98,14 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.reset") @post - reset is SearchIndexerOperation<{}, void>; + reset is SearchIndexerOperation< + {}, + { + @doc("A process exit code.") + @statusCode + code: "204"; + } + >; /** * Runs an indexer on-demand. @@ -92,12 +113,20 @@ interface IndexersOperations { #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" @route("/indexers('{indexerName}')/search.run") @post - run is SearchIndexerOperation<{}, void>; + run is SearchIndexerOperation< + {}, + { + @doc("A process exit code.") + @statusCode + code: "202"; + } + >; /** * Creates a new indexer or updates an indexer if it already exists. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/indexers('{indexerName}')") @put createOrUpdate is SearchIndexerOperation< @@ -111,7 +140,12 @@ interface IndexersOperations { @body indexer: SearchIndexer; }, - SearchIndexer + SearchIndexer & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } >; /** @@ -124,7 +158,12 @@ interface IndexersOperations { { ...matchingHeader; }, - void + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } >; /** @@ -140,6 +179,7 @@ interface IndexersOperations { * Lists all indexers available for a search service. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/indexers") @get list is SearchOperation; @@ -159,7 +199,11 @@ interface IndexersOperations { @body indexer: SearchIndexer; }, - SearchIndexer + SearchIndexer & { + @doc("A process exit code.") + @statusCode + code: "201"; + } >; /** @@ -177,6 +221,7 @@ interface SkillsetsOperations { * already exists. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/skillsets('{skillsetName}')") @put createOrUpdate is SearchSkillsetOperation< @@ -191,7 +236,12 @@ interface SkillsetsOperations { @body skillset: SearchIndexerSkillset; }, - SearchIndexerSkillset + SearchIndexerSkillset & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } >; /** @@ -205,7 +255,12 @@ interface SkillsetsOperations { { ...matchingHeader; }, - void + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } >; /** @@ -239,7 +294,11 @@ interface SkillsetsOperations { @body skillset: SearchIndexerSkillset; }, - SearchIndexerSkillset + SearchIndexerSkillset & { + @doc("A process exit code.") + @statusCode + code: "201"; + } >; } @@ -262,7 +321,12 @@ interface SynonymMapsOperations { @body synonymMap: SynonymMap; }, - SynonymMap + SynonymMap & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } >; /** @@ -275,7 +339,12 @@ interface SynonymMapsOperations { { ...matchingHeader; }, - void + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } >; /** @@ -291,6 +360,7 @@ interface SynonymMapsOperations { * Lists all synonym maps available for a search service. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/synonymmaps") @get list is SearchOperation; @@ -309,7 +379,11 @@ interface SynonymMapsOperations { @body synonymMap: SynonymMap; }, - SynonymMap + SynonymMap & { + @doc("A process exit code.") + @statusCode + code: "201"; + } >; } @@ -328,13 +402,18 @@ interface IndexesOperations { @body index: SearchIndex; }, - SearchIndex + SearchIndex & { + @doc("A process exit code.") + @statusCode + code: "201"; + } >; /** * Lists all indexes available for a search service. */ #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" @route("/indexes") @get list is SearchOperation; @@ -368,7 +447,12 @@ interface IndexesOperations { @body index: SearchIndex; }, - SearchIndex + SearchIndex & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } >; /** @@ -384,7 +468,12 @@ interface IndexesOperations { { ...matchingHeader; }, - void + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } >; /** From c11b2552bc7dc30d69fa7067286d478992578dbd Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 12 Nov 2024 11:07:06 -0800 Subject: [PATCH 37/78] update --- .../Search/stable/2024-07-01/openapi.json | 252 ++++++------------ 1 file changed, 79 insertions(+), 173 deletions(-) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/openapi.json b/specification/search/data-plane/Search/stable/2024-07-01/openapi.json index 81a3c88439c6..b5cddbcca0ab 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/openapi.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/openapi.json @@ -2551,8 +2551,7 @@ "properties": { "search": { "type": "string", - "description": "The search text on which to base autocomplete results.", - "x-ms-client-name": "searchText" + "description": "The search text on which to base autocomplete results." }, "autocompleteMode": { "$ref": "#/definitions/AutocompleteMode", @@ -2564,8 +2563,7 @@ }, "fuzzy": { "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will autocomplete terms even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy autocomplete queries are slower and consume more resources.", - "x-ms-client-name": "useFuzzyMatching" + "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will autocomplete terms even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy autocomplete queries are slower and consume more resources." }, "highlightPostTag": { "type": "string", @@ -2617,7 +2615,6 @@ "$ref": "#/definitions/AutocompleteItem" }, "readOnly": true, - "x-ms-client-name": "results", "x-ms-identifiers": [] } }, @@ -2649,13 +2646,11 @@ "resourceUri": { "type": "string", "format": "uri", - "description": "The resource URI of the Azure OpenAI resource.", - "x-ms-client-name": "resourceUrl" + "description": "The resource URI of the Azure OpenAI resource." }, "deploymentId": { "type": "string", - "description": "ID of the Azure OpenAI model deployment on the designated resource.", - "x-ms-client-name": "deploymentName" + "description": "ID of the Azure OpenAI model deployment on the designated resource." }, "apiKey": { "type": "string", @@ -2732,8 +2727,7 @@ "properties": { "azureOpenAIParameters": { "$ref": "#/definitions/AzureOpenAIVectorizerParameters", - "description": "Contains the parameters specific to Azure OpenAI embedding vectorization.", - "x-ms-client-name": "parameters" + "description": "Contains the parameters specific to Azure OpenAI embedding vectorization." } }, "allOf": [ @@ -2750,13 +2744,11 @@ "resourceUri": { "type": "string", "format": "uri", - "description": "The resource URI of the Azure OpenAI resource.", - "x-ms-client-name": "resourceUrl" + "description": "The resource URI of the Azure OpenAI resource." }, "deploymentId": { "type": "string", - "description": "ID of the Azure OpenAI model deployment on the designated resource.", - "x-ms-client-name": "deploymentName" + "description": "ID of the Azure OpenAI model deployment on the designated resource." }, "apiKey": { "type": "string", @@ -3185,8 +3177,7 @@ }, "queryMode": { "type": "boolean", - "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false.", - "x-ms-client-name": "useQueryMode" + "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false." }, "@odata.type": { "type": "string", @@ -3643,8 +3634,7 @@ "properties": { "distance": { "$ref": "#/definitions/DistanceScoringParameters", - "description": "Parameter values for the distance scoring function.", - "x-ms-client-name": "parameters" + "description": "Parameter values for the distance scoring function." } }, "required": [ @@ -4316,8 +4306,7 @@ "properties": { "exhaustiveKnnParameters": { "$ref": "#/definitions/ExhaustiveKnnParameters", - "description": "Contains the parameters specific to exhaustive KNN algorithm.", - "x-ms-client-name": "parameters" + "description": "Contains the parameters specific to exhaustive KNN algorithm." } }, "allOf": [ @@ -4395,8 +4384,7 @@ "properties": { "freshness": { "$ref": "#/definitions/FreshnessScoringParameters", - "description": "Parameter values for the freshness scoring function.", - "x-ms-client-name": "parameters" + "description": "Parameter values for the freshness scoring function." } }, "required": [ @@ -4489,8 +4477,7 @@ "properties": { "hnswParameters": { "$ref": "#/definitions/HnswParameters", - "description": "Contains the parameters specific to HNSW algorithm.", - "x-ms-client-name": "parameters" + "description": "Contains the parameters specific to HNSW algorithm." } }, "allOf": [ @@ -4984,7 +4971,6 @@ "items": { "$ref": "#/definitions/IndexAction" }, - "x-ms-client-name": "actions", "x-ms-identifiers": [] } }, @@ -5003,7 +4989,6 @@ "$ref": "#/definitions/IndexingResult" }, "readOnly": true, - "x-ms-client-name": "results", "x-ms-identifiers": [] } }, @@ -5107,15 +5092,13 @@ "type": "integer", "format": "int32", "description": "The number of items that were processed during this indexer execution. This\nincludes both successfully processed items and items where indexing was\nattempted but failed.", - "readOnly": true, - "x-ms-client-name": "itemCount" + "readOnly": true }, "itemsFailed": { "type": "integer", "format": "int32", "description": "The number of items that failed to be indexed during this indexer execution.", - "readOnly": true, - "x-ms-client-name": "failedItemCount" + "readOnly": true }, "initialTrackingState": { "type": "string", @@ -5458,8 +5441,7 @@ "status": { "type": "boolean", "description": "A value indicating whether the indexing operation succeeded for the document\nidentified by the key.", - "readOnly": true, - "x-ms-client-name": "succeeded" + "readOnly": true }, "statusCode": { "type": "integer", @@ -5535,8 +5517,7 @@ }, "keepWordsCase": { "type": "boolean", - "description": "A value indicating whether to lower case all words first. Default is false.", - "x-ms-client-name": "lowerCaseKeepWords" + "description": "A value indicating whether to lower case all words first. Default is false." }, "@odata.type": { "type": "string", @@ -5853,16 +5834,14 @@ "type": "integer", "format": "int32", "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less\nthan the value of max.", - "maximum": 300, - "x-ms-client-name": "minLength" + "maximum": 300 }, "max": { "type": "integer", "format": "int32", "description": "The maximum length in characters. Default and maximum is 300.", "default": 300, - "maximum": 300, - "x-ms-client-name": "maxLength" + "maximum": 300 }, "@odata.type": { "type": "string", @@ -6633,7 +6612,6 @@ "$ref": "#/definitions/SearchIndexerDataSourceItem" }, "readOnly": true, - "x-ms-client-name": "dataSources", "x-ms-identifiers": [] } }, @@ -6652,7 +6630,6 @@ "$ref": "#/definitions/SearchIndexerItem" }, "readOnly": true, - "x-ms-client-name": "indexers", "x-ms-identifiers": [] } }, @@ -6671,7 +6648,6 @@ "$ref": "#/definitions/SearchIndexItem" }, "readOnly": true, - "x-ms-client-name": "indexes", "x-ms-identifiers": [] } }, @@ -6690,7 +6666,6 @@ "$ref": "#/definitions/SearchIndexerSkillsetItem" }, "readOnly": true, - "x-ms-client-name": "skillsets", "x-ms-identifiers": [] } }, @@ -6709,7 +6684,6 @@ "$ref": "#/definitions/SynonymMapItem" }, "readOnly": true, - "x-ms-client-name": "synonymMaps", "x-ms-identifiers": [] } }, @@ -6828,8 +6802,7 @@ "properties": { "magnitude": { "$ref": "#/definitions/MagnitudeScoringParameters", - "description": "Parameter values for the magnitude scoring function.", - "x-ms-client-name": "parameters" + "description": "Parameter values for the magnitude scoring function." } }, "required": [ @@ -6858,8 +6831,7 @@ }, "constantBoostBeyondRange": { "type": "boolean", - "description": "A value indicating whether to apply a constant boost for field values beyond\nthe range end value; default is false.", - "x-ms-client-name": "shouldBoostBeyondRangeByConstant" + "description": "A value indicating whether to apply a constant boost for field values beyond\nthe range end value; default is false." } }, "required": [ @@ -7736,8 +7708,7 @@ }, "detectOrientation": { "type": "boolean", - "description": "A value indicating to turn orientation detection on or not. Default is false.", - "x-ms-client-name": "shouldDetectOrientation" + "description": "A value indicating to turn orientation detection on or not. Default is false." }, "lineEnding": { "$ref": "#/definitions/OcrLineEnding", @@ -8835,8 +8806,7 @@ "maskingCharacter": { "type": "string", "description": "The character used to mask the text if the maskingMode parameter is set to\nreplace. Default is '*'.", - "maxLength": 1, - "x-ms-client-name": "mask" + "maxLength": 1 }, "modelVersion": { "type": "string", @@ -8922,14 +8892,12 @@ }, "reverse": { "type": "boolean", - "description": "A value indicating whether to generate tokens in reverse order. Default is\nfalse.", - "x-ms-client-name": "reverseTokenOrder" + "description": "A value indicating whether to generate tokens in reverse order. Default is\nfalse." }, "skip": { "type": "integer", "format": "int32", - "description": "The number of initial tokens to skip. Default is 0.", - "x-ms-client-name": "numberOfTokensToSkip" + "description": "The number of initial tokens to skip. Default is 0." }, "@odata.type": { "type": "string", @@ -8960,8 +8928,7 @@ "lowercase": { "type": "boolean", "description": "A value indicating whether terms should be lower-cased. Default is true.", - "default": true, - "x-ms-client-name": "lowerCaseTerms" + "default": true }, "pattern": { "type": "string", @@ -9228,8 +9195,7 @@ "replace": { "type": "boolean", "description": "A value indicating whether encoded tokens should replace original tokens. If\nfalse, encoded tokens are added as synonyms. Default is true.", - "default": true, - "x-ms-client-name": "replaceOriginalTokens" + "default": true }, "@odata.type": { "type": "string", @@ -9461,8 +9427,7 @@ "properties": { "scalarQuantizationParameters": { "$ref": "#/definitions/ScalarQuantizationParameters", - "description": "Contains the parameters specific to Scalar Quantization.", - "x-ms-client-name": "parameters" + "description": "Contains the parameters specific to Scalar Quantization." } }, "allOf": [ @@ -9486,10 +9451,6 @@ "type": "object", "description": "Base type for functions that can modify document scores during ranking.", "properties": { - "type": { - "type": "string", - "description": "Discriminator property for ScoringFunction." - }, "fieldName": { "type": "string", "description": "The name of the field used as input to the scoring function." @@ -9503,17 +9464,16 @@ "$ref": "#/definitions/ScoringFunctionInterpolation", "description": "A value indicating how boosting will be interpolated across document scores;\ndefaults to \"Linear\"." }, - "kind": { + "type": { "type": "string", "description": "Type of ScoringFunction." } }, "discriminator": "type", "required": [ - "type", "fieldName", "boost", - "kind" + "type" ] }, "ScoringFunctionAggregation": { @@ -9604,8 +9564,7 @@ }, "text": { "$ref": "#/definitions/TextWeights", - "description": "Parameters that boost scoring based on text matches in certain index fields.", - "x-ms-client-name": "textWeights" + "description": "Parameters that boost scoring based on text matches in certain index fields." }, "functions": { "type": "array", @@ -9702,7 +9661,6 @@ "$ref": "#/definitions/SearchResult" }, "readOnly": true, - "x-ms-client-name": "results", "x-ms-identifiers": [] }, "@odata.nextLink": { @@ -9785,18 +9743,15 @@ "format": "int32", "description": "The dimensionality of the vector field.", "minimum": 2, - "maximum": 2048, - "x-ms-client-name": "vectorSearchDimensions" + "maximum": 2048 }, "vectorSearchProfile": { "type": "string", - "description": "The name of the vector search profile that specifies the algorithm and\nvectorizer to use when searching the vector field.", - "x-ms-client-name": "vectorSearchProfileName" + "description": "The name of the vector search profile that specifies the algorithm and\nvectorizer to use when searching the vector field." }, "vectorEncoding": { "$ref": "#/definitions/VectorEncodingFormat", - "description": "The encoding format to interpret the field contents.", - "x-ms-client-name": "vectorEncodingFormat" + "description": "The encoding format to interpret the field contents." }, "synonymMaps": { "type": "array", @@ -9991,8 +9946,7 @@ }, "semantic": { "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "x-ms-client-name": "semanticSearch" + "description": "Defines parameters for a search index that influence semantic capabilities." }, "vectorSearch": { "$ref": "#/definitions/VectorSearch", @@ -10102,8 +10056,7 @@ }, "semantic": { "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "x-ms-client-name": "semanticSearch" + "description": "Defines parameters for a search index that influence semantic capabilities." }, "vectorSearch": { "$ref": "#/definitions/VectorSearch", @@ -10214,8 +10167,7 @@ }, "semantic": { "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "x-ms-client-name": "semanticSearch" + "description": "Defines parameters for a search index that influence semantic capabilities." }, "vectorSearch": { "$ref": "#/definitions/VectorSearch", @@ -10326,8 +10278,7 @@ }, "semantic": { "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "x-ms-client-name": "semanticSearch" + "description": "Defines parameters for a search index that influence semantic capabilities." }, "vectorSearch": { "$ref": "#/definitions/VectorSearch", @@ -10395,8 +10346,7 @@ }, "disabled": { "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false.", - "x-ms-client-name": "isDisabled" + "description": "A value indicating whether the indexer is disabled. Default is false." }, "@odata.etag": { "type": "string", @@ -10475,8 +10425,7 @@ }, "disabled": { "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false.", - "x-ms-client-name": "isDisabled" + "description": "A value indicating whether the indexer is disabled. Default is false." }, "@odata.etag": { "type": "string", @@ -10556,8 +10505,7 @@ }, "disabled": { "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false.", - "x-ms-client-name": "isDisabled" + "description": "A value indicating whether the indexer is disabled. Default is false." }, "@odata.etag": { "type": "string", @@ -10920,8 +10868,7 @@ "properties": { "userAssignedIdentity": { "type": "string", - "description": "The fully qualified Azure resource Id of a user assigned managed identity\ntypically in the form\n\"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\"\nthat should have been assigned to the search service.", - "x-ms-client-name": "resourceId" + "description": "The fully qualified Azure resource Id of a user assigned managed identity\ntypically in the form\n\"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\"\nthat should have been assigned to the search service." }, "@odata.type": { "type": "string", @@ -11112,8 +11059,7 @@ }, "disabled": { "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false.", - "x-ms-client-name": "isDisabled" + "description": "A value indicating whether the indexer is disabled. Default is false." }, "@odata.etag": { "type": "string", @@ -11370,8 +11316,7 @@ }, "cognitiveServices": { "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills.", - "x-ms-client-name": "cognitiveServicesAccount" + "description": "Details about the Azure AI service to be used when running skills." }, "knowledgeStore": { "$ref": "#/definitions/SearchIndexerKnowledgeStore", @@ -11379,8 +11324,7 @@ }, "indexProjections": { "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es).", - "x-ms-client-name": "indexProjection" + "description": "Definition of additional projections to secondary search index(es)." }, "@odata.etag": { "type": "string", @@ -11430,8 +11374,7 @@ }, "cognitiveServices": { "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills.", - "x-ms-client-name": "cognitiveServicesAccount" + "description": "Details about the Azure AI service to be used when running skills." }, "knowledgeStore": { "$ref": "#/definitions/SearchIndexerKnowledgeStore", @@ -11439,8 +11382,7 @@ }, "indexProjections": { "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es).", - "x-ms-client-name": "indexProjection" + "description": "Definition of additional projections to secondary search index(es)." }, "@odata.etag": { "type": "string", @@ -11491,8 +11433,7 @@ }, "cognitiveServices": { "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills.", - "x-ms-client-name": "cognitiveServicesAccount" + "description": "Details about the Azure AI service to be used when running skills." }, "knowledgeStore": { "$ref": "#/definitions/SearchIndexerKnowledgeStore", @@ -11500,8 +11441,7 @@ }, "indexProjections": { "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es).", - "x-ms-client-name": "indexProjection" + "description": "Definition of additional projections to secondary search index(es)." }, "@odata.etag": { "type": "string", @@ -11552,8 +11492,7 @@ }, "cognitiveServices": { "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills.", - "x-ms-client-name": "cognitiveServicesAccount" + "description": "Details about the Azure AI service to be used when running skills." }, "knowledgeStore": { "$ref": "#/definitions/SearchIndexerKnowledgeStore", @@ -11561,8 +11500,7 @@ }, "indexProjections": { "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es).", - "x-ms-client-name": "indexProjection" + "description": "Definition of additional projections to secondary search index(es)." }, "@odata.etag": { "type": "string", @@ -11679,8 +11617,7 @@ "properties": { "count": { "type": "boolean", - "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", - "x-ms-client-name": "includeTotalResultCount" + "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation." }, "facets": { "type": "array", @@ -11695,8 +11632,7 @@ }, "highlight": { "type": "string", - "description": "The comma-separated list of field names to use for hit highlights. Only\nsearchable fields can be used for hit highlighting.", - "x-ms-client-name": "highlightFields" + "description": "The comma-separated list of field names to use for hit highlights. Only\nsearchable fields can be used for hit highlighting." }, "highlightPostTag": { "type": "string", @@ -11713,8 +11649,7 @@ }, "orderby": { "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses.", - "x-ms-client-name": "orderBy" + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." }, "queryType": { "$ref": "#/definitions/QueryType", @@ -11741,8 +11676,7 @@ }, "search": { "type": "string", - "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", - "x-ms-client-name": "searchText" + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents." }, "searchFields": { "type": "string", @@ -11812,18 +11746,15 @@ "properties": { "keyVaultKeyName": { "type": "string", - "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest.", - "x-ms-client-name": "keyName" + "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest." }, "keyVaultKeyVersion": { "type": "string", - "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest.", - "x-ms-client-name": "keyVersion" + "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest." }, "keyVaultUri": { "type": "string", - "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains\nthe key to be used to encrypt your data at rest. An example URI might be\n`https://my-keyvault-name.vault.azure.net`.", - "x-ms-client-name": "vaultUri" + "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains\nthe key to be used to encrypt your data at rest. An example URI might be\n`https://my-keyvault-name.vault.azure.net`." }, "accessCredentials": { "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", @@ -11888,43 +11819,35 @@ "properties": { "documentCount": { "$ref": "#/definitions/ResourceCounter", - "description": "Total number of documents across all indexes in the service.", - "x-ms-client-name": "documentCounter" + "description": "Total number of documents across all indexes in the service." }, "indexesCount": { "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexes.", - "x-ms-client-name": "indexCounter" + "description": "Total number of indexes." }, "indexersCount": { "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexers.", - "x-ms-client-name": "indexerCounter" + "description": "Total number of indexers." }, "dataSourcesCount": { "$ref": "#/definitions/ResourceCounter", - "description": "Total number of data sources.", - "x-ms-client-name": "dataSourceCounter" + "description": "Total number of data sources." }, "storageSize": { "$ref": "#/definitions/ResourceCounter", - "description": "Total size of used storage in bytes.", - "x-ms-client-name": "storageSizeCounter" + "description": "Total size of used storage in bytes." }, "synonymMaps": { "$ref": "#/definitions/ResourceCounter", - "description": "Total number of synonym maps.", - "x-ms-client-name": "synonymMapCounter" + "description": "Total number of synonym maps." }, "skillsetCount": { "$ref": "#/definitions/ResourceCounter", - "description": "Total number of skillsets.", - "x-ms-client-name": "skillsetCounter" + "description": "Total number of skillsets." }, "vectorIndexSize": { "$ref": "#/definitions/ResourceCounter", - "description": "Total memory consumption of all vector indexes within the service, in bytes.", - "x-ms-client-name": "vectorIndexSizeCounter" + "description": "Total memory consumption of all vector indexes within the service, in bytes." } }, "required": [ @@ -11965,8 +11888,7 @@ "maxStoragePerIndex": { "type": "integer", "format": "int64", - "description": "The maximum amount of storage in bytes allowed per index.", - "x-ms-client-name": "maxStoragePerIndexInBytes" + "description": "The maximum amount of storage in bytes allowed per index." } } }, @@ -12119,7 +12041,6 @@ "items": { "$ref": "#/definitions/SemanticField" }, - "x-ms-client-name": "contentFields", "x-ms-identifiers": [] }, "prioritizedKeywordsFields": { @@ -12128,7 +12049,6 @@ "items": { "$ref": "#/definitions/SemanticField" }, - "x-ms-client-name": "keywordsFields", "x-ms-identifiers": [] } } @@ -12139,8 +12059,7 @@ "properties": { "defaultConfiguration": { "type": "string", - "description": "Allows you to set the name of a default semantic configuration in your index,\nmaking it optional to pass it on as a query parameter every time.", - "x-ms-client-name": "defaultConfigurationName" + "description": "Allows you to set the name of a default semantic configuration in your index,\nmaking it optional to pass it on as a query parameter every time." }, "configurations": { "type": "array", @@ -13594,8 +13513,7 @@ "removeTrailing": { "type": "boolean", "description": "A value indicating whether to ignore the last search term if it's a stop word.\nDefault is true.", - "default": true, - "x-ms-client-name": "removeTrailingStopWords" + "default": true }, "@odata.type": { "type": "string", @@ -13630,7 +13548,6 @@ "$ref": "#/definitions/SuggestResult" }, "readOnly": true, - "x-ms-client-name": "results", "x-ms-identifiers": [] }, "@search.coverage": { @@ -13655,8 +13572,7 @@ }, "fuzzy": { "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the suggestion query.\nDefault is false. When set to true, the query will find suggestions even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy suggestion searches are slower and consume more resources.", - "x-ms-client-name": "useFuzzyMatching" + "description": "A value indicating whether to use fuzzy matching for the suggestion query.\nDefault is false. When set to true, the query will find suggestions even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy suggestion searches are slower and consume more resources." }, "highlightPostTag": { "type": "string", @@ -13673,13 +13589,11 @@ }, "orderby": { "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses.", - "x-ms-client-name": "orderBy" + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." }, "search": { "type": "string", - "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", - "x-ms-client-name": "searchText" + "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters." }, "searchFields": { "type": "string", @@ -13957,8 +13871,7 @@ "properties": { "tag": { "$ref": "#/definitions/TagScoringParameters", - "description": "Parameter values for the tag scoring function.", - "x-ms-client-name": "parameters" + "description": "Parameter values for the tag scoring function." } }, "required": [ @@ -15108,8 +15021,7 @@ "properties": { "name": { "type": "string", - "description": "The name to associate with this particular configuration.", - "x-ms-client-name": "compressionName" + "description": "The name to associate with this particular configuration." }, "rerankWithOriginalVectors": { "type": "boolean", @@ -15184,18 +15096,15 @@ }, "algorithm": { "type": "string", - "description": "The name of the vector search algorithm configuration that specifies the\nalgorithm and optional parameters.", - "x-ms-client-name": "algorithmConfigurationName" + "description": "The name of the vector search algorithm configuration that specifies the\nalgorithm and optional parameters." }, "vectorizer": { "type": "string", - "description": "The name of the vectorization being configured for use with vector search.", - "x-ms-client-name": "vectorizerName" + "description": "The name of the vectorization being configured for use with vector search." }, "compression": { "type": "string", - "description": "The name of the compression method configuration that specifies the compression\nmethod and optional parameters.", - "x-ms-client-name": "compressionName" + "description": "The name of the compression method configuration that specifies the compression\nmethod and optional parameters." } }, "required": [ @@ -15209,8 +15118,7 @@ "properties": { "name": { "type": "string", - "description": "The name to associate with this particular vectorization method.", - "x-ms-client-name": "vectorizerName" + "description": "The name to associate with this particular vectorization method." }, "kind": { "$ref": "#/definitions/VectorSearchVectorizerKind", @@ -15414,8 +15322,7 @@ "properties": { "customWebApiParameters": { "$ref": "#/definitions/WebApiVectorizerParameters", - "description": "Specifies the properties of the user-defined vectorizer.", - "x-ms-client-name": "webApiParameters" + "description": "Specifies the properties of the user-defined vectorizer." } }, "allOf": [ @@ -15432,8 +15339,7 @@ "uri": { "type": "string", "format": "uri", - "description": "The URI of the Web API providing the vectorizer.", - "x-ms-client-name": "url" + "description": "The URI of the Web API providing the vectorizer." }, "httpHeaders": { "type": "object", From 99dc76b78c31e307c604aa7abceb97cc0199a55b Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 12 Nov 2024 11:13:19 -0800 Subject: [PATCH 38/78] update --- .../Search/stable/2024-07-01/openapi.json | 1628 +++-------------- 1 file changed, 250 insertions(+), 1378 deletions(-) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/openapi.json b/specification/search/data-plane/Search/stable/2024-07-01/openapi.json index b5cddbcca0ab..05cdd55da13d 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/openapi.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/openapi.json @@ -96,19 +96,13 @@ "description": "The definition of the datasource to create.", "required": true, "schema": { - "$ref": "#/definitions/SearchIndexerDataSourceCreate" + "$ref": "#/definitions/SearchIndexerDataSource" } } ], "responses": { - "200": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, "201": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SearchIndexerDataSource" } @@ -143,13 +137,7 @@ ], "responses": { "200": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "201": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SearchIndexerDataSource" } @@ -215,19 +203,19 @@ "description": "The definition of the datasource to create or update.", "required": true, "schema": { - "$ref": "#/definitions/SearchIndexerDataSourceCreateOrUpdate" + "$ref": "#/definitions/SearchIndexerDataSource" } } ], "responses": { "200": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SearchIndexerDataSource" } }, "201": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SearchIndexerDataSource" } @@ -278,6 +266,9 @@ "204": { "description": "There is no content to send for this request, but the headers may be useful. " }, + "404": { + "description": "The server cannot find the requested resource." + }, "default": { "description": "An unexpected error response.", "schema": { @@ -337,19 +328,13 @@ "description": "The definition of the indexer to create.", "required": true, "schema": { - "$ref": "#/definitions/SearchIndexerCreate" + "$ref": "#/definitions/SearchIndexer" } } ], "responses": { - "200": { - "description": "Represents an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, "201": { - "description": "Represents an indexer.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SearchIndexer" } @@ -384,13 +369,7 @@ ], "responses": { "200": { - "description": "Represents an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "201": { - "description": "Represents an indexer.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SearchIndexer" } @@ -456,19 +435,19 @@ "description": "The definition of the indexer to create or update.", "required": true, "schema": { - "$ref": "#/definitions/SearchIndexerCreateOrUpdate" + "$ref": "#/definitions/SearchIndexer" } } ], "responses": { "200": { - "description": "Represents an indexer.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SearchIndexer" } }, "201": { - "description": "Represents an indexer.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SearchIndexer" } @@ -519,6 +498,9 @@ "204": { "description": "There is no content to send for this request, but the headers may be useful. " }, + "404": { + "description": "The server cannot find the requested resource." + }, "default": { "description": "An unexpected error response.", "schema": { @@ -580,8 +562,8 @@ } ], "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed." }, "default": { "description": "An unexpected error response.", @@ -677,19 +659,13 @@ "description": "The definition of the index to create.", "required": true, "schema": { - "$ref": "#/definitions/SearchIndexCreate" + "$ref": "#/definitions/SearchIndex" } } ], "responses": { - "200": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, "201": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SearchIndex" } @@ -724,13 +700,7 @@ ], "responses": { "200": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "201": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SearchIndex" } @@ -803,19 +773,19 @@ "description": "The definition of the index to create or update.", "required": true, "schema": { - "$ref": "#/definitions/SearchIndexCreateOrUpdate" + "$ref": "#/definitions/SearchIndex" } } ], "responses": { "200": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SearchIndex" } }, "201": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SearchIndex" } @@ -866,6 +836,9 @@ "204": { "description": "There is no content to send for this request, but the headers may be useful. " }, + "404": { + "description": "The server cannot find the requested resource." + }, "default": { "description": "An unexpected error response.", "schema": { @@ -1944,19 +1917,13 @@ "description": "The skillset containing one or more skills to create in a search service.", "required": true, "schema": { - "$ref": "#/definitions/SearchIndexerSkillsetCreate" + "$ref": "#/definitions/SearchIndexerSkillset" } } ], "responses": { - "200": { - "description": "A list of skills.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, "201": { - "description": "A list of skills.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SearchIndexerSkillset" } @@ -1991,13 +1958,7 @@ ], "responses": { "200": { - "description": "A list of skills.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "201": { - "description": "A list of skills.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SearchIndexerSkillset" } @@ -2063,19 +2024,19 @@ "description": "The skillset containing one or more skills to create or update in a search\nservice.", "required": true, "schema": { - "$ref": "#/definitions/SearchIndexerSkillsetCreateOrUpdate" + "$ref": "#/definitions/SearchIndexerSkillset" } } ], "responses": { "200": { - "description": "A list of skills.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SearchIndexerSkillset" } }, "201": { - "description": "A list of skills.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SearchIndexerSkillset" } @@ -2126,6 +2087,9 @@ "204": { "description": "There is no content to send for this request, but the headers may be useful. " }, + "404": { + "description": "The server cannot find the requested resource." + }, "default": { "description": "An unexpected error response.", "schema": { @@ -2185,19 +2149,13 @@ "description": "The definition of the synonym map to create.", "required": true, "schema": { - "$ref": "#/definitions/SynonymMapCreate" + "$ref": "#/definitions/SynonymMap" } } ], "responses": { - "200": { - "description": "Represents a synonym map definition.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, "201": { - "description": "Represents a synonym map definition.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SynonymMap" } @@ -2232,13 +2190,7 @@ ], "responses": { "200": { - "description": "Represents a synonym map definition.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "201": { - "description": "Represents a synonym map definition.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SynonymMap" } @@ -2304,19 +2256,19 @@ "description": "The definition of the synonym map to create or update.", "required": true, "schema": { - "$ref": "#/definitions/SynonymMapCreateOrUpdate" + "$ref": "#/definitions/SynonymMap" } } ], "responses": { "200": { - "description": "Represents a synonym map definition.", + "description": "The request has succeeded.", "schema": { "$ref": "#/definitions/SynonymMap" } }, "201": { - "description": "Represents a synonym map definition.", + "description": "The request has succeeded and a new resource has been created as a result.", "schema": { "$ref": "#/definitions/SynonymMap" } @@ -2367,6 +2319,9 @@ "204": { "description": "There is no content to send for this request, but the headers may be useful. " }, + "404": { + "description": "The server cannot find the requested resource." + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6609,7 +6564,7 @@ "type": "array", "description": "The datasources in the Search service.", "items": { - "$ref": "#/definitions/SearchIndexerDataSourceItem" + "$ref": "#/definitions/SearchIndexerDataSource" }, "readOnly": true, "x-ms-identifiers": [] @@ -6627,7 +6582,7 @@ "type": "array", "description": "The indexers in the Search service.", "items": { - "$ref": "#/definitions/SearchIndexerItem" + "$ref": "#/definitions/SearchIndexer" }, "readOnly": true, "x-ms-identifiers": [] @@ -6645,7 +6600,7 @@ "type": "array", "description": "The indexes in the Search service.", "items": { - "$ref": "#/definitions/SearchIndexItem" + "$ref": "#/definitions/SearchIndex" }, "readOnly": true, "x-ms-identifiers": [] @@ -6663,7 +6618,7 @@ "type": "array", "description": "The skillsets defined in the Search service.", "items": { - "$ref": "#/definitions/SearchIndexerSkillsetItem" + "$ref": "#/definitions/SearchIndexerSkillset" }, "readOnly": true, "x-ms-identifiers": [] @@ -6681,7 +6636,7 @@ "type": "array", "description": "The synonym maps in the Search service.", "items": { - "$ref": "#/definitions/SynonymMapItem" + "$ref": "#/definitions/SynonymMap" }, "readOnly": true, "x-ms-identifiers": [] @@ -9963,814 +9918,139 @@ "fields" ] }, - "SearchIndexCreate": { + "SearchIndexer": { "type": "object", - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "description": "Represents an indexer.", "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, "name": { "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "description": "The fields of the index.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] + "description": "The name of the indexer." }, - "scoringProfiles": { - "type": "array", - "description": "The scoring profiles for the index.", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "x-ms-identifiers": [] + "description": { + "type": "string", + "description": "The description of the indexer." }, - "defaultScoringProfile": { + "dataSourceName": { "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + "description": "The name of the datasource from which this indexer reads data." }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." }, - "suggesters": { - "type": "array", - "description": "The suggesters for the index.", - "items": { - "$ref": "#/definitions/SearchSuggester" - }, - "x-ms-identifiers": [] + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." }, - "analyzers": { - "type": "array", - "description": "The analyzers for the index.", - "items": { - "$ref": "#/definitions/LexicalAnalyzer" - }, - "x-ms-identifiers": [] + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." }, - "tokenizers": { - "type": "array", - "description": "The tokenizers for the index.", - "items": { - "$ref": "#/definitions/LexicalTokenizer" - }, - "x-ms-identifiers": [] + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." }, - "tokenFilters": { + "fieldMappings": { "type": "array", - "description": "The token filters for the index.", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", "items": { - "$ref": "#/definitions/TokenFilter" + "$ref": "#/definitions/FieldMapping" }, "x-ms-identifiers": [] }, - "charFilters": { + "outputFieldMappings": { "type": "array", - "description": "The character filters for the index.", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", "items": { - "$ref": "#/definitions/CharFilter" + "$ref": "#/definitions/FieldMapping" }, "x-ms-identifiers": [] }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "similarity": { - "$ref": "#/definitions/SimilarityAlgorithm", - "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." - }, - "semantic": { - "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities." - }, - "vectorSearch": { - "$ref": "#/definitions/VectorSearch", - "description": "Contains configuration options related to vector search." + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false." }, "@odata.etag": { "type": "string", - "description": "The ETag of the index.", + "description": "The ETag of the indexer.", "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." } }, "required": [ - "_", "name", - "fields" + "dataSourceName", + "targetIndexName" ] }, - "SearchIndexCreateOrUpdate": { + "SearchIndexerDataContainer": { "type": "object", - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "description": "Represents information about the entity (such as Azure SQL table or CosmosDB\ncollection) that will be indexed.", "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", + "name": { + "type": "string", + "description": "The name of the table or view (for Azure SQL data source) or collection (for\nCosmosDB data source) that will be indexed." + }, + "query": { + "type": "string", + "description": "A query that is applied to this data container. The syntax and meaning of this\nparameter is datasource-specific. Not supported by Azure SQL datasources." + } + }, + "required": [ + "name" + ] + }, + "SearchIndexerDataIdentity": { + "type": "object", + "description": "Abstract base type for data identities.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" + } + }, + "discriminator": "odataType", + "required": [ + "@odata.type" + ] + }, + "SearchIndexerDataNoneIdentity": { + "type": "object", + "description": "Clears the identity property of a datasource.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of identity.", "enum": [ - 200, - 201 + "#Microsoft.Azure.Search.DataNoneIdentity" ], "x-ms-enum": { "modelAsString": false - } - }, + }, + "x-ms-client-name": "odataType" + } + }, + "required": [ + "@odata.type" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerDataIdentity" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataNoneIdentity" + }, + "SearchIndexerDataSource": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { "name": { "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "description": "The fields of the index.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] - }, - "scoringProfiles": { - "type": "array", - "description": "The scoring profiles for the index.", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "x-ms-identifiers": [] - }, - "defaultScoringProfile": { - "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." - }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." - }, - "suggesters": { - "type": "array", - "description": "The suggesters for the index.", - "items": { - "$ref": "#/definitions/SearchSuggester" - }, - "x-ms-identifiers": [] - }, - "analyzers": { - "type": "array", - "description": "The analyzers for the index.", - "items": { - "$ref": "#/definitions/LexicalAnalyzer" - }, - "x-ms-identifiers": [] - }, - "tokenizers": { - "type": "array", - "description": "The tokenizers for the index.", - "items": { - "$ref": "#/definitions/LexicalTokenizer" - }, - "x-ms-identifiers": [] - }, - "tokenFilters": { - "type": "array", - "description": "The token filters for the index.", - "items": { - "$ref": "#/definitions/TokenFilter" - }, - "x-ms-identifiers": [] - }, - "charFilters": { - "type": "array", - "description": "The character filters for the index.", - "items": { - "$ref": "#/definitions/CharFilter" - }, - "x-ms-identifiers": [] - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "similarity": { - "$ref": "#/definitions/SimilarityAlgorithm", - "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." - }, - "semantic": { - "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities." - }, - "vectorSearch": { - "$ref": "#/definitions/VectorSearch", - "description": "Contains configuration options related to vector search." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the index.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "fields" - ] - }, - "SearchIndexItem": { - "type": "object", - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "description": "The fields of the index.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] - }, - "scoringProfiles": { - "type": "array", - "description": "The scoring profiles for the index.", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "x-ms-identifiers": [] - }, - "defaultScoringProfile": { - "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." - }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." - }, - "suggesters": { - "type": "array", - "description": "The suggesters for the index.", - "items": { - "$ref": "#/definitions/SearchSuggester" - }, - "x-ms-identifiers": [] - }, - "analyzers": { - "type": "array", - "description": "The analyzers for the index.", - "items": { - "$ref": "#/definitions/LexicalAnalyzer" - }, - "x-ms-identifiers": [] - }, - "tokenizers": { - "type": "array", - "description": "The tokenizers for the index.", - "items": { - "$ref": "#/definitions/LexicalTokenizer" - }, - "x-ms-identifiers": [] - }, - "tokenFilters": { - "type": "array", - "description": "The token filters for the index.", - "items": { - "$ref": "#/definitions/TokenFilter" - }, - "x-ms-identifiers": [] - }, - "charFilters": { - "type": "array", - "description": "The character filters for the index.", - "items": { - "$ref": "#/definitions/CharFilter" - }, - "x-ms-identifiers": [] - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "similarity": { - "$ref": "#/definitions/SimilarityAlgorithm", - "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." - }, - "semantic": { - "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities." - }, - "vectorSearch": { - "$ref": "#/definitions/VectorSearch", - "description": "Contains configuration options related to vector search." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the index.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "fields" - ] - }, - "SearchIndexer": { - "type": "object", - "description": "Represents an indexer.", - "properties": { - "name": { - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "outputFieldMappings": { - "type": "array", - "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "disabled": { - "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the indexer.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." - } - }, - "required": [ - "name", - "dataSourceName", - "targetIndexName" - ] - }, - "SearchIndexerCreate": { - "type": "object", - "description": "Represents an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "outputFieldMappings": { - "type": "array", - "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "disabled": { - "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the indexer.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "dataSourceName", - "targetIndexName" - ] - }, - "SearchIndexerCreateOrUpdate": { - "type": "object", - "description": "Represents an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "outputFieldMappings": { - "type": "array", - "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "disabled": { - "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the indexer.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "dataSourceName", - "targetIndexName" - ] - }, - "SearchIndexerDataContainer": { - "type": "object", - "description": "Represents information about the entity (such as Azure SQL table or CosmosDB\ncollection) that will be indexed.", - "properties": { - "name": { - "type": "string", - "description": "The name of the table or view (for Azure SQL data source) or collection (for\nCosmosDB data source) that will be indexed." - }, - "query": { - "type": "string", - "description": "A query that is applied to this data container. The syntax and meaning of this\nparameter is datasource-specific. Not supported by Azure SQL datasources." - } - }, - "required": [ - "name" - ] - }, - "SearchIndexerDataIdentity": { - "type": "object", - "description": "Abstract base type for data identities.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type" - ] - }, - "SearchIndexerDataNoneIdentity": { - "type": "object", - "description": "Clears the identity property of a datasource.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of identity.", - "enum": [ - "#Microsoft.Azure.Search.DataNoneIdentity" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerDataIdentity" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataNoneIdentity" - }, - "SearchIndexerDataSource": { - "type": "object", - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "properties": { - "name": { - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/SearchIndexerDataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/SearchIndexerDataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the data source.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." - } - }, - "required": [ - "name", - "type", - "credentials", - "container" - ] - }, - "SearchIndexerDataSourceCreate": { - "type": "object", - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/SearchIndexerDataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/SearchIndexerDataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the data source.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "type", - "credentials", - "container" - ] - }, - "SearchIndexerDataSourceCreateOrUpdate": { - "type": "object", - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/SearchIndexerDataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/SearchIndexerDataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the data source.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "type", - "credentials", - "container" - ] - }, - "SearchIndexerDataSourceItem": { - "type": "object", - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the datasource." + "description": "The name of the datasource." }, "description": { "type": "string", @@ -10807,7 +10087,6 @@ } }, "required": [ - "_", "name", "type", "credentials", @@ -10954,130 +10233,50 @@ "required": [ "selectors" ] - }, - "SearchIndexerIndexProjectionSelector": { - "type": "object", - "description": "Description for what data to store in the designated search index.", - "properties": { - "targetIndexName": { - "type": "string", - "description": "Name of the search index to project to. Must have a key field with the\n'keyword' analyzer set." - }, - "parentKeyFieldName": { - "type": "string", - "description": "Name of the field in the search index to map the parent document's key value\nto. Must be a string field that is filterable and not the key field." - }, - "sourceContext": { - "type": "string", - "description": "Source context for the projections. Represents the cardinality at which the\ndocument will be split into multiple sub documents." - }, - "mappings": { - "type": "array", - "description": "Mappings for the projection, or which source should be mapped to which field in\nthe target index.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "targetIndexName", - "parentKeyFieldName", - "sourceContext", - "mappings" - ] - }, - "SearchIndexerIndexProjectionsParameters": { - "type": "object", - "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type.", - "properties": { - "projectionMode": { - "$ref": "#/definitions/IndexProjectionMode", - "description": "Defines behavior of the index projections in relation to the rest of the\nindexer." - } - }, - "additionalProperties": {} - }, - "SearchIndexerItem": { - "type": "object", - "description": "Represents an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { + }, + "SearchIndexerIndexProjectionSelector": { + "type": "object", + "description": "Description for what data to store in the designated search index.", + "properties": { + "targetIndexName": { "type": "string", - "description": "The name of the datasource from which this indexer reads data." + "description": "Name of the search index to project to. Must have a key field with the\n'keyword' analyzer set." }, - "skillsetName": { + "parentKeyFieldName": { "type": "string", - "description": "The name of the skillset executing with this indexer." + "description": "Name of the field in the search index to map the parent document's key value\nto. Must be a string field that is filterable and not the key field." }, - "targetIndexName": { + "sourceContext": { "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] + "description": "Source context for the projections. Represents the cardinality at which the\ndocument will be split into multiple sub documents." }, - "outputFieldMappings": { + "mappings": { "type": "array", - "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "description": "Mappings for the projection, or which source should be mapped to which field in\nthe target index.", "items": { - "$ref": "#/definitions/FieldMapping" + "$ref": "#/definitions/InputFieldMappingEntry" }, "x-ms-identifiers": [] - }, - "disabled": { - "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the indexer.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." } }, "required": [ - "_", - "name", - "dataSourceName", - "targetIndexName" + "targetIndexName", + "parentKeyFieldName", + "sourceContext", + "mappings" ] }, + "SearchIndexerIndexProjectionsParameters": { + "type": "object", + "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type.", + "properties": { + "projectionMode": { + "$ref": "#/definitions/IndexProjectionMode", + "description": "Defines behavior of the index projections in relation to the rest of the\nindexer." + } + }, + "additionalProperties": {} + }, "SearchIndexerKnowledgeStore": { "type": "object", "description": "Definition of additional projections to azure blob, table, or files, of\nenriched data.", @@ -11193,287 +10392,111 @@ "type": "string", "description": "Source data to project." }, - "sourceContext": { - "type": "string", - "description": "Source context for complex projections." - }, - "inputs": { - "type": "array", - "description": "Nested inputs for complex projections.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - } - }, - "SearchIndexerKnowledgeStoreTableProjectionSelector": { - "type": "object", - "description": "Description for what data to store in Azure Tables.", - "properties": { - "tableName": { - "type": "string", - "description": "Name of the Azure table to store projected data in." - } - }, - "required": [ - "tableName" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" - } - ] - }, - "SearchIndexerLimits": { - "type": "object", - "description": "Represents the limits that can be applied to an indexer.", - "properties": { - "maxRunTime": { - "type": "string", - "format": "duration", - "description": "The maximum duration that the indexer is permitted to run for one execution.", - "readOnly": true - }, - "maxDocumentExtractionSize": { - "type": "integer", - "format": "int64", - "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing.", - "readOnly": true - }, - "maxDocumentContentCharactersToExtract": { - "type": "integer", - "format": "int64", - "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing.", - "readOnly": true - } - } - }, - "SearchIndexerSkill": { - "type": "object", - "description": "Base type for skills.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - }, - "name": { - "type": "string", - "description": "The name of the skill which uniquely identifies it within the skillset. A skill\nwith no name defined will be given a default name of its 1-based index in the\nskills array, prefixed with the character '#'." - }, - "description": { - "type": "string", - "description": "The description of the skill which describes the inputs, outputs, and usage of\nthe skill." - }, - "context": { - "type": "string", - "description": "Represents the level at which operations take place, such as the document root\nor document content (for example, /document or /document/content). The default\nis /document." - }, - "inputs": { - "type": "array", - "description": "Inputs of the skills could be a column in the source data set, or the output of\nan upstream skill.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - }, - "outputs": { - "type": "array", - "description": "The output of a skill is either a field in a search index, or a value that can\nbe consumed as an input by another skill.", - "items": { - "$ref": "#/definitions/OutputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type", - "inputs", - "outputs" - ] - }, - "SearchIndexerSkillset": { - "type": "object", - "description": "A list of skills.", - "properties": { - "name": { - "type": "string", - "description": "The name of the skillset." - }, - "description": { - "type": "string", - "description": "The description of the skillset." - }, - "skills": { - "type": "array", - "description": "A list of skills in the skillset.", - "items": { - "$ref": "#/definitions/SearchIndexerSkill" - }, - "x-ms-identifiers": [] - }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills." - }, - "knowledgeStore": { - "$ref": "#/definitions/SearchIndexerKnowledgeStore", - "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." - }, - "indexProjections": { - "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es)." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the skillset.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - } - }, - "required": [ - "name", - "skills" - ] - }, - "SearchIndexerSkillsetCreate": { - "type": "object", - "description": "A list of skills.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the skillset." - }, - "description": { - "type": "string", - "description": "The description of the skillset." - }, - "skills": { - "type": "array", - "description": "A list of skills in the skillset.", - "items": { - "$ref": "#/definitions/SearchIndexerSkill" - }, - "x-ms-identifiers": [] - }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills." - }, - "knowledgeStore": { - "$ref": "#/definitions/SearchIndexerKnowledgeStore", - "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." - }, - "indexProjections": { - "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es)." - }, - "@odata.etag": { + "sourceContext": { "type": "string", - "description": "The ETag of the skillset.", - "x-ms-client-name": "eTag" + "description": "Source context for complex projections." }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + "inputs": { + "type": "array", + "description": "Nested inputs for complex projections.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + } + }, + "SearchIndexerKnowledgeStoreTableProjectionSelector": { + "type": "object", + "description": "Description for what data to store in Azure Tables.", + "properties": { + "tableName": { + "type": "string", + "description": "Name of the Azure table to store projected data in." } }, "required": [ - "_", - "name", - "skills" + "tableName" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } ] }, - "SearchIndexerSkillsetCreateOrUpdate": { + "SearchIndexerLimits": { "type": "object", - "description": "A list of skills.", + "description": "Represents the limits that can be applied to an indexer.", "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } + "maxRunTime": { + "type": "string", + "format": "duration", + "description": "The maximum duration that the indexer is permitted to run for one execution.", + "readOnly": true + }, + "maxDocumentExtractionSize": { + "type": "integer", + "format": "int64", + "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing.", + "readOnly": true + }, + "maxDocumentContentCharactersToExtract": { + "type": "integer", + "format": "int64", + "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing.", + "readOnly": true + } + } + }, + "SearchIndexerSkill": { + "type": "object", + "description": "Base type for skills.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types.", + "x-ms-client-name": "odataType" }, "name": { "type": "string", - "description": "The name of the skillset." + "description": "The name of the skill which uniquely identifies it within the skillset. A skill\nwith no name defined will be given a default name of its 1-based index in the\nskills array, prefixed with the character '#'." }, "description": { "type": "string", - "description": "The description of the skillset." + "description": "The description of the skill which describes the inputs, outputs, and usage of\nthe skill." }, - "skills": { + "context": { + "type": "string", + "description": "Represents the level at which operations take place, such as the document root\nor document content (for example, /document or /document/content). The default\nis /document." + }, + "inputs": { "type": "array", - "description": "A list of skills in the skillset.", + "description": "Inputs of the skills could be a column in the source data set, or the output of\nan upstream skill.", "items": { - "$ref": "#/definitions/SearchIndexerSkill" + "$ref": "#/definitions/InputFieldMappingEntry" }, "x-ms-identifiers": [] }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills." - }, - "knowledgeStore": { - "$ref": "#/definitions/SearchIndexerKnowledgeStore", - "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." - }, - "indexProjections": { - "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es)." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the skillset.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + "outputs": { + "type": "array", + "description": "The output of a skill is either a field in a search index, or a value that can\nbe consumed as an input by another skill.", + "items": { + "$ref": "#/definitions/OutputFieldMappingEntry" + }, + "x-ms-identifiers": [] } }, + "discriminator": "odataType", "required": [ - "_", - "name", - "skills" + "@odata.type", + "inputs", + "outputs" ] }, - "SearchIndexerSkillsetItem": { + "SearchIndexerSkillset": { "type": "object", "description": "A list of skills.", "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, "name": { "type": "string", "description": "The name of the skillset." @@ -11513,7 +10536,6 @@ } }, "required": [ - "_", "name", "skills" ] @@ -13672,156 +12694,6 @@ "synonyms" ] }, - "SynonymMapCreate": { - "type": "object", - "description": "Represents a synonym map definition.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "description": "The format of the synonym map. Only the 'solr' format is currently supported.", - "enum": [ - "solr" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the synonym map.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "format", - "synonyms" - ] - }, - "SynonymMapCreateOrUpdate": { - "type": "object", - "description": "Represents a synonym map definition.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "description": "The format of the synonym map. Only the 'solr' format is currently supported.", - "enum": [ - "solr" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the synonym map.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "format", - "synonyms" - ] - }, - "SynonymMapItem": { - "type": "object", - "description": "Represents a synonym map definition.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "description": "The format of the synonym map. Only the 'solr' format is currently supported.", - "enum": [ - "solr" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the synonym map.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "format", - "synonyms" - ] - }, "SynonymTokenFilter": { "type": "object", "description": "Matches single or multi-word synonyms in a token stream. This token filter is\nimplemented using Apache Lucene.", From 78cf5df1a6f040ff4526b0d335699c04848a1cc5 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 12 Nov 2024 11:15:43 -0800 Subject: [PATCH 39/78] update --- specification/search/Azure.Search/client.tsp | 16 +- .../search/Azure.Search/models-service.tsp | 14774 ++++++++-------- .../search/Azure.Search/routes-service.tsp | 978 +- 3 files changed, 7884 insertions(+), 7884 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 35570353f6d5..f1dbabc351df 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -37,7 +37,7 @@ namespace Customizations; @@clientName(IndexerExecutionResult.itemsProcessed, "itemCount"); @@clientName(IndexerExecutionResult.itemsFailed, "failedItemCount"); @@clientName(SearchIndexerSkillset.cognitiveServices, - "cognitiveServicesAccount" + "cognitiveServicesAccount" ); @@clientName(SearchIndexerSkillset.indexProjections, "indexProjection"); @@clientName(ListSkillsetsResult.value, "skillsets"); @@ -49,10 +49,10 @@ namespace Customizations; @@clientName(ScoringProfile.text, "textWeights"); @@clientName(SemanticSearch.defaultConfiguration, "defaultConfigurationName"); @@clientName(SemanticPrioritizedFields.prioritizedContentFields, - "contentFields" + "contentFields" ); @@clientName(SemanticPrioritizedFields.prioritizedKeywordsFields, - "keywordsFields" + "keywordsFields" ); @@clientName(VectorSearchProfile.algorithm, "algorithmConfigurationName"); @@clientName(VectorSearchProfile.vectorizer, "vectorizerName"); @@ -69,7 +69,7 @@ namespace Customizations; @@clientName(SearchServiceCounters.skillsetCount, "skillsetCounter"); @@clientName(SearchServiceCounters.vectorIndexSize, "vectorIndexSizeCounter"); @@clientName(SearchServiceLimits.maxStoragePerIndex, - "maxStoragePerIndexInBytes" + "maxStoragePerIndexInBytes" ); @@clientName(PatternAnalyzer.lowercase, "lowerCaseTerms"); @@clientName(PathHierarchyTokenizerV2.reverse, "reverseTokenOrder"); @@ -82,10 +82,10 @@ namespace Customizations; @@clientName(StopwordsTokenFilter.removeTrailing, "removeTrailingStopWords"); @@clientName(HnswAlgorithmConfiguration.hnswParameters, "parameters"); @@clientName(ExhaustiveKnnAlgorithmConfiguration.exhaustiveKnnParameters, - "parameters" + "parameters" ); @@clientName(ScalarQuantizationCompression.scalarQuantizationParameters, - "parameters" + "parameters" ); @@clientName(AzureOpenAIVectorizer.azureOpenAIParameters, "parameters"); @@clientName(AzureOpenAIVectorizerParameters.resourceUri, "resourceUrl"); @@ -93,13 +93,13 @@ namespace Customizations; @@clientName(WebApiVectorizer.customWebApiParameters, "webApiParameters"); @@clientName(WebApiVectorizerParameters.uri, "url"); @@clientName(SearchIndexerDataUserAssignedIdentity.userAssignedIdentity, - "resourceId" + "resourceId" ); @@clientName(DistanceScoringFunction.distance, "parameters"); @@clientName(FreshnessScoringFunction.freshness, "parameters"); @@clientName(MagnitudeScoringFunction.magnitude, "parameters"); @@clientName(MagnitudeScoringParameters.constantBoostBeyondRange, - "shouldBoostBeyondRangeByConstant" + "shouldBoostBeyondRangeByConstant" ); @@clientName(TagScoringFunction.tag, "parameters"); @@clientName(OcrSkill.detectOrientation, "shouldDetectOrientation"); diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 4fe034087c70..679d161577c2 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -13,76 +13,76 @@ namespace Search; * Defines the type of a datasource. */ union SearchIndexerDataSourceType { - string, + string, - /** - * Indicates an Azure SQL datasource. - */ - AzureSql: "azuresql", + /** + * Indicates an Azure SQL datasource. + */ + AzureSql: "azuresql", - /** - * Indicates a CosmosDB datasource. - */ - CosmosDb: "cosmosdb", + /** + * Indicates a CosmosDB datasource. + */ + CosmosDb: "cosmosdb", - /** - * Indicates an Azure Blob datasource. - */ - AzureBlob: "azureblob", + /** + * Indicates an Azure Blob datasource. + */ + AzureBlob: "azureblob", - /** - * Indicates an Azure Table datasource. - */ - AzureTable: "azuretable", + /** + * Indicates an Azure Table datasource. + */ + AzureTable: "azuretable", - /** - * Indicates a MySql datasource. - */ - MySql: "mysql", + /** + * Indicates a MySql datasource. + */ + MySql: "mysql", - /** - * Indicates an ADLS Gen2 datasource. - */ - AdlsGen2: "adlsgen2", + /** + * Indicates an ADLS Gen2 datasource. + */ + AdlsGen2: "adlsgen2", } /** * Represents the parsing mode for indexing from an Azure blob data source. */ union BlobIndexerParsingMode { - string, + string, - /** - * Set to default for normal file processing. - */ - Default: "default", + /** + * Set to default for normal file processing. + */ + Default: "default", - /** - * Set to text to improve indexing performance on plain text files in blob storage. - */ - Text: "text", + /** + * Set to text to improve indexing performance on plain text files in blob storage. + */ + Text: "text", - /** - * Set to delimitedText when blobs are plain CSV files. - */ - DelimitedText: "delimitedText", + /** + * Set to delimitedText when blobs are plain CSV files. + */ + DelimitedText: "delimitedText", - /** - * Set to json to extract structured content from JSON files. - */ - Json: "json", + /** + * Set to json to extract structured content from JSON files. + */ + Json: "json", - /** - * Set to jsonArray to extract individual elements of a JSON array as separate - * documents. - */ - JsonArray: "jsonArray", + /** + * Set to jsonArray to extract individual elements of a JSON array as separate + * documents. + */ + JsonArray: "jsonArray", - /** - * Set to jsonLines to extract individual JSON entities, separated by a new line, - * as separate documents. - */ - JsonLines: "jsonLines", + /** + * Set to jsonLines to extract individual JSON entities, separated by a new line, + * as separate documents. + */ + JsonLines: "jsonLines", } /** @@ -92,24 +92,24 @@ union BlobIndexerParsingMode { * application, or image files such as .jpg and .png, in Azure blobs. */ union BlobIndexerDataToExtract { - string, + string, - /** - * Indexes just the standard blob properties and user-specified metadata. - */ - StorageMetadata: "storageMetadata", + /** + * Indexes just the standard blob properties and user-specified metadata. + */ + StorageMetadata: "storageMetadata", - /** - * Extracts metadata provided by the Azure blob storage subsystem and the - * content-type specific metadata (for example, metadata unique to just .png files - * are indexed). - */ - AllMetadata: "allMetadata", + /** + * Extracts metadata provided by the Azure blob storage subsystem and the + * content-type specific metadata (for example, metadata unique to just .png files + * are indexed). + */ + AllMetadata: "allMetadata", - /** - * Extracts all metadata and textual content from each blob. - */ - ContentAndMetadata: "contentAndMetadata", + /** + * Extracts all metadata and textual content from each blob. + */ + ContentAndMetadata: "contentAndMetadata", } /** @@ -118,74 +118,74 @@ union BlobIndexerDataToExtract { * "none" requires that a skillset also be attached to that indexer. */ union BlobIndexerImageAction { - string, - - /** - * Ignores embedded images or image files in the data set. This is the default. - */ - None: "none", - - /** - * Extracts text from images (for example, the word "STOP" from a traffic stop - * sign), and embeds it into the content field. This action requires that - * "dataToExtract" is set to "contentAndMetadata". A normalized image refers to - * additional processing resulting in uniform image output, sized and rotated to - * promote consistent rendering when you include images in visual search results. - * This information is generated for each image when you use this option. - */ - GenerateNormalizedImages: "generateNormalizedImages", - - /** - * Extracts text from images (for example, the word "STOP" from a traffic stop - * sign), and embeds it into the content field, but treats PDF files differently - * in that each page will be rendered as an image and normalized accordingly, - * instead of extracting embedded images. Non-PDF file types will be treated the - * same as if "generateNormalizedImages" was set. - */ - GenerateNormalizedImagePerPage: "generateNormalizedImagePerPage", + string, + + /** + * Ignores embedded images or image files in the data set. This is the default. + */ + None: "none", + + /** + * Extracts text from images (for example, the word "STOP" from a traffic stop + * sign), and embeds it into the content field. This action requires that + * "dataToExtract" is set to "contentAndMetadata". A normalized image refers to + * additional processing resulting in uniform image output, sized and rotated to + * promote consistent rendering when you include images in visual search results. + * This information is generated for each image when you use this option. + */ + GenerateNormalizedImages: "generateNormalizedImages", + + /** + * Extracts text from images (for example, the word "STOP" from a traffic stop + * sign), and embeds it into the content field, but treats PDF files differently + * in that each page will be rendered as an image and normalized accordingly, + * instead of extracting embedded images. Non-PDF file types will be treated the + * same as if "generateNormalizedImages" was set. + */ + GenerateNormalizedImagePerPage: "generateNormalizedImagePerPage", } /** * Determines algorithm for text extraction from PDF files in Azure blob storage. */ union BlobIndexerPDFTextRotationAlgorithm { - string, + string, - /** - * Leverages normal text extraction. This is the default. - */ - None: "none", + /** + * Leverages normal text extraction. This is the default. + */ + None: "none", - /** - * May produce better and more readable text extraction from PDF files that have - * rotated text within them. Note that there may be a small performance speed - * impact when this parameter is used. This parameter only applies to PDF files, - * and only to PDFs with embedded text. If the rotated text appears within an - * embedded image in the PDF, this parameter does not apply. - */ - DetectAngles: "detectAngles", + /** + * May produce better and more readable text extraction from PDF files that have + * rotated text within them. Note that there may be a small performance speed + * impact when this parameter is used. This parameter only applies to PDF files, + * and only to PDFs with embedded text. If the rotated text appears within an + * embedded image in the PDF, this parameter does not apply. + */ + DetectAngles: "detectAngles", } /** * Specifies the environment in which the indexer should execute. */ union IndexerExecutionEnvironment { - string, + string, - /** - * Indicates that the search service can determine where the indexer should - * execute. This is the default environment when nothing is specified and is the - * recommended value. - */ - standard: "standard", + /** + * Indicates that the search service can determine where the indexer should + * execute. This is the default environment when nothing is specified and is the + * recommended value. + */ + standard: "standard", - /** - * Indicates that the indexer should run with the environment provisioned - * specifically for the search service. This should only be specified as the - * execution environment if the indexer needs to access resources securely over - * shared private link resources. - */ - private: "private", + /** + * Indicates that the indexer should run with the environment provisioned + * specifically for the search service. This should only be specified as the + * execution environment if the indexer needs to access resources securely over + * shared private link resources. + */ + private: "private", } /** @@ -193,971 +193,971 @@ union IndexerExecutionEnvironment { * indexer. */ union IndexProjectionMode { - string, + string, - /** - * The source document will be skipped from writing into the indexer's target - * index. - */ - SkipIndexingParentDocuments: "skipIndexingParentDocuments", + /** + * The source document will be skipped from writing into the indexer's target + * index. + */ + SkipIndexingParentDocuments: "skipIndexingParentDocuments", - /** - * The source document will be written into the indexer's target index. This is - * the default pattern. - */ - IncludeIndexingParentDocuments: "includeIndexingParentDocuments", + /** + * The source document will be written into the indexer's target index. This is + * the default pattern. + */ + IncludeIndexingParentDocuments: "includeIndexingParentDocuments", } /** * Defines the data type of a field in a search index. */ union SearchFieldDataType { - string, - - /** - * Indicates that a field contains a string. - */ - String: "Edm.String", - - /** - * Indicates that a field contains a 32-bit signed integer. - */ - Int32: "Edm.Int32", - - /** - * Indicates that a field contains a 64-bit signed integer. - */ - Int64: "Edm.Int64", - - /** - * Indicates that a field contains an IEEE double-precision floating point number. - */ - Double: "Edm.Double", - - /** - * Indicates that a field contains a Boolean value (true or false). - */ - Boolean: "Edm.Boolean", - - /** - * Indicates that a field contains a date/time value, including timezone - * information. - */ - DateTimeOffset: "Edm.DateTimeOffset", - - /** - * Indicates that a field contains a geo-location in terms of longitude and - * latitude. - */ - GeographyPoint: "Edm.GeographyPoint", - - /** - * Indicates that a field contains one or more complex objects that in turn have - * sub-fields of other types. - */ - Complex: "Edm.ComplexType", - - /** - * Indicates that a field contains a single-precision floating point number. This - * is only valid when used with Collection(Edm.Single). - */ - Single: "Edm.Single", - - /** - * Indicates that a field contains a half-precision floating point number. This is - * only valid when used with Collection(Edm.Half). - */ - Half: "Edm.Half", - - /** - * Indicates that a field contains a 16-bit signed integer. This is only valid - * when used with Collection(Edm.Int16). - */ - Int16: "Edm.Int16", - - /** - * Indicates that a field contains a 8-bit signed integer. This is only valid when - * used with Collection(Edm.SByte). - */ - SByte: "Edm.SByte", - - /** - * Indicates that a field contains a 8-bit unsigned integer. This is only valid - * when used with Collection(Edm.Byte). - */ - Byte: "Edm.Byte", + string, + + /** + * Indicates that a field contains a string. + */ + String: "Edm.String", + + /** + * Indicates that a field contains a 32-bit signed integer. + */ + Int32: "Edm.Int32", + + /** + * Indicates that a field contains a 64-bit signed integer. + */ + Int64: "Edm.Int64", + + /** + * Indicates that a field contains an IEEE double-precision floating point number. + */ + Double: "Edm.Double", + + /** + * Indicates that a field contains a Boolean value (true or false). + */ + Boolean: "Edm.Boolean", + + /** + * Indicates that a field contains a date/time value, including timezone + * information. + */ + DateTimeOffset: "Edm.DateTimeOffset", + + /** + * Indicates that a field contains a geo-location in terms of longitude and + * latitude. + */ + GeographyPoint: "Edm.GeographyPoint", + + /** + * Indicates that a field contains one or more complex objects that in turn have + * sub-fields of other types. + */ + Complex: "Edm.ComplexType", + + /** + * Indicates that a field contains a single-precision floating point number. This + * is only valid when used with Collection(Edm.Single). + */ + Single: "Edm.Single", + + /** + * Indicates that a field contains a half-precision floating point number. This is + * only valid when used with Collection(Edm.Half). + */ + Half: "Edm.Half", + + /** + * Indicates that a field contains a 16-bit signed integer. This is only valid + * when used with Collection(Edm.Int16). + */ + Int16: "Edm.Int16", + + /** + * Indicates that a field contains a 8-bit signed integer. This is only valid when + * used with Collection(Edm.SByte). + */ + SByte: "Edm.SByte", + + /** + * Indicates that a field contains a 8-bit unsigned integer. This is only valid + * when used with Collection(Edm.Byte). + */ + Byte: "Edm.Byte", } /** * Defines the names of all text analyzers supported by the search engine. */ union LexicalAnalyzerName { - string, - - /** - * Microsoft analyzer for Arabic. - */ - ArMicrosoft: "ar.microsoft", - - /** - * Lucene analyzer for Arabic. - */ - ArLucene: "ar.lucene", - - /** - * Lucene analyzer for Armenian. - */ - HyLucene: "hy.lucene", - - /** - * Microsoft analyzer for Bangla. - */ - BnMicrosoft: "bn.microsoft", - - /** - * Lucene analyzer for Basque. - */ - EuLucene: "eu.lucene", - - /** - * Microsoft analyzer for Bulgarian. - */ - BgMicrosoft: "bg.microsoft", - - /** - * Lucene analyzer for Bulgarian. - */ - BgLucene: "bg.lucene", - - /** - * Microsoft analyzer for Catalan. - */ - CaMicrosoft: "ca.microsoft", - - /** - * Lucene analyzer for Catalan. - */ - CaLucene: "ca.lucene", - - /** - * Microsoft analyzer for Chinese (Simplified). - */ - ZhHansMicrosoft: "zh-Hans.microsoft", - - /** - * Lucene analyzer for Chinese (Simplified). - */ - ZhHansLucene: "zh-Hans.lucene", - - /** - * Microsoft analyzer for Chinese (Traditional). - */ - ZhHantMicrosoft: "zh-Hant.microsoft", - - /** - * Lucene analyzer for Chinese (Traditional). - */ - ZhHantLucene: "zh-Hant.lucene", - - /** - * Microsoft analyzer for Croatian. - */ - HrMicrosoft: "hr.microsoft", - - /** - * Microsoft analyzer for Czech. - */ - CsMicrosoft: "cs.microsoft", - - /** - * Lucene analyzer for Czech. - */ - CsLucene: "cs.lucene", - - /** - * Microsoft analyzer for Danish. - */ - DaMicrosoft: "da.microsoft", - - /** - * Lucene analyzer for Danish. - */ - DaLucene: "da.lucene", - - /** - * Microsoft analyzer for Dutch. - */ - NlMicrosoft: "nl.microsoft", - - /** - * Lucene analyzer for Dutch. - */ - NlLucene: "nl.lucene", - - /** - * Microsoft analyzer for English. - */ - EnMicrosoft: "en.microsoft", - - /** - * Lucene analyzer for English. - */ - EnLucene: "en.lucene", - - /** - * Microsoft analyzer for Estonian. - */ - EtMicrosoft: "et.microsoft", - - /** - * Microsoft analyzer for Finnish. - */ - FiMicrosoft: "fi.microsoft", - - /** - * Lucene analyzer for Finnish. - */ - FiLucene: "fi.lucene", - - /** - * Microsoft analyzer for French. - */ - FrMicrosoft: "fr.microsoft", - - /** - * Lucene analyzer for French. - */ - FrLucene: "fr.lucene", - - /** - * Lucene analyzer for Galician. - */ - GlLucene: "gl.lucene", - - /** - * Microsoft analyzer for German. - */ - DeMicrosoft: "de.microsoft", - - /** - * Lucene analyzer for German. - */ - DeLucene: "de.lucene", - - /** - * Microsoft analyzer for Greek. - */ - ElMicrosoft: "el.microsoft", - - /** - * Lucene analyzer for Greek. - */ - ElLucene: "el.lucene", - - /** - * Microsoft analyzer for Gujarati. - */ - GuMicrosoft: "gu.microsoft", - - /** - * Microsoft analyzer for Hebrew. - */ - HeMicrosoft: "he.microsoft", - - /** - * Microsoft analyzer for Hindi. - */ - HiMicrosoft: "hi.microsoft", - - /** - * Lucene analyzer for Hindi. - */ - HiLucene: "hi.lucene", - - /** - * Microsoft analyzer for Hungarian. - */ - HuMicrosoft: "hu.microsoft", - - /** - * Lucene analyzer for Hungarian. - */ - HuLucene: "hu.lucene", - - /** - * Microsoft analyzer for Icelandic. - */ - IsMicrosoft: "is.microsoft", - - /** - * Microsoft analyzer for Indonesian (Bahasa). - */ - IdMicrosoft: "id.microsoft", - - /** - * Lucene analyzer for Indonesian. - */ - IdLucene: "id.lucene", - - /** - * Lucene analyzer for Irish. - */ - GaLucene: "ga.lucene", - - /** - * Microsoft analyzer for Italian. - */ - ItMicrosoft: "it.microsoft", - - /** - * Lucene analyzer for Italian. - */ - ItLucene: "it.lucene", - - /** - * Microsoft analyzer for Japanese. - */ - JaMicrosoft: "ja.microsoft", - - /** - * Lucene analyzer for Japanese. - */ - JaLucene: "ja.lucene", - - /** - * Microsoft analyzer for Kannada. - */ - KnMicrosoft: "kn.microsoft", - - /** - * Microsoft analyzer for Korean. - */ - KoMicrosoft: "ko.microsoft", - - /** - * Lucene analyzer for Korean. - */ - KoLucene: "ko.lucene", - - /** - * Microsoft analyzer for Latvian. - */ - LvMicrosoft: "lv.microsoft", - - /** - * Lucene analyzer for Latvian. - */ - LvLucene: "lv.lucene", - - /** - * Microsoft analyzer for Lithuanian. - */ - LtMicrosoft: "lt.microsoft", - - /** - * Microsoft analyzer for Malayalam. - */ - MlMicrosoft: "ml.microsoft", - - /** - * Microsoft analyzer for Malay (Latin). - */ - MsMicrosoft: "ms.microsoft", - - /** - * Microsoft analyzer for Marathi. - */ - MrMicrosoft: "mr.microsoft", - - /** - * Microsoft analyzer for Norwegian (Bokmål). - */ - NbMicrosoft: "nb.microsoft", - - /** - * Lucene analyzer for Norwegian. - */ - NoLucene: "no.lucene", - - /** - * Lucene analyzer for Persian. - */ - FaLucene: "fa.lucene", - - /** - * Microsoft analyzer for Polish. - */ - PlMicrosoft: "pl.microsoft", - - /** - * Lucene analyzer for Polish. - */ - PlLucene: "pl.lucene", - - /** - * Microsoft analyzer for Portuguese (Brazil). - */ - PtBrMicrosoft: "pt-BR.microsoft", - - /** - * Lucene analyzer for Portuguese (Brazil). - */ - PtBrLucene: "pt-BR.lucene", - - /** - * Microsoft analyzer for Portuguese (Portugal). - */ - PtPtMicrosoft: "pt-PT.microsoft", - - /** - * Lucene analyzer for Portuguese (Portugal). - */ - PtPtLucene: "pt-PT.lucene", - - /** - * Microsoft analyzer for Punjabi. - */ - PaMicrosoft: "pa.microsoft", - - /** - * Microsoft analyzer for Romanian. - */ - RoMicrosoft: "ro.microsoft", - - /** - * Lucene analyzer for Romanian. - */ - RoLucene: "ro.lucene", - - /** - * Microsoft analyzer for Russian. - */ - RuMicrosoft: "ru.microsoft", - - /** - * Lucene analyzer for Russian. - */ - RuLucene: "ru.lucene", - - /** - * Microsoft analyzer for Serbian (Cyrillic). - */ - SrCyrillicMicrosoft: "sr-cyrillic.microsoft", - - /** - * Microsoft analyzer for Serbian (Latin). - */ - SrLatinMicrosoft: "sr-latin.microsoft", - - /** - * Microsoft analyzer for Slovak. - */ - SkMicrosoft: "sk.microsoft", - - /** - * Microsoft analyzer for Slovenian. - */ - SlMicrosoft: "sl.microsoft", - - /** - * Microsoft analyzer for Spanish. - */ - EsMicrosoft: "es.microsoft", - - /** - * Lucene analyzer for Spanish. - */ - EsLucene: "es.lucene", - - /** - * Microsoft analyzer for Swedish. - */ - SvMicrosoft: "sv.microsoft", - - /** - * Lucene analyzer for Swedish. - */ - SvLucene: "sv.lucene", - - /** - * Microsoft analyzer for Tamil. - */ - TaMicrosoft: "ta.microsoft", - - /** - * Microsoft analyzer for Telugu. - */ - TeMicrosoft: "te.microsoft", - - /** - * Microsoft analyzer for Thai. - */ - ThMicrosoft: "th.microsoft", - - /** - * Lucene analyzer for Thai. - */ - ThLucene: "th.lucene", - - /** - * Microsoft analyzer for Turkish. - */ - TrMicrosoft: "tr.microsoft", - - /** - * Lucene analyzer for Turkish. - */ - TrLucene: "tr.lucene", - - /** - * Microsoft analyzer for Ukrainian. - */ - UkMicrosoft: "uk.microsoft", - - /** - * Microsoft analyzer for Urdu. - */ - UrMicrosoft: "ur.microsoft", - - /** - * Microsoft analyzer for Vietnamese. - */ - ViMicrosoft: "vi.microsoft", - - /** - * Standard Lucene analyzer. - */ - StandardLucene: "standard.lucene", - - /** - * Standard ASCII Folding Lucene analyzer. See - * https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers - */ - StandardAsciiFoldingLucene: "standardasciifolding.lucene", - - /** - * Treats the entire content of a field as a single token. This is useful for data - * like zip codes, ids, and some product names. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html - */ - Keyword: "keyword", - - /** - * Flexibly separates text into terms via a regular expression pattern. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html - */ - Pattern: "pattern", - - /** - * Divides text at non-letters and converts them to lower case. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html - */ - Simple: "simple", - - /** - * Divides text at non-letters; Applies the lowercase and stopword token filters. - * See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html - */ - Stop: "stop", - - /** - * An analyzer that uses the whitespace tokenizer. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html - */ - Whitespace: "whitespace", + string, + + /** + * Microsoft analyzer for Arabic. + */ + ArMicrosoft: "ar.microsoft", + + /** + * Lucene analyzer for Arabic. + */ + ArLucene: "ar.lucene", + + /** + * Lucene analyzer for Armenian. + */ + HyLucene: "hy.lucene", + + /** + * Microsoft analyzer for Bangla. + */ + BnMicrosoft: "bn.microsoft", + + /** + * Lucene analyzer for Basque. + */ + EuLucene: "eu.lucene", + + /** + * Microsoft analyzer for Bulgarian. + */ + BgMicrosoft: "bg.microsoft", + + /** + * Lucene analyzer for Bulgarian. + */ + BgLucene: "bg.lucene", + + /** + * Microsoft analyzer for Catalan. + */ + CaMicrosoft: "ca.microsoft", + + /** + * Lucene analyzer for Catalan. + */ + CaLucene: "ca.lucene", + + /** + * Microsoft analyzer for Chinese (Simplified). + */ + ZhHansMicrosoft: "zh-Hans.microsoft", + + /** + * Lucene analyzer for Chinese (Simplified). + */ + ZhHansLucene: "zh-Hans.lucene", + + /** + * Microsoft analyzer for Chinese (Traditional). + */ + ZhHantMicrosoft: "zh-Hant.microsoft", + + /** + * Lucene analyzer for Chinese (Traditional). + */ + ZhHantLucene: "zh-Hant.lucene", + + /** + * Microsoft analyzer for Croatian. + */ + HrMicrosoft: "hr.microsoft", + + /** + * Microsoft analyzer for Czech. + */ + CsMicrosoft: "cs.microsoft", + + /** + * Lucene analyzer for Czech. + */ + CsLucene: "cs.lucene", + + /** + * Microsoft analyzer for Danish. + */ + DaMicrosoft: "da.microsoft", + + /** + * Lucene analyzer for Danish. + */ + DaLucene: "da.lucene", + + /** + * Microsoft analyzer for Dutch. + */ + NlMicrosoft: "nl.microsoft", + + /** + * Lucene analyzer for Dutch. + */ + NlLucene: "nl.lucene", + + /** + * Microsoft analyzer for English. + */ + EnMicrosoft: "en.microsoft", + + /** + * Lucene analyzer for English. + */ + EnLucene: "en.lucene", + + /** + * Microsoft analyzer for Estonian. + */ + EtMicrosoft: "et.microsoft", + + /** + * Microsoft analyzer for Finnish. + */ + FiMicrosoft: "fi.microsoft", + + /** + * Lucene analyzer for Finnish. + */ + FiLucene: "fi.lucene", + + /** + * Microsoft analyzer for French. + */ + FrMicrosoft: "fr.microsoft", + + /** + * Lucene analyzer for French. + */ + FrLucene: "fr.lucene", + + /** + * Lucene analyzer for Galician. + */ + GlLucene: "gl.lucene", + + /** + * Microsoft analyzer for German. + */ + DeMicrosoft: "de.microsoft", + + /** + * Lucene analyzer for German. + */ + DeLucene: "de.lucene", + + /** + * Microsoft analyzer for Greek. + */ + ElMicrosoft: "el.microsoft", + + /** + * Lucene analyzer for Greek. + */ + ElLucene: "el.lucene", + + /** + * Microsoft analyzer for Gujarati. + */ + GuMicrosoft: "gu.microsoft", + + /** + * Microsoft analyzer for Hebrew. + */ + HeMicrosoft: "he.microsoft", + + /** + * Microsoft analyzer for Hindi. + */ + HiMicrosoft: "hi.microsoft", + + /** + * Lucene analyzer for Hindi. + */ + HiLucene: "hi.lucene", + + /** + * Microsoft analyzer for Hungarian. + */ + HuMicrosoft: "hu.microsoft", + + /** + * Lucene analyzer for Hungarian. + */ + HuLucene: "hu.lucene", + + /** + * Microsoft analyzer for Icelandic. + */ + IsMicrosoft: "is.microsoft", + + /** + * Microsoft analyzer for Indonesian (Bahasa). + */ + IdMicrosoft: "id.microsoft", + + /** + * Lucene analyzer for Indonesian. + */ + IdLucene: "id.lucene", + + /** + * Lucene analyzer for Irish. + */ + GaLucene: "ga.lucene", + + /** + * Microsoft analyzer for Italian. + */ + ItMicrosoft: "it.microsoft", + + /** + * Lucene analyzer for Italian. + */ + ItLucene: "it.lucene", + + /** + * Microsoft analyzer for Japanese. + */ + JaMicrosoft: "ja.microsoft", + + /** + * Lucene analyzer for Japanese. + */ + JaLucene: "ja.lucene", + + /** + * Microsoft analyzer for Kannada. + */ + KnMicrosoft: "kn.microsoft", + + /** + * Microsoft analyzer for Korean. + */ + KoMicrosoft: "ko.microsoft", + + /** + * Lucene analyzer for Korean. + */ + KoLucene: "ko.lucene", + + /** + * Microsoft analyzer for Latvian. + */ + LvMicrosoft: "lv.microsoft", + + /** + * Lucene analyzer for Latvian. + */ + LvLucene: "lv.lucene", + + /** + * Microsoft analyzer for Lithuanian. + */ + LtMicrosoft: "lt.microsoft", + + /** + * Microsoft analyzer for Malayalam. + */ + MlMicrosoft: "ml.microsoft", + + /** + * Microsoft analyzer for Malay (Latin). + */ + MsMicrosoft: "ms.microsoft", + + /** + * Microsoft analyzer for Marathi. + */ + MrMicrosoft: "mr.microsoft", + + /** + * Microsoft analyzer for Norwegian (Bokmål). + */ + NbMicrosoft: "nb.microsoft", + + /** + * Lucene analyzer for Norwegian. + */ + NoLucene: "no.lucene", + + /** + * Lucene analyzer for Persian. + */ + FaLucene: "fa.lucene", + + /** + * Microsoft analyzer for Polish. + */ + PlMicrosoft: "pl.microsoft", + + /** + * Lucene analyzer for Polish. + */ + PlLucene: "pl.lucene", + + /** + * Microsoft analyzer for Portuguese (Brazil). + */ + PtBrMicrosoft: "pt-BR.microsoft", + + /** + * Lucene analyzer for Portuguese (Brazil). + */ + PtBrLucene: "pt-BR.lucene", + + /** + * Microsoft analyzer for Portuguese (Portugal). + */ + PtPtMicrosoft: "pt-PT.microsoft", + + /** + * Lucene analyzer for Portuguese (Portugal). + */ + PtPtLucene: "pt-PT.lucene", + + /** + * Microsoft analyzer for Punjabi. + */ + PaMicrosoft: "pa.microsoft", + + /** + * Microsoft analyzer for Romanian. + */ + RoMicrosoft: "ro.microsoft", + + /** + * Lucene analyzer for Romanian. + */ + RoLucene: "ro.lucene", + + /** + * Microsoft analyzer for Russian. + */ + RuMicrosoft: "ru.microsoft", + + /** + * Lucene analyzer for Russian. + */ + RuLucene: "ru.lucene", + + /** + * Microsoft analyzer for Serbian (Cyrillic). + */ + SrCyrillicMicrosoft: "sr-cyrillic.microsoft", + + /** + * Microsoft analyzer for Serbian (Latin). + */ + SrLatinMicrosoft: "sr-latin.microsoft", + + /** + * Microsoft analyzer for Slovak. + */ + SkMicrosoft: "sk.microsoft", + + /** + * Microsoft analyzer for Slovenian. + */ + SlMicrosoft: "sl.microsoft", + + /** + * Microsoft analyzer for Spanish. + */ + EsMicrosoft: "es.microsoft", + + /** + * Lucene analyzer for Spanish. + */ + EsLucene: "es.lucene", + + /** + * Microsoft analyzer for Swedish. + */ + SvMicrosoft: "sv.microsoft", + + /** + * Lucene analyzer for Swedish. + */ + SvLucene: "sv.lucene", + + /** + * Microsoft analyzer for Tamil. + */ + TaMicrosoft: "ta.microsoft", + + /** + * Microsoft analyzer for Telugu. + */ + TeMicrosoft: "te.microsoft", + + /** + * Microsoft analyzer for Thai. + */ + ThMicrosoft: "th.microsoft", + + /** + * Lucene analyzer for Thai. + */ + ThLucene: "th.lucene", + + /** + * Microsoft analyzer for Turkish. + */ + TrMicrosoft: "tr.microsoft", + + /** + * Lucene analyzer for Turkish. + */ + TrLucene: "tr.lucene", + + /** + * Microsoft analyzer for Ukrainian. + */ + UkMicrosoft: "uk.microsoft", + + /** + * Microsoft analyzer for Urdu. + */ + UrMicrosoft: "ur.microsoft", + + /** + * Microsoft analyzer for Vietnamese. + */ + ViMicrosoft: "vi.microsoft", + + /** + * Standard Lucene analyzer. + */ + StandardLucene: "standard.lucene", + + /** + * Standard ASCII Folding Lucene analyzer. See + * https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers + */ + StandardAsciiFoldingLucene: "standardasciifolding.lucene", + + /** + * Treats the entire content of a field as a single token. This is useful for data + * like zip codes, ids, and some product names. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html + */ + Keyword: "keyword", + + /** + * Flexibly separates text into terms via a regular expression pattern. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html + */ + Pattern: "pattern", + + /** + * Divides text at non-letters and converts them to lower case. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html + */ + Simple: "simple", + + /** + * Divides text at non-letters; Applies the lowercase and stopword token filters. + * See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html + */ + Stop: "stop", + + /** + * An analyzer that uses the whitespace tokenizer. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html + */ + Whitespace: "whitespace", } /** * The encoding format for interpreting vector field contents. */ union VectorEncodingFormat { - string, + string, - /** - * Encoding format representing bits packed into a wider data type. - */ - PackedBit: "packedBit", + /** + * Encoding format representing bits packed into a wider data type. + */ + PackedBit: "packedBit", } /** * The algorithm used for indexing and querying. */ union VectorSearchAlgorithmKind { - string, + string, - /** - * HNSW (Hierarchical Navigable Small World), a type of approximate nearest - * neighbors algorithm. - */ - Hnsw: "hnsw", + /** + * HNSW (Hierarchical Navigable Small World), a type of approximate nearest + * neighbors algorithm. + */ + Hnsw: "hnsw", - /** - * Exhaustive KNN algorithm which will perform brute-force search. - */ - ExhaustiveKnn: "exhaustiveKnn", + /** + * Exhaustive KNN algorithm which will perform brute-force search. + */ + ExhaustiveKnn: "exhaustiveKnn", } /** * The vectorization method to be used during query time. */ union VectorSearchVectorizerKind { - string, + string, - /** - * Generate embeddings using an Azure OpenAI resource at query time. - */ - AzureOpenAI: "azureOpenAI", + /** + * Generate embeddings using an Azure OpenAI resource at query time. + */ + AzureOpenAI: "azureOpenAI", - /** - * Generate embeddings using a custom web endpoint at query time. - */ - CustomWebApi: "customWebApi", + /** + * Generate embeddings using a custom web endpoint at query time. + */ + CustomWebApi: "customWebApi", } /** * The compression method used for indexing and querying. */ union VectorSearchCompressionKind { - string, + string, - /** - * Scalar Quantization, a type of compression method. In scalar quantization, the - * original vectors values are compressed to a narrower type by discretizing and - * representing each component of a vector using a reduced set of quantized - * values, thereby reducing the overall data size. - */ - ScalarQuantization: "scalarQuantization", + /** + * Scalar Quantization, a type of compression method. In scalar quantization, the + * original vectors values are compressed to a narrower type by discretizing and + * representing each component of a vector using a reduced set of quantized + * values, thereby reducing the overall data size. + */ + ScalarQuantization: "scalarQuantization", - /** - * Binary Quantization, a type of compression method. In binary quantization, the - * original vectors values are compressed to the narrower binary type by - * discretizing and representing each component of a vector using binary values, - * thereby reducing the overall data size. - */ - BinaryQuantization: "binaryQuantization", + /** + * Binary Quantization, a type of compression method. In binary quantization, the + * original vectors values are compressed to the narrower binary type by + * discretizing and representing each component of a vector using binary values, + * thereby reducing the overall data size. + */ + BinaryQuantization: "binaryQuantization", } /** * Defines the names of all tokenizers supported by the search engine. */ union LexicalTokenizerName { - string, - - /** - * Grammar-based tokenizer that is suitable for processing most European-language - * documents. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html - */ - Classic: "classic", - - /** - * Tokenizes the input from an edge into n-grams of the given size(s). See - * https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html - */ - EdgeNGram: "edgeNGram", - - /** - * Emits the entire input as a single token. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html - */ - Keyword: "keyword_v2", - - /** - * Divides text at non-letters. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html - */ - Letter: "letter", - - /** - * Divides text at non-letters and converts them to lower case. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html - */ - Lowercase: "lowercase", - - /** - * Divides text using language-specific rules. - */ - MicrosoftLanguageTokenizer: "microsoft_language_tokenizer", - - /** - * Divides text using language-specific rules and reduces words to their base - * forms. - */ - MicrosoftLanguageStemmingTokenizer: "microsoft_language_stemming_tokenizer", - - /** - * Tokenizes the input into n-grams of the given size(s). See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html - */ - NGram: "nGram", - - /** - * Tokenizer for path-like hierarchies. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html - */ - PathHierarchy: "path_hierarchy_v2", - - /** - * Tokenizer that uses regex pattern matching to construct distinct tokens. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html - */ - Pattern: "pattern", - - /** - * Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter - * and stop filter. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html - */ - Standard: "standard_v2", - - /** - * Tokenizes urls and emails as one token. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html - */ - UaxUrlEmail: "uax_url_email", - - /** - * Divides text at whitespace. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html - */ - Whitespace: "whitespace", + string, + + /** + * Grammar-based tokenizer that is suitable for processing most European-language + * documents. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html + */ + Classic: "classic", + + /** + * Tokenizes the input from an edge into n-grams of the given size(s). See + * https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html + */ + EdgeNGram: "edgeNGram", + + /** + * Emits the entire input as a single token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html + */ + Keyword: "keyword_v2", + + /** + * Divides text at non-letters. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html + */ + Letter: "letter", + + /** + * Divides text at non-letters and converts them to lower case. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html + */ + Lowercase: "lowercase", + + /** + * Divides text using language-specific rules. + */ + MicrosoftLanguageTokenizer: "microsoft_language_tokenizer", + + /** + * Divides text using language-specific rules and reduces words to their base + * forms. + */ + MicrosoftLanguageStemmingTokenizer: "microsoft_language_stemming_tokenizer", + + /** + * Tokenizes the input into n-grams of the given size(s). See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html + */ + NGram: "nGram", + + /** + * Tokenizer for path-like hierarchies. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html + */ + PathHierarchy: "path_hierarchy_v2", + + /** + * Tokenizer that uses regex pattern matching to construct distinct tokens. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html + */ + Pattern: "pattern", + + /** + * Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter + * and stop filter. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html + */ + Standard: "standard_v2", + + /** + * Tokenizes urls and emails as one token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html + */ + UaxUrlEmail: "uax_url_email", + + /** + * Divides text at whitespace. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html + */ + Whitespace: "whitespace", } /** * Defines the names of all token filters supported by the search engine. */ union TokenFilterName { - string, - - /** - * A token filter that applies the Arabic normalizer to normalize the orthography. - * See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html - */ - ArabicNormalization: "arabic_normalization", - - /** - * Strips all characters after an apostrophe (including the apostrophe itself). - * See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html - */ - Apostrophe: "apostrophe", - - /** - * Converts alphabetic, numeric, and symbolic Unicode characters which are not in - * the first 127 ASCII characters (the "Basic Latin" Unicode block) into their - * ASCII equivalents, if such equivalents exist. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html - */ - AsciiFolding: "asciifolding", - - /** - * Forms bigrams of CJK terms that are generated from the standard tokenizer. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html - */ - CjkBigram: "cjk_bigram", - - /** - * Normalizes CJK width differences. Folds fullwidth ASCII variants into the - * equivalent basic Latin, and half-width Katakana variants into the equivalent - * Kana. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html - */ - CjkWidth: "cjk_width", - - /** - * Removes English possessives, and dots from acronyms. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html - */ - Classic: "classic", - - /** - * Construct bigrams for frequently occurring terms while indexing. Single terms - * are still indexed too, with bigrams overlaid. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html - */ - CommonGram: "common_grams", - - /** - * Generates n-grams of the given size(s) starting from the front or the back of - * an input token. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html - */ - EdgeNGram: "edgeNGram_v2", - - /** - * Removes elisions. For example, "l'avion" (the plane) will be converted to - * "avion" (plane). See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html - */ - Elision: "elision", - - /** - * Normalizes German characters according to the heuristics of the German2 - * snowball algorithm. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html - */ - GermanNormalization: "german_normalization", - - /** - * Normalizes text in Hindi to remove some differences in spelling variations. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html - */ - HindiNormalization: "hindi_normalization", - - /** - * Normalizes the Unicode representation of text in Indian languages. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html - */ - IndicNormalization: "indic_normalization", - - /** - * Emits each incoming token twice, once as keyword and once as non-keyword. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html - */ - KeywordRepeat: "keyword_repeat", - - /** - * A high-performance kstem filter for English. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html - */ - KStem: "kstem", - - /** - * Removes words that are too long or too short. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html - */ - Length: "length", - - /** - * Limits the number of tokens while indexing. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html - */ - Limit: "limit", - - /** - * Normalizes token text to lower case. See - * https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html - */ - Lowercase: "lowercase", - - /** - * Generates n-grams of the given size(s). See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html - */ - NGram: "nGram_v2", - - /** - * Applies normalization for Persian. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html - */ - PersianNormalization: "persian_normalization", - - /** - * Create tokens for phonetic matches. See - * https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html - */ - Phonetic: "phonetic", - - /** - * Uses the Porter stemming algorithm to transform the token stream. See - * http://tartarus.org/~martin/PorterStemmer - */ - PorterStem: "porter_stem", - - /** - * Reverses the token string. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html - */ - Reverse: "reverse", - - /** - * Normalizes use of the interchangeable Scandinavian characters. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html - */ - ScandinavianNormalization: "scandinavian_normalization", - - /** - * Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also - * discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just - * the first one. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html - */ - ScandinavianFoldingNormalization: "scandinavian_folding", - - /** - * Creates combinations of tokens as a single token. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html - */ - Shingle: "shingle", - - /** - * A filter that stems words using a Snowball-generated stemmer. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html - */ - Snowball: "snowball", - - /** - * Normalizes the Unicode representation of Sorani text. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html - */ - SoraniNormalization: "sorani_normalization", - - /** - * Language specific stemming filter. See - * https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters - */ - Stemmer: "stemmer", - - /** - * Removes stop words from a token stream. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html - */ - Stopwords: "stopwords", - - /** - * Trims leading and trailing whitespace from tokens. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html - */ - Trim: "trim", - - /** - * Truncates the terms to a specific length. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html - */ - Truncate: "truncate", - - /** - * Filters out tokens with same text as the previous token. See - * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html - */ - Unique: "unique", - - /** - * Normalizes token text to upper case. See - * https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html - */ - Uppercase: "uppercase", - - /** - * Splits words into subwords and performs optional transformations on subword - * groups. - */ - WordDelimiter: "word_delimiter", + string, + + /** + * A token filter that applies the Arabic normalizer to normalize the orthography. + * See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html + */ + ArabicNormalization: "arabic_normalization", + + /** + * Strips all characters after an apostrophe (including the apostrophe itself). + * See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html + */ + Apostrophe: "apostrophe", + + /** + * Converts alphabetic, numeric, and symbolic Unicode characters which are not in + * the first 127 ASCII characters (the "Basic Latin" Unicode block) into their + * ASCII equivalents, if such equivalents exist. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html + */ + AsciiFolding: "asciifolding", + + /** + * Forms bigrams of CJK terms that are generated from the standard tokenizer. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html + */ + CjkBigram: "cjk_bigram", + + /** + * Normalizes CJK width differences. Folds fullwidth ASCII variants into the + * equivalent basic Latin, and half-width Katakana variants into the equivalent + * Kana. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html + */ + CjkWidth: "cjk_width", + + /** + * Removes English possessives, and dots from acronyms. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html + */ + Classic: "classic", + + /** + * Construct bigrams for frequently occurring terms while indexing. Single terms + * are still indexed too, with bigrams overlaid. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html + */ + CommonGram: "common_grams", + + /** + * Generates n-grams of the given size(s) starting from the front or the back of + * an input token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html + */ + EdgeNGram: "edgeNGram_v2", + + /** + * Removes elisions. For example, "l'avion" (the plane) will be converted to + * "avion" (plane). See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html + */ + Elision: "elision", + + /** + * Normalizes German characters according to the heuristics of the German2 + * snowball algorithm. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html + */ + GermanNormalization: "german_normalization", + + /** + * Normalizes text in Hindi to remove some differences in spelling variations. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html + */ + HindiNormalization: "hindi_normalization", + + /** + * Normalizes the Unicode representation of text in Indian languages. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html + */ + IndicNormalization: "indic_normalization", + + /** + * Emits each incoming token twice, once as keyword and once as non-keyword. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html + */ + KeywordRepeat: "keyword_repeat", + + /** + * A high-performance kstem filter for English. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html + */ + KStem: "kstem", + + /** + * Removes words that are too long or too short. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html + */ + Length: "length", + + /** + * Limits the number of tokens while indexing. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html + */ + Limit: "limit", + + /** + * Normalizes token text to lower case. See + * https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html + */ + Lowercase: "lowercase", + + /** + * Generates n-grams of the given size(s). See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html + */ + NGram: "nGram_v2", + + /** + * Applies normalization for Persian. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html + */ + PersianNormalization: "persian_normalization", + + /** + * Create tokens for phonetic matches. See + * https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html + */ + Phonetic: "phonetic", + + /** + * Uses the Porter stemming algorithm to transform the token stream. See + * http://tartarus.org/~martin/PorterStemmer + */ + PorterStem: "porter_stem", + + /** + * Reverses the token string. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html + */ + Reverse: "reverse", + + /** + * Normalizes use of the interchangeable Scandinavian characters. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html + */ + ScandinavianNormalization: "scandinavian_normalization", + + /** + * Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also + * discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just + * the first one. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html + */ + ScandinavianFoldingNormalization: "scandinavian_folding", + + /** + * Creates combinations of tokens as a single token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html + */ + Shingle: "shingle", + + /** + * A filter that stems words using a Snowball-generated stemmer. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html + */ + Snowball: "snowball", + + /** + * Normalizes the Unicode representation of Sorani text. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html + */ + SoraniNormalization: "sorani_normalization", + + /** + * Language specific stemming filter. See + * https://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters + */ + Stemmer: "stemmer", + + /** + * Removes stop words from a token stream. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html + */ + Stopwords: "stopwords", + + /** + * Trims leading and trailing whitespace from tokens. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html + */ + Trim: "trim", + + /** + * Truncates the terms to a specific length. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html + */ + Truncate: "truncate", + + /** + * Filters out tokens with same text as the previous token. See + * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html + */ + Unique: "unique", + + /** + * Normalizes token text to upper case. See + * https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html + */ + Uppercase: "uppercase", + + /** + * Splits words into subwords and performs optional transformations on subword + * groups. + */ + WordDelimiter: "word_delimiter", } /** * Defines the names of all character filters supported by the search engine. */ union CharFilterName { - string, + string, - /** - * A character filter that attempts to strip out HTML constructs. See - * https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html - */ - HtmlStrip: "html_strip", + /** + * A character filter that attempts to strip out HTML constructs. See + * https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html + */ + HtmlStrip: "html_strip", } /** @@ -1165,47 +1165,47 @@ union CharFilterName { * in the pattern analyzer and pattern tokenizer. */ union RegexFlags { - string, + string, - /** - * Enables canonical equivalence. - */ - CanonEq: "CANON_EQ", + /** + * Enables canonical equivalence. + */ + CanonEq: "CANON_EQ", - /** - * Enables case-insensitive matching. - */ - CaseInsensitive: "CASE_INSENSITIVE", + /** + * Enables case-insensitive matching. + */ + CaseInsensitive: "CASE_INSENSITIVE", - /** - * Permits whitespace and comments in the pattern. - */ - Comments: "COMMENTS", + /** + * Permits whitespace and comments in the pattern. + */ + Comments: "COMMENTS", - /** - * Enables dotall mode. - */ - DotAll: "DOTALL", + /** + * Enables dotall mode. + */ + DotAll: "DOTALL", - /** - * Enables literal parsing of the pattern. - */ - Literal: "LITERAL", + /** + * Enables literal parsing of the pattern. + */ + Literal: "LITERAL", - /** - * Enables multiline mode. - */ - Multiline: "MULTILINE", + /** + * Enables multiline mode. + */ + Multiline: "MULTILINE", - /** - * Enables Unicode-aware case folding. - */ - UnicodeCase: "UNICODE_CASE", + /** + * Enables Unicode-aware case folding. + */ + UnicodeCase: "UNICODE_CASE", - /** - * Enables Unix lines mode. - */ - UnixLines: "UNIX_LINES", + /** + * Enables Unix lines mode. + */ + UnixLines: "UNIX_LINES", } /** @@ -1213,1010 +1213,1010 @@ union RegexFlags { * choose the same similarity metric as the embedding model was trained on. */ union VectorSearchAlgorithmMetric { - string, + string, - /** - * Measures the angle between vectors to quantify their similarity, disregarding - * magnitude. The smaller the angle, the closer the similarity. - */ - Cosine: "cosine", + /** + * Measures the angle between vectors to quantify their similarity, disregarding + * magnitude. The smaller the angle, the closer the similarity. + */ + Cosine: "cosine", - /** - * Computes the straight-line distance between vectors in a multi-dimensional - * space. The smaller the distance, the closer the similarity. - */ - Euclidean: "euclidean", + /** + * Computes the straight-line distance between vectors in a multi-dimensional + * space. The smaller the distance, the closer the similarity. + */ + Euclidean: "euclidean", - /** - * Calculates the sum of element-wise products to gauge alignment and magnitude - * similarity. The larger and more positive, the closer the similarity. - */ - DotProduct: "dotProduct", + /** + * Calculates the sum of element-wise products to gauge alignment and magnitude + * similarity. The larger and more positive, the closer the similarity. + */ + DotProduct: "dotProduct", - /** - * Only applicable to bit-packed binary data types. Determines dissimilarity by - * counting differing positions in binary vectors. The fewer differences, the - * closer the similarity. - */ - Hamming: "hamming", + /** + * Only applicable to bit-packed binary data types. Determines dissimilarity by + * counting differing positions in binary vectors. The fewer differences, the + * closer the similarity. + */ + Hamming: "hamming", } /** * The quantized data type of compressed vector values. */ union VectorSearchCompressionTarget { - string, + string, - /** - * 8-bit signed integer. - */ - Int8: "int8", + /** + * 8-bit signed integer. + */ + Int8: "int8", } /** * The Azure Open AI model name that will be called. */ union AzureOpenAIModelName { - string, + string, - /** - * TextEmbeddingAda002 model. - */ - TextEmbeddingAda002: "text-embedding-ada-002", + /** + * TextEmbeddingAda002 model. + */ + TextEmbeddingAda002: "text-embedding-ada-002", - /** - * TextEmbedding3Large model. - */ - TextEmbedding3Large: "text-embedding-3-large", + /** + * TextEmbedding3Large model. + */ + TextEmbedding3Large: "text-embedding-3-large", - /** - * TextEmbedding3Small model. - */ - TextEmbedding3Small: "text-embedding-3-small", + /** + * TextEmbedding3Small model. + */ + TextEmbedding3Small: "text-embedding-3-small", } /** * The language codes supported for input text by KeyPhraseExtractionSkill. */ union KeyPhraseExtractionSkillLanguage { - string, - - /** - * Danish - */ - da: "da", - - /** - * Dutch - */ - nl: "nl", - - /** - * English - */ - en: "en", - - /** - * Finnish - */ - fi: "fi", - - /** - * French - */ - fr: "fr", - - /** - * German - */ - de: "de", - - /** - * Italian - */ - it: "it", - - /** - * Japanese - */ - ja: "ja", - - /** - * Korean - */ - ko: "ko", - - /** - * Norwegian (Bokmaal) - */ - no: "no", - - /** - * Polish - */ - pl: "pl", - - /** - * Portuguese (Portugal) - */ - `pt-PT`: "pt-PT", - - /** - * Portuguese (Brazil) - */ - `pt-BR`: "pt-BR", - - /** - * Russian - */ - ru: "ru", - - /** - * Spanish - */ - es: "es", - - /** - * Swedish - */ - sv: "sv", + string, + + /** + * Danish + */ + da: "da", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * German + */ + de: "de", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Korean + */ + ko: "ko", + + /** + * Norwegian (Bokmaal) + */ + no: "no", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese (Portugal) + */ + `pt-PT`: "pt-PT", + + /** + * Portuguese (Brazil) + */ + `pt-BR`: "pt-BR", + + /** + * Russian + */ + ru: "ru", + + /** + * Spanish + */ + es: "es", + + /** + * Swedish + */ + sv: "sv", } /** * The language codes supported for input by OcrSkill. */ union OcrSkillLanguage { - string, - - /** - * Afrikaans - */ - af: "af", - - /** - * Albanian - */ - sq: "sq", - - /** - * Angika (Devanagiri) - */ - anp: "anp", - - /** - * Arabic - */ - ar: "ar", - - /** - * Asturian - */ - ast: "ast", - - /** - * Awadhi-Hindi (Devanagiri) - */ - awa: "awa", - - /** - * Azerbaijani (Latin) - */ - az: "az", - - /** - * Bagheli - */ - bfy: "bfy", - - /** - * Basque - */ - eu: "eu", - - /** - * Belarusian (Cyrillic and Latin) - */ - be: "be", - - /** - * Belarusian (Cyrillic) - */ - `be-cyrl`: "be-cyrl", - - /** - * Belarusian (Latin) - */ - `be-latn`: "be-latn", - - /** - * Bhojpuri-Hindi (Devanagiri) - */ - bho: "bho", - - /** - * Bislama - */ - bi: "bi", - - /** - * Bodo (Devanagiri) - */ - brx: "brx", - - /** - * Bosnian Latin - */ - bs: "bs", - - /** - * Brajbha - */ - bra: "bra", - - /** - * Breton - */ - br: "br", - - /** - * Bulgarian - */ - bg: "bg", - - /** - * Bundeli - */ - bns: "bns", - - /** - * Buryat (Cyrillic) - */ - bua: "bua", - - /** - * Catalan - */ - ca: "ca", - - /** - * Cebuano - */ - ceb: "ceb", - - /** - * Chamling - */ - rab: "rab", - - /** - * Chamorro - */ - ch: "ch", - - /** - * Chhattisgarhi (Devanagiri) - */ - hne: "hne", - - /** - * Chinese Simplified - */ - `zh-Hans`: "zh-Hans", - - /** - * Chinese Traditional - */ - `zh-Hant`: "zh-Hant", - - /** - * Cornish - */ - kw: "kw", - - /** - * Corsican - */ - co: "co", - - /** - * Crimean Tatar (Latin) - */ - crh: "crh", - - /** - * Croatian - */ - hr: "hr", - - /** - * Czech - */ - cs: "cs", - - /** - * Danish - */ - da: "da", - - /** - * Dari - */ - prs: "prs", - - /** - * Dhimal (Devanagiri) - */ - dhi: "dhi", - - /** - * Dogri (Devanagiri) - */ - doi: "doi", - - /** - * Dutch - */ - nl: "nl", - - /** - * English - */ - en: "en", - - /** - * Erzya (Cyrillic) - */ - myv: "myv", - - /** - * Estonian - */ - et: "et", - - /** - * Faroese - */ - fo: "fo", - - /** - * Fijian - */ - fj: "fj", - - /** - * Filipino - */ - fil: "fil", - - /** - * Finnish - */ - fi: "fi", - - /** - * French - */ - fr: "fr", - - /** - * Frulian - */ - fur: "fur", - - /** - * Gagauz (Latin) - */ - gag: "gag", - - /** - * Galician - */ - gl: "gl", - - /** - * German - */ - de: "de", - - /** - * Gilbertese - */ - gil: "gil", - - /** - * Gondi (Devanagiri) - */ - gon: "gon", - - /** - * Greek - */ - el: "el", - - /** - * Greenlandic - */ - kl: "kl", - - /** - * Gurung (Devanagiri) - */ - gvr: "gvr", - - /** - * Haitian Creole - */ - ht: "ht", - - /** - * Halbi (Devanagiri) - */ - hlb: "hlb", - - /** - * Hani - */ - hni: "hni", - - /** - * Haryanvi - */ - bgc: "bgc", - - /** - * Hawaiian - */ - haw: "haw", - - /** - * Hindi - */ - hi: "hi", - - /** - * Hmong Daw (Latin) - */ - mww: "mww", - - /** - * Ho (Devanagiri) - */ - hoc: "hoc", - - /** - * Hungarian - */ - hu: "hu", - - /** - * Icelandic - */ - `is`: "is", - - /** - * Inari Sami - */ - smn: "smn", - - /** - * Indonesian - */ - id: "id", - - /** - * Interlingua - */ - ia: "ia", - - /** - * Inuktitut (Latin) - */ - iu: "iu", - - /** - * Irish - */ - ga: "ga", - - /** - * Italian - */ - it: "it", - - /** - * Japanese - */ - ja: "ja", - - /** - * Jaunsari (Devanagiri) - */ - Jns: "Jns", - - /** - * Javanese - */ - jv: "jv", - - /** - * Kabuverdianu - */ - kea: "kea", - - /** - * Kachin (Latin) - */ - kac: "kac", - - /** - * Kangri (Devanagiri) - */ - xnr: "xnr", - - /** - * Karachay-Balkar - */ - krc: "krc", - - /** - * Kara-Kalpak (Cyrillic) - */ - `kaa-cyrl`: "kaa-cyrl", - - /** - * Kara-Kalpak (Latin) - */ - kaa: "kaa", - - /** - * Kashubian - */ - csb: "csb", - - /** - * Kazakh (Cyrillic) - */ - `kk-cyrl`: "kk-cyrl", - - /** - * Kazakh (Latin) - */ - `kk-latn`: "kk-latn", - - /** - * Khaling - */ - klr: "klr", - - /** - * Khasi - */ - kha: "kha", - - /** - * K'iche' - */ - quc: "quc", - - /** - * Korean - */ - ko: "ko", - - /** - * Korku - */ - kfq: "kfq", - - /** - * Koryak - */ - kpy: "kpy", - - /** - * Kosraean - */ - kos: "kos", - - /** - * Kumyk (Cyrillic) - */ - kum: "kum", - - /** - * Kurdish (Arabic) - */ - `ku-arab`: "ku-arab", - - /** - * Kurdish (Latin) - */ - `ku-latn`: "ku-latn", - - /** - * Kurukh (Devanagiri) - */ - kru: "kru", - - /** - * Kyrgyz (Cyrillic) - */ - ky: "ky", - - /** - * Lakota - */ - lkt: "lkt", - - /** - * Latin - */ - la: "la", - - /** - * Lithuanian - */ - lt: "lt", - - /** - * Lower Sorbian - */ - dsb: "dsb", - - /** - * Lule Sami - */ - smj: "smj", - - /** - * Luxembourgish - */ - lb: "lb", - - /** - * Mahasu Pahari (Devanagiri) - */ - bfz: "bfz", - - /** - * Malay (Latin) - */ - ms: "ms", - - /** - * Maltese - */ - mt: "mt", - - /** - * Malto (Devanagiri) - */ - kmj: "kmj", - - /** - * Manx - */ - gv: "gv", - - /** - * Maori - */ - mi: "mi", - - /** - * Marathi - */ - mr: "mr", - - /** - * Mongolian (Cyrillic) - */ - mn: "mn", - - /** - * Montenegrin (Cyrillic) - */ - `cnr-cyrl`: "cnr-cyrl", - - /** - * Montenegrin (Latin) - */ - `cnr-latn`: "cnr-latn", - - /** - * Neapolitan - */ - nap: "nap", - - /** - * Nepali - */ - ne: "ne", - - /** - * Niuean - */ - niu: "niu", - - /** - * Nogay - */ - nog: "nog", - - /** - * Northern Sami (Latin) - */ - sme: "sme", - - /** - * Norwegian - */ - nb: "nb", - - /** - * Norwegian - */ - no: "no", - - /** - * Occitan - */ - oc: "oc", - - /** - * Ossetic - */ - os: "os", - - /** - * Pashto - */ - ps: "ps", - - /** - * Persian - */ - fa: "fa", - - /** - * Polish - */ - pl: "pl", - - /** - * Portuguese - */ - pt: "pt", - - /** - * Punjabi (Arabic) - */ - pa: "pa", - - /** - * Ripuarian - */ - ksh: "ksh", - - /** - * Romanian - */ - ro: "ro", - - /** - * Romansh - */ - rm: "rm", - - /** - * Russian - */ - ru: "ru", - - /** - * Sadri (Devanagiri) - */ - sck: "sck", - - /** - * Samoan (Latin) - */ - sm: "sm", - - /** - * Sanskrit (Devanagiri) - */ - sa: "sa", - - /** - * Santali (Devanagiri) - */ - sat: "sat", - - /** - * Scots - */ - sco: "sco", - - /** - * Scottish Gaelic - */ - gd: "gd", - - /** - * Serbian (Latin) - */ - sr: "sr", - - /** - * Serbian (Cyrillic) - */ - `sr-Cyrl`: "sr-Cyrl", - - /** - * Serbian (Latin) - */ - `sr-Latn`: "sr-Latn", - - /** - * Sherpa (Devanagiri) - */ - xsr: "xsr", - - /** - * Sirmauri (Devanagiri) - */ - srx: "srx", - - /** - * Skolt Sami - */ - sms: "sms", - - /** - * Slovak - */ - sk: "sk", - - /** - * Slovenian - */ - sl: "sl", - - /** - * Somali (Arabic) - */ - so: "so", - - /** - * Southern Sami - */ - sma: "sma", - - /** - * Spanish - */ - es: "es", - - /** - * Swahili (Latin) - */ - sw: "sw", - - /** - * Swedish - */ - sv: "sv", - - /** - * Tajik (Cyrillic) - */ - tg: "tg", - - /** - * Tatar (Latin) - */ - tt: "tt", - - /** - * Tetum - */ - tet: "tet", - - /** - * Thangmi - */ - thf: "thf", - - /** - * Tongan - */ - to: "to", - - /** - * Turkish - */ - tr: "tr", - - /** - * Turkmen (Latin) - */ - tk: "tk", - - /** - * Tuvan - */ - tyv: "tyv", - - /** - * Upper Sorbian - */ - hsb: "hsb", - - /** - * Urdu - */ - ur: "ur", - - /** - * Uyghur (Arabic) - */ - ug: "ug", - - /** - * Uzbek (Arabic) - */ - `uz-arab`: "uz-arab", - - /** - * Uzbek (Cyrillic) - */ - `uz-cyrl`: "uz-cyrl", - - /** - * Uzbek (Latin) - */ - uz: "uz", - - /** - * Volapük - */ - vo: "vo", - - /** - * Walser - */ - wae: "wae", - - /** - * Welsh - */ - cy: "cy", - - /** - * Western Frisian - */ - fy: "fy", - - /** - * Yucatec Maya - */ - yua: "yua", - - /** - * Zhuang - */ - za: "za", - - /** - * Zulu - */ - zu: "zu", - - /** - * Unknown (All) - */ - unk: "unk", + string, + + /** + * Afrikaans + */ + af: "af", + + /** + * Albanian + */ + sq: "sq", + + /** + * Angika (Devanagiri) + */ + anp: "anp", + + /** + * Arabic + */ + ar: "ar", + + /** + * Asturian + */ + ast: "ast", + + /** + * Awadhi-Hindi (Devanagiri) + */ + awa: "awa", + + /** + * Azerbaijani (Latin) + */ + az: "az", + + /** + * Bagheli + */ + bfy: "bfy", + + /** + * Basque + */ + eu: "eu", + + /** + * Belarusian (Cyrillic and Latin) + */ + be: "be", + + /** + * Belarusian (Cyrillic) + */ + `be-cyrl`: "be-cyrl", + + /** + * Belarusian (Latin) + */ + `be-latn`: "be-latn", + + /** + * Bhojpuri-Hindi (Devanagiri) + */ + bho: "bho", + + /** + * Bislama + */ + bi: "bi", + + /** + * Bodo (Devanagiri) + */ + brx: "brx", + + /** + * Bosnian Latin + */ + bs: "bs", + + /** + * Brajbha + */ + bra: "bra", + + /** + * Breton + */ + br: "br", + + /** + * Bulgarian + */ + bg: "bg", + + /** + * Bundeli + */ + bns: "bns", + + /** + * Buryat (Cyrillic) + */ + bua: "bua", + + /** + * Catalan + */ + ca: "ca", + + /** + * Cebuano + */ + ceb: "ceb", + + /** + * Chamling + */ + rab: "rab", + + /** + * Chamorro + */ + ch: "ch", + + /** + * Chhattisgarhi (Devanagiri) + */ + hne: "hne", + + /** + * Chinese Simplified + */ + `zh-Hans`: "zh-Hans", + + /** + * Chinese Traditional + */ + `zh-Hant`: "zh-Hant", + + /** + * Cornish + */ + kw: "kw", + + /** + * Corsican + */ + co: "co", + + /** + * Crimean Tatar (Latin) + */ + crh: "crh", + + /** + * Croatian + */ + hr: "hr", + + /** + * Czech + */ + cs: "cs", + + /** + * Danish + */ + da: "da", + + /** + * Dari + */ + prs: "prs", + + /** + * Dhimal (Devanagiri) + */ + dhi: "dhi", + + /** + * Dogri (Devanagiri) + */ + doi: "doi", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Erzya (Cyrillic) + */ + myv: "myv", + + /** + * Estonian + */ + et: "et", + + /** + * Faroese + */ + fo: "fo", + + /** + * Fijian + */ + fj: "fj", + + /** + * Filipino + */ + fil: "fil", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * Frulian + */ + fur: "fur", + + /** + * Gagauz (Latin) + */ + gag: "gag", + + /** + * Galician + */ + gl: "gl", + + /** + * German + */ + de: "de", + + /** + * Gilbertese + */ + gil: "gil", + + /** + * Gondi (Devanagiri) + */ + gon: "gon", + + /** + * Greek + */ + el: "el", + + /** + * Greenlandic + */ + kl: "kl", + + /** + * Gurung (Devanagiri) + */ + gvr: "gvr", + + /** + * Haitian Creole + */ + ht: "ht", + + /** + * Halbi (Devanagiri) + */ + hlb: "hlb", + + /** + * Hani + */ + hni: "hni", + + /** + * Haryanvi + */ + bgc: "bgc", + + /** + * Hawaiian + */ + haw: "haw", + + /** + * Hindi + */ + hi: "hi", + + /** + * Hmong Daw (Latin) + */ + mww: "mww", + + /** + * Ho (Devanagiri) + */ + hoc: "hoc", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Icelandic + */ + `is`: "is", + + /** + * Inari Sami + */ + smn: "smn", + + /** + * Indonesian + */ + id: "id", + + /** + * Interlingua + */ + ia: "ia", + + /** + * Inuktitut (Latin) + */ + iu: "iu", + + /** + * Irish + */ + ga: "ga", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Jaunsari (Devanagiri) + */ + Jns: "Jns", + + /** + * Javanese + */ + jv: "jv", + + /** + * Kabuverdianu + */ + kea: "kea", + + /** + * Kachin (Latin) + */ + kac: "kac", + + /** + * Kangri (Devanagiri) + */ + xnr: "xnr", + + /** + * Karachay-Balkar + */ + krc: "krc", + + /** + * Kara-Kalpak (Cyrillic) + */ + `kaa-cyrl`: "kaa-cyrl", + + /** + * Kara-Kalpak (Latin) + */ + kaa: "kaa", + + /** + * Kashubian + */ + csb: "csb", + + /** + * Kazakh (Cyrillic) + */ + `kk-cyrl`: "kk-cyrl", + + /** + * Kazakh (Latin) + */ + `kk-latn`: "kk-latn", + + /** + * Khaling + */ + klr: "klr", + + /** + * Khasi + */ + kha: "kha", + + /** + * K'iche' + */ + quc: "quc", + + /** + * Korean + */ + ko: "ko", + + /** + * Korku + */ + kfq: "kfq", + + /** + * Koryak + */ + kpy: "kpy", + + /** + * Kosraean + */ + kos: "kos", + + /** + * Kumyk (Cyrillic) + */ + kum: "kum", + + /** + * Kurdish (Arabic) + */ + `ku-arab`: "ku-arab", + + /** + * Kurdish (Latin) + */ + `ku-latn`: "ku-latn", + + /** + * Kurukh (Devanagiri) + */ + kru: "kru", + + /** + * Kyrgyz (Cyrillic) + */ + ky: "ky", + + /** + * Lakota + */ + lkt: "lkt", + + /** + * Latin + */ + la: "la", + + /** + * Lithuanian + */ + lt: "lt", + + /** + * Lower Sorbian + */ + dsb: "dsb", + + /** + * Lule Sami + */ + smj: "smj", + + /** + * Luxembourgish + */ + lb: "lb", + + /** + * Mahasu Pahari (Devanagiri) + */ + bfz: "bfz", + + /** + * Malay (Latin) + */ + ms: "ms", + + /** + * Maltese + */ + mt: "mt", + + /** + * Malto (Devanagiri) + */ + kmj: "kmj", + + /** + * Manx + */ + gv: "gv", + + /** + * Maori + */ + mi: "mi", + + /** + * Marathi + */ + mr: "mr", + + /** + * Mongolian (Cyrillic) + */ + mn: "mn", + + /** + * Montenegrin (Cyrillic) + */ + `cnr-cyrl`: "cnr-cyrl", + + /** + * Montenegrin (Latin) + */ + `cnr-latn`: "cnr-latn", + + /** + * Neapolitan + */ + nap: "nap", + + /** + * Nepali + */ + ne: "ne", + + /** + * Niuean + */ + niu: "niu", + + /** + * Nogay + */ + nog: "nog", + + /** + * Northern Sami (Latin) + */ + sme: "sme", + + /** + * Norwegian + */ + nb: "nb", + + /** + * Norwegian + */ + no: "no", + + /** + * Occitan + */ + oc: "oc", + + /** + * Ossetic + */ + os: "os", + + /** + * Pashto + */ + ps: "ps", + + /** + * Persian + */ + fa: "fa", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese + */ + pt: "pt", + + /** + * Punjabi (Arabic) + */ + pa: "pa", + + /** + * Ripuarian + */ + ksh: "ksh", + + /** + * Romanian + */ + ro: "ro", + + /** + * Romansh + */ + rm: "rm", + + /** + * Russian + */ + ru: "ru", + + /** + * Sadri (Devanagiri) + */ + sck: "sck", + + /** + * Samoan (Latin) + */ + sm: "sm", + + /** + * Sanskrit (Devanagiri) + */ + sa: "sa", + + /** + * Santali (Devanagiri) + */ + sat: "sat", + + /** + * Scots + */ + sco: "sco", + + /** + * Scottish Gaelic + */ + gd: "gd", + + /** + * Serbian (Latin) + */ + sr: "sr", + + /** + * Serbian (Cyrillic) + */ + `sr-Cyrl`: "sr-Cyrl", + + /** + * Serbian (Latin) + */ + `sr-Latn`: "sr-Latn", + + /** + * Sherpa (Devanagiri) + */ + xsr: "xsr", + + /** + * Sirmauri (Devanagiri) + */ + srx: "srx", + + /** + * Skolt Sami + */ + sms: "sms", + + /** + * Slovak + */ + sk: "sk", + + /** + * Slovenian + */ + sl: "sl", + + /** + * Somali (Arabic) + */ + so: "so", + + /** + * Southern Sami + */ + sma: "sma", + + /** + * Spanish + */ + es: "es", + + /** + * Swahili (Latin) + */ + sw: "sw", + + /** + * Swedish + */ + sv: "sv", + + /** + * Tajik (Cyrillic) + */ + tg: "tg", + + /** + * Tatar (Latin) + */ + tt: "tt", + + /** + * Tetum + */ + tet: "tet", + + /** + * Thangmi + */ + thf: "thf", + + /** + * Tongan + */ + to: "to", + + /** + * Turkish + */ + tr: "tr", + + /** + * Turkmen (Latin) + */ + tk: "tk", + + /** + * Tuvan + */ + tyv: "tyv", + + /** + * Upper Sorbian + */ + hsb: "hsb", + + /** + * Urdu + */ + ur: "ur", + + /** + * Uyghur (Arabic) + */ + ug: "ug", + + /** + * Uzbek (Arabic) + */ + `uz-arab`: "uz-arab", + + /** + * Uzbek (Cyrillic) + */ + `uz-cyrl`: "uz-cyrl", + + /** + * Uzbek (Latin) + */ + uz: "uz", + + /** + * Volapük + */ + vo: "vo", + + /** + * Walser + */ + wae: "wae", + + /** + * Welsh + */ + cy: "cy", + + /** + * Western Frisian + */ + fy: "fy", + + /** + * Yucatec Maya + */ + yua: "yua", + + /** + * Zhuang + */ + za: "za", + + /** + * Zulu + */ + zu: "zu", + + /** + * Unknown (All) + */ + unk: "unk", } /** @@ -2224,395 +2224,395 @@ union OcrSkillLanguage { * by the OCR skill. The default value is "space". */ union OcrLineEnding { - string, + string, - /** - * Lines are separated by a single space character. - */ - Space: "space", + /** + * Lines are separated by a single space character. + */ + Space: "space", - /** - * Lines are separated by a carriage return ('\r') character. - */ - CarriageReturn: "carriageReturn", + /** + * Lines are separated by a carriage return ('\r') character. + */ + CarriageReturn: "carriageReturn", - /** - * Lines are separated by a single line feed ('\n') character. - */ - LineFeed: "lineFeed", + /** + * Lines are separated by a single line feed ('\n') character. + */ + LineFeed: "lineFeed", - /** - * Lines are separated by a carriage return and a line feed ('\r\n') character. - */ - CarriageReturnLineFeed: "carriageReturnLineFeed", + /** + * Lines are separated by a carriage return and a line feed ('\r\n') character. + */ + CarriageReturnLineFeed: "carriageReturnLineFeed", } /** * The language codes supported for input by ImageAnalysisSkill. */ union ImageAnalysisSkillLanguage { - string, - - /** - * Arabic - */ - ar: "ar", - - /** - * Azerbaijani - */ - az: "az", - - /** - * Bulgarian - */ - bg: "bg", - - /** - * Bosnian Latin - */ - bs: "bs", - - /** - * Catalan - */ - ca: "ca", - - /** - * Czech - */ - cs: "cs", - - /** - * Welsh - */ - cy: "cy", - - /** - * Danish - */ - da: "da", - - /** - * German - */ - de: "de", - - /** - * Greek - */ - el: "el", - - /** - * English - */ - en: "en", - - /** - * Spanish - */ - es: "es", - - /** - * Estonian - */ - et: "et", - - /** - * Basque - */ - eu: "eu", - - /** - * Finnish - */ - fi: "fi", - - /** - * French - */ - fr: "fr", - - /** - * Irish - */ - ga: "ga", - - /** - * Galician - */ - gl: "gl", - - /** - * Hebrew - */ - he: "he", - - /** - * Hindi - */ - hi: "hi", - - /** - * Croatian - */ - hr: "hr", - - /** - * Hungarian - */ - hu: "hu", - - /** - * Indonesian - */ - id: "id", - - /** - * Italian - */ - it: "it", - - /** - * Japanese - */ - ja: "ja", - - /** - * Kazakh - */ - kk: "kk", - - /** - * Korean - */ - ko: "ko", - - /** - * Lithuanian - */ - lt: "lt", - - /** - * Latvian - */ - lv: "lv", - - /** - * Macedonian - */ - mk: "mk", - - /** - * Malay Malaysia - */ - ms: "ms", - - /** - * Norwegian (Bokmal) - */ - nb: "nb", - - /** - * Dutch - */ - nl: "nl", - - /** - * Polish - */ - pl: "pl", - - /** - * Dari - */ - prs: "prs", - - /** - * Portuguese-Brazil - */ - `pt-BR`: "pt-BR", - - /** - * Portuguese-Portugal - */ - pt: "pt", - - /** - * Portuguese-Portugal - */ - `pt-PT`: "pt-PT", - - /** - * Romanian - */ - ro: "ro", - - /** - * Russian - */ - ru: "ru", - - /** - * Slovak - */ - sk: "sk", - - /** - * Slovenian - */ - sl: "sl", - - /** - * Serbian - Cyrillic RS - */ - `sr-Cyrl`: "sr-Cyrl", - - /** - * Serbian - Latin RS - */ - `sr-Latn`: "sr-Latn", - - /** - * Swedish - */ - sv: "sv", - - /** - * Thai - */ - th: "th", - - /** - * Turkish - */ - tr: "tr", - - /** - * Ukrainian - */ - uk: "uk", - - /** - * Vietnamese - */ - vi: "vi", - - /** - * Chinese Simplified - */ - zh: "zh", - - /** - * Chinese Simplified - */ - `zh-Hans`: "zh-Hans", - - /** - * Chinese Traditional - */ - `zh-Hant`: "zh-Hant", + string, + + /** + * Arabic + */ + ar: "ar", + + /** + * Azerbaijani + */ + az: "az", + + /** + * Bulgarian + */ + bg: "bg", + + /** + * Bosnian Latin + */ + bs: "bs", + + /** + * Catalan + */ + ca: "ca", + + /** + * Czech + */ + cs: "cs", + + /** + * Welsh + */ + cy: "cy", + + /** + * Danish + */ + da: "da", + + /** + * German + */ + de: "de", + + /** + * Greek + */ + el: "el", + + /** + * English + */ + en: "en", + + /** + * Spanish + */ + es: "es", + + /** + * Estonian + */ + et: "et", + + /** + * Basque + */ + eu: "eu", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * Irish + */ + ga: "ga", + + /** + * Galician + */ + gl: "gl", + + /** + * Hebrew + */ + he: "he", + + /** + * Hindi + */ + hi: "hi", + + /** + * Croatian + */ + hr: "hr", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Indonesian + */ + id: "id", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Kazakh + */ + kk: "kk", + + /** + * Korean + */ + ko: "ko", + + /** + * Lithuanian + */ + lt: "lt", + + /** + * Latvian + */ + lv: "lv", + + /** + * Macedonian + */ + mk: "mk", + + /** + * Malay Malaysia + */ + ms: "ms", + + /** + * Norwegian (Bokmal) + */ + nb: "nb", + + /** + * Dutch + */ + nl: "nl", + + /** + * Polish + */ + pl: "pl", + + /** + * Dari + */ + prs: "prs", + + /** + * Portuguese-Brazil + */ + `pt-BR`: "pt-BR", + + /** + * Portuguese-Portugal + */ + pt: "pt", + + /** + * Portuguese-Portugal + */ + `pt-PT`: "pt-PT", + + /** + * Romanian + */ + ro: "ro", + + /** + * Russian + */ + ru: "ru", + + /** + * Slovak + */ + sk: "sk", + + /** + * Slovenian + */ + sl: "sl", + + /** + * Serbian - Cyrillic RS + */ + `sr-Cyrl`: "sr-Cyrl", + + /** + * Serbian - Latin RS + */ + `sr-Latn`: "sr-Latn", + + /** + * Swedish + */ + sv: "sv", + + /** + * Thai + */ + th: "th", + + /** + * Turkish + */ + tr: "tr", + + /** + * Ukrainian + */ + uk: "uk", + + /** + * Vietnamese + */ + vi: "vi", + + /** + * Chinese Simplified + */ + zh: "zh", + + /** + * Chinese Simplified + */ + `zh-Hans`: "zh-Hans", + + /** + * Chinese Traditional + */ + `zh-Hant`: "zh-Hant", } /** * The strings indicating what visual feature types to return. */ union VisualFeature { - string, + string, - /** - * Visual features recognized as adult persons. - */ - Adult: "adult", + /** + * Visual features recognized as adult persons. + */ + Adult: "adult", - /** - * Visual features recognized as commercial brands. - */ - Brands: "brands", + /** + * Visual features recognized as commercial brands. + */ + Brands: "brands", - /** - * Categories. - */ - Categories: "categories", + /** + * Categories. + */ + Categories: "categories", - /** - * Description. - */ - Description: "description", + /** + * Description. + */ + Description: "description", - /** - * Visual features recognized as people faces. - */ - Faces: "faces", + /** + * Visual features recognized as people faces. + */ + Faces: "faces", - /** - * Visual features recognized as objects. - */ - Objects: "objects", + /** + * Visual features recognized as objects. + */ + Objects: "objects", - /** - * Tags. - */ - Tags: "tags", + /** + * Tags. + */ + Tags: "tags", } /** * A string indicating which domain-specific details to return. */ union ImageDetail { - string, + string, - /** - * Details recognized as celebrities. - */ - Celebrities: "celebrities", + /** + * Details recognized as celebrities. + */ + Celebrities: "celebrities", - /** - * Details recognized as landmarks. - */ - Landmarks: "landmarks", + /** + * Details recognized as landmarks. + */ + Landmarks: "landmarks", } /** * A string indicating what entity categories to return. */ union EntityCategory { - string, + string, - /** - * Entities describing a physical location. - */ - Location: "location", + /** + * Entities describing a physical location. + */ + Location: "location", - /** - * Entities describing an organization. - */ - Organization: "organization", + /** + * Entities describing an organization. + */ + Organization: "organization", - /** - * Entities describing a person. - */ - Person: "person", + /** + * Entities describing a person. + */ + Person: "person", - /** - * Entities describing a quantity. - */ - Quantity: "quantity", + /** + * Entities describing a quantity. + */ + Quantity: "quantity", - /** - * Entities describing a date and time. - */ - Datetime: "datetime", + /** + * Entities describing a date and time. + */ + Datetime: "datetime", - /** - * Entities describing a URL. - */ - Url: "url", + /** + * Entities describing a URL. + */ + Url: "url", - /** - * Entities describing an email address. - */ - Email: "email", + /** + * Entities describing an email address. + */ + Email: "email", } /** @@ -2620,204 +2620,204 @@ union EntityCategory { * EntityRecognitionSkill. */ union EntityRecognitionSkillLanguage { - string, - - /** - * Arabic - */ - ar: "ar", - - /** - * Czech - */ - cs: "cs", - - /** - * Chinese-Simplified - */ - `zh-Hans`: "zh-Hans", - - /** - * Chinese-Traditional - */ - `zh-Hant`: "zh-Hant", - - /** - * Danish - */ - da: "da", - - /** - * Dutch - */ - nl: "nl", - - /** - * English - */ - en: "en", - - /** - * Finnish - */ - fi: "fi", - - /** - * French - */ - fr: "fr", - - /** - * German - */ - de: "de", - - /** - * Greek - */ - el: "el", - - /** - * Hungarian - */ - hu: "hu", - - /** - * Italian - */ - it: "it", - - /** - * Japanese - */ - ja: "ja", - - /** - * Korean - */ - ko: "ko", - - /** - * Norwegian (Bokmaal) - */ - no: "no", - - /** - * Polish - */ - pl: "pl", - - /** - * Portuguese (Portugal) - */ - `pt-PT`: "pt-PT", - - /** - * Portuguese (Brazil) - */ - `pt-BR`: "pt-BR", - - /** - * Russian - */ - ru: "ru", - - /** - * Spanish - */ - es: "es", - - /** - * Swedish - */ - sv: "sv", - - /** - * Turkish - */ - tr: "tr", + string, + + /** + * Arabic + */ + ar: "ar", + + /** + * Czech + */ + cs: "cs", + + /** + * Chinese-Simplified + */ + `zh-Hans`: "zh-Hans", + + /** + * Chinese-Traditional + */ + `zh-Hant`: "zh-Hant", + + /** + * Danish + */ + da: "da", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * German + */ + de: "de", + + /** + * Greek + */ + el: "el", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Korean + */ + ko: "ko", + + /** + * Norwegian (Bokmaal) + */ + no: "no", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese (Portugal) + */ + `pt-PT`: "pt-PT", + + /** + * Portuguese (Brazil) + */ + `pt-BR`: "pt-BR", + + /** + * Russian + */ + ru: "ru", + + /** + * Spanish + */ + es: "es", + + /** + * Swedish + */ + sv: "sv", + + /** + * Turkish + */ + tr: "tr", } /** * Deprecated. The language codes supported for input text by SentimentSkill. */ union SentimentSkillLanguage { - string, - - /** - * Danish - */ - da: "da", - - /** - * Dutch - */ - nl: "nl", - - /** - * English - */ - en: "en", - - /** - * Finnish - */ - fi: "fi", - - /** - * French - */ - fr: "fr", - - /** - * German - */ - de: "de", - - /** - * Greek - */ - el: "el", - - /** - * Italian - */ - it: "it", - - /** - * Norwegian (Bokmaal) - */ - no: "no", - - /** - * Polish - */ - pl: "pl", - - /** - * Portuguese (Portugal) - */ - `pt-PT`: "pt-PT", - - /** - * Russian - */ - ru: "ru", - - /** - * Spanish - */ - es: "es", - - /** - * Swedish - */ - sv: "sv", - - /** - * Turkish - */ - tr: "tr", + string, + + /** + * Danish + */ + da: "da", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * German + */ + de: "de", + + /** + * Greek + */ + el: "el", + + /** + * Italian + */ + it: "it", + + /** + * Norwegian (Bokmaal) + */ + no: "no", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese (Portugal) + */ + `pt-PT`: "pt-PT", + + /** + * Russian + */ + ru: "ru", + + /** + * Spanish + */ + es: "es", + + /** + * Swedish + */ + sv: "sv", + + /** + * Turkish + */ + tr: "tr", } /** @@ -2825,679 +2825,679 @@ union SentimentSkillLanguage { * detected in the input text. */ union PIIDetectionSkillMaskingMode { - string, + string, - /** - * No masking occurs and the maskedText output will not be returned. - */ - None: "none", + /** + * No masking occurs and the maskedText output will not be returned. + */ + None: "none", - /** - * Replaces the detected entities with the character given in the maskingCharacter - * parameter. The character will be repeated to the length of the detected entity - * so that the offsets will correctly correspond to both the input text as well as - * the output maskedText. - */ - Replace: "replace", + /** + * Replaces the detected entities with the character given in the maskingCharacter + * parameter. The character will be repeated to the length of the detected entity + * so that the offsets will correctly correspond to both the input text as well as + * the output maskedText. + */ + Replace: "replace", } /** * The language codes supported for input text by SplitSkill. */ union SplitSkillLanguage { - string, - - /** - * Amharic - */ - am: "am", - - /** - * Bosnian - */ - bs: "bs", - - /** - * Czech - */ - cs: "cs", - - /** - * Danish - */ - da: "da", - - /** - * German - */ - de: "de", - - /** - * English - */ - en: "en", - - /** - * Spanish - */ - es: "es", - - /** - * Estonian - */ - et: "et", - - /** - * Finnish - */ - fi: "fi", - - /** - * French - */ - fr: "fr", - - /** - * Hebrew - */ - he: "he", - - /** - * Hindi - */ - hi: "hi", - - /** - * Croatian - */ - hr: "hr", - - /** - * Hungarian - */ - hu: "hu", - - /** - * Indonesian - */ - id: "id", - - /** - * Icelandic - */ - `is`: "is", - - /** - * Italian - */ - it: "it", - - /** - * Japanese - */ - ja: "ja", - - /** - * Korean - */ - ko: "ko", - - /** - * Latvian - */ - lv: "lv", - - /** - * Norwegian - */ - nb: "nb", - - /** - * Dutch - */ - nl: "nl", - - /** - * Polish - */ - pl: "pl", - - /** - * Portuguese (Portugal) - */ - pt: "pt", - - /** - * Portuguese (Brazil) - */ - `pt-br`: "pt-br", - - /** - * Russian - */ - ru: "ru", - - /** - * Slovak - */ - sk: "sk", - - /** - * Slovenian - */ - sl: "sl", - - /** - * Serbian - */ - sr: "sr", - - /** - * Swedish - */ - sv: "sv", - - /** - * Turkish - */ - tr: "tr", - - /** - * Urdu - */ - ur: "ur", - - /** - * Chinese (Simplified) - */ - zh: "zh", + string, + + /** + * Amharic + */ + am: "am", + + /** + * Bosnian + */ + bs: "bs", + + /** + * Czech + */ + cs: "cs", + + /** + * Danish + */ + da: "da", + + /** + * German + */ + de: "de", + + /** + * English + */ + en: "en", + + /** + * Spanish + */ + es: "es", + + /** + * Estonian + */ + et: "et", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * Hebrew + */ + he: "he", + + /** + * Hindi + */ + hi: "hi", + + /** + * Croatian + */ + hr: "hr", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Indonesian + */ + id: "id", + + /** + * Icelandic + */ + `is`: "is", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Korean + */ + ko: "ko", + + /** + * Latvian + */ + lv: "lv", + + /** + * Norwegian + */ + nb: "nb", + + /** + * Dutch + */ + nl: "nl", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese (Portugal) + */ + pt: "pt", + + /** + * Portuguese (Brazil) + */ + `pt-br`: "pt-br", + + /** + * Russian + */ + ru: "ru", + + /** + * Slovak + */ + sk: "sk", + + /** + * Slovenian + */ + sl: "sl", + + /** + * Serbian + */ + sr: "sr", + + /** + * Swedish + */ + sv: "sv", + + /** + * Turkish + */ + tr: "tr", + + /** + * Urdu + */ + ur: "ur", + + /** + * Chinese (Simplified) + */ + zh: "zh", } /** * A value indicating which split mode to perform. */ union TextSplitMode { - string, + string, - /** - * Split the text into individual pages. - */ - Pages: "pages", + /** + * Split the text into individual pages. + */ + Pages: "pages", - /** - * Split the text into individual sentences. - */ - Sentences: "sentences", + /** + * Split the text into individual sentences. + */ + Sentences: "sentences", } /** * The language codes supported for input text by CustomEntityLookupSkill. */ union CustomEntityLookupSkillLanguage { - string, + string, - /** - * Danish - */ - da: "da", + /** + * Danish + */ + da: "da", - /** - * German - */ - de: "de", + /** + * German + */ + de: "de", - /** - * English - */ - en: "en", + /** + * English + */ + en: "en", - /** - * Spanish - */ - es: "es", + /** + * Spanish + */ + es: "es", - /** - * Finnish - */ - fi: "fi", + /** + * Finnish + */ + fi: "fi", - /** - * French - */ - fr: "fr", + /** + * French + */ + fr: "fr", - /** - * Italian - */ - it: "it", + /** + * Italian + */ + it: "it", - /** - * Korean - */ - ko: "ko", + /** + * Korean + */ + ko: "ko", - /** - * Portuguese - */ - pt: "pt", + /** + * Portuguese + */ + pt: "pt", } /** * The language codes supported for input text by TextTranslationSkill. */ union TextTranslationSkillLanguage { - string, - - /** - * Afrikaans - */ - af: "af", - - /** - * Arabic - */ - ar: "ar", - - /** - * Bangla - */ - bn: "bn", - - /** - * Bosnian (Latin) - */ - bs: "bs", - - /** - * Bulgarian - */ - bg: "bg", - - /** - * Cantonese (Traditional) - */ - yue: "yue", - - /** - * Catalan - */ - ca: "ca", - - /** - * Chinese Simplified - */ - `zh-Hans`: "zh-Hans", - - /** - * Chinese Traditional - */ - `zh-Hant`: "zh-Hant", - - /** - * Croatian - */ - hr: "hr", - - /** - * Czech - */ - cs: "cs", - - /** - * Danish - */ - da: "da", - - /** - * Dutch - */ - nl: "nl", - - /** - * English - */ - en: "en", - - /** - * Estonian - */ - et: "et", - - /** - * Fijian - */ - fj: "fj", - - /** - * Filipino - */ - fil: "fil", - - /** - * Finnish - */ - fi: "fi", - - /** - * French - */ - fr: "fr", - - /** - * German - */ - de: "de", - - /** - * Greek - */ - el: "el", - - /** - * Haitian Creole - */ - ht: "ht", - - /** - * Hebrew - */ - he: "he", - - /** - * Hindi - */ - hi: "hi", - - /** - * Hmong Daw - */ - mww: "mww", - - /** - * Hungarian - */ - hu: "hu", - - /** - * Icelandic - */ - `is`: "is", - - /** - * Indonesian - */ - id: "id", - - /** - * Italian - */ - it: "it", - - /** - * Japanese - */ - ja: "ja", - - /** - * Kiswahili - */ - sw: "sw", - - /** - * Klingon - */ - tlh: "tlh", - - /** - * Klingon (Latin script) - */ - `tlh-Latn`: "tlh-Latn", - - /** - * Klingon (Klingon script) - */ - `tlh-Piqd`: "tlh-Piqd", - - /** - * Korean - */ - ko: "ko", - - /** - * Latvian - */ - lv: "lv", - - /** - * Lithuanian - */ - lt: "lt", - - /** - * Malagasy - */ - mg: "mg", - - /** - * Malay - */ - ms: "ms", - - /** - * Maltese - */ - mt: "mt", - - /** - * Norwegian - */ - nb: "nb", - - /** - * Persian - */ - fa: "fa", - - /** - * Polish - */ - pl: "pl", - - /** - * Portuguese - */ - pt: "pt", - - /** - * Portuguese (Brazil) - */ - `pt-br`: "pt-br", - - /** - * Portuguese (Portugal) - */ - `pt-PT`: "pt-PT", - - /** - * Queretaro Otomi - */ - otq: "otq", - - /** - * Romanian - */ - ro: "ro", - - /** - * Russian - */ - ru: "ru", - - /** - * Samoan - */ - sm: "sm", - - /** - * Serbian (Cyrillic) - */ - `sr-Cyrl`: "sr-Cyrl", - - /** - * Serbian (Latin) - */ - `sr-Latn`: "sr-Latn", - - /** - * Slovak - */ - sk: "sk", - - /** - * Slovenian - */ - sl: "sl", - - /** - * Spanish - */ - es: "es", - - /** - * Swedish - */ - sv: "sv", - - /** - * Tahitian - */ - ty: "ty", - - /** - * Tamil - */ - ta: "ta", - - /** - * Telugu - */ - te: "te", - - /** - * Thai - */ - th: "th", - - /** - * Tongan - */ - to: "to", - - /** - * Turkish - */ - tr: "tr", - - /** - * Ukrainian - */ - uk: "uk", - - /** - * Urdu - */ - ur: "ur", - - /** - * Vietnamese - */ - vi: "vi", - - /** - * Welsh - */ - cy: "cy", - - /** - * Yucatec Maya - */ - yua: "yua", - - /** - * Irish - */ - ga: "ga", - - /** - * Kannada - */ - kn: "kn", - - /** - * Maori - */ - mi: "mi", - - /** - * Malayalam - */ - ml: "ml", - - /** - * Punjabi - */ - pa: "pa", + string, + + /** + * Afrikaans + */ + af: "af", + + /** + * Arabic + */ + ar: "ar", + + /** + * Bangla + */ + bn: "bn", + + /** + * Bosnian (Latin) + */ + bs: "bs", + + /** + * Bulgarian + */ + bg: "bg", + + /** + * Cantonese (Traditional) + */ + yue: "yue", + + /** + * Catalan + */ + ca: "ca", + + /** + * Chinese Simplified + */ + `zh-Hans`: "zh-Hans", + + /** + * Chinese Traditional + */ + `zh-Hant`: "zh-Hant", + + /** + * Croatian + */ + hr: "hr", + + /** + * Czech + */ + cs: "cs", + + /** + * Danish + */ + da: "da", + + /** + * Dutch + */ + nl: "nl", + + /** + * English + */ + en: "en", + + /** + * Estonian + */ + et: "et", + + /** + * Fijian + */ + fj: "fj", + + /** + * Filipino + */ + fil: "fil", + + /** + * Finnish + */ + fi: "fi", + + /** + * French + */ + fr: "fr", + + /** + * German + */ + de: "de", + + /** + * Greek + */ + el: "el", + + /** + * Haitian Creole + */ + ht: "ht", + + /** + * Hebrew + */ + he: "he", + + /** + * Hindi + */ + hi: "hi", + + /** + * Hmong Daw + */ + mww: "mww", + + /** + * Hungarian + */ + hu: "hu", + + /** + * Icelandic + */ + `is`: "is", + + /** + * Indonesian + */ + id: "id", + + /** + * Italian + */ + it: "it", + + /** + * Japanese + */ + ja: "ja", + + /** + * Kiswahili + */ + sw: "sw", + + /** + * Klingon + */ + tlh: "tlh", + + /** + * Klingon (Latin script) + */ + `tlh-Latn`: "tlh-Latn", + + /** + * Klingon (Klingon script) + */ + `tlh-Piqd`: "tlh-Piqd", + + /** + * Korean + */ + ko: "ko", + + /** + * Latvian + */ + lv: "lv", + + /** + * Lithuanian + */ + lt: "lt", + + /** + * Malagasy + */ + mg: "mg", + + /** + * Malay + */ + ms: "ms", + + /** + * Maltese + */ + mt: "mt", + + /** + * Norwegian + */ + nb: "nb", + + /** + * Persian + */ + fa: "fa", + + /** + * Polish + */ + pl: "pl", + + /** + * Portuguese + */ + pt: "pt", + + /** + * Portuguese (Brazil) + */ + `pt-br`: "pt-br", + + /** + * Portuguese (Portugal) + */ + `pt-PT`: "pt-PT", + + /** + * Queretaro Otomi + */ + otq: "otq", + + /** + * Romanian + */ + ro: "ro", + + /** + * Russian + */ + ru: "ru", + + /** + * Samoan + */ + sm: "sm", + + /** + * Serbian (Cyrillic) + */ + `sr-Cyrl`: "sr-Cyrl", + + /** + * Serbian (Latin) + */ + `sr-Latn`: "sr-Latn", + + /** + * Slovak + */ + sk: "sk", + + /** + * Slovenian + */ + sl: "sl", + + /** + * Spanish + */ + es: "es", + + /** + * Swedish + */ + sv: "sv", + + /** + * Tahitian + */ + ty: "ty", + + /** + * Tamil + */ + ta: "ta", + + /** + * Telugu + */ + te: "te", + + /** + * Thai + */ + th: "th", + + /** + * Tongan + */ + to: "to", + + /** + * Turkish + */ + tr: "tr", + + /** + * Ukrainian + */ + uk: "uk", + + /** + * Urdu + */ + ur: "ur", + + /** + * Vietnamese + */ + vi: "vi", + + /** + * Welsh + */ + cy: "cy", + + /** + * Yucatec Maya + */ + yua: "yua", + + /** + * Irish + */ + ga: "ga", + + /** + * Kannada + */ + kn: "kn", + + /** + * Maori + */ + mi: "mi", + + /** + * Malayalam + */ + ml: "ml", + + /** + * Punjabi + */ + pa: "pa", } /** * Represents the overall indexer status. */ union IndexerStatus { - string, + string, - /** - * Indicates that the indexer is in an unknown state. - */ - Unknown: "unknown", + /** + * Indicates that the indexer is in an unknown state. + */ + Unknown: "unknown", - /** - * Indicates that the indexer experienced an error that cannot be corrected - * without human intervention. - */ - Error: "error", + /** + * Indicates that the indexer experienced an error that cannot be corrected + * without human intervention. + */ + Error: "error", - /** - * Indicates that the indexer is running normally. - */ - Running: "running", + /** + * Indicates that the indexer is running normally. + */ + Running: "running", } /** * Represents the status of an individual indexer execution. */ union IndexerExecutionStatus { - string, + string, - /** - * An indexer invocation has failed, but the failure may be transient. Indexer - * invocations will continue per schedule. - */ - TransientFailure: "transientFailure", + /** + * An indexer invocation has failed, but the failure may be transient. Indexer + * invocations will continue per schedule. + */ + TransientFailure: "transientFailure", - /** - * Indexer execution completed successfully. - */ - Success: "success", + /** + * Indexer execution completed successfully. + */ + Success: "success", - /** - * Indexer execution is in progress. - */ - InProgress: "inProgress", + /** + * Indexer execution is in progress. + */ + InProgress: "inProgress", - /** - * Indexer has been reset. - */ - Reset: "reset", + /** + * Indexer has been reset. + */ + Reset: "reset", } /** @@ -3505,32 +3505,32 @@ union IndexerExecutionStatus { * documents. */ union ScoringFunctionInterpolation { - string, + string, - /** - * Boosts scores by a linearly decreasing amount. This is the default - * interpolation for scoring functions. - */ - Linear: "linear", + /** + * Boosts scores by a linearly decreasing amount. This is the default + * interpolation for scoring functions. + */ + Linear: "linear", - /** - * Boosts scores by a constant factor. - */ - Constant: "constant", + /** + * Boosts scores by a constant factor. + */ + Constant: "constant", - /** - * Boosts scores by an amount that decreases quadratically. Boosts decrease slowly - * for higher scores, and more quickly as the scores decrease. This interpolation - * option is not allowed in tag scoring functions. - */ - Quadratic: "quadratic", + /** + * Boosts scores by an amount that decreases quadratically. Boosts decrease slowly + * for higher scores, and more quickly as the scores decrease. This interpolation + * option is not allowed in tag scoring functions. + */ + Quadratic: "quadratic", - /** - * Boosts scores by an amount that decreases logarithmically. Boosts decrease - * quickly for higher scores, and more slowly as the scores decrease. This - * interpolation option is not allowed in tag scoring functions. - */ - Logarithmic: "logarithmic", + /** + * Boosts scores by an amount that decreases logarithmically. Boosts decrease + * quickly for higher scores, and more slowly as the scores decrease. This + * interpolation option is not allowed in tag scoring functions. + */ + Logarithmic: "logarithmic", } /** @@ -3538,1260 +3538,1260 @@ union ScoringFunctionInterpolation { * functions in a scoring profile. */ union ScoringFunctionAggregation { - string, + string, - /** - * Boost scores by the sum of all scoring function results. - */ - Sum: "sum", + /** + * Boost scores by the sum of all scoring function results. + */ + Sum: "sum", - /** - * Boost scores by the average of all scoring function results. - */ - Average: "average", + /** + * Boost scores by the average of all scoring function results. + */ + Average: "average", - /** - * Boost scores by the minimum of all scoring function results. - */ - Minimum: "minimum", + /** + * Boost scores by the minimum of all scoring function results. + */ + Minimum: "minimum", - /** - * Boost scores by the maximum of all scoring function results. - */ - Maximum: "maximum", + /** + * Boost scores by the maximum of all scoring function results. + */ + Maximum: "maximum", - /** - * Boost scores using the first applicable scoring function in the scoring profile. - */ - FirstMatching: "firstMatching", + /** + * Boost scores using the first applicable scoring function in the scoring profile. + */ + FirstMatching: "firstMatching", } /** * Represents classes of characters on which a token filter can operate. */ union TokenCharacterKind { - string, + string, - /** - * Keeps letters in tokens. - */ - Letter: "letter", + /** + * Keeps letters in tokens. + */ + Letter: "letter", - /** - * Keeps digits in tokens. - */ - Digit: "digit", + /** + * Keeps digits in tokens. + */ + Digit: "digit", - /** - * Keeps whitespace in tokens. - */ - Whitespace: "whitespace", + /** + * Keeps whitespace in tokens. + */ + Whitespace: "whitespace", - /** - * Keeps punctuation in tokens. - */ - Punctuation: "punctuation", + /** + * Keeps punctuation in tokens. + */ + Punctuation: "punctuation", - /** - * Keeps symbols in tokens. - */ - Symbol: "symbol", + /** + * Keeps symbols in tokens. + */ + Symbol: "symbol", } /** * Lists the languages supported by the Microsoft language tokenizer. */ union MicrosoftTokenizerLanguage { - string, - - /** - * Selects the Microsoft tokenizer for Bangla. - */ - Bangla: "bangla", - - /** - * Selects the Microsoft tokenizer for Bulgarian. - */ - Bulgarian: "bulgarian", - - /** - * Selects the Microsoft tokenizer for Catalan. - */ - Catalan: "catalan", - - /** - * Selects the Microsoft tokenizer for Chinese (Simplified). - */ - ChineseSimplified: "chineseSimplified", - - /** - * Selects the Microsoft tokenizer for Chinese (Traditional). - */ - ChineseTraditional: "chineseTraditional", - - /** - * Selects the Microsoft tokenizer for Croatian. - */ - Croatian: "croatian", - - /** - * Selects the Microsoft tokenizer for Czech. - */ - Czech: "czech", - - /** - * Selects the Microsoft tokenizer for Danish. - */ - Danish: "danish", - - /** - * Selects the Microsoft tokenizer for Dutch. - */ - Dutch: "dutch", - - /** - * Selects the Microsoft tokenizer for English. - */ - English: "english", - - /** - * Selects the Microsoft tokenizer for French. - */ - French: "french", - - /** - * Selects the Microsoft tokenizer for German. - */ - German: "german", - - /** - * Selects the Microsoft tokenizer for Greek. - */ - Greek: "greek", - - /** - * Selects the Microsoft tokenizer for Gujarati. - */ - Gujarati: "gujarati", - - /** - * Selects the Microsoft tokenizer for Hindi. - */ - Hindi: "hindi", - - /** - * Selects the Microsoft tokenizer for Icelandic. - */ - Icelandic: "icelandic", - - /** - * Selects the Microsoft tokenizer for Indonesian. - */ - Indonesian: "indonesian", - - /** - * Selects the Microsoft tokenizer for Italian. - */ - Italian: "italian", - - /** - * Selects the Microsoft tokenizer for Japanese. - */ - Japanese: "japanese", - - /** - * Selects the Microsoft tokenizer for Kannada. - */ - Kannada: "kannada", - - /** - * Selects the Microsoft tokenizer for Korean. - */ - Korean: "korean", - - /** - * Selects the Microsoft tokenizer for Malay. - */ - Malay: "malay", - - /** - * Selects the Microsoft tokenizer for Malayalam. - */ - Malayalam: "malayalam", - - /** - * Selects the Microsoft tokenizer for Marathi. - */ - Marathi: "marathi", - - /** - * Selects the Microsoft tokenizer for Norwegian (Bokmål). - */ - NorwegianBokmaal: "norwegianBokmaal", - - /** - * Selects the Microsoft tokenizer for Polish. - */ - Polish: "polish", - - /** - * Selects the Microsoft tokenizer for Portuguese. - */ - Portuguese: "portuguese", - - /** - * Selects the Microsoft tokenizer for Portuguese (Brazil). - */ - PortugueseBrazilian: "portugueseBrazilian", - - /** - * Selects the Microsoft tokenizer for Punjabi. - */ - Punjabi: "punjabi", - - /** - * Selects the Microsoft tokenizer for Romanian. - */ - Romanian: "romanian", - - /** - * Selects the Microsoft tokenizer for Russian. - */ - Russian: "russian", - - /** - * Selects the Microsoft tokenizer for Serbian (Cyrillic). - */ - SerbianCyrillic: "serbianCyrillic", - - /** - * Selects the Microsoft tokenizer for Serbian (Latin). - */ - SerbianLatin: "serbianLatin", - - /** - * Selects the Microsoft tokenizer for Slovenian. - */ - Slovenian: "slovenian", - - /** - * Selects the Microsoft tokenizer for Spanish. - */ - Spanish: "spanish", - - /** - * Selects the Microsoft tokenizer for Swedish. - */ - Swedish: "swedish", - - /** - * Selects the Microsoft tokenizer for Tamil. - */ - Tamil: "tamil", - - /** - * Selects the Microsoft tokenizer for Telugu. - */ - Telugu: "telugu", - - /** - * Selects the Microsoft tokenizer for Thai. - */ - Thai: "thai", - - /** - * Selects the Microsoft tokenizer for Ukrainian. - */ - Ukrainian: "ukrainian", - - /** - * Selects the Microsoft tokenizer for Urdu. - */ - Urdu: "urdu", - - /** - * Selects the Microsoft tokenizer for Vietnamese. - */ - Vietnamese: "vietnamese", + string, + + /** + * Selects the Microsoft tokenizer for Bangla. + */ + Bangla: "bangla", + + /** + * Selects the Microsoft tokenizer for Bulgarian. + */ + Bulgarian: "bulgarian", + + /** + * Selects the Microsoft tokenizer for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the Microsoft tokenizer for Chinese (Simplified). + */ + ChineseSimplified: "chineseSimplified", + + /** + * Selects the Microsoft tokenizer for Chinese (Traditional). + */ + ChineseTraditional: "chineseTraditional", + + /** + * Selects the Microsoft tokenizer for Croatian. + */ + Croatian: "croatian", + + /** + * Selects the Microsoft tokenizer for Czech. + */ + Czech: "czech", + + /** + * Selects the Microsoft tokenizer for Danish. + */ + Danish: "danish", + + /** + * Selects the Microsoft tokenizer for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the Microsoft tokenizer for English. + */ + English: "english", + + /** + * Selects the Microsoft tokenizer for French. + */ + French: "french", + + /** + * Selects the Microsoft tokenizer for German. + */ + German: "german", + + /** + * Selects the Microsoft tokenizer for Greek. + */ + Greek: "greek", + + /** + * Selects the Microsoft tokenizer for Gujarati. + */ + Gujarati: "gujarati", + + /** + * Selects the Microsoft tokenizer for Hindi. + */ + Hindi: "hindi", + + /** + * Selects the Microsoft tokenizer for Icelandic. + */ + Icelandic: "icelandic", + + /** + * Selects the Microsoft tokenizer for Indonesian. + */ + Indonesian: "indonesian", + + /** + * Selects the Microsoft tokenizer for Italian. + */ + Italian: "italian", + + /** + * Selects the Microsoft tokenizer for Japanese. + */ + Japanese: "japanese", + + /** + * Selects the Microsoft tokenizer for Kannada. + */ + Kannada: "kannada", + + /** + * Selects the Microsoft tokenizer for Korean. + */ + Korean: "korean", + + /** + * Selects the Microsoft tokenizer for Malay. + */ + Malay: "malay", + + /** + * Selects the Microsoft tokenizer for Malayalam. + */ + Malayalam: "malayalam", + + /** + * Selects the Microsoft tokenizer for Marathi. + */ + Marathi: "marathi", + + /** + * Selects the Microsoft tokenizer for Norwegian (Bokmål). + */ + NorwegianBokmaal: "norwegianBokmaal", + + /** + * Selects the Microsoft tokenizer for Polish. + */ + Polish: "polish", + + /** + * Selects the Microsoft tokenizer for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the Microsoft tokenizer for Portuguese (Brazil). + */ + PortugueseBrazilian: "portugueseBrazilian", + + /** + * Selects the Microsoft tokenizer for Punjabi. + */ + Punjabi: "punjabi", + + /** + * Selects the Microsoft tokenizer for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the Microsoft tokenizer for Russian. + */ + Russian: "russian", + + /** + * Selects the Microsoft tokenizer for Serbian (Cyrillic). + */ + SerbianCyrillic: "serbianCyrillic", + + /** + * Selects the Microsoft tokenizer for Serbian (Latin). + */ + SerbianLatin: "serbianLatin", + + /** + * Selects the Microsoft tokenizer for Slovenian. + */ + Slovenian: "slovenian", + + /** + * Selects the Microsoft tokenizer for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the Microsoft tokenizer for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the Microsoft tokenizer for Tamil. + */ + Tamil: "tamil", + + /** + * Selects the Microsoft tokenizer for Telugu. + */ + Telugu: "telugu", + + /** + * Selects the Microsoft tokenizer for Thai. + */ + Thai: "thai", + + /** + * Selects the Microsoft tokenizer for Ukrainian. + */ + Ukrainian: "ukrainian", + + /** + * Selects the Microsoft tokenizer for Urdu. + */ + Urdu: "urdu", + + /** + * Selects the Microsoft tokenizer for Vietnamese. + */ + Vietnamese: "vietnamese", } /** * Lists the languages supported by the Microsoft language stemming tokenizer. */ union MicrosoftStemmingTokenizerLanguage { - string, - - /** - * Selects the Microsoft stemming tokenizer for Arabic. - */ - Arabic: "arabic", - - /** - * Selects the Microsoft stemming tokenizer for Bangla. - */ - Bangla: "bangla", - - /** - * Selects the Microsoft stemming tokenizer for Bulgarian. - */ - Bulgarian: "bulgarian", - - /** - * Selects the Microsoft stemming tokenizer for Catalan. - */ - Catalan: "catalan", - - /** - * Selects the Microsoft stemming tokenizer for Croatian. - */ - Croatian: "croatian", - - /** - * Selects the Microsoft stemming tokenizer for Czech. - */ - Czech: "czech", - - /** - * Selects the Microsoft stemming tokenizer for Danish. - */ - Danish: "danish", - - /** - * Selects the Microsoft stemming tokenizer for Dutch. - */ - Dutch: "dutch", - - /** - * Selects the Microsoft stemming tokenizer for English. - */ - English: "english", - - /** - * Selects the Microsoft stemming tokenizer for Estonian. - */ - Estonian: "estonian", - - /** - * Selects the Microsoft stemming tokenizer for Finnish. - */ - Finnish: "finnish", - - /** - * Selects the Microsoft stemming tokenizer for French. - */ - French: "french", - - /** - * Selects the Microsoft stemming tokenizer for German. - */ - German: "german", - - /** - * Selects the Microsoft stemming tokenizer for Greek. - */ - Greek: "greek", - - /** - * Selects the Microsoft stemming tokenizer for Gujarati. - */ - Gujarati: "gujarati", - - /** - * Selects the Microsoft stemming tokenizer for Hebrew. - */ - Hebrew: "hebrew", - - /** - * Selects the Microsoft stemming tokenizer for Hindi. - */ - Hindi: "hindi", - - /** - * Selects the Microsoft stemming tokenizer for Hungarian. - */ - Hungarian: "hungarian", - - /** - * Selects the Microsoft stemming tokenizer for Icelandic. - */ - Icelandic: "icelandic", - - /** - * Selects the Microsoft stemming tokenizer for Indonesian. - */ - Indonesian: "indonesian", - - /** - * Selects the Microsoft stemming tokenizer for Italian. - */ - Italian: "italian", - - /** - * Selects the Microsoft stemming tokenizer for Kannada. - */ - Kannada: "kannada", - - /** - * Selects the Microsoft stemming tokenizer for Latvian. - */ - Latvian: "latvian", - - /** - * Selects the Microsoft stemming tokenizer for Lithuanian. - */ - Lithuanian: "lithuanian", - - /** - * Selects the Microsoft stemming tokenizer for Malay. - */ - Malay: "malay", - - /** - * Selects the Microsoft stemming tokenizer for Malayalam. - */ - Malayalam: "malayalam", - - /** - * Selects the Microsoft stemming tokenizer for Marathi. - */ - Marathi: "marathi", - - /** - * Selects the Microsoft stemming tokenizer for Norwegian (Bokmål). - */ - NorwegianBokmaal: "norwegianBokmaal", - - /** - * Selects the Microsoft stemming tokenizer for Polish. - */ - Polish: "polish", - - /** - * Selects the Microsoft stemming tokenizer for Portuguese. - */ - Portuguese: "portuguese", - - /** - * Selects the Microsoft stemming tokenizer for Portuguese (Brazil). - */ - PortugueseBrazilian: "portugueseBrazilian", - - /** - * Selects the Microsoft stemming tokenizer for Punjabi. - */ - Punjabi: "punjabi", - - /** - * Selects the Microsoft stemming tokenizer for Romanian. - */ - Romanian: "romanian", - - /** - * Selects the Microsoft stemming tokenizer for Russian. - */ - Russian: "russian", - - /** - * Selects the Microsoft stemming tokenizer for Serbian (Cyrillic). - */ - SerbianCyrillic: "serbianCyrillic", - - /** - * Selects the Microsoft stemming tokenizer for Serbian (Latin). - */ - SerbianLatin: "serbianLatin", - - /** - * Selects the Microsoft stemming tokenizer for Slovak. - */ - Slovak: "slovak", - - /** - * Selects the Microsoft stemming tokenizer for Slovenian. - */ - Slovenian: "slovenian", - - /** - * Selects the Microsoft stemming tokenizer for Spanish. - */ - Spanish: "spanish", - - /** - * Selects the Microsoft stemming tokenizer for Swedish. - */ - Swedish: "swedish", - - /** - * Selects the Microsoft stemming tokenizer for Tamil. - */ - Tamil: "tamil", - - /** - * Selects the Microsoft stemming tokenizer for Telugu. - */ - Telugu: "telugu", - - /** - * Selects the Microsoft stemming tokenizer for Turkish. - */ - Turkish: "turkish", - - /** - * Selects the Microsoft stemming tokenizer for Ukrainian. - */ - Ukrainian: "ukrainian", - - /** - * Selects the Microsoft stemming tokenizer for Urdu. - */ - Urdu: "urdu", + string, + + /** + * Selects the Microsoft stemming tokenizer for Arabic. + */ + Arabic: "arabic", + + /** + * Selects the Microsoft stemming tokenizer for Bangla. + */ + Bangla: "bangla", + + /** + * Selects the Microsoft stemming tokenizer for Bulgarian. + */ + Bulgarian: "bulgarian", + + /** + * Selects the Microsoft stemming tokenizer for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the Microsoft stemming tokenizer for Croatian. + */ + Croatian: "croatian", + + /** + * Selects the Microsoft stemming tokenizer for Czech. + */ + Czech: "czech", + + /** + * Selects the Microsoft stemming tokenizer for Danish. + */ + Danish: "danish", + + /** + * Selects the Microsoft stemming tokenizer for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the Microsoft stemming tokenizer for English. + */ + English: "english", + + /** + * Selects the Microsoft stemming tokenizer for Estonian. + */ + Estonian: "estonian", + + /** + * Selects the Microsoft stemming tokenizer for Finnish. + */ + Finnish: "finnish", + + /** + * Selects the Microsoft stemming tokenizer for French. + */ + French: "french", + + /** + * Selects the Microsoft stemming tokenizer for German. + */ + German: "german", + + /** + * Selects the Microsoft stemming tokenizer for Greek. + */ + Greek: "greek", + + /** + * Selects the Microsoft stemming tokenizer for Gujarati. + */ + Gujarati: "gujarati", + + /** + * Selects the Microsoft stemming tokenizer for Hebrew. + */ + Hebrew: "hebrew", + + /** + * Selects the Microsoft stemming tokenizer for Hindi. + */ + Hindi: "hindi", + + /** + * Selects the Microsoft stemming tokenizer for Hungarian. + */ + Hungarian: "hungarian", + + /** + * Selects the Microsoft stemming tokenizer for Icelandic. + */ + Icelandic: "icelandic", + + /** + * Selects the Microsoft stemming tokenizer for Indonesian. + */ + Indonesian: "indonesian", + + /** + * Selects the Microsoft stemming tokenizer for Italian. + */ + Italian: "italian", + + /** + * Selects the Microsoft stemming tokenizer for Kannada. + */ + Kannada: "kannada", + + /** + * Selects the Microsoft stemming tokenizer for Latvian. + */ + Latvian: "latvian", + + /** + * Selects the Microsoft stemming tokenizer for Lithuanian. + */ + Lithuanian: "lithuanian", + + /** + * Selects the Microsoft stemming tokenizer for Malay. + */ + Malay: "malay", + + /** + * Selects the Microsoft stemming tokenizer for Malayalam. + */ + Malayalam: "malayalam", + + /** + * Selects the Microsoft stemming tokenizer for Marathi. + */ + Marathi: "marathi", + + /** + * Selects the Microsoft stemming tokenizer for Norwegian (Bokmål). + */ + NorwegianBokmaal: "norwegianBokmaal", + + /** + * Selects the Microsoft stemming tokenizer for Polish. + */ + Polish: "polish", + + /** + * Selects the Microsoft stemming tokenizer for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the Microsoft stemming tokenizer for Portuguese (Brazil). + */ + PortugueseBrazilian: "portugueseBrazilian", + + /** + * Selects the Microsoft stemming tokenizer for Punjabi. + */ + Punjabi: "punjabi", + + /** + * Selects the Microsoft stemming tokenizer for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the Microsoft stemming tokenizer for Russian. + */ + Russian: "russian", + + /** + * Selects the Microsoft stemming tokenizer for Serbian (Cyrillic). + */ + SerbianCyrillic: "serbianCyrillic", + + /** + * Selects the Microsoft stemming tokenizer for Serbian (Latin). + */ + SerbianLatin: "serbianLatin", + + /** + * Selects the Microsoft stemming tokenizer for Slovak. + */ + Slovak: "slovak", + + /** + * Selects the Microsoft stemming tokenizer for Slovenian. + */ + Slovenian: "slovenian", + + /** + * Selects the Microsoft stemming tokenizer for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the Microsoft stemming tokenizer for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the Microsoft stemming tokenizer for Tamil. + */ + Tamil: "tamil", + + /** + * Selects the Microsoft stemming tokenizer for Telugu. + */ + Telugu: "telugu", + + /** + * Selects the Microsoft stemming tokenizer for Turkish. + */ + Turkish: "turkish", + + /** + * Selects the Microsoft stemming tokenizer for Ukrainian. + */ + Ukrainian: "ukrainian", + + /** + * Selects the Microsoft stemming tokenizer for Urdu. + */ + Urdu: "urdu", } /** * Scripts that can be ignored by CjkBigramTokenFilter. */ union CjkBigramTokenFilterScripts { - string, + string, - /** - * Ignore Han script when forming bigrams of CJK terms. - */ - Han: "han", + /** + * Ignore Han script when forming bigrams of CJK terms. + */ + Han: "han", - /** - * Ignore Hiragana script when forming bigrams of CJK terms. - */ - Hiragana: "hiragana", + /** + * Ignore Hiragana script when forming bigrams of CJK terms. + */ + Hiragana: "hiragana", - /** - * Ignore Katakana script when forming bigrams of CJK terms. - */ - Katakana: "katakana", + /** + * Ignore Katakana script when forming bigrams of CJK terms. + */ + Katakana: "katakana", - /** - * Ignore Hangul script when forming bigrams of CJK terms. - */ - Hangul: "hangul", + /** + * Ignore Hangul script when forming bigrams of CJK terms. + */ + Hangul: "hangul", } /** * Specifies which side of the input an n-gram should be generated from. */ union EdgeNGramTokenFilterSide { - string, + string, - /** - * Specifies that the n-gram should be generated from the front of the input. - */ - Front: "front", + /** + * Specifies that the n-gram should be generated from the front of the input. + */ + Front: "front", - /** - * Specifies that the n-gram should be generated from the back of the input. - */ - Back: "back", + /** + * Specifies that the n-gram should be generated from the back of the input. + */ + Back: "back", } /** * Identifies the type of phonetic encoder to use with a PhoneticTokenFilter. */ union PhoneticEncoder { - string, + string, - /** - * Encodes a token into a Metaphone value. - */ - Metaphone: "metaphone", + /** + * Encodes a token into a Metaphone value. + */ + Metaphone: "metaphone", - /** - * Encodes a token into a double metaphone value. - */ - DoubleMetaphone: "doubleMetaphone", + /** + * Encodes a token into a double metaphone value. + */ + DoubleMetaphone: "doubleMetaphone", - /** - * Encodes a token into a Soundex value. - */ - Soundex: "soundex", + /** + * Encodes a token into a Soundex value. + */ + Soundex: "soundex", - /** - * Encodes a token into a Refined Soundex value. - */ - RefinedSoundex: "refinedSoundex", + /** + * Encodes a token into a Refined Soundex value. + */ + RefinedSoundex: "refinedSoundex", - /** - * Encodes a token into a Caverphone 1.0 value. - */ - Caverphone1: "caverphone1", + /** + * Encodes a token into a Caverphone 1.0 value. + */ + Caverphone1: "caverphone1", - /** - * Encodes a token into a Caverphone 2.0 value. - */ - Caverphone2: "caverphone2", + /** + * Encodes a token into a Caverphone 2.0 value. + */ + Caverphone2: "caverphone2", - /** - * Encodes a token into a Cologne Phonetic value. - */ - Cologne: "cologne", + /** + * Encodes a token into a Cologne Phonetic value. + */ + Cologne: "cologne", - /** - * Encodes a token into a NYSIIS value. - */ - Nysiis: "nysiis", + /** + * Encodes a token into a NYSIIS value. + */ + Nysiis: "nysiis", - /** - * Encodes a token using the Kölner Phonetik algorithm. - */ - KoelnerPhonetik: "koelnerPhonetik", + /** + * Encodes a token using the Kölner Phonetik algorithm. + */ + KoelnerPhonetik: "koelnerPhonetik", - /** - * Encodes a token using the Haase refinement of the Kölner Phonetik algorithm. - */ - HaasePhonetik: "haasePhonetik", + /** + * Encodes a token using the Haase refinement of the Kölner Phonetik algorithm. + */ + HaasePhonetik: "haasePhonetik", - /** - * Encodes a token into a Beider-Morse value. - */ - BeiderMorse: "beiderMorse", + /** + * Encodes a token into a Beider-Morse value. + */ + BeiderMorse: "beiderMorse", } /** * The language to use for a Snowball token filter. */ union SnowballTokenFilterLanguage { - string, - - /** - * Selects the Lucene Snowball stemming tokenizer for Armenian. - */ - Armenian: "armenian", - - /** - * Selects the Lucene Snowball stemming tokenizer for Basque. - */ - Basque: "basque", - - /** - * Selects the Lucene Snowball stemming tokenizer for Catalan. - */ - Catalan: "catalan", - - /** - * Selects the Lucene Snowball stemming tokenizer for Danish. - */ - Danish: "danish", - - /** - * Selects the Lucene Snowball stemming tokenizer for Dutch. - */ - Dutch: "dutch", - - /** - * Selects the Lucene Snowball stemming tokenizer for English. - */ - English: "english", - - /** - * Selects the Lucene Snowball stemming tokenizer for Finnish. - */ - Finnish: "finnish", - - /** - * Selects the Lucene Snowball stemming tokenizer for French. - */ - French: "french", - - /** - * Selects the Lucene Snowball stemming tokenizer for German. - */ - German: "german", - - /** - * Selects the Lucene Snowball stemming tokenizer that uses the German variant - * algorithm. - */ - German2: "german2", - - /** - * Selects the Lucene Snowball stemming tokenizer for Hungarian. - */ - Hungarian: "hungarian", - - /** - * Selects the Lucene Snowball stemming tokenizer for Italian. - */ - Italian: "italian", - - /** - * Selects the Lucene Snowball stemming tokenizer for Dutch that uses the - * Kraaij-Pohlmann stemming algorithm. - */ - Kp: "kp", - - /** - * Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins - * stemming algorithm. - */ - Lovins: "lovins", - - /** - * Selects the Lucene Snowball stemming tokenizer for Norwegian. - */ - Norwegian: "norwegian", - - /** - * Selects the Lucene Snowball stemming tokenizer for English that uses the Porter - * stemming algorithm. - */ - Porter: "porter", - - /** - * Selects the Lucene Snowball stemming tokenizer for Portuguese. - */ - Portuguese: "portuguese", - - /** - * Selects the Lucene Snowball stemming tokenizer for Romanian. - */ - Romanian: "romanian", - - /** - * Selects the Lucene Snowball stemming tokenizer for Russian. - */ - Russian: "russian", - - /** - * Selects the Lucene Snowball stemming tokenizer for Spanish. - */ - Spanish: "spanish", - - /** - * Selects the Lucene Snowball stemming tokenizer for Swedish. - */ - Swedish: "swedish", - - /** - * Selects the Lucene Snowball stemming tokenizer for Turkish. - */ - Turkish: "turkish", + string, + + /** + * Selects the Lucene Snowball stemming tokenizer for Armenian. + */ + Armenian: "armenian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Basque. + */ + Basque: "basque", + + /** + * Selects the Lucene Snowball stemming tokenizer for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the Lucene Snowball stemming tokenizer for Danish. + */ + Danish: "danish", + + /** + * Selects the Lucene Snowball stemming tokenizer for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the Lucene Snowball stemming tokenizer for English. + */ + English: "english", + + /** + * Selects the Lucene Snowball stemming tokenizer for Finnish. + */ + Finnish: "finnish", + + /** + * Selects the Lucene Snowball stemming tokenizer for French. + */ + French: "french", + + /** + * Selects the Lucene Snowball stemming tokenizer for German. + */ + German: "german", + + /** + * Selects the Lucene Snowball stemming tokenizer that uses the German variant + * algorithm. + */ + German2: "german2", + + /** + * Selects the Lucene Snowball stemming tokenizer for Hungarian. + */ + Hungarian: "hungarian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Italian. + */ + Italian: "italian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Dutch that uses the + * Kraaij-Pohlmann stemming algorithm. + */ + Kp: "kp", + + /** + * Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins + * stemming algorithm. + */ + Lovins: "lovins", + + /** + * Selects the Lucene Snowball stemming tokenizer for Norwegian. + */ + Norwegian: "norwegian", + + /** + * Selects the Lucene Snowball stemming tokenizer for English that uses the Porter + * stemming algorithm. + */ + Porter: "porter", + + /** + * Selects the Lucene Snowball stemming tokenizer for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the Lucene Snowball stemming tokenizer for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Russian. + */ + Russian: "russian", + + /** + * Selects the Lucene Snowball stemming tokenizer for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the Lucene Snowball stemming tokenizer for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the Lucene Snowball stemming tokenizer for Turkish. + */ + Turkish: "turkish", } /** * The language to use for a stemmer token filter. */ union StemmerTokenFilterLanguage { - string, - - /** - * Selects the Lucene stemming tokenizer for Arabic. - */ - Arabic: "arabic", - - /** - * Selects the Lucene stemming tokenizer for Armenian. - */ - Armenian: "armenian", - - /** - * Selects the Lucene stemming tokenizer for Basque. - */ - Basque: "basque", - - /** - * Selects the Lucene stemming tokenizer for Portuguese (Brazil). - */ - Brazilian: "brazilian", - - /** - * Selects the Lucene stemming tokenizer for Bulgarian. - */ - Bulgarian: "bulgarian", - - /** - * Selects the Lucene stemming tokenizer for Catalan. - */ - Catalan: "catalan", - - /** - * Selects the Lucene stemming tokenizer for Czech. - */ - Czech: "czech", - - /** - * Selects the Lucene stemming tokenizer for Danish. - */ - Danish: "danish", - - /** - * Selects the Lucene stemming tokenizer for Dutch. - */ - Dutch: "dutch", - - /** - * Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann - * stemming algorithm. - */ - DutchKp: "dutchKp", - - /** - * Selects the Lucene stemming tokenizer for English. - */ - English: "english", - - /** - * Selects the Lucene stemming tokenizer for English that does light stemming. - */ - LightEnglish: "lightEnglish", - - /** - * Selects the Lucene stemming tokenizer for English that does minimal stemming. - */ - MinimalEnglish: "minimalEnglish", - - /** - * Selects the Lucene stemming tokenizer for English that removes trailing - * possessives from words. - */ - PossessiveEnglish: "possessiveEnglish", - - /** - * Selects the Lucene stemming tokenizer for English that uses the Porter2 - * stemming algorithm. - */ - Porter2: "porter2", - - /** - * Selects the Lucene stemming tokenizer for English that uses the Lovins stemming - * algorithm. - */ - Lovins: "lovins", - - /** - * Selects the Lucene stemming tokenizer for Finnish. - */ - Finnish: "finnish", - - /** - * Selects the Lucene stemming tokenizer for Finnish that does light stemming. - */ - LightFinnish: "lightFinnish", - - /** - * Selects the Lucene stemming tokenizer for French. - */ - French: "french", - - /** - * Selects the Lucene stemming tokenizer for French that does light stemming. - */ - LightFrench: "lightFrench", - - /** - * Selects the Lucene stemming tokenizer for French that does minimal stemming. - */ - MinimalFrench: "minimalFrench", - - /** - * Selects the Lucene stemming tokenizer for Galician. - */ - Galician: "galician", - - /** - * Selects the Lucene stemming tokenizer for Galician that does minimal stemming. - */ - MinimalGalician: "minimalGalician", - - /** - * Selects the Lucene stemming tokenizer for German. - */ - German: "german", - - /** - * Selects the Lucene stemming tokenizer that uses the German variant algorithm. - */ - German2: "german2", - - /** - * Selects the Lucene stemming tokenizer for German that does light stemming. - */ - LightGerman: "lightGerman", - - /** - * Selects the Lucene stemming tokenizer for German that does minimal stemming. - */ - MinimalGerman: "minimalGerman", - - /** - * Selects the Lucene stemming tokenizer for Greek. - */ - Greek: "greek", - - /** - * Selects the Lucene stemming tokenizer for Hindi. - */ - Hindi: "hindi", - - /** - * Selects the Lucene stemming tokenizer for Hungarian. - */ - Hungarian: "hungarian", - - /** - * Selects the Lucene stemming tokenizer for Hungarian that does light stemming. - */ - LightHungarian: "lightHungarian", - - /** - * Selects the Lucene stemming tokenizer for Indonesian. - */ - Indonesian: "indonesian", - - /** - * Selects the Lucene stemming tokenizer for Irish. - */ - Irish: "irish", - - /** - * Selects the Lucene stemming tokenizer for Italian. - */ - Italian: "italian", - - /** - * Selects the Lucene stemming tokenizer for Italian that does light stemming. - */ - LightItalian: "lightItalian", - - /** - * Selects the Lucene stemming tokenizer for Sorani. - */ - Sorani: "sorani", - - /** - * Selects the Lucene stemming tokenizer for Latvian. - */ - Latvian: "latvian", - - /** - * Selects the Lucene stemming tokenizer for Norwegian (Bokmål). - */ - Norwegian: "norwegian", - - /** - * Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light - * stemming. - */ - LightNorwegian: "lightNorwegian", - - /** - * Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal - * stemming. - */ - MinimalNorwegian: "minimalNorwegian", - - /** - * Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light - * stemming. - */ - LightNynorsk: "lightNynorsk", - - /** - * Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal - * stemming. - */ - MinimalNynorsk: "minimalNynorsk", - - /** - * Selects the Lucene stemming tokenizer for Portuguese. - */ - Portuguese: "portuguese", - - /** - * Selects the Lucene stemming tokenizer for Portuguese that does light stemming. - */ - LightPortuguese: "lightPortuguese", - - /** - * Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming. - */ - MinimalPortuguese: "minimalPortuguese", - - /** - * Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP - * stemming algorithm. - */ - PortugueseRslp: "portugueseRslp", - - /** - * Selects the Lucene stemming tokenizer for Romanian. - */ - Romanian: "romanian", - - /** - * Selects the Lucene stemming tokenizer for Russian. - */ - Russian: "russian", - - /** - * Selects the Lucene stemming tokenizer for Russian that does light stemming. - */ - LightRussian: "lightRussian", - - /** - * Selects the Lucene stemming tokenizer for Spanish. - */ - Spanish: "spanish", - - /** - * Selects the Lucene stemming tokenizer for Spanish that does light stemming. - */ - LightSpanish: "lightSpanish", - - /** - * Selects the Lucene stemming tokenizer for Swedish. - */ - Swedish: "swedish", - - /** - * Selects the Lucene stemming tokenizer for Swedish that does light stemming. - */ - LightSwedish: "lightSwedish", - - /** - * Selects the Lucene stemming tokenizer for Turkish. - */ - Turkish: "turkish", + string, + + /** + * Selects the Lucene stemming tokenizer for Arabic. + */ + Arabic: "arabic", + + /** + * Selects the Lucene stemming tokenizer for Armenian. + */ + Armenian: "armenian", + + /** + * Selects the Lucene stemming tokenizer for Basque. + */ + Basque: "basque", + + /** + * Selects the Lucene stemming tokenizer for Portuguese (Brazil). + */ + Brazilian: "brazilian", + + /** + * Selects the Lucene stemming tokenizer for Bulgarian. + */ + Bulgarian: "bulgarian", + + /** + * Selects the Lucene stemming tokenizer for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the Lucene stemming tokenizer for Czech. + */ + Czech: "czech", + + /** + * Selects the Lucene stemming tokenizer for Danish. + */ + Danish: "danish", + + /** + * Selects the Lucene stemming tokenizer for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann + * stemming algorithm. + */ + DutchKp: "dutchKp", + + /** + * Selects the Lucene stemming tokenizer for English. + */ + English: "english", + + /** + * Selects the Lucene stemming tokenizer for English that does light stemming. + */ + LightEnglish: "lightEnglish", + + /** + * Selects the Lucene stemming tokenizer for English that does minimal stemming. + */ + MinimalEnglish: "minimalEnglish", + + /** + * Selects the Lucene stemming tokenizer for English that removes trailing + * possessives from words. + */ + PossessiveEnglish: "possessiveEnglish", + + /** + * Selects the Lucene stemming tokenizer for English that uses the Porter2 + * stemming algorithm. + */ + Porter2: "porter2", + + /** + * Selects the Lucene stemming tokenizer for English that uses the Lovins stemming + * algorithm. + */ + Lovins: "lovins", + + /** + * Selects the Lucene stemming tokenizer for Finnish. + */ + Finnish: "finnish", + + /** + * Selects the Lucene stemming tokenizer for Finnish that does light stemming. + */ + LightFinnish: "lightFinnish", + + /** + * Selects the Lucene stemming tokenizer for French. + */ + French: "french", + + /** + * Selects the Lucene stemming tokenizer for French that does light stemming. + */ + LightFrench: "lightFrench", + + /** + * Selects the Lucene stemming tokenizer for French that does minimal stemming. + */ + MinimalFrench: "minimalFrench", + + /** + * Selects the Lucene stemming tokenizer for Galician. + */ + Galician: "galician", + + /** + * Selects the Lucene stemming tokenizer for Galician that does minimal stemming. + */ + MinimalGalician: "minimalGalician", + + /** + * Selects the Lucene stemming tokenizer for German. + */ + German: "german", + + /** + * Selects the Lucene stemming tokenizer that uses the German variant algorithm. + */ + German2: "german2", + + /** + * Selects the Lucene stemming tokenizer for German that does light stemming. + */ + LightGerman: "lightGerman", + + /** + * Selects the Lucene stemming tokenizer for German that does minimal stemming. + */ + MinimalGerman: "minimalGerman", + + /** + * Selects the Lucene stemming tokenizer for Greek. + */ + Greek: "greek", + + /** + * Selects the Lucene stemming tokenizer for Hindi. + */ + Hindi: "hindi", + + /** + * Selects the Lucene stemming tokenizer for Hungarian. + */ + Hungarian: "hungarian", + + /** + * Selects the Lucene stemming tokenizer for Hungarian that does light stemming. + */ + LightHungarian: "lightHungarian", + + /** + * Selects the Lucene stemming tokenizer for Indonesian. + */ + Indonesian: "indonesian", + + /** + * Selects the Lucene stemming tokenizer for Irish. + */ + Irish: "irish", + + /** + * Selects the Lucene stemming tokenizer for Italian. + */ + Italian: "italian", + + /** + * Selects the Lucene stemming tokenizer for Italian that does light stemming. + */ + LightItalian: "lightItalian", + + /** + * Selects the Lucene stemming tokenizer for Sorani. + */ + Sorani: "sorani", + + /** + * Selects the Lucene stemming tokenizer for Latvian. + */ + Latvian: "latvian", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Bokmål). + */ + Norwegian: "norwegian", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light + * stemming. + */ + LightNorwegian: "lightNorwegian", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal + * stemming. + */ + MinimalNorwegian: "minimalNorwegian", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light + * stemming. + */ + LightNynorsk: "lightNynorsk", + + /** + * Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal + * stemming. + */ + MinimalNynorsk: "minimalNynorsk", + + /** + * Selects the Lucene stemming tokenizer for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the Lucene stemming tokenizer for Portuguese that does light stemming. + */ + LightPortuguese: "lightPortuguese", + + /** + * Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming. + */ + MinimalPortuguese: "minimalPortuguese", + + /** + * Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP + * stemming algorithm. + */ + PortugueseRslp: "portugueseRslp", + + /** + * Selects the Lucene stemming tokenizer for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the Lucene stemming tokenizer for Russian. + */ + Russian: "russian", + + /** + * Selects the Lucene stemming tokenizer for Russian that does light stemming. + */ + LightRussian: "lightRussian", + + /** + * Selects the Lucene stemming tokenizer for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the Lucene stemming tokenizer for Spanish that does light stemming. + */ + LightSpanish: "lightSpanish", + + /** + * Selects the Lucene stemming tokenizer for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the Lucene stemming tokenizer for Swedish that does light stemming. + */ + LightSwedish: "lightSwedish", + + /** + * Selects the Lucene stemming tokenizer for Turkish. + */ + Turkish: "turkish", } /** * Identifies a predefined list of language-specific stopwords. */ union StopwordsList { - string, - - /** - * Selects the stopword list for Arabic. - */ - Arabic: "arabic", - - /** - * Selects the stopword list for Armenian. - */ - Armenian: "armenian", - - /** - * Selects the stopword list for Basque. - */ - Basque: "basque", - - /** - * Selects the stopword list for Portuguese (Brazil). - */ - Brazilian: "brazilian", - - /** - * Selects the stopword list for Bulgarian. - */ - Bulgarian: "bulgarian", - - /** - * Selects the stopword list for Catalan. - */ - Catalan: "catalan", - - /** - * Selects the stopword list for Czech. - */ - Czech: "czech", - - /** - * Selects the stopword list for Danish. - */ - Danish: "danish", - - /** - * Selects the stopword list for Dutch. - */ - Dutch: "dutch", - - /** - * Selects the stopword list for English. - */ - English: "english", - - /** - * Selects the stopword list for Finnish. - */ - Finnish: "finnish", - - /** - * Selects the stopword list for French. - */ - French: "french", - - /** - * Selects the stopword list for Galician. - */ - Galician: "galician", - - /** - * Selects the stopword list for German. - */ - German: "german", - - /** - * Selects the stopword list for Greek. - */ - Greek: "greek", - - /** - * Selects the stopword list for Hindi. - */ - Hindi: "hindi", - - /** - * Selects the stopword list for Hungarian. - */ - Hungarian: "hungarian", - - /** - * Selects the stopword list for Indonesian. - */ - Indonesian: "indonesian", - - /** - * Selects the stopword list for Irish. - */ - Irish: "irish", - - /** - * Selects the stopword list for Italian. - */ - Italian: "italian", - - /** - * Selects the stopword list for Latvian. - */ - Latvian: "latvian", - - /** - * Selects the stopword list for Norwegian. - */ - Norwegian: "norwegian", - - /** - * Selects the stopword list for Persian. - */ - Persian: "persian", - - /** - * Selects the stopword list for Portuguese. - */ - Portuguese: "portuguese", - - /** - * Selects the stopword list for Romanian. - */ - Romanian: "romanian", - - /** - * Selects the stopword list for Russian. - */ - Russian: "russian", - - /** - * Selects the stopword list for Sorani. - */ - Sorani: "sorani", - - /** - * Selects the stopword list for Spanish. - */ - Spanish: "spanish", - - /** - * Selects the stopword list for Swedish. - */ - Swedish: "swedish", - - /** - * Selects the stopword list for Thai. - */ - Thai: "thai", - - /** - * Selects the stopword list for Turkish. - */ - Turkish: "turkish", + string, + + /** + * Selects the stopword list for Arabic. + */ + Arabic: "arabic", + + /** + * Selects the stopword list for Armenian. + */ + Armenian: "armenian", + + /** + * Selects the stopword list for Basque. + */ + Basque: "basque", + + /** + * Selects the stopword list for Portuguese (Brazil). + */ + Brazilian: "brazilian", + + /** + * Selects the stopword list for Bulgarian. + */ + Bulgarian: "bulgarian", + + /** + * Selects the stopword list for Catalan. + */ + Catalan: "catalan", + + /** + * Selects the stopword list for Czech. + */ + Czech: "czech", + + /** + * Selects the stopword list for Danish. + */ + Danish: "danish", + + /** + * Selects the stopword list for Dutch. + */ + Dutch: "dutch", + + /** + * Selects the stopword list for English. + */ + English: "english", + + /** + * Selects the stopword list for Finnish. + */ + Finnish: "finnish", + + /** + * Selects the stopword list for French. + */ + French: "french", + + /** + * Selects the stopword list for Galician. + */ + Galician: "galician", + + /** + * Selects the stopword list for German. + */ + German: "german", + + /** + * Selects the stopword list for Greek. + */ + Greek: "greek", + + /** + * Selects the stopword list for Hindi. + */ + Hindi: "hindi", + + /** + * Selects the stopword list for Hungarian. + */ + Hungarian: "hungarian", + + /** + * Selects the stopword list for Indonesian. + */ + Indonesian: "indonesian", + + /** + * Selects the stopword list for Irish. + */ + Irish: "irish", + + /** + * Selects the stopword list for Italian. + */ + Italian: "italian", + + /** + * Selects the stopword list for Latvian. + */ + Latvian: "latvian", + + /** + * Selects the stopword list for Norwegian. + */ + Norwegian: "norwegian", + + /** + * Selects the stopword list for Persian. + */ + Persian: "persian", + + /** + * Selects the stopword list for Portuguese. + */ + Portuguese: "portuguese", + + /** + * Selects the stopword list for Romanian. + */ + Romanian: "romanian", + + /** + * Selects the stopword list for Russian. + */ + Russian: "russian", + + /** + * Selects the stopword list for Sorani. + */ + Sorani: "sorani", + + /** + * Selects the stopword list for Spanish. + */ + Spanish: "spanish", + + /** + * Selects the stopword list for Swedish. + */ + Swedish: "swedish", + + /** + * Selects the stopword list for Thai. + */ + Thai: "thai", + + /** + * Selects the stopword list for Turkish. + */ + Turkish: "turkish", } /** * Represents a datasource definition, which can be used to configure an indexer. */ model SearchIndexerDataSource { - /** - * The name of the datasource. - */ - name: string; - - /** - * The description of the datasource. - */ - description?: string; - - /** - * The type of the datasource. - */ - type: SearchIndexerDataSourceType; - - /** - * Credentials for the datasource. - */ - credentials: DataSourceCredentials; - - /** - * The data container for the datasource. - */ - container: SearchIndexerDataContainer; - - /** - * The data change detection policy for the datasource. - */ - dataChangeDetectionPolicy?: DataChangeDetectionPolicy; - - /** - * The data deletion detection policy for the datasource. - */ - dataDeletionDetectionPolicy?: DataDeletionDetectionPolicy; - - /** - * The ETag of the data source. - */ - @encodedName("application/json", "@odata.etag") - eTag?: string; - - /** - * A description of an encryption key that you create in Azure Key Vault. This key - * is used to provide an additional level of encryption-at-rest for your - * datasource definition when you want full assurance that no one, not even - * Microsoft, can decrypt your data source definition. Once you have encrypted - * your data source definition, it will always remain encrypted. The search - * service will ignore attempts to set this property to null. You can change this - * property as needed if you want to rotate your encryption key; Your datasource - * definition will be unaffected. Encryption with customer-managed keys is not - * available for free search services, and is only available for paid services - * created on or after January 1, 2019. - */ - encryptionKey?: SearchResourceEncryptionKey; + /** + * The name of the datasource. + */ + name: string; + + /** + * The description of the datasource. + */ + description?: string; + + /** + * The type of the datasource. + */ + type: SearchIndexerDataSourceType; + + /** + * Credentials for the datasource. + */ + credentials: DataSourceCredentials; + + /** + * The data container for the datasource. + */ + container: SearchIndexerDataContainer; + + /** + * The data change detection policy for the datasource. + */ + dataChangeDetectionPolicy?: DataChangeDetectionPolicy; + + /** + * The data deletion detection policy for the datasource. + */ + dataDeletionDetectionPolicy?: DataDeletionDetectionPolicy; + + /** + * The ETag of the data source. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your + * datasource definition when you want full assurance that no one, not even + * Microsoft, can decrypt your data source definition. Once you have encrypted + * your data source definition, it will always remain encrypted. The search + * service will ignore attempts to set this property to null. You can change this + * property as needed if you want to rotate your encryption key; Your datasource + * definition will be unaffected. Encryption with customer-managed keys is not + * available for free search services, and is only available for paid services + * created on or after January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; } /** * Represents credentials that can be used to connect to a datasource. */ model DataSourceCredentials { - /** - * The connection string for the datasource. Set to `` (with brackets) - * if you don't want the connection string updated. Set to `` if you - * want to remove the connection string value from the datasource. - */ - connectionString?: string; + /** + * The connection string for the datasource. Set to `` (with brackets) + * if you don't want the connection string updated. Set to `` if you + * want to remove the connection string value from the datasource. + */ + connectionString?: string; } /** @@ -4799,17 +4799,17 @@ model DataSourceCredentials { * collection) that will be indexed. */ model SearchIndexerDataContainer { - /** - * The name of the table or view (for Azure SQL data source) or collection (for - * CosmosDB data source) that will be indexed. - */ - name: string; + /** + * The name of the table or view (for Azure SQL data source) or collection (for + * CosmosDB data source) that will be indexed. + */ + name: string; - /** - * A query that is applied to this data container. The syntax and meaning of this - * parameter is datasource-specific. Not supported by Azure SQL datasources. - */ - query?: string; + /** + * A query that is applied to this data container. The syntax and meaning of this + * parameter is datasource-specific. Not supported by Azure SQL datasources. + */ + query?: string; } /** @@ -4817,10 +4817,10 @@ model SearchIndexerDataContainer { */ @discriminator("odataType") model DataChangeDetectionPolicy { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; } /** @@ -4828,10 +4828,10 @@ model DataChangeDetectionPolicy { */ @discriminator("odataType") model DataDeletionDetectionPolicy { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; } /** @@ -4840,28 +4840,28 @@ model DataDeletionDetectionPolicy { * synonym maps. */ model SearchResourceEncryptionKey { - /** - * The name of your Azure Key Vault key to be used to encrypt your data at rest. - */ - keyVaultKeyName: string; + /** + * The name of your Azure Key Vault key to be used to encrypt your data at rest. + */ + keyVaultKeyName: string; - /** - * The version of your Azure Key Vault key to be used to encrypt your data at rest. - */ - keyVaultKeyVersion: string; + /** + * The version of your Azure Key Vault key to be used to encrypt your data at rest. + */ + keyVaultKeyVersion: string; - /** - * The URI of your Azure Key Vault, also referred to as DNS name, that contains - * the key to be used to encrypt your data at rest. An example URI might be - * `https://my-keyvault-name.vault.azure.net`. - */ - keyVaultUri: string; + /** + * The URI of your Azure Key Vault, also referred to as DNS name, that contains + * the key to be used to encrypt your data at rest. An example URI might be + * `https://my-keyvault-name.vault.azure.net`. + */ + keyVaultUri: string; - /** - * Optional Azure Active Directory credentials used for accessing your Azure Key - * Vault. Not required if using managed identity instead. - */ - accessCredentials?: AzureActiveDirectoryApplicationCredentials; + /** + * Optional Azure Active Directory credentials used for accessing your Azure Key + * Vault. Not required if using managed identity instead. + */ + accessCredentials?: AzureActiveDirectoryApplicationCredentials; } /** @@ -4869,18 +4869,18 @@ model SearchResourceEncryptionKey { * for authenticated access to the encryption keys stored in Azure Key Vault. */ model AzureActiveDirectoryApplicationCredentials { - /** - * An AAD Application ID that was granted the required access permissions to the - * Azure Key Vault that is to be used when encrypting your data at rest. The - * Application ID should not be confused with the Object ID for your AAD - * Application. - */ - applicationId: string; + /** + * An AAD Application ID that was granted the required access permissions to the + * Azure Key Vault that is to be used when encrypting your data at rest. The + * Application ID should not be confused with the Object ID for your AAD + * Application. + */ + applicationId: string; - /** - * The authentication key of the specified AAD application. - */ - applicationSecret?: string; + /** + * The authentication key of the specified AAD application. + */ + applicationSecret?: string; } /** @@ -4888,134 +4888,134 @@ model AzureActiveDirectoryApplicationCredentials { * definitions of all datasources. */ model ListDataSourcesResult { - /** - * The datasources in the Search service. - */ - @visibility("read") - value: SearchIndexerDataSource[]; + /** + * The datasources in the Search service. + */ + @visibility("read") + value: SearchIndexerDataSource[]; } /** * Represents an indexer. */ model SearchIndexer { - /** - * The name of the indexer. - */ - name: string; - - /** - * The description of the indexer. - */ - description?: string; - - /** - * The name of the datasource from which this indexer reads data. - */ - dataSourceName: string; - - /** - * The name of the skillset executing with this indexer. - */ - skillsetName?: string; - - /** - * The name of the index to which this indexer writes data. - */ - targetIndexName: string; - - /** - * The schedule for this indexer. - */ - schedule?: IndexingSchedule; - - /** - * Parameters for indexer execution. - */ - parameters?: IndexingParameters; - - /** - * Defines mappings between fields in the data source and corresponding target - * fields in the index. - */ - fieldMappings?: FieldMapping[]; - - /** - * Output field mappings are applied after enrichment and immediately before - * indexing. - */ - outputFieldMappings?: FieldMapping[]; - - /** - * A value indicating whether the indexer is disabled. Default is false. - */ - disabled?: boolean; - - /** - * The ETag of the indexer. - */ - @encodedName("application/json", "@odata.etag") - eTag?: string; - - /** - * A description of an encryption key that you create in Azure Key Vault. This key - * is used to provide an additional level of encryption-at-rest for your indexer - * definition (as well as indexer execution status) when you want full assurance - * that no one, not even Microsoft, can decrypt them. Once you have encrypted your - * indexer definition, it will always remain encrypted. The search service will - * ignore attempts to set this property to null. You can change this property as - * needed if you want to rotate your encryption key; Your indexer definition (and - * indexer execution status) will be unaffected. Encryption with customer-managed - * keys is not available for free search services, and is only available for paid - * services created on or after January 1, 2019. - */ - encryptionKey?: SearchResourceEncryptionKey; + /** + * The name of the indexer. + */ + name: string; + + /** + * The description of the indexer. + */ + description?: string; + + /** + * The name of the datasource from which this indexer reads data. + */ + dataSourceName: string; + + /** + * The name of the skillset executing with this indexer. + */ + skillsetName?: string; + + /** + * The name of the index to which this indexer writes data. + */ + targetIndexName: string; + + /** + * The schedule for this indexer. + */ + schedule?: IndexingSchedule; + + /** + * Parameters for indexer execution. + */ + parameters?: IndexingParameters; + + /** + * Defines mappings between fields in the data source and corresponding target + * fields in the index. + */ + fieldMappings?: FieldMapping[]; + + /** + * Output field mappings are applied after enrichment and immediately before + * indexing. + */ + outputFieldMappings?: FieldMapping[]; + + /** + * A value indicating whether the indexer is disabled. Default is false. + */ + disabled?: boolean; + + /** + * The ETag of the indexer. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your indexer + * definition (as well as indexer execution status) when you want full assurance + * that no one, not even Microsoft, can decrypt them. Once you have encrypted your + * indexer definition, it will always remain encrypted. The search service will + * ignore attempts to set this property to null. You can change this property as + * needed if you want to rotate your encryption key; Your indexer definition (and + * indexer execution status) will be unaffected. Encryption with customer-managed + * keys is not available for free search services, and is only available for paid + * services created on or after January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; } /** * Represents a schedule for indexer execution. */ model IndexingSchedule { - /** - * The interval of time between indexer executions. - */ - interval: duration; + /** + * The interval of time between indexer executions. + */ + interval: duration; - /** - * The time when an indexer should start running. - */ - startTime?: utcDateTime; + /** + * The time when an indexer should start running. + */ + startTime?: utcDateTime; } /** * Represents parameters for indexer execution. */ model IndexingParameters { - /** - * The number of items that are read from the data source and indexed as a single - * batch in order to improve performance. The default depends on the data source - * type. - */ - batchSize?: int32; - - /** - * The maximum number of items that can fail indexing for indexer execution to - * still be considered successful. -1 means no limit. Default is 0. - */ - maxFailedItems?: int32; - - /** - * The maximum number of items in a single batch that can fail indexing for the - * batch to still be considered successful. -1 means no limit. Default is 0. - */ - maxFailedItemsPerBatch?: int32; - - /** - * A dictionary of indexer-specific configuration properties. Each name is the - * name of a specific property. Each value must be of a primitive type. - */ - #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" - configuration?: IndexingParametersConfiguration; + /** + * The number of items that are read from the data source and indexed as a single + * batch in order to improve performance. The default depends on the data source + * type. + */ + batchSize?: int32; + + /** + * The maximum number of items that can fail indexing for indexer execution to + * still be considered successful. -1 means no limit. Default is 0. + */ + maxFailedItems?: int32; + + /** + * The maximum number of items in a single batch that can fail indexing for the + * batch to still be considered successful. -1 means no limit. Default is 0. + */ + maxFailedItemsPerBatch?: int32; + + /** + * A dictionary of indexer-specific configuration properties. Each name is the + * name of a specific property. Each value must be of a primitive type. + */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" + configuration?: IndexingParametersConfiguration; } /** @@ -5024,111 +5024,111 @@ model IndexingParameters { */ #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model IndexingParametersConfiguration { - ...Record; - - /** - * Represents the parsing mode for indexing from an Azure blob data source. - */ - parsingMode?: BlobIndexerParsingMode = BlobIndexerParsingMode.Default; - - /** - * Comma-delimited list of filename extensions to ignore when processing from - * Azure blob storage. For example, you could exclude ".png, .mp4" to skip over - * those files during indexing. - */ - excludedFileNameExtensions?: string; - - /** - * Comma-delimited list of filename extensions to select when processing from - * Azure blob storage. For example, you could focus indexing on specific - * application files ".docx, .pptx, .msg" to specifically include those file - * types. - */ - indexedFileNameExtensions?: string; - - /** - * For Azure blobs, set to false if you want to continue indexing when an - * unsupported content type is encountered, and you don't know all the content - * types (file extensions) in advance. - */ - failOnUnsupportedContentType?: boolean; - - /** - * For Azure blobs, set to false if you want to continue indexing if a document - * fails indexing. - */ - failOnUnprocessableDocument?: boolean; - - /** - * For Azure blobs, set this property to true to still index storage metadata for - * blob content that is too large to process. Oversized blobs are treated as - * errors by default. For limits on blob size, see - * https://learn.microsoft.com/azure/search/search-limits-quotas-capacity. - */ - indexStorageMetadataOnlyForOversizedDocuments?: boolean; - - /** - * For CSV blobs, specifies a comma-delimited list of column headers, useful for - * mapping source fields to destination fields in an index. - */ - delimitedTextHeaders?: string; - - /** - * For CSV blobs, specifies the end-of-line single-character delimiter for CSV - * files where each line starts a new document (for example, "|"). - */ - delimitedTextDelimiter?: string; - - /** - * For CSV blobs, indicates that the first (non-blank) line of each blob contains - * headers. - */ - firstLineContainsHeaders?: boolean = true; - - /** - * For JSON arrays, given a structured or semi-structured document, you can - * specify a path to the array using this property. - */ - documentRoot?: string; - - /** - * Specifies the data to extract from Azure blob storage and tells the indexer - * which data to extract from image content when "imageAction" is set to a value - * other than "none". This applies to embedded image content in a .PDF or other - * application, or image files such as .jpg and .png, in Azure blobs. - */ - dataToExtract?: BlobIndexerDataToExtract = BlobIndexerDataToExtract.ContentAndMetadata; - - /** - * Determines how to process embedded images and image files in Azure blob - * storage. Setting the "imageAction" configuration to any value other than - * "none" requires that a skillset also be attached to that indexer. - */ - imageAction?: BlobIndexerImageAction = BlobIndexerImageAction.None; - - /** - * If true, will create a path //document//file_data that is an object - * representing the original file data downloaded from your blob data source. - * This allows you to pass the original file data to a custom skill for processing - * within the enrichment pipeline, or to the Document Extraction skill. - */ - allowSkillsetToReadFileData?: boolean; - - /** - * Determines algorithm for text extraction from PDF files in Azure blob storage. - */ - pdfTextRotationAlgorithm?: BlobIndexerPDFTextRotationAlgorithm = BlobIndexerPDFTextRotationAlgorithm.None; - - /** - * Specifies the environment in which the indexer should execute. - */ - executionEnvironment?: IndexerExecutionEnvironment = IndexerExecutionEnvironment.standard; - - /** - * Increases the timeout beyond the 5-minute default for Azure SQL database data - * sources, specified in the format "hh:mm:ss". - */ - queryTimeout?: string = "00:05:00"; + ...Record; + + /** + * Represents the parsing mode for indexing from an Azure blob data source. + */ + parsingMode?: BlobIndexerParsingMode = BlobIndexerParsingMode.Default; + + /** + * Comma-delimited list of filename extensions to ignore when processing from + * Azure blob storage. For example, you could exclude ".png, .mp4" to skip over + * those files during indexing. + */ + excludedFileNameExtensions?: string; + + /** + * Comma-delimited list of filename extensions to select when processing from + * Azure blob storage. For example, you could focus indexing on specific + * application files ".docx, .pptx, .msg" to specifically include those file + * types. + */ + indexedFileNameExtensions?: string; + + /** + * For Azure blobs, set to false if you want to continue indexing when an + * unsupported content type is encountered, and you don't know all the content + * types (file extensions) in advance. + */ + failOnUnsupportedContentType?: boolean; + + /** + * For Azure blobs, set to false if you want to continue indexing if a document + * fails indexing. + */ + failOnUnprocessableDocument?: boolean; + + /** + * For Azure blobs, set this property to true to still index storage metadata for + * blob content that is too large to process. Oversized blobs are treated as + * errors by default. For limits on blob size, see + * https://learn.microsoft.com/azure/search/search-limits-quotas-capacity. + */ + indexStorageMetadataOnlyForOversizedDocuments?: boolean; + + /** + * For CSV blobs, specifies a comma-delimited list of column headers, useful for + * mapping source fields to destination fields in an index. + */ + delimitedTextHeaders?: string; + + /** + * For CSV blobs, specifies the end-of-line single-character delimiter for CSV + * files where each line starts a new document (for example, "|"). + */ + delimitedTextDelimiter?: string; + + /** + * For CSV blobs, indicates that the first (non-blank) line of each blob contains + * headers. + */ + firstLineContainsHeaders?: boolean = true; + + /** + * For JSON arrays, given a structured or semi-structured document, you can + * specify a path to the array using this property. + */ + documentRoot?: string; + + /** + * Specifies the data to extract from Azure blob storage and tells the indexer + * which data to extract from image content when "imageAction" is set to a value + * other than "none". This applies to embedded image content in a .PDF or other + * application, or image files such as .jpg and .png, in Azure blobs. + */ + dataToExtract?: BlobIndexerDataToExtract = BlobIndexerDataToExtract.ContentAndMetadata; + + /** + * Determines how to process embedded images and image files in Azure blob + * storage. Setting the "imageAction" configuration to any value other than + * "none" requires that a skillset also be attached to that indexer. + */ + imageAction?: BlobIndexerImageAction = BlobIndexerImageAction.None; + + /** + * If true, will create a path //document//file_data that is an object + * representing the original file data downloaded from your blob data source. + * This allows you to pass the original file data to a custom skill for processing + * within the enrichment pipeline, or to the Document Extraction skill. + */ + allowSkillsetToReadFileData?: boolean; + + /** + * Determines algorithm for text extraction from PDF files in Azure blob storage. + */ + pdfTextRotationAlgorithm?: BlobIndexerPDFTextRotationAlgorithm = BlobIndexerPDFTextRotationAlgorithm.None; + + /** + * Specifies the environment in which the indexer should execute. + */ + executionEnvironment?: IndexerExecutionEnvironment = IndexerExecutionEnvironment.standard; + + /** + * Increases the timeout beyond the 5-minute default for Azure SQL database data + * sources, specified in the format "hh:mm:ss". + */ + queryTimeout?: string = "00:05:00"; } /** @@ -5136,21 +5136,21 @@ model IndexingParametersConfiguration { * index. */ model FieldMapping { - /** - * The name of the field in the data source. - */ - sourceFieldName: string; + /** + * The name of the field in the data source. + */ + sourceFieldName: string; - /** - * The name of the target field in the index. Same as the source field name by - * default. - */ - targetFieldName?: string; + /** + * The name of the target field in the index. Same as the source field name by + * default. + */ + targetFieldName?: string; - /** - * A function to apply to each source field value before indexing. - */ - mappingFunction?: FieldMappingFunction; + /** + * A function to apply to each source field value before indexing. + */ + mappingFunction?: FieldMappingFunction; } /** @@ -5158,17 +5158,17 @@ model FieldMapping { * indexing. */ model FieldMappingFunction { - /** - * The name of the field mapping function. - */ - name: string; + /** + * The name of the field mapping function. + */ + name: string; - /** - * A dictionary of parameter name/value pairs to pass to the function. Each value - * must be of a primitive type. - */ - #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" - parameters?: Record; + /** + * A dictionary of parameter name/value pairs to pass to the function. Each value + * must be of a primitive type. + */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" + parameters?: Record; } /** @@ -5176,107 +5176,107 @@ model FieldMappingFunction { * definitions of all indexers. */ model ListIndexersResult { - /** - * The indexers in the Search service. - */ - @visibility("read") - value: SearchIndexer[]; + /** + * The indexers in the Search service. + */ + @visibility("read") + value: SearchIndexer[]; } /** * Represents the current status and execution history of an indexer. */ model SearchIndexerStatus { - /** - * Overall indexer status. - */ - @visibility("read") - status: IndexerStatus; + /** + * Overall indexer status. + */ + @visibility("read") + status: IndexerStatus; - /** - * The result of the most recent or an in-progress indexer execution. - */ - @visibility("read") - lastResult?: IndexerExecutionResult; + /** + * The result of the most recent or an in-progress indexer execution. + */ + @visibility("read") + lastResult?: IndexerExecutionResult; - /** - * History of the recent indexer executions, sorted in reverse chronological order. - */ - @visibility("read") - executionHistory: IndexerExecutionResult[]; + /** + * History of the recent indexer executions, sorted in reverse chronological order. + */ + @visibility("read") + executionHistory: IndexerExecutionResult[]; - /** - * The execution limits for the indexer. - */ - @visibility("read") - limits: SearchIndexerLimits; + /** + * The execution limits for the indexer. + */ + @visibility("read") + limits: SearchIndexerLimits; } /** * Represents the result of an individual indexer execution. */ model IndexerExecutionResult { - /** - * The outcome of this indexer execution. - */ - @visibility("read") - status: IndexerExecutionStatus; - - /** - * The error message indicating the top-level error, if any. - */ - @visibility("read") - errorMessage?: string; - - /** - * The start time of this indexer execution. - */ - @visibility("read") - startTime?: utcDateTime; - - /** - * The end time of this indexer execution, if the execution has already completed. - */ - @visibility("read") - endTime?: utcDateTime; - - /** - * The item-level indexing errors. - */ - @visibility("read") - errors: SearchIndexerError[]; - - /** - * The item-level indexing warnings. - */ - @visibility("read") - warnings: SearchIndexerWarning[]; - - /** - * The number of items that were processed during this indexer execution. This - * includes both successfully processed items and items where indexing was - * attempted but failed. - */ - @visibility("read") - itemsProcessed: int32; - - /** - * The number of items that failed to be indexed during this indexer execution. - */ - @visibility("read") - itemsFailed: int32; - - /** - * Change tracking state with which an indexer execution started. - */ - @visibility("read") - initialTrackingState?: string; - - /** - * Change tracking state with which an indexer execution finished. - */ - @visibility("read") - finalTrackingState?: string; + /** + * The outcome of this indexer execution. + */ + @visibility("read") + status: IndexerExecutionStatus; + + /** + * The error message indicating the top-level error, if any. + */ + @visibility("read") + errorMessage?: string; + + /** + * The start time of this indexer execution. + */ + @visibility("read") + startTime?: utcDateTime; + + /** + * The end time of this indexer execution, if the execution has already completed. + */ + @visibility("read") + endTime?: utcDateTime; + + /** + * The item-level indexing errors. + */ + @visibility("read") + errors: SearchIndexerError[]; + + /** + * The item-level indexing warnings. + */ + @visibility("read") + warnings: SearchIndexerWarning[]; + + /** + * The number of items that were processed during this indexer execution. This + * includes both successfully processed items and items where indexing was + * attempted but failed. + */ + @visibility("read") + itemsProcessed: int32; + + /** + * The number of items that failed to be indexed during this indexer execution. + */ + @visibility("read") + itemsFailed: int32; + + /** + * Change tracking state with which an indexer execution started. + */ + @visibility("read") + initialTrackingState?: string; + + /** + * Change tracking state with which an indexer execution finished. + */ + @visibility("read") + finalTrackingState?: string; } /** @@ -5284,168 +5284,168 @@ model IndexerExecutionResult { */ @error model SearchIndexerError { - /** - * The key of the item for which indexing failed. - */ - @visibility("read") - key?: string; - - /** - * The message describing the error that occurred while processing the item. - */ - @visibility("read") - errorMessage: string; - - /** - * The status code indicating why the indexing operation failed. Possible values - * include: 400 for a malformed input document, 404 for document not found, 409 - * for a version conflict, 422 when the index is temporarily unavailable, or 503 - * for when the service is too busy. - */ - @visibility("read") - statusCode: int32; - - /** - * The name of the source at which the error originated. For example, this could - * refer to a particular skill in the attached skillset. This may not be always - * available. - */ - @visibility("read") - name?: string; - - /** - * Additional, verbose details about the error to assist in debugging the indexer. - * This may not be always available. - */ - @visibility("read") - details?: string; - - /** - * A link to a troubleshooting guide for these classes of errors. This may not be - * always available. - */ - @visibility("read") - documentationLink?: string; + /** + * The key of the item for which indexing failed. + */ + @visibility("read") + key?: string; + + /** + * The message describing the error that occurred while processing the item. + */ + @visibility("read") + errorMessage: string; + + /** + * The status code indicating why the indexing operation failed. Possible values + * include: 400 for a malformed input document, 404 for document not found, 409 + * for a version conflict, 422 when the index is temporarily unavailable, or 503 + * for when the service is too busy. + */ + @visibility("read") + statusCode: int32; + + /** + * The name of the source at which the error originated. For example, this could + * refer to a particular skill in the attached skillset. This may not be always + * available. + */ + @visibility("read") + name?: string; + + /** + * Additional, verbose details about the error to assist in debugging the indexer. + * This may not be always available. + */ + @visibility("read") + details?: string; + + /** + * A link to a troubleshooting guide for these classes of errors. This may not be + * always available. + */ + @visibility("read") + documentationLink?: string; } /** * Represents an item-level warning. */ model SearchIndexerWarning { - /** - * The key of the item which generated a warning. - */ - @visibility("read") - key?: string; - - /** - * The message describing the warning that occurred while processing the item. - */ - @visibility("read") - message: string; - - /** - * The name of the source at which the warning originated. For example, this could - * refer to a particular skill in the attached skillset. This may not be always - * available. - */ - @visibility("read") - name?: string; - - /** - * Additional, verbose details about the warning to assist in debugging the - * indexer. This may not be always available. - */ - @visibility("read") - details?: string; - - /** - * A link to a troubleshooting guide for these classes of warnings. This may not - * be always available. - */ - @visibility("read") - documentationLink?: string; + /** + * The key of the item which generated a warning. + */ + @visibility("read") + key?: string; + + /** + * The message describing the warning that occurred while processing the item. + */ + @visibility("read") + message: string; + + /** + * The name of the source at which the warning originated. For example, this could + * refer to a particular skill in the attached skillset. This may not be always + * available. + */ + @visibility("read") + name?: string; + + /** + * Additional, verbose details about the warning to assist in debugging the + * indexer. This may not be always available. + */ + @visibility("read") + details?: string; + + /** + * A link to a troubleshooting guide for these classes of warnings. This may not + * be always available. + */ + @visibility("read") + documentationLink?: string; } /** * Represents the limits that can be applied to an indexer. */ model SearchIndexerLimits { - /** - * The maximum duration that the indexer is permitted to run for one execution. - */ - @visibility("read") - maxRunTime?: duration; + /** + * The maximum duration that the indexer is permitted to run for one execution. + */ + @visibility("read") + maxRunTime?: duration; - /** - * The maximum size of a document, in bytes, which will be considered valid for - * indexing. - */ - @visibility("read") - maxDocumentExtractionSize?: int64; + /** + * The maximum size of a document, in bytes, which will be considered valid for + * indexing. + */ + @visibility("read") + maxDocumentExtractionSize?: int64; - /** - * The maximum number of characters that will be extracted from a document picked - * up for indexing. - */ - @visibility("read") - maxDocumentContentCharactersToExtract?: int64; + /** + * The maximum number of characters that will be extracted from a document picked + * up for indexing. + */ + @visibility("read") + maxDocumentContentCharactersToExtract?: int64; } /** * A list of skills. */ model SearchIndexerSkillset { - /** - * The name of the skillset. - */ - name: string; - - /** - * The description of the skillset. - */ - description?: string; - - /** - * A list of skills in the skillset. - */ - skills: SearchIndexerSkill[]; - - /** - * Details about the Azure AI service to be used when running skills. - */ - cognitiveServices?: CognitiveServicesAccount; - - /** - * Definition of additional projections to Azure blob, table, or files, of - * enriched data. - */ - knowledgeStore?: SearchIndexerKnowledgeStore; - - /** - * Definition of additional projections to secondary search index(es). - */ - indexProjections?: SearchIndexerIndexProjection; - - /** - * The ETag of the skillset. - */ - @encodedName("application/json", "@odata.etag") - eTag?: string; - - /** - * A description of an encryption key that you create in Azure Key Vault. This key - * is used to provide an additional level of encryption-at-rest for your skillset - * definition when you want full assurance that no one, not even Microsoft, can - * decrypt your skillset definition. Once you have encrypted your skillset - * definition, it will always remain encrypted. The search service will ignore - * attempts to set this property to null. You can change this property as needed - * if you want to rotate your encryption key; Your skillset definition will be - * unaffected. Encryption with customer-managed keys is not available for free - * search services, and is only available for paid services created on or after - * January 1, 2019. - */ - encryptionKey?: SearchResourceEncryptionKey; + /** + * The name of the skillset. + */ + name: string; + + /** + * The description of the skillset. + */ + description?: string; + + /** + * A list of skills in the skillset. + */ + skills: SearchIndexerSkill[]; + + /** + * Details about the Azure AI service to be used when running skills. + */ + cognitiveServices?: CognitiveServicesAccount; + + /** + * Definition of additional projections to Azure blob, table, or files, of + * enriched data. + */ + knowledgeStore?: SearchIndexerKnowledgeStore; + + /** + * Definition of additional projections to secondary search index(es). + */ + indexProjections?: SearchIndexerIndexProjection; + + /** + * The ETag of the skillset. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your skillset + * definition when you want full assurance that no one, not even Microsoft, can + * decrypt your skillset definition. Once you have encrypted your skillset + * definition, it will always remain encrypted. The search service will ignore + * attempts to set this property to null. You can change this property as needed + * if you want to rotate your encryption key; Your skillset definition will be + * unaffected. Encryption with customer-managed keys is not available for free + * search services, and is only available for paid services created on or after + * January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; } /** @@ -5453,82 +5453,82 @@ model SearchIndexerSkillset { */ @discriminator("odataType") model SearchIndexerSkill { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; - - /** - * The name of the skill which uniquely identifies it within the skillset. A skill - * with no name defined will be given a default name of its 1-based index in the - * skills array, prefixed with the character '#'. - */ - name?: string; - - /** - * The description of the skill which describes the inputs, outputs, and usage of - * the skill. - */ - description?: string; - - /** - * Represents the level at which operations take place, such as the document root - * or document content (for example, /document or /document/content). The default - * is /document. - */ - context?: string; - - /** - * Inputs of the skills could be a column in the source data set, or the output of - * an upstream skill. - */ - inputs: InputFieldMappingEntry[]; - - /** - * The output of a skill is either a field in a search index, or a value that can - * be consumed as an input by another skill. - */ - outputs: OutputFieldMappingEntry[]; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; + + /** + * The name of the skill which uniquely identifies it within the skillset. A skill + * with no name defined will be given a default name of its 1-based index in the + * skills array, prefixed with the character '#'. + */ + name?: string; + + /** + * The description of the skill which describes the inputs, outputs, and usage of + * the skill. + */ + description?: string; + + /** + * Represents the level at which operations take place, such as the document root + * or document content (for example, /document or /document/content). The default + * is /document. + */ + context?: string; + + /** + * Inputs of the skills could be a column in the source data set, or the output of + * an upstream skill. + */ + inputs: InputFieldMappingEntry[]; + + /** + * The output of a skill is either a field in a search index, or a value that can + * be consumed as an input by another skill. + */ + outputs: OutputFieldMappingEntry[]; } /** * Input field mapping for a skill. */ model InputFieldMappingEntry { - /** - * The name of the input. - */ - name: string; + /** + * The name of the input. + */ + name: string; - /** - * The source of the input. - */ - source?: string; + /** + * The source of the input. + */ + source?: string; - /** - * The source context used for selecting recursive inputs. - */ - sourceContext?: string; + /** + * The source context used for selecting recursive inputs. + */ + sourceContext?: string; - /** - * The recursive inputs used when creating a complex type. - */ - inputs?: InputFieldMappingEntry[]; + /** + * The recursive inputs used when creating a complex type. + */ + inputs?: InputFieldMappingEntry[]; } /** * Output field mapping for a skill. */ model OutputFieldMappingEntry { - /** - * The name of the output defined by the skill. - */ - name: string; + /** + * The name of the output defined by the skill. + */ + name: string; - /** - * The target name of the output. It is optional and default to name. - */ - targetName?: string; + /** + * The target name of the output. It is optional and default to name. + */ + targetName?: string; } /** @@ -5536,15 +5536,15 @@ model OutputFieldMappingEntry { */ @discriminator("odataType") model CognitiveServicesAccount { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; - /** - * Description of the Azure AI service resource attached to a skillset. - */ - description?: string; + /** + * Description of the Azure AI service resource attached to a skillset. + */ + description?: string; } /** @@ -5552,35 +5552,35 @@ model CognitiveServicesAccount { * enriched data. */ model SearchIndexerKnowledgeStore { - /** - * The connection string to the storage account projections will be stored in. - */ - storageConnectionString: string; + /** + * The connection string to the storage account projections will be stored in. + */ + storageConnectionString: string; - /** - * A list of additional projections to perform during indexing. - */ - projections: SearchIndexerKnowledgeStoreProjection[]; + /** + * A list of additional projections to perform during indexing. + */ + projections: SearchIndexerKnowledgeStoreProjection[]; } /** * Container object for various projection selectors. */ model SearchIndexerKnowledgeStoreProjection { - /** - * Projections to Azure Table storage. - */ - tables?: SearchIndexerKnowledgeStoreTableProjectionSelector[]; + /** + * Projections to Azure Table storage. + */ + tables?: SearchIndexerKnowledgeStoreTableProjectionSelector[]; - /** - * Projections to Azure Blob storage. - */ - objects?: SearchIndexerKnowledgeStoreObjectProjectionSelector[]; + /** + * Projections to Azure Blob storage. + */ + objects?: SearchIndexerKnowledgeStoreObjectProjectionSelector[]; - /** - * Projections to Azure File storage. - */ - files?: SearchIndexerKnowledgeStoreFileProjectionSelector[]; + /** + * Projections to Azure File storage. + */ + files?: SearchIndexerKnowledgeStoreFileProjectionSelector[]; } /** @@ -5588,41 +5588,41 @@ model SearchIndexerKnowledgeStoreProjection { */ #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" model SearchIndexerKnowledgeStoreTableProjectionSelector - extends SearchIndexerKnowledgeStoreProjectionSelector { - /** - * Name of the Azure table to store projected data in. - */ - tableName: string; + extends SearchIndexerKnowledgeStoreProjectionSelector { + /** + * Name of the Azure table to store projected data in. + */ + tableName: string; } /** * Abstract class to share properties between concrete selectors. */ model SearchIndexerKnowledgeStoreProjectionSelector { - /** - * Name of reference key to different projection. - */ - referenceKeyName?: string; + /** + * Name of reference key to different projection. + */ + referenceKeyName?: string; - /** - * Name of generated key to store projection under. - */ - generatedKeyName?: string; + /** + * Name of generated key to store projection under. + */ + generatedKeyName?: string; - /** - * Source data to project. - */ - source?: string; + /** + * Source data to project. + */ + source?: string; - /** - * Source context for complex projections. - */ - sourceContext?: string; + /** + * Source context for complex projections. + */ + sourceContext?: string; - /** - * Nested inputs for complex projections. - */ - inputs?: InputFieldMappingEntry[]; + /** + * Nested inputs for complex projections. + */ + inputs?: InputFieldMappingEntry[]; } /** @@ -5630,18 +5630,18 @@ model SearchIndexerKnowledgeStoreProjectionSelector { */ #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" model SearchIndexerKnowledgeStoreObjectProjectionSelector - extends SearchIndexerKnowledgeStoreBlobProjectionSelector {} + extends SearchIndexerKnowledgeStoreBlobProjectionSelector {} /** * Abstract class to share properties between concrete selectors. */ #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" model SearchIndexerKnowledgeStoreBlobProjectionSelector - extends SearchIndexerKnowledgeStoreProjectionSelector { - /** - * Blob container to store projections in. - */ - storageContainer: string; + extends SearchIndexerKnowledgeStoreProjectionSelector { + /** + * Blob container to store projections in. + */ + storageContainer: string; } /** @@ -5649,52 +5649,52 @@ model SearchIndexerKnowledgeStoreBlobProjectionSelector */ #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" model SearchIndexerKnowledgeStoreFileProjectionSelector - extends SearchIndexerKnowledgeStoreBlobProjectionSelector {} + extends SearchIndexerKnowledgeStoreBlobProjectionSelector {} /** * Definition of additional projections to secondary search indexes. */ model SearchIndexerIndexProjection { - /** - * A list of projections to be performed to secondary search indexes. - */ - selectors: SearchIndexerIndexProjectionSelector[]; + /** + * A list of projections to be performed to secondary search indexes. + */ + selectors: SearchIndexerIndexProjectionSelector[]; - /** - * A dictionary of index projection-specific configuration properties. Each name - * is the name of a specific property. Each value must be of a primitive type. - */ - #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" - parameters?: SearchIndexerIndexProjectionsParameters; + /** + * A dictionary of index projection-specific configuration properties. Each name + * is the name of a specific property. Each value must be of a primitive type. + */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" + parameters?: SearchIndexerIndexProjectionsParameters; } /** * Description for what data to store in the designated search index. */ model SearchIndexerIndexProjectionSelector { - /** - * Name of the search index to project to. Must have a key field with the - * 'keyword' analyzer set. - */ - targetIndexName: string; + /** + * Name of the search index to project to. Must have a key field with the + * 'keyword' analyzer set. + */ + targetIndexName: string; - /** - * Name of the field in the search index to map the parent document's key value - * to. Must be a string field that is filterable and not the key field. - */ - parentKeyFieldName: string; + /** + * Name of the field in the search index to map the parent document's key value + * to. Must be a string field that is filterable and not the key field. + */ + parentKeyFieldName: string; - /** - * Source context for the projections. Represents the cardinality at which the - * document will be split into multiple sub documents. - */ - sourceContext: string; + /** + * Source context for the projections. Represents the cardinality at which the + * document will be split into multiple sub documents. + */ + sourceContext: string; - /** - * Mappings for the projection, or which source should be mapped to which field in - * the target index. - */ - mappings: InputFieldMappingEntry[]; + /** + * Mappings for the projection, or which source should be mapped to which field in + * the target index. + */ + mappings: InputFieldMappingEntry[]; } /** @@ -5703,13 +5703,13 @@ model SearchIndexerIndexProjectionSelector { */ #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model SearchIndexerIndexProjectionsParameters { - ...Record; + ...Record; - /** - * Defines behavior of the index projections in relation to the rest of the - * indexer. - */ - projectionMode?: IndexProjectionMode; + /** + * Defines behavior of the index projections in relation to the rest of the + * indexer. + */ + projectionMode?: IndexProjectionMode; } /** @@ -5717,51 +5717,51 @@ model SearchIndexerIndexProjectionsParameters { * definitions of all skillsets. */ model ListSkillsetsResult { - /** - * The skillsets defined in the Search service. - */ - @visibility("read") - value: SearchIndexerSkillset[]; + /** + * The skillsets defined in the Search service. + */ + @visibility("read") + value: SearchIndexerSkillset[]; } /** * Represents a synonym map definition. */ model SynonymMap { - /** - * The name of the synonym map. - */ - name: string; - - /** - * The format of the synonym map. Only the 'solr' format is currently supported. - */ - format: "solr"; - - /** - * A series of synonym rules in the specified synonym map format. The rules must - * be separated by newlines. - */ - synonyms: string; - - /** - * A description of an encryption key that you create in Azure Key Vault. This key - * is used to provide an additional level of encryption-at-rest for your data when - * you want full assurance that no one, not even Microsoft, can decrypt your data. - * Once you have encrypted your data, it will always remain encrypted. The search - * service will ignore attempts to set this property to null. You can change this - * property as needed if you want to rotate your encryption key; Your data will be - * unaffected. Encryption with customer-managed keys is not available for free - * search services, and is only available for paid services created on or after - * January 1, 2019. - */ - encryptionKey?: SearchResourceEncryptionKey; - - /** - * The ETag of the synonym map. - */ - @encodedName("application/json", "@odata.etag") - eTag?: string; + /** + * The name of the synonym map. + */ + name: string; + + /** + * The format of the synonym map. Only the 'solr' format is currently supported. + */ + format: "solr"; + + /** + * A series of synonym rules in the specified synonym map format. The rules must + * be separated by newlines. + */ + synonyms: string; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your data when + * you want full assurance that no one, not even Microsoft, can decrypt your data. + * Once you have encrypted your data, it will always remain encrypted. The search + * service will ignore attempts to set this property to null. You can change this + * property as needed if you want to rotate your encryption key; Your data will be + * unaffected. Encryption with customer-managed keys is not available for free + * search services, and is only available for paid services created on or after + * January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; + + /** + * The ETag of the synonym map. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; } /** @@ -5769,11 +5769,11 @@ model SynonymMap { * definitions of all synonym maps. */ model ListSynonymMapsResult { - /** - * The synonym maps in the Search service. - */ - @visibility("read") - value: SynonymMap[]; + /** + * The synonym maps in the Search service. + */ + @visibility("read") + value: SynonymMap[]; } /** @@ -5781,94 +5781,94 @@ model ListSynonymMapsResult { * behavior of an index. */ model SearchIndex { - /** - * The name of the index. - */ - name: string; - - /** - * The fields of the index. - */ - fields: SearchField[]; - - /** - * The scoring profiles for the index. - */ - scoringProfiles?: ScoringProfile[]; - - /** - * The name of the scoring profile to use if none is specified in the query. If - * this property is not set and no scoring profile is specified in the query, then - * default scoring (tf-idf) will be used. - */ - defaultScoringProfile?: string; - - /** - * Options to control Cross-Origin Resource Sharing (CORS) for the index. - */ - corsOptions?: CorsOptions; - - /** - * The suggesters for the index. - */ - suggesters?: SearchSuggester[]; - - /** - * The analyzers for the index. - */ - analyzers?: LexicalAnalyzer[]; - - /** - * The tokenizers for the index. - */ - tokenizers?: LexicalTokenizer[]; - - /** - * The token filters for the index. - */ - tokenFilters?: TokenFilter[]; - - /** - * The character filters for the index. - */ - charFilters?: CharFilter[]; - - /** - * A description of an encryption key that you create in Azure Key Vault. This key - * is used to provide an additional level of encryption-at-rest for your data when - * you want full assurance that no one, not even Microsoft, can decrypt your data. - * Once you have encrypted your data, it will always remain encrypted. The search - * service will ignore attempts to set this property to null. You can change this - * property as needed if you want to rotate your encryption key; Your data will be - * unaffected. Encryption with customer-managed keys is not available for free - * search services, and is only available for paid services created on or after - * January 1, 2019. - */ - encryptionKey?: SearchResourceEncryptionKey; - - /** - * The type of similarity algorithm to be used when scoring and ranking the - * documents matching a search query. The similarity algorithm can only be defined - * at index creation time and cannot be modified on existing indexes. If null, the - * ClassicSimilarity algorithm is used. - */ - similarity?: SimilarityAlgorithm; - - /** - * Defines parameters for a search index that influence semantic capabilities. - */ - semantic?: SemanticSearch; - - /** - * Contains configuration options related to vector search. - */ - vectorSearch?: VectorSearch; - - /** - * The ETag of the index. - */ - @encodedName("application/json", "@odata.etag") - eTag?: string; + /** + * The name of the index. + */ + name: string; + + /** + * The fields of the index. + */ + fields: SearchField[]; + + /** + * The scoring profiles for the index. + */ + scoringProfiles?: ScoringProfile[]; + + /** + * The name of the scoring profile to use if none is specified in the query. If + * this property is not set and no scoring profile is specified in the query, then + * default scoring (tf-idf) will be used. + */ + defaultScoringProfile?: string; + + /** + * Options to control Cross-Origin Resource Sharing (CORS) for the index. + */ + corsOptions?: CorsOptions; + + /** + * The suggesters for the index. + */ + suggesters?: SearchSuggester[]; + + /** + * The analyzers for the index. + */ + analyzers?: LexicalAnalyzer[]; + + /** + * The tokenizers for the index. + */ + tokenizers?: LexicalTokenizer[]; + + /** + * The token filters for the index. + */ + tokenFilters?: TokenFilter[]; + + /** + * The character filters for the index. + */ + charFilters?: CharFilter[]; + + /** + * A description of an encryption key that you create in Azure Key Vault. This key + * is used to provide an additional level of encryption-at-rest for your data when + * you want full assurance that no one, not even Microsoft, can decrypt your data. + * Once you have encrypted your data, it will always remain encrypted. The search + * service will ignore attempts to set this property to null. You can change this + * property as needed if you want to rotate your encryption key; Your data will be + * unaffected. Encryption with customer-managed keys is not available for free + * search services, and is only available for paid services created on or after + * January 1, 2019. + */ + encryptionKey?: SearchResourceEncryptionKey; + + /** + * The type of similarity algorithm to be used when scoring and ranking the + * documents matching a search query. The similarity algorithm can only be defined + * at index creation time and cannot be modified on existing indexes. If null, the + * ClassicSimilarity algorithm is used. + */ + similarity?: SimilarityAlgorithm; + + /** + * Defines parameters for a search index that influence semantic capabilities. + */ + semantic?: SemanticSearch; + + /** + * Contains configuration options related to vector search. + */ + vectorSearch?: VectorSearch; + + /** + * The ETag of the index. + */ + @encodedName("application/json", "@odata.etag") + eTag?: string; } /** @@ -5876,191 +5876,191 @@ model SearchIndex { * and search behavior of a field. */ model SearchField { - /** - * The name of the field, which must be unique within the fields collection of the - * index or parent field. - */ - name: string; - - /** - * The data type of the field. - */ - type: SearchFieldDataType; - - /** - * A value indicating whether the field uniquely identifies documents in the - * index. Exactly one top-level field in each index must be chosen as the key - * field and it must be of type Edm.String. Key fields can be used to look up - * documents directly and update or delete specific documents. Default is false - * for simple fields and null for complex fields. - */ - key?: boolean; - - /** - * A value indicating whether the field can be returned in a search result. You - * can disable this option if you want to use a field (for example, margin) as a - * filter, sorting, or scoring mechanism but do not want the field to be visible - * to the end user. This property must be true for key fields, and it must be null - * for complex fields. This property can be changed on existing fields. Enabling - * this property does not cause any increase in index storage requirements. - * Default is true for simple fields, false for vector fields, and null for - * complex fields. - */ - retrievable?: boolean; - - /** - * An immutable value indicating whether the field will be persisted separately on - * disk to be returned in a search result. You can disable this option if you - * don't plan to return the field contents in a search response to save on storage - * overhead. This can only be set during index creation and only for vector - * fields. This property cannot be changed for existing fields or set as false for - * new fields. If this property is set as false, the property 'retrievable' must - * also be set to false. This property must be true or unset for key fields, for - * new fields, and for non-vector fields, and it must be null for complex fields. - * Disabling this property will reduce index storage requirements. The default is - * true for vector fields. - */ - stored?: boolean; - - /** - * A value indicating whether the field is full-text searchable. This means it - * will undergo analysis such as word-breaking during indexing. If you set a - * searchable field to a value like "sunny day", internally it will be split into - * the individual tokens "sunny" and "day". This enables full-text searches for - * these terms. Fields of type Edm.String or Collection(Edm.String) are searchable - * by default. This property must be false for simple fields of other non-string - * data types, and it must be null for complex fields. Note: searchable fields - * consume extra space in your index to accommodate additional tokenized versions - * of the field value for full-text searches. If you want to save space in your - * index and you don't need a field to be included in searches, set searchable to - * false. - */ - searchable?: boolean; - - /** - * A value indicating whether to enable the field to be referenced in $filter - * queries. filterable differs from searchable in how strings are handled. Fields - * of type Edm.String or Collection(Edm.String) that are filterable do not undergo - * word-breaking, so comparisons are for exact matches only. For example, if you - * set such a field f to "sunny day", $filter=f eq 'sunny' will find no matches, - * but $filter=f eq 'sunny day' will. This property must be null for complex - * fields. Default is true for simple fields and null for complex fields. - */ - filterable?: boolean; - - /** - * A value indicating whether to enable the field to be referenced in $orderby - * expressions. By default, the search engine sorts results by score, but in many - * experiences users will want to sort by fields in the documents. A simple field - * can be sortable only if it is single-valued (it has a single value in the scope - * of the parent document). Simple collection fields cannot be sortable, since - * they are multi-valued. Simple sub-fields of complex collections are also - * multi-valued, and therefore cannot be sortable. This is true whether it's an - * immediate parent field, or an ancestor field, that's the complex collection. - * Complex fields cannot be sortable and the sortable property must be null for - * such fields. The default for sortable is true for single-valued simple fields, - * false for multi-valued simple fields, and null for complex fields. - */ - sortable?: boolean; - - /** - * A value indicating whether to enable the field to be referenced in facet - * queries. Typically used in a presentation of search results that includes hit - * count by category (for example, search for digital cameras and see hits by - * brand, by megapixels, by price, and so on). This property must be null for - * complex fields. Fields of type Edm.GeographyPoint or - * Collection(Edm.GeographyPoint) cannot be facetable. Default is true for all - * other simple fields. - */ - facetable?: boolean; - - /** - * The name of the analyzer to use for the field. This option can be used only - * with searchable fields and it can't be set together with either searchAnalyzer - * or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the - * field. Must be null for complex fields. - */ - analyzer?: LexicalAnalyzerName; - - /** - * The name of the analyzer used at search time for the field. This option can be - * used only with searchable fields. It must be set together with indexAnalyzer - * and it cannot be set together with the analyzer option. This property cannot be - * set to the name of a language analyzer; use the analyzer property instead if - * you need a language analyzer. This analyzer can be updated on an existing - * field. Must be null for complex fields. - */ - searchAnalyzer?: LexicalAnalyzerName; - - /** - * The name of the analyzer used at indexing time for the field. This option can - * be used only with searchable fields. It must be set together with - * searchAnalyzer and it cannot be set together with the analyzer option. This - * property cannot be set to the name of a language analyzer; use the analyzer - * property instead if you need a language analyzer. Once the analyzer is chosen, - * it cannot be changed for the field. Must be null for complex fields. - */ - indexAnalyzer?: LexicalAnalyzerName; - - /** - * The dimensionality of the vector field. - */ - @maxValue(2048) - @minValue(2) - dimensions?: int32; - - /** - * The name of the vector search profile that specifies the algorithm and - * vectorizer to use when searching the vector field. - */ - vectorSearchProfile?: string; - - /** - * The encoding format to interpret the field contents. - */ - vectorEncoding?: VectorEncodingFormat; - - /** - * A list of the names of synonym maps to associate with this field. This option - * can be used only with searchable fields. Currently only one synonym map per - * field is supported. Assigning a synonym map to a field ensures that query terms - * targeting that field are expanded at query-time using the rules in the synonym - * map. This attribute can be changed on existing fields. Must be null or an empty - * collection for complex fields. - */ - synonymMaps?: string[]; - - /** - * A list of sub-fields if this is a field of type Edm.ComplexType or - * Collection(Edm.ComplexType). Must be null or empty for simple fields. - */ - fields?: SearchField[]; + /** + * The name of the field, which must be unique within the fields collection of the + * index or parent field. + */ + name: string; + + /** + * The data type of the field. + */ + type: SearchFieldDataType; + + /** + * A value indicating whether the field uniquely identifies documents in the + * index. Exactly one top-level field in each index must be chosen as the key + * field and it must be of type Edm.String. Key fields can be used to look up + * documents directly and update or delete specific documents. Default is false + * for simple fields and null for complex fields. + */ + key?: boolean; + + /** + * A value indicating whether the field can be returned in a search result. You + * can disable this option if you want to use a field (for example, margin) as a + * filter, sorting, or scoring mechanism but do not want the field to be visible + * to the end user. This property must be true for key fields, and it must be null + * for complex fields. This property can be changed on existing fields. Enabling + * this property does not cause any increase in index storage requirements. + * Default is true for simple fields, false for vector fields, and null for + * complex fields. + */ + retrievable?: boolean; + + /** + * An immutable value indicating whether the field will be persisted separately on + * disk to be returned in a search result. You can disable this option if you + * don't plan to return the field contents in a search response to save on storage + * overhead. This can only be set during index creation and only for vector + * fields. This property cannot be changed for existing fields or set as false for + * new fields. If this property is set as false, the property 'retrievable' must + * also be set to false. This property must be true or unset for key fields, for + * new fields, and for non-vector fields, and it must be null for complex fields. + * Disabling this property will reduce index storage requirements. The default is + * true for vector fields. + */ + stored?: boolean; + + /** + * A value indicating whether the field is full-text searchable. This means it + * will undergo analysis such as word-breaking during indexing. If you set a + * searchable field to a value like "sunny day", internally it will be split into + * the individual tokens "sunny" and "day". This enables full-text searches for + * these terms. Fields of type Edm.String or Collection(Edm.String) are searchable + * by default. This property must be false for simple fields of other non-string + * data types, and it must be null for complex fields. Note: searchable fields + * consume extra space in your index to accommodate additional tokenized versions + * of the field value for full-text searches. If you want to save space in your + * index and you don't need a field to be included in searches, set searchable to + * false. + */ + searchable?: boolean; + + /** + * A value indicating whether to enable the field to be referenced in $filter + * queries. filterable differs from searchable in how strings are handled. Fields + * of type Edm.String or Collection(Edm.String) that are filterable do not undergo + * word-breaking, so comparisons are for exact matches only. For example, if you + * set such a field f to "sunny day", $filter=f eq 'sunny' will find no matches, + * but $filter=f eq 'sunny day' will. This property must be null for complex + * fields. Default is true for simple fields and null for complex fields. + */ + filterable?: boolean; + + /** + * A value indicating whether to enable the field to be referenced in $orderby + * expressions. By default, the search engine sorts results by score, but in many + * experiences users will want to sort by fields in the documents. A simple field + * can be sortable only if it is single-valued (it has a single value in the scope + * of the parent document). Simple collection fields cannot be sortable, since + * they are multi-valued. Simple sub-fields of complex collections are also + * multi-valued, and therefore cannot be sortable. This is true whether it's an + * immediate parent field, or an ancestor field, that's the complex collection. + * Complex fields cannot be sortable and the sortable property must be null for + * such fields. The default for sortable is true for single-valued simple fields, + * false for multi-valued simple fields, and null for complex fields. + */ + sortable?: boolean; + + /** + * A value indicating whether to enable the field to be referenced in facet + * queries. Typically used in a presentation of search results that includes hit + * count by category (for example, search for digital cameras and see hits by + * brand, by megapixels, by price, and so on). This property must be null for + * complex fields. Fields of type Edm.GeographyPoint or + * Collection(Edm.GeographyPoint) cannot be facetable. Default is true for all + * other simple fields. + */ + facetable?: boolean; + + /** + * The name of the analyzer to use for the field. This option can be used only + * with searchable fields and it can't be set together with either searchAnalyzer + * or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the + * field. Must be null for complex fields. + */ + analyzer?: LexicalAnalyzerName; + + /** + * The name of the analyzer used at search time for the field. This option can be + * used only with searchable fields. It must be set together with indexAnalyzer + * and it cannot be set together with the analyzer option. This property cannot be + * set to the name of a language analyzer; use the analyzer property instead if + * you need a language analyzer. This analyzer can be updated on an existing + * field. Must be null for complex fields. + */ + searchAnalyzer?: LexicalAnalyzerName; + + /** + * The name of the analyzer used at indexing time for the field. This option can + * be used only with searchable fields. It must be set together with + * searchAnalyzer and it cannot be set together with the analyzer option. This + * property cannot be set to the name of a language analyzer; use the analyzer + * property instead if you need a language analyzer. Once the analyzer is chosen, + * it cannot be changed for the field. Must be null for complex fields. + */ + indexAnalyzer?: LexicalAnalyzerName; + + /** + * The dimensionality of the vector field. + */ + @maxValue(2048) + @minValue(2) + dimensions?: int32; + + /** + * The name of the vector search profile that specifies the algorithm and + * vectorizer to use when searching the vector field. + */ + vectorSearchProfile?: string; + + /** + * The encoding format to interpret the field contents. + */ + vectorEncoding?: VectorEncodingFormat; + + /** + * A list of the names of synonym maps to associate with this field. This option + * can be used only with searchable fields. Currently only one synonym map per + * field is supported. Assigning a synonym map to a field ensures that query terms + * targeting that field are expanded at query-time using the rules in the synonym + * map. This attribute can be changed on existing fields. Must be null or an empty + * collection for complex fields. + */ + synonymMaps?: string[]; + + /** + * A list of sub-fields if this is a field of type Edm.ComplexType or + * Collection(Edm.ComplexType). Must be null or empty for simple fields. + */ + fields?: SearchField[]; } /** * Defines parameters for a search index that influence scoring in search queries. */ model ScoringProfile { - /** - * The name of the scoring profile. - */ - name: string; + /** + * The name of the scoring profile. + */ + name: string; - /** - * Parameters that boost scoring based on text matches in certain index fields. - */ - text?: TextWeights; + /** + * Parameters that boost scoring based on text matches in certain index fields. + */ + text?: TextWeights; - /** - * The collection of functions that influence the scoring of documents. - */ - functions?: ScoringFunction[]; + /** + * The collection of functions that influence the scoring of documents. + */ + functions?: ScoringFunction[]; - /** - * A value indicating how the results of individual scoring functions should be - * combined. Defaults to "Sum". Ignored if there are no scoring functions. - */ - functionAggregation?: ScoringFunctionAggregation; + /** + * A value indicating how the results of individual scoring functions should be + * combined. Defaults to "Sum". Ignored if there are no scoring functions. + */ + functionAggregation?: ScoringFunctionAggregation; } /** @@ -6068,11 +6068,11 @@ model ScoringProfile { * search queries. */ model TextWeights { - /** - * The dictionary of per-field weights to boost document scoring. The keys are - * field names and the values are the weights for each field. - */ - weights: Record; + /** + * The dictionary of per-field weights to boost document scoring. The keys are + * field names and the values are the weights for each field. + */ + weights: Record; } /** @@ -6081,64 +6081,64 @@ model TextWeights { #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" @discriminator("type") model ScoringFunction { - /** - * The name of the field used as input to the scoring function. - */ - fieldName: string; + /** + * The name of the field used as input to the scoring function. + */ + fieldName: string; - /** - * A multiplier for the raw score. Must be a positive number not equal to 1.0. - */ - boost: float64; + /** + * A multiplier for the raw score. Must be a positive number not equal to 1.0. + */ + boost: float64; - /** - * A value indicating how boosting will be interpolated across document scores; - * defaults to "Linear". - */ - interpolation?: ScoringFunctionInterpolation; + /** + * A value indicating how boosting will be interpolated across document scores; + * defaults to "Linear". + */ + interpolation?: ScoringFunctionInterpolation; - @doc("Type of ScoringFunction.") - type: string; + @doc("Type of ScoringFunction.") + type: string; } /** * Defines options to control Cross-Origin Resource Sharing (CORS) for an index. */ model CorsOptions { - /** - * The list of origins from which JavaScript code will be granted access to your - * index. Can contain a list of hosts of the form - * {protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow - * all origins (not recommended). - */ - allowedOrigins: string[]; + /** + * The list of origins from which JavaScript code will be granted access to your + * index. Can contain a list of hosts of the form + * {protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow + * all origins (not recommended). + */ + allowedOrigins: string[]; - /** - * The duration for which browsers should cache CORS preflight responses. Defaults - * to 5 minutes. - */ - maxAgeInSeconds?: int64; + /** + * The duration for which browsers should cache CORS preflight responses. Defaults + * to 5 minutes. + */ + maxAgeInSeconds?: int64; } /** * Defines how the Suggest API should apply to a group of fields in the index. */ model SearchSuggester { - /** - * The name of the suggester. - */ - name: string; + /** + * The name of the suggester. + */ + name: string; - /** - * A value indicating the capabilities of the suggester. - */ - searchMode: "analyzingInfixMatching"; + /** + * A value indicating the capabilities of the suggester. + */ + searchMode: "analyzingInfixMatching"; - /** - * The list of field names to which the suggester applies. Each field must be - * searchable. - */ - sourceFields: string[]; + /** + * The list of field names to which the suggester applies. Each field must be + * searchable. + */ + sourceFields: string[]; } /** @@ -6146,17 +6146,17 @@ model SearchSuggester { */ @discriminator("odataType") model LexicalAnalyzer { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; - /** - * The name of the analyzer. It must only contain letters, digits, spaces, dashes - * or underscores, can only start and end with alphanumeric characters, and is - * limited to 128 characters. - */ - name: string; + /** + * The name of the analyzer. It must only contain letters, digits, spaces, dashes + * or underscores, can only start and end with alphanumeric characters, and is + * limited to 128 characters. + */ + name: string; } /** @@ -6164,17 +6164,17 @@ model LexicalAnalyzer { */ @discriminator("odataType") model LexicalTokenizer { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; - /** - * The name of the tokenizer. It must only contain letters, digits, spaces, dashes - * or underscores, can only start and end with alphanumeric characters, and is - * limited to 128 characters. - */ - name: string; + /** + * The name of the tokenizer. It must only contain letters, digits, spaces, dashes + * or underscores, can only start and end with alphanumeric characters, and is + * limited to 128 characters. + */ + name: string; } /** @@ -6182,17 +6182,17 @@ model LexicalTokenizer { */ @discriminator("odataType") model TokenFilter { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; - /** - * The name of the token filter. It must only contain letters, digits, spaces, - * dashes or underscores, can only start and end with alphanumeric characters, and - * is limited to 128 characters. - */ - name: string; + /** + * The name of the token filter. It must only contain letters, digits, spaces, + * dashes or underscores, can only start and end with alphanumeric characters, and + * is limited to 128 characters. + */ + name: string; } /** @@ -6200,17 +6200,17 @@ model TokenFilter { */ @discriminator("odataType") model CharFilter { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; - /** - * The name of the char filter. It must only contain letters, digits, spaces, - * dashes or underscores, can only start and end with alphanumeric characters, and - * is limited to 128 characters. - */ - name: string; + /** + * The name of the char filter. It must only contain letters, digits, spaces, + * dashes or underscores, can only start and end with alphanumeric characters, and + * is limited to 128 characters. + */ + name: string; } /** @@ -6221,26 +6221,26 @@ model CharFilter { */ @discriminator("odataType") model SimilarityAlgorithm { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; } /** * Defines parameters for a search index that influence semantic capabilities. */ model SemanticSearch { - /** - * Allows you to set the name of a default semantic configuration in your index, - * making it optional to pass it on as a query parameter every time. - */ - defaultConfiguration?: string; + /** + * Allows you to set the name of a default semantic configuration in your index, + * making it optional to pass it on as a query parameter every time. + */ + defaultConfiguration?: string; - /** - * The semantic configurations for the index. - */ - configurations?: SemanticConfiguration[]; + /** + * The semantic configurations for the index. + */ + configurations?: SemanticConfiguration[]; } /** @@ -6248,18 +6248,18 @@ model SemanticSearch { * capabilities. */ model SemanticConfiguration { - /** - * The name of the semantic configuration. - */ - name: string; + /** + * The name of the semantic configuration. + */ + name: string; - /** - * Describes the title, content, and keyword fields to be used for semantic - * ranking, captions, highlights, and answers. At least one of the three sub - * properties (titleField, prioritizedKeywordsFields and prioritizedContentFields) - * need to be set. - */ - prioritizedFields: SemanticPrioritizedFields; + /** + * Describes the title, content, and keyword fields to be used for semantic + * ranking, captions, highlights, and answers. At least one of the three sub + * properties (titleField, prioritizedKeywordsFields and prioritizedContentFields) + * need to be set. + */ + prioritizedFields: SemanticPrioritizedFields; } /** @@ -6267,93 +6267,93 @@ model SemanticConfiguration { * ranking, captions, highlights, and answers. */ model SemanticPrioritizedFields { - /** - * Defines the title field to be used for semantic ranking, captions, highlights, - * and answers. If you don't have a title field in your index, leave this blank. - */ - titleField?: SemanticField; - - /** - * Defines the content fields to be used for semantic ranking, captions, - * highlights, and answers. For the best result, the selected fields should - * contain text in natural language form. The order of the fields in the array - * represents their priority. Fields with lower priority may get truncated if the - * content is long. - */ - prioritizedContentFields?: SemanticField[]; - - /** - * Defines the keyword fields to be used for semantic ranking, captions, - * highlights, and answers. For the best result, the selected fields should - * contain a list of keywords. The order of the fields in the array represents - * their priority. Fields with lower priority may get truncated if the content is - * long. - */ - prioritizedKeywordsFields?: SemanticField[]; + /** + * Defines the title field to be used for semantic ranking, captions, highlights, + * and answers. If you don't have a title field in your index, leave this blank. + */ + titleField?: SemanticField; + + /** + * Defines the content fields to be used for semantic ranking, captions, + * highlights, and answers. For the best result, the selected fields should + * contain text in natural language form. The order of the fields in the array + * represents their priority. Fields with lower priority may get truncated if the + * content is long. + */ + prioritizedContentFields?: SemanticField[]; + + /** + * Defines the keyword fields to be used for semantic ranking, captions, + * highlights, and answers. For the best result, the selected fields should + * contain a list of keywords. The order of the fields in the array represents + * their priority. Fields with lower priority may get truncated if the content is + * long. + */ + prioritizedKeywordsFields?: SemanticField[]; } /** * A field that is used as part of the semantic configuration. */ model SemanticField { - /** - * File name - */ - fieldName: string; + /** + * File name + */ + fieldName: string; } /** * Contains configuration options related to vector search. */ model VectorSearch { - /** - * Defines combinations of configurations to use with vector search. - */ - profiles?: VectorSearchProfile[]; + /** + * Defines combinations of configurations to use with vector search. + */ + profiles?: VectorSearchProfile[]; - /** - * Contains configuration options specific to the algorithm used during indexing - * or querying. - */ - algorithms?: VectorSearchAlgorithmConfiguration[]; + /** + * Contains configuration options specific to the algorithm used during indexing + * or querying. + */ + algorithms?: VectorSearchAlgorithmConfiguration[]; - /** - * Contains configuration options on how to vectorize text vector queries. - */ - vectorizers?: VectorSearchVectorizer[]; + /** + * Contains configuration options on how to vectorize text vector queries. + */ + vectorizers?: VectorSearchVectorizer[]; - /** - * Contains configuration options specific to the compression method used during - * indexing or querying. - */ - compressions?: VectorSearchCompression[]; + /** + * Contains configuration options specific to the compression method used during + * indexing or querying. + */ + compressions?: VectorSearchCompression[]; } /** * Defines a combination of configurations to use with vector search. */ model VectorSearchProfile { - /** - * The name to associate with this particular vector search profile. - */ - name: string; + /** + * The name to associate with this particular vector search profile. + */ + name: string; - /** - * The name of the vector search algorithm configuration that specifies the - * algorithm and optional parameters. - */ - algorithm: string; + /** + * The name of the vector search algorithm configuration that specifies the + * algorithm and optional parameters. + */ + algorithm: string; - /** - * The name of the vectorization being configured for use with vector search. - */ - vectorizer?: string; + /** + * The name of the vectorization being configured for use with vector search. + */ + vectorizer?: string; - /** - * The name of the compression method configuration that specifies the compression - * method and optional parameters. - */ - compression?: string; + /** + * The name of the compression method configuration that specifies the compression + * method and optional parameters. + */ + compression?: string; } /** @@ -6362,13 +6362,13 @@ model VectorSearchProfile { */ @discriminator("kind") model VectorSearchAlgorithmConfiguration { - /** - * The name to associate with this particular configuration. - */ - name: string; + /** + * The name to associate with this particular configuration. + */ + name: string; - @doc("Type of VectorSearchAlgorithmConfiguration.") - kind: VectorSearchAlgorithmKind; + @doc("Type of VectorSearchAlgorithmConfiguration.") + kind: VectorSearchAlgorithmKind; } /** @@ -6376,13 +6376,13 @@ model VectorSearchAlgorithmConfiguration { */ @discriminator("kind") model VectorSearchVectorizer { - /** - * The name to associate with this particular vectorization method. - */ - name: string; + /** + * The name to associate with this particular vectorization method. + */ + name: string; - @doc("Type of VectorSearchVectorizer.") - kind: VectorSearchVectorizerKind; + @doc("Type of VectorSearchVectorizer.") + kind: VectorSearchVectorizerKind; } /** @@ -6391,31 +6391,31 @@ model VectorSearchVectorizer { */ @discriminator("kind") model VectorSearchCompression { - /** - * The name to associate with this particular configuration. - */ - name: string; - - /** - * If set to true, once the ordered set of results calculated using compressed - * vectors are obtained, they will be reranked again by recalculating the - * full-precision similarity scores. This will improve recall at the expense of - * latency. - */ - rerankWithOriginalVectors?: boolean = true; - - /** - * Default oversampling factor. Oversampling will internally request more - * documents (specified by this multiplier) in the initial search. This increases - * the set of results that will be reranked using recomputed similarity scores - * from full-precision vectors. Minimum value is 1, meaning no oversampling (1x). - * This parameter can only be set when rerankWithOriginalVectors is true. Higher - * values improve recall at the expense of latency. - */ - defaultOversampling?: float64; - - @doc("Type of VectorSearchCompression.") - kind: VectorSearchCompressionKind; + /** + * The name to associate with this particular configuration. + */ + name: string; + + /** + * If set to true, once the ordered set of results calculated using compressed + * vectors are obtained, they will be reranked again by recalculating the + * full-precision similarity scores. This will improve recall at the expense of + * latency. + */ + rerankWithOriginalVectors?: boolean = true; + + /** + * Default oversampling factor. Oversampling will internally request more + * documents (specified by this multiplier) in the initial search. This increases + * the set of results that will be reranked using recomputed similarity scores + * from full-precision vectors. Minimum value is 1, meaning no oversampling (1x). + * This parameter can only be set when rerankWithOriginalVectors is true. Higher + * values improve recall at the expense of latency. + */ + defaultOversampling?: float64; + + @doc("Type of VectorSearchCompression.") + kind: VectorSearchCompressionKind; } /** @@ -6424,12 +6424,12 @@ model VectorSearchCompression { */ @pagedResult model ListIndexesResult { - /** - * The indexes in the Search service. - */ - @visibility("read") - @items - value: SearchIndex[]; + /** + * The indexes in the Search service. + */ + @visibility("read") + @items + value: SearchIndex[]; } /** @@ -6437,101 +6437,101 @@ model ListIndexesResult { * guaranteed to always be up-to-date. */ model GetIndexStatisticsResult { - /** - * The number of documents in the index. - */ - @visibility("read") - documentCount: int64; + /** + * The number of documents in the index. + */ + @visibility("read") + documentCount: int64; - /** - * The amount of storage in bytes consumed by the index. - */ - @visibility("read") - storageSize: int64; + /** + * The amount of storage in bytes consumed by the index. + */ + @visibility("read") + storageSize: int64; - /** - * The amount of memory in bytes consumed by vectors in the index. - */ - @visibility("read") - vectorIndexSize: int64; + /** + * The amount of memory in bytes consumed by vectors in the index. + */ + @visibility("read") + vectorIndexSize: int64; } /** * Specifies some text and analysis components used to break that text into tokens. */ model AnalyzeRequest { - /** - * The text to break into tokens. - */ - text: string; - - /** - * The name of the analyzer to use to break the given text. If this parameter is - * not specified, you must specify a tokenizer instead. The tokenizer and analyzer - * parameters are mutually exclusive. - */ - analyzer?: LexicalAnalyzerName; - - /** - * The name of the tokenizer to use to break the given text. If this parameter is - * not specified, you must specify an analyzer instead. The tokenizer and analyzer - * parameters are mutually exclusive. - */ - tokenizer?: LexicalTokenizerName; - - /** - * An optional list of token filters to use when breaking the given text. This - * parameter can only be set when using the tokenizer parameter. - */ - tokenFilters?: TokenFilterName[]; - - /** - * An optional list of character filters to use when breaking the given text. This - * parameter can only be set when using the tokenizer parameter. - */ - charFilters?: CharFilterName[]; + /** + * The text to break into tokens. + */ + text: string; + + /** + * The name of the analyzer to use to break the given text. If this parameter is + * not specified, you must specify a tokenizer instead. The tokenizer and analyzer + * parameters are mutually exclusive. + */ + analyzer?: LexicalAnalyzerName; + + /** + * The name of the tokenizer to use to break the given text. If this parameter is + * not specified, you must specify an analyzer instead. The tokenizer and analyzer + * parameters are mutually exclusive. + */ + tokenizer?: LexicalTokenizerName; + + /** + * An optional list of token filters to use when breaking the given text. This + * parameter can only be set when using the tokenizer parameter. + */ + tokenFilters?: TokenFilterName[]; + + /** + * An optional list of character filters to use when breaking the given text. This + * parameter can only be set when using the tokenizer parameter. + */ + charFilters?: CharFilterName[]; } /** * The result of testing an analyzer on text. */ model AnalyzeResult { - /** - * The list of tokens returned by the analyzer specified in the request. - */ - tokens: AnalyzedTokenInfo[]; + /** + * The list of tokens returned by the analyzer specified in the request. + */ + tokens: AnalyzedTokenInfo[]; } /** * Information about a token returned by an analyzer. */ model AnalyzedTokenInfo { - /** - * The token returned by the analyzer. - */ - @visibility("read") - token: string; - - /** - * The index of the first character of the token in the input text. - */ - @visibility("read") - startOffset: int32; - - /** - * The index of the last character of the token in the input text. - */ - @visibility("read") - endOffset: int32; - - /** - * The position of the token in the input text relative to other tokens. The first - * token in the input text has position 0, the next has position 1, and so on. - * Depending on the analyzer used, some tokens might have the same position, for - * example if they are synonyms of each other. - */ - @visibility("read") - position: int32; + /** + * The token returned by the analyzer. + */ + @visibility("read") + token: string; + + /** + * The index of the first character of the token in the input text. + */ + @visibility("read") + startOffset: int32; + + /** + * The index of the last character of the token in the input text. + */ + @visibility("read") + endOffset: int32; + + /** + * The position of the token in the input text relative to other tokens. The first + * token in the input text has position 0, the next has position 1, and so on. + * Depending on the analyzer used, some tokens might have the same position, for + * example if they are synonyms of each other. + */ + @visibility("read") + position: int32; } /** @@ -6539,107 +6539,107 @@ model AnalyzedTokenInfo { * service level counters and limits. */ model SearchServiceStatistics { - /** - * Service level resource counters. - */ - counters: SearchServiceCounters; + /** + * Service level resource counters. + */ + counters: SearchServiceCounters; - /** - * Service level general limits. - */ - limits: SearchServiceLimits; + /** + * Service level general limits. + */ + limits: SearchServiceLimits; } /** * Represents service-level resource counters and quotas. */ model SearchServiceCounters { - /** - * Total number of documents across all indexes in the service. - */ - documentCount: ResourceCounter; + /** + * Total number of documents across all indexes in the service. + */ + documentCount: ResourceCounter; - /** - * Total number of indexes. - */ - indexesCount: ResourceCounter; + /** + * Total number of indexes. + */ + indexesCount: ResourceCounter; - /** - * Total number of indexers. - */ - indexersCount: ResourceCounter; + /** + * Total number of indexers. + */ + indexersCount: ResourceCounter; - /** - * Total number of data sources. - */ - dataSourcesCount: ResourceCounter; + /** + * Total number of data sources. + */ + dataSourcesCount: ResourceCounter; - /** - * Total size of used storage in bytes. - */ - storageSize: ResourceCounter; + /** + * Total size of used storage in bytes. + */ + storageSize: ResourceCounter; - /** - * Total number of synonym maps. - */ - synonymMaps: ResourceCounter; + /** + * Total number of synonym maps. + */ + synonymMaps: ResourceCounter; - /** - * Total number of skillsets. - */ - skillsetCount: ResourceCounter; + /** + * Total number of skillsets. + */ + skillsetCount: ResourceCounter; - /** - * Total memory consumption of all vector indexes within the service, in bytes. - */ - vectorIndexSize: ResourceCounter; + /** + * Total memory consumption of all vector indexes within the service, in bytes. + */ + vectorIndexSize: ResourceCounter; } /** * Represents a resource's usage and quota. */ model ResourceCounter { - /** - * The resource usage amount. - */ - usage: int64; + /** + * The resource usage amount. + */ + usage: int64; - /** - * The resource amount quota. - */ - quota?: int64; + /** + * The resource amount quota. + */ + quota?: int64; } /** * Represents various service level limits. */ model SearchServiceLimits { - /** - * The maximum allowed fields per index. - */ - maxFieldsPerIndex?: int32; + /** + * The maximum allowed fields per index. + */ + maxFieldsPerIndex?: int32; - /** - * The maximum depth which you can nest sub-fields in an index, including the - * top-level complex field. For example, a/b/c has a nesting depth of 3. - */ - maxFieldNestingDepthPerIndex?: int32; + /** + * The maximum depth which you can nest sub-fields in an index, including the + * top-level complex field. For example, a/b/c has a nesting depth of 3. + */ + maxFieldNestingDepthPerIndex?: int32; - /** - * The maximum number of fields of type Collection(Edm.ComplexType) allowed in an - * index. - */ - maxComplexCollectionFieldsPerIndex?: int32; + /** + * The maximum number of fields of type Collection(Edm.ComplexType) allowed in an + * index. + */ + maxComplexCollectionFieldsPerIndex?: int32; - /** - * The maximum number of objects in complex collections allowed per document. - */ - maxComplexObjectsInCollectionsPerDocument?: int32; + /** + * The maximum number of objects in complex collections allowed per document. + */ + maxComplexObjectsInCollectionsPerDocument?: int32; - /** - * The maximum amount of storage in bytes allowed per index. - */ - maxStoragePerIndex?: int64; + /** + * The maximum amount of storage in bytes allowed per index. + */ + maxStoragePerIndex?: int64; } /** @@ -6650,32 +6650,32 @@ model SearchServiceLimits { * emitted by the tokenizer. */ model CustomAnalyzer extends LexicalAnalyzer { - /** - * The name of the tokenizer to use to divide continuous text into a sequence of - * tokens, such as breaking a sentence into words. - */ - tokenizer: LexicalTokenizerName; - - /** - * A list of token filters used to filter out or modify the tokens generated by a - * tokenizer. For example, you can specify a lowercase filter that converts all - * characters to lowercase. The filters are run in the order in which they are - * listed. - */ - tokenFilters?: TokenFilterName[]; - - /** - * A list of character filters used to prepare input text before it is processed - * by the tokenizer. For instance, they can replace certain characters or symbols. - * The filters are run in the order in which they are listed. - */ - charFilters?: CharFilterName[]; - - /** - * A URI fragment specifying the type of analyzer. - */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CustomAnalyzer"; + /** + * The name of the tokenizer to use to divide continuous text into a sequence of + * tokens, such as breaking a sentence into words. + */ + tokenizer: LexicalTokenizerName; + + /** + * A list of token filters used to filter out or modify the tokens generated by a + * tokenizer. For example, you can specify a lowercase filter that converts all + * characters to lowercase. The filters are run in the order in which they are + * listed. + */ + tokenFilters?: TokenFilterName[]; + + /** + * A list of character filters used to prepare input text before it is processed + * by the tokenizer. For instance, they can replace certain characters or symbols. + * The filters are run in the order in which they are listed. + */ + charFilters?: CharFilterName[]; + + /** + * A URI fragment specifying the type of analyzer. + */ + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.CustomAnalyzer"; } /** @@ -6683,32 +6683,32 @@ model CustomAnalyzer extends LexicalAnalyzer { * analyzer is implemented using Apache Lucene. */ model PatternAnalyzer extends LexicalAnalyzer { - /** - * A value indicating whether terms should be lower-cased. Default is true. - */ - lowercase?: boolean = true; + /** + * A value indicating whether terms should be lower-cased. Default is true. + */ + lowercase?: boolean = true; - /** - * A regular expression pattern to match token separators. Default is an - * expression that matches one or more non-word characters. - */ - pattern?: string = "\\W+"; + /** + * A regular expression pattern to match token separators. Default is an + * expression that matches one or more non-word characters. + */ + pattern?: string = "\\W+"; - /** - * Regular expression flags. - */ - flags?: RegexFlags; + /** + * Regular expression flags. + */ + flags?: RegexFlags; - /** - * A list of stopwords. - */ - stopwords?: string[]; + /** + * A list of stopwords. + */ + stopwords?: string[]; - /** - * A URI fragment specifying the type of analyzer. - */ - #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." - odataType: "#Microsoft.Azure.Search.PatternAnalyzer"; + /** + * A URI fragment specifying the type of analyzer. + */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + odataType: "#Microsoft.Azure.Search.PatternAnalyzer"; } /** @@ -6716,24 +6716,24 @@ model PatternAnalyzer extends LexicalAnalyzer { * filter and stop filter. */ model LuceneStandardAnalyzer extends LexicalAnalyzer { - /** - * The maximum token length. Default is 255. Tokens longer than the maximum length - * are split. The maximum token length that can be used is 300 characters. - */ - @maxValue(300) - maxTokenLength?: int32 = 255; + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; - /** - * A list of stopwords. - */ - stopwords?: string[]; + /** + * A list of stopwords. + */ + stopwords?: string[]; - /** - * A URI fragment specifying the type of analyzer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StandardAnalyzer"; + /** + * A URI fragment specifying the type of analyzer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.StandardAnalyzer"; } /** @@ -6741,16 +6741,16 @@ model LuceneStandardAnalyzer extends LexicalAnalyzer { * This analyzer is implemented using Apache Lucene. */ model StopAnalyzer extends LexicalAnalyzer { - /** - * A list of stopwords. - */ - stopwords?: string[]; + /** + * A list of stopwords. + */ + stopwords?: string[]; - /** - * A URI fragment specifying the type of analyzer. - */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StopAnalyzer"; + /** + * A URI fragment specifying the type of analyzer. + */ + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.StopAnalyzer"; } /** @@ -6758,19 +6758,19 @@ model StopAnalyzer extends LexicalAnalyzer { * documents. This tokenizer is implemented using Apache Lucene. */ model ClassicTokenizer extends LexicalTokenizer { - /** - * The maximum token length. Default is 255. Tokens longer than the maximum length - * are split. The maximum token length that can be used is 300 characters. - */ - @maxValue(300) - maxTokenLength?: int32 = 255; + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ClassicTokenizer"; + /** + * A URI fragment specifying the type of tokenizer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.ClassicTokenizer"; } /** @@ -6779,29 +6779,29 @@ model ClassicTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model EdgeNGramTokenizer extends LexicalTokenizer { - /** - * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the - * value of maxGram. - */ - @maxValue(300) - minGram?: int32 = 1; + /** + * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the + * value of maxGram. + */ + @maxValue(300) + minGram?: int32 = 1; - /** - * The maximum n-gram length. Default is 2. Maximum is 300. - */ - @maxValue(300) - maxGram?: int32 = 2; + /** + * The maximum n-gram length. Default is 2. Maximum is 300. + */ + @maxValue(300) + maxGram?: int32 = 2; - /** - * Character classes to keep in the tokens. - */ - tokenChars?: TokenCharacterKind[]; + /** + * Character classes to keep in the tokens. + */ + tokenChars?: TokenCharacterKind[]; - /** - * A URI fragment specifying the type of tokenizer. - */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; + /** + * A URI fragment specifying the type of tokenizer. + */ + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; } /** @@ -6809,17 +6809,17 @@ model EdgeNGramTokenizer extends LexicalTokenizer { * Apache Lucene. */ model KeywordTokenizer extends LexicalTokenizer { - /** - * The read buffer size in bytes. Default is 256. - */ - bufferSize?: int32 = 256; + /** + * The read buffer size in bytes. Default is 256. + */ + bufferSize?: int32 = 256; - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeywordTokenizer"; + /** + * A URI fragment specifying the type of tokenizer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.KeywordTokenizer"; } /** @@ -6827,50 +6827,50 @@ model KeywordTokenizer extends LexicalTokenizer { * Apache Lucene. */ model KeywordTokenizerV2 extends LexicalTokenizer { - /** - * The maximum token length. Default is 256. Tokens longer than the maximum length - * are split. The maximum token length that can be used is 300 characters. - */ - @maxValue(300) - maxTokenLength?: int32 = 256; + /** + * The maximum token length. Default is 256. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 256; - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; + /** + * A URI fragment specifying the type of tokenizer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; } /** * Divides text using language-specific rules. */ model MicrosoftLanguageTokenizer extends LexicalTokenizer { - /** - * The maximum token length. Tokens longer than the maximum length are split. - * Maximum token length that can be used is 300 characters. Tokens longer than 300 - * characters are first split into tokens of length 300 and then each of those - * tokens is split based on the max token length set. Default is 255. - */ - @maxValue(300) - maxTokenLength?: int32 = 255; - - /** - * A value indicating how the tokenizer is used. Set to true if used as the search - * tokenizer, set to false if used as the indexing tokenizer. Default is false. - */ - isSearchTokenizer?: boolean; - - /** - * The language to use. The default is English. - */ - language?: MicrosoftTokenizerLanguage; - - /** - * A URI fragment specifying the type of tokenizer. - */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; + /** + * The maximum token length. Tokens longer than the maximum length are split. + * Maximum token length that can be used is 300 characters. Tokens longer than 300 + * characters are first split into tokens of length 300 and then each of those + * tokens is split based on the max token length set. Default is 255. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; + + /** + * A value indicating how the tokenizer is used. Set to true if used as the search + * tokenizer, set to false if used as the indexing tokenizer. Default is false. + */ + isSearchTokenizer?: boolean; + + /** + * The language to use. The default is English. + */ + language?: MicrosoftTokenizerLanguage; + + /** + * A URI fragment specifying the type of tokenizer. + */ + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; } /** @@ -6878,32 +6878,32 @@ model MicrosoftLanguageTokenizer extends LexicalTokenizer { * forms. */ model MicrosoftLanguageStemmingTokenizer extends LexicalTokenizer { - /** - * The maximum token length. Tokens longer than the maximum length are split. - * Maximum token length that can be used is 300 characters. Tokens longer than 300 - * characters are first split into tokens of length 300 and then each of those - * tokens is split based on the max token length set. Default is 255. - */ - @maxValue(300) - maxTokenLength?: int32 = 255; - - /** - * A value indicating how the tokenizer is used. Set to true if used as the search - * tokenizer, set to false if used as the indexing tokenizer. Default is false. - */ - isSearchTokenizer?: boolean; - - /** - * The language to use. The default is English. - */ - language?: MicrosoftStemmingTokenizerLanguage; - - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; + /** + * The maximum token length. Tokens longer than the maximum length are split. + * Maximum token length that can be used is 300 characters. Tokens longer than 300 + * characters are first split into tokens of length 300 and then each of those + * tokens is split based on the max token length set. Default is 255. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; + + /** + * A value indicating how the tokenizer is used. Set to true if used as the search + * tokenizer, set to false if used as the indexing tokenizer. Default is false. + */ + isSearchTokenizer?: boolean; + + /** + * The language to use. The default is English. + */ + language?: MicrosoftStemmingTokenizerLanguage; + + /** + * A URI fragment specifying the type of tokenizer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; } /** @@ -6912,30 +6912,30 @@ model MicrosoftLanguageStemmingTokenizer extends LexicalTokenizer { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model NGramTokenizer extends LexicalTokenizer { - /** - * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the - * value of maxGram. - */ - @maxValue(300) - minGram?: int32 = 1; + /** + * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the + * value of maxGram. + */ + @maxValue(300) + minGram?: int32 = 1; - /** - * The maximum n-gram length. Default is 2. Maximum is 300. - */ - @maxValue(300) - maxGram?: int32 = 2; + /** + * The maximum n-gram length. Default is 2. Maximum is 300. + */ + @maxValue(300) + maxGram?: int32 = 2; - /** - * Character classes to keep in the tokens. - */ - tokenChars?: TokenCharacterKind[]; + /** + * Character classes to keep in the tokens. + */ + tokenChars?: TokenCharacterKind[]; - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.NGramTokenizer"; + /** + * A URI fragment specifying the type of tokenizer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.NGramTokenizer"; } /** @@ -6943,38 +6943,38 @@ model NGramTokenizer extends LexicalTokenizer { * Lucene. */ model PathHierarchyTokenizerV2 extends LexicalTokenizer { - /** - * The delimiter character to use. Default is "/". - */ - delimiter?: string = "/"; + /** + * The delimiter character to use. Default is "/". + */ + delimiter?: string = "/"; - /** - * A value that, if set, replaces the delimiter character. Default is "/". - */ - replacement?: string = "/"; + /** + * A value that, if set, replaces the delimiter character. Default is "/". + */ + replacement?: string = "/"; - /** - * The maximum token length. Default and maximum is 300. - */ - @maxValue(300) - maxTokenLength?: int32 = 300; + /** + * The maximum token length. Default and maximum is 300. + */ + @maxValue(300) + maxTokenLength?: int32 = 300; - /** - * A value indicating whether to generate tokens in reverse order. Default is - * false. - */ - reverse?: boolean; + /** + * A value indicating whether to generate tokens in reverse order. Default is + * false. + */ + reverse?: boolean; - /** - * The number of initial tokens to skip. Default is 0. - */ - skip?: int32; + /** + * The number of initial tokens to skip. Default is 0. + */ + skip?: int32; - /** - * A URI fragment specifying the type of tokenizer. - */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; + /** + * A URI fragment specifying the type of tokenizer. + */ + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; } /** @@ -6982,30 +6982,30 @@ model PathHierarchyTokenizerV2 extends LexicalTokenizer { * tokenizer is implemented using Apache Lucene. */ model PatternTokenizer extends LexicalTokenizer { - /** - * A regular expression pattern to match token separators. Default is an - * expression that matches one or more non-word characters. - */ - pattern?: string = "\\W+"; + /** + * A regular expression pattern to match token separators. Default is an + * expression that matches one or more non-word characters. + */ + pattern?: string = "\\W+"; - /** - * Regular expression flags. - */ - flags?: RegexFlags; + /** + * Regular expression flags. + */ + flags?: RegexFlags; - /** - * The zero-based ordinal of the matching group in the regular expression pattern - * to extract into tokens. Use -1 if you want to use the entire pattern to split - * the input into tokens, irrespective of matching groups. Default is -1. - */ - group?: int32 = -1; + /** + * The zero-based ordinal of the matching group in the regular expression pattern + * to extract into tokens. Use -1 if you want to use the entire pattern to split + * the input into tokens, irrespective of matching groups. Default is -1. + */ + group?: int32 = -1; - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternTokenizer"; + /** + * A URI fragment specifying the type of tokenizer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.PatternTokenizer"; } /** @@ -7013,18 +7013,18 @@ model PatternTokenizer extends LexicalTokenizer { * implemented using Apache Lucene. */ model LuceneStandardTokenizer extends LexicalTokenizer { - /** - * The maximum token length. Default is 255. Tokens longer than the maximum length - * are split. - */ - maxTokenLength?: int32 = 255; + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. + */ + maxTokenLength?: int32 = 255; - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StandardTokenizer"; + /** + * A URI fragment specifying the type of tokenizer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.StandardTokenizer"; } /** @@ -7032,19 +7032,19 @@ model LuceneStandardTokenizer extends LexicalTokenizer { * implemented using Apache Lucene. */ model LuceneStandardTokenizerV2 extends LexicalTokenizer { - /** - * The maximum token length. Default is 255. Tokens longer than the maximum length - * are split. The maximum token length that can be used is 300 characters. - */ - @maxValue(300) - maxTokenLength?: int32 = 255; + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; + /** + * A URI fragment specifying the type of tokenizer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; } /** @@ -7052,19 +7052,19 @@ model LuceneStandardTokenizerV2 extends LexicalTokenizer { * Apache Lucene. */ model UaxUrlEmailTokenizer extends LexicalTokenizer { - /** - * The maximum token length. Default is 255. Tokens longer than the maximum length - * are split. The maximum token length that can be used is 300 characters. - */ - @maxValue(300) - maxTokenLength?: int32 = 255; + /** + * The maximum token length. Default is 255. Tokens longer than the maximum length + * are split. The maximum token length that can be used is 300 characters. + */ + @maxValue(300) + maxTokenLength?: int32 = 255; - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; + /** + * A URI fragment specifying the type of tokenizer. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; } /** @@ -7074,17 +7074,17 @@ model UaxUrlEmailTokenizer extends LexicalTokenizer { * using Apache Lucene. */ model AsciiFoldingTokenFilter extends TokenFilter { - /** - * A value indicating whether the original token will be kept. Default is false. - */ - preserveOriginal?: boolean; + /** + * A value indicating whether the original token will be kept. Default is false. + */ + preserveOriginal?: boolean; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; } /** @@ -7092,23 +7092,23 @@ model AsciiFoldingTokenFilter extends TokenFilter { * token filter is implemented using Apache Lucene. */ model CjkBigramTokenFilter extends TokenFilter { - /** - * The scripts to ignore. - */ - ignoreScripts?: CjkBigramTokenFilterScripts[]; + /** + * The scripts to ignore. + */ + ignoreScripts?: CjkBigramTokenFilterScripts[]; - /** - * A value indicating whether to output both unigrams and bigrams (if true), or - * just bigrams (if false). Default is false. - */ - outputUnigrams?: boolean; + /** + * A value indicating whether to output both unigrams and bigrams (if true), or + * just bigrams (if false). Default is false. + */ + outputUnigrams?: boolean; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; } /** @@ -7117,30 +7117,30 @@ model CjkBigramTokenFilter extends TokenFilter { * using Apache Lucene. */ model CommonGramTokenFilter extends TokenFilter { - /** - * The set of common words. - */ - commonWords: string[]; + /** + * The set of common words. + */ + commonWords: string[]; - /** - * A value indicating whether common words matching will be case insensitive. - * Default is false. - */ - ignoreCase?: boolean; + /** + * A value indicating whether common words matching will be case insensitive. + * Default is false. + */ + ignoreCase?: boolean; - /** - * A value that indicates whether the token filter is in query mode. When in query - * mode, the token filter generates bigrams and then removes common words and - * single terms followed by a common word. Default is false. - */ - queryMode?: boolean; + /** + * A value that indicates whether the token filter is in query mode. When in query + * mode, the token filter generates bigrams and then removes common words and + * single terms followed by a common word. Default is false. + */ + queryMode?: boolean; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; } /** @@ -7148,44 +7148,44 @@ model CommonGramTokenFilter extends TokenFilter { * is implemented using Apache Lucene. */ model DictionaryDecompounderTokenFilter extends TokenFilter { - /** - * The list of words to match against. - */ - wordList: string[]; - - /** - * The minimum word size. Only words longer than this get processed. Default is 5. - * Maximum is 300. - */ - @maxValue(300) - minWordSize?: int32 = 5; - - /** - * The minimum subword size. Only subwords longer than this are outputted. Default - * is 2. Maximum is 300. - */ - @maxValue(300) - minSubwordSize?: int32 = 2; - - /** - * The maximum subword size. Only subwords shorter than this are outputted. - * Default is 15. Maximum is 300. - */ - @maxValue(300) - maxSubwordSize?: int32 = 15; - - /** - * A value indicating whether to add only the longest matching subword to the - * output. Default is false. - */ - onlyLongestMatch?: boolean; - - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; + /** + * The list of words to match against. + */ + wordList: string[]; + + /** + * The minimum word size. Only words longer than this get processed. Default is 5. + * Maximum is 300. + */ + @maxValue(300) + minWordSize?: int32 = 5; + + /** + * The minimum subword size. Only subwords longer than this are outputted. Default + * is 2. Maximum is 300. + */ + @maxValue(300) + minSubwordSize?: int32 = 2; + + /** + * The maximum subword size. Only subwords shorter than this are outputted. + * Default is 15. Maximum is 300. + */ + @maxValue(300) + maxSubwordSize?: int32 = 15; + + /** + * A value indicating whether to add only the longest matching subword to the + * output. Default is false. + */ + onlyLongestMatch?: boolean; + + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; } /** @@ -7194,28 +7194,28 @@ model DictionaryDecompounderTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model EdgeNGramTokenFilter extends TokenFilter { - /** - * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. - */ - minGram?: int32 = 1; + /** + * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. + */ + minGram?: int32 = 1; - /** - * The maximum n-gram length. Default is 2. - */ - maxGram?: int32 = 2; + /** + * The maximum n-gram length. Default is 2. + */ + maxGram?: int32 = 2; - /** - * Specifies which side of the input the n-gram should be generated from. Default - * is "front". - */ - side?: EdgeNGramTokenFilterSide; + /** + * Specifies which side of the input the n-gram should be generated from. Default + * is "front". + */ + side?: EdgeNGramTokenFilterSide; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; } /** @@ -7224,31 +7224,31 @@ model EdgeNGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model EdgeNGramTokenFilterV2 extends TokenFilter { - /** - * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the - * value of maxGram. - */ - @maxValue(300) - minGram?: int32 = 1; - - /** - * The maximum n-gram length. Default is 2. Maximum is 300. - */ - @maxValue(300) - maxGram?: int32 = 2; - - /** - * Specifies which side of the input the n-gram should be generated from. Default - * is "front". - */ - side?: EdgeNGramTokenFilterSide; - - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; + /** + * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the + * value of maxGram. + */ + @maxValue(300) + minGram?: int32 = 1; + + /** + * The maximum n-gram length. Default is 2. Maximum is 300. + */ + @maxValue(300) + maxGram?: int32 = 2; + + /** + * Specifies which side of the input the n-gram should be generated from. Default + * is "front". + */ + side?: EdgeNGramTokenFilterSide; + + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; } /** @@ -7256,17 +7256,17 @@ model EdgeNGramTokenFilterV2 extends TokenFilter { * "avion" (plane). This token filter is implemented using Apache Lucene. */ model ElisionTokenFilter extends TokenFilter { - /** - * The set of articles to remove. - */ - articles?: string[]; + /** + * The set of articles to remove. + */ + articles?: string[]; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; } /** @@ -7274,45 +7274,45 @@ model ElisionTokenFilter extends TokenFilter { * of words. This token filter is implemented using Apache Lucene. */ model KeepTokenFilter extends TokenFilter { - /** - * The list of words to keep. - */ - keepWords: string[]; + /** + * The list of words to keep. + */ + keepWords: string[]; - /** - * A value indicating whether to lower case all words first. Default is false. - */ - keepWordsCase?: boolean; + /** + * A value indicating whether to lower case all words first. Default is false. + */ + keepWordsCase?: boolean; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeepTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.KeepTokenFilter"; } /** * Marks terms as keywords. This token filter is implemented using Apache Lucene. */ model KeywordMarkerTokenFilter extends TokenFilter { - /** - * A list of words to mark as keywords. - */ - keywords: string[]; + /** + * A list of words to mark as keywords. + */ + keywords: string[]; - /** - * A value indicating whether to ignore case. If true, all words are converted to - * lower case first. Default is false. - */ - ignoreCase?: boolean; + /** + * A value indicating whether to ignore case. If true, all words are converted to + * lower case first. Default is false. + */ + ignoreCase?: boolean; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; } /** @@ -7320,25 +7320,25 @@ model KeywordMarkerTokenFilter extends TokenFilter { * using Apache Lucene. */ model LengthTokenFilter extends TokenFilter { - /** - * The minimum length in characters. Default is 0. Maximum is 300. Must be less - * than the value of max. - */ - @maxValue(300) - min?: int32; + /** + * The minimum length in characters. Default is 0. Maximum is 300. Must be less + * than the value of max. + */ + @maxValue(300) + min?: int32; - /** - * The maximum length in characters. Default and maximum is 300. - */ - @maxValue(300) - max?: int32 = 300; + /** + * The maximum length in characters. Default and maximum is 300. + */ + @maxValue(300) + max?: int32 = 300; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.LengthTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.LengthTokenFilter"; } /** @@ -7346,23 +7346,23 @@ model LengthTokenFilter extends TokenFilter { * using Apache Lucene. */ model LimitTokenFilter extends TokenFilter { - /** - * The maximum number of tokens to produce. Default is 1. - */ - maxTokenCount?: int32 = 1; + /** + * The maximum number of tokens to produce. Default is 1. + */ + maxTokenCount?: int32 = 1; - /** - * A value indicating whether all tokens from the input must be consumed even if - * maxTokenCount is reached. Default is false. - */ - consumeAllTokens?: boolean; + /** + * A value indicating whether all tokens from the input must be consumed even if + * maxTokenCount is reached. Default is false. + */ + consumeAllTokens?: boolean; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.LimitTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.LimitTokenFilter"; } /** @@ -7371,22 +7371,22 @@ model LimitTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model NGramTokenFilter extends TokenFilter { - /** - * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. - */ - minGram?: int32 = 1; + /** + * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. + */ + minGram?: int32 = 1; - /** - * The maximum n-gram length. Default is 2. - */ - maxGram?: int32 = 2; + /** + * The maximum n-gram length. Default is 2. + */ + maxGram?: int32 = 2; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.NGramTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.NGramTokenFilter"; } /** @@ -7395,25 +7395,25 @@ model NGramTokenFilter extends TokenFilter { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model NGramTokenFilterV2 extends TokenFilter { - /** - * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the - * value of maxGram. - */ - @maxValue(300) - minGram?: int32 = 1; + /** + * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the + * value of maxGram. + */ + @maxValue(300) + minGram?: int32 = 1; - /** - * The maximum n-gram length. Default is 2. Maximum is 300. - */ - @maxValue(300) - maxGram?: int32 = 2; + /** + * The maximum n-gram length. Default is 2. Maximum is 300. + */ + @maxValue(300) + maxGram?: int32 = 2; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; } /** @@ -7421,23 +7421,23 @@ model NGramTokenFilterV2 extends TokenFilter { * or more patterns. This token filter is implemented using Apache Lucene. */ model PatternCaptureTokenFilter extends TokenFilter { - /** - * A list of patterns to match against each token. - */ - patterns: string[]; + /** + * A list of patterns to match against each token. + */ + patterns: string[]; - /** - * A value indicating whether to return the original token even if one of the - * patterns matches. Default is true. - */ - preserveOriginal?: boolean = true; + /** + * A value indicating whether to return the original token even if one of the + * patterns matches. Default is true. + */ + preserveOriginal?: boolean = true; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; } /** @@ -7449,22 +7449,22 @@ model PatternCaptureTokenFilter extends TokenFilter { * Lucene. */ model PatternReplaceTokenFilter extends TokenFilter { - /** - * A regular expression pattern. - */ - pattern: string; + /** + * A regular expression pattern. + */ + pattern: string; - /** - * The replacement text. - */ - replacement: string; + /** + * The replacement text. + */ + replacement: string; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; } /** @@ -7472,23 +7472,23 @@ model PatternReplaceTokenFilter extends TokenFilter { * Apache Lucene. */ model PhoneticTokenFilter extends TokenFilter { - /** - * The phonetic encoder to use. Default is "metaphone". - */ - encoder?: PhoneticEncoder; + /** + * The phonetic encoder to use. Default is "metaphone". + */ + encoder?: PhoneticEncoder; - /** - * A value indicating whether encoded tokens should replace original tokens. If - * false, encoded tokens are added as synonyms. Default is true. - */ - replace?: boolean = true; + /** + * A value indicating whether encoded tokens should replace original tokens. If + * false, encoded tokens are added as synonyms. Default is true. + */ + replace?: boolean = true; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; } /** @@ -7496,50 +7496,50 @@ model PhoneticTokenFilter extends TokenFilter { * implemented using Apache Lucene. */ model ShingleTokenFilter extends TokenFilter { - /** - * The maximum shingle size. Default and minimum value is 2. - */ - @minValue(2) - maxShingleSize?: int32 = 2; - - /** - * The minimum shingle size. Default and minimum value is 2. Must be less than the - * value of maxShingleSize. - */ - @minValue(2) - minShingleSize?: int32 = 2; - - /** - * A value indicating whether the output stream will contain the input tokens - * (unigrams) as well as shingles. Default is true. - */ - outputUnigrams?: boolean = true; - - /** - * A value indicating whether to output unigrams for those times when no shingles - * are available. This property takes precedence when outputUnigrams is set to - * false. Default is false. - */ - outputUnigramsIfNoShingles?: boolean; - - /** - * The string to use when joining adjacent tokens to form a shingle. Default is a - * single space (" "). - */ - tokenSeparator?: string = " "; - - /** - * The string to insert for each position at which there is no token. Default is - * an underscore ("_"). - */ - filterToken?: string = "_"; - - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; + /** + * The maximum shingle size. Default and minimum value is 2. + */ + @minValue(2) + maxShingleSize?: int32 = 2; + + /** + * The minimum shingle size. Default and minimum value is 2. Must be less than the + * value of maxShingleSize. + */ + @minValue(2) + minShingleSize?: int32 = 2; + + /** + * A value indicating whether the output stream will contain the input tokens + * (unigrams) as well as shingles. Default is true. + */ + outputUnigrams?: boolean = true; + + /** + * A value indicating whether to output unigrams for those times when no shingles + * are available. This property takes precedence when outputUnigrams is set to + * false. Default is false. + */ + outputUnigramsIfNoShingles?: boolean; + + /** + * The string to use when joining adjacent tokens to form a shingle. Default is a + * single space (" "). + */ + tokenSeparator?: string = " "; + + /** + * The string to insert for each position at which there is no token. Default is + * an underscore ("_"). + */ + filterToken?: string = "_"; + + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; } /** @@ -7547,17 +7547,17 @@ model ShingleTokenFilter extends TokenFilter { * is implemented using Apache Lucene. */ model SnowballTokenFilter extends TokenFilter { - /** - * The language to use. - */ - language: SnowballTokenFilterLanguage; + /** + * The language to use. + */ + language: SnowballTokenFilterLanguage; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; } /** @@ -7565,17 +7565,17 @@ model SnowballTokenFilter extends TokenFilter { * Apache Lucene. */ model StemmerTokenFilter extends TokenFilter { - /** - * The language to use. - */ - language: StemmerTokenFilterLanguage; + /** + * The language to use. + */ + language: StemmerTokenFilterLanguage; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; } /** @@ -7586,18 +7586,18 @@ model StemmerTokenFilter extends TokenFilter { * Apache Lucene. */ model StemmerOverrideTokenFilter extends TokenFilter { - /** - * A list of stemming rules in the following format: "word => stem", for example: - * "ran => run". - */ - rules: string[]; + /** + * A list of stemming rules in the following format: "word => stem", for example: + * "ran => run". + */ + rules: string[]; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; } /** @@ -7605,36 +7605,36 @@ model StemmerOverrideTokenFilter extends TokenFilter { * Apache Lucene. */ model StopwordsTokenFilter extends TokenFilter { - /** - * The list of stopwords. This property and the stopwords list property cannot - * both be set. - */ - stopwords?: string[]; - - /** - * A predefined list of stopwords to use. This property and the stopwords property - * cannot both be set. Default is English. - */ - stopwordsList?: StopwordsList; - - /** - * A value indicating whether to ignore case. If true, all words are converted to - * lower case first. Default is false. - */ - ignoreCase?: boolean; - - /** - * A value indicating whether to ignore the last search term if it's a stop word. - * Default is true. - */ - removeTrailing?: boolean = true; - - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; + /** + * The list of stopwords. This property and the stopwords list property cannot + * both be set. + */ + stopwords?: string[]; + + /** + * A predefined list of stopwords to use. This property and the stopwords property + * cannot both be set. Default is English. + */ + stopwordsList?: StopwordsList; + + /** + * A value indicating whether to ignore case. If true, all words are converted to + * lower case first. Default is false. + */ + ignoreCase?: boolean; + + /** + * A value indicating whether to ignore the last search term if it's a stop word. + * Default is true. + */ + removeTrailing?: boolean = true; + + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; } /** @@ -7642,38 +7642,38 @@ model StopwordsTokenFilter extends TokenFilter { * implemented using Apache Lucene. */ model SynonymTokenFilter extends TokenFilter { - /** - * A list of synonyms in following one of two formats: 1. incredible, - * unbelievable, fabulous => amazing - all terms on the left side of => symbol - * will be replaced with all terms on its right side; 2. incredible, unbelievable, - * fabulous, amazing - comma separated list of equivalent words. Set the expand - * option to change how this list is interpreted. - */ - synonyms: string[]; - - /** - * A value indicating whether to case-fold input for matching. Default is false. - */ - ignoreCase?: boolean; - - /** - * A value indicating whether all words in the list of synonyms (if => notation is - * not used) will map to one another. If true, all words in the list of synonyms - * (if => notation is not used) will map to one another. The following list: - * incredible, unbelievable, fabulous, amazing is equivalent to: incredible, - * unbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing. - * If false, the following list: incredible, unbelievable, fabulous, amazing will - * be equivalent to: incredible, unbelievable, fabulous, amazing => incredible. - * Default is true. - */ - expand?: boolean = true; - - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; + /** + * A list of synonyms in following one of two formats: 1. incredible, + * unbelievable, fabulous => amazing - all terms on the left side of => symbol + * will be replaced with all terms on its right side; 2. incredible, unbelievable, + * fabulous, amazing - comma separated list of equivalent words. Set the expand + * option to change how this list is interpreted. + */ + synonyms: string[]; + + /** + * A value indicating whether to case-fold input for matching. Default is false. + */ + ignoreCase?: boolean; + + /** + * A value indicating whether all words in the list of synonyms (if => notation is + * not used) will map to one another. If true, all words in the list of synonyms + * (if => notation is not used) will map to one another. The following list: + * incredible, unbelievable, fabulous, amazing is equivalent to: incredible, + * unbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing. + * If false, the following list: incredible, unbelievable, fabulous, amazing will + * be equivalent to: incredible, unbelievable, fabulous, amazing => incredible. + * Default is true. + */ + expand?: boolean = true; + + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; } /** @@ -7681,18 +7681,18 @@ model SynonymTokenFilter extends TokenFilter { * using Apache Lucene. */ model TruncateTokenFilter extends TokenFilter { - /** - * The length at which terms will be truncated. Default and maximum is 300. - */ - @maxValue(300) - length?: int32 = 300; + /** + * The length at which terms will be truncated. Default and maximum is 300. + */ + @maxValue(300) + length?: int32 = 300; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; } /** @@ -7700,18 +7700,18 @@ model TruncateTokenFilter extends TokenFilter { * implemented using Apache Lucene. */ model UniqueTokenFilter extends TokenFilter { - /** - * A value indicating whether to remove duplicates only at the same position. - * Default is false. - */ - onlyOnSamePosition?: boolean; + /** + * A value indicating whether to remove duplicates only at the same position. + * Default is false. + */ + onlyOnSamePosition?: boolean; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; } /** @@ -7719,72 +7719,72 @@ model UniqueTokenFilter extends TokenFilter { * groups. This token filter is implemented using Apache Lucene. */ model WordDelimiterTokenFilter extends TokenFilter { - /** - * A value indicating whether to generate part words. If set, causes parts of - * words to be generated; for example "AzureSearch" becomes "Azure" "Search". - * Default is true. - */ - generateWordParts?: boolean = true; - - /** - * A value indicating whether to generate number subwords. Default is true. - */ - generateNumberParts?: boolean = true; - - /** - * A value indicating whether maximum runs of word parts will be catenated. For - * example, if this is set to true, "Azure-Search" becomes "AzureSearch". Default - * is false. - */ - catenateWords?: boolean; - - /** - * A value indicating whether maximum runs of number parts will be catenated. For - * example, if this is set to true, "1-2" becomes "12". Default is false. - */ - catenateNumbers?: boolean; - - /** - * A value indicating whether all subword parts will be catenated. For example, if - * this is set to true, "Azure-Search-1" becomes "AzureSearch1". Default is false. - */ - catenateAll?: boolean; - - /** - * A value indicating whether to split words on caseChange. For example, if this - * is set to true, "AzureSearch" becomes "Azure" "Search". Default is true. - */ - splitOnCaseChange?: boolean = true; - - /** - * A value indicating whether original words will be preserved and added to the - * subword list. Default is false. - */ - preserveOriginal?: boolean; - - /** - * A value indicating whether to split on numbers. For example, if this is set to - * true, "Azure1Search" becomes "Azure" "1" "Search". Default is true. - */ - splitOnNumerics?: boolean = true; - - /** - * A value indicating whether to remove trailing "'s" for each subword. Default is - * true. - */ - stemEnglishPossessive?: boolean = true; - - /** - * A list of tokens to protect from being delimited. - */ - protectedWords?: string[]; - - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; + /** + * A value indicating whether to generate part words. If set, causes parts of + * words to be generated; for example "AzureSearch" becomes "Azure" "Search". + * Default is true. + */ + generateWordParts?: boolean = true; + + /** + * A value indicating whether to generate number subwords. Default is true. + */ + generateNumberParts?: boolean = true; + + /** + * A value indicating whether maximum runs of word parts will be catenated. For + * example, if this is set to true, "Azure-Search" becomes "AzureSearch". Default + * is false. + */ + catenateWords?: boolean; + + /** + * A value indicating whether maximum runs of number parts will be catenated. For + * example, if this is set to true, "1-2" becomes "12". Default is false. + */ + catenateNumbers?: boolean; + + /** + * A value indicating whether all subword parts will be catenated. For example, if + * this is set to true, "Azure-Search-1" becomes "AzureSearch1". Default is false. + */ + catenateAll?: boolean; + + /** + * A value indicating whether to split words on caseChange. For example, if this + * is set to true, "AzureSearch" becomes "Azure" "Search". Default is true. + */ + splitOnCaseChange?: boolean = true; + + /** + * A value indicating whether original words will be preserved and added to the + * subword list. Default is false. + */ + preserveOriginal?: boolean; + + /** + * A value indicating whether to split on numbers. For example, if this is set to + * true, "Azure1Search" becomes "Azure" "1" "Search". Default is true. + */ + splitOnNumerics?: boolean = true; + + /** + * A value indicating whether to remove trailing "'s" for each subword. Default is + * true. + */ + stemEnglishPossessive?: boolean = true; + + /** + * A list of tokens to protect from being delimited. + */ + protectedWords?: string[]; + + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; } /** @@ -7794,18 +7794,18 @@ model WordDelimiterTokenFilter extends TokenFilter { * implemented using Apache Lucene. */ model MappingCharFilter extends CharFilter { - /** - * A list of mappings of the following format: "a=>b" (all occurrences of the - * character "a" will be replaced with character "b"). - */ - mappings: string[]; + /** + * A list of mappings of the following format: "a=>b" (all occurrences of the + * character "a" will be replaced with character "b"). + */ + mappings: string[]; - /** - * A URI fragment specifying the type of char filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.MappingCharFilter"; + /** + * A URI fragment specifying the type of char filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.MappingCharFilter"; } /** @@ -7817,22 +7817,22 @@ model MappingCharFilter extends CharFilter { * Apache Lucene. */ model PatternReplaceCharFilter extends CharFilter { - /** - * A regular expression pattern. - */ - pattern: string; + /** + * A regular expression pattern. + */ + pattern: string; - /** - * The replacement text. - */ - replacement: string; + /** + * The replacement text. + */ + replacement: string; - /** - * A URI fragment specifying the type of char filter. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; + /** + * A URI fragment specifying the type of char filter. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; } /** @@ -7842,9 +7842,9 @@ model PatternReplaceCharFilter extends CharFilter { * that only partially match the searched queries. */ model ClassicSimilarityAlgorithm extends SimilarityAlgorithm { - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ClassicSimilarity"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.ClassicSimilarity"; } /** @@ -7855,25 +7855,25 @@ model ClassicSimilarityAlgorithm extends SimilarityAlgorithm { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model BM25SimilarityAlgorithm extends SimilarityAlgorithm { - /** - * This property controls the scaling function between the term frequency of each - * matching terms and the final relevance score of a document-query pair. By - * default, a value of 1.2 is used. A value of 0.0 means the score does not scale - * with an increase in term frequency. - */ - k1?: float64; + /** + * This property controls the scaling function between the term frequency of each + * matching terms and the final relevance score of a document-query pair. By + * default, a value of 1.2 is used. A value of 0.0 means the score does not scale + * with an increase in term frequency. + */ + k1?: float64; - /** - * This property controls how the length of a document affects the relevance - * score. By default, a value of 0.75 is used. A value of 0.0 means no length - * normalization is applied, while a value of 1.0 means the score is fully - * normalized by the length of the document. - */ - b?: float64; + /** + * This property controls how the length of a document affects the relevance + * score. By default, a value of 0.75 is used. A value of 0.0 means no length + * normalization is applied, while a value of 1.0 means the score is fully + * normalized by the length of the document. + */ + b?: float64; - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.BM25Similarity"; + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.BM25Similarity"; } /** @@ -7882,55 +7882,55 @@ model BM25SimilarityAlgorithm extends SimilarityAlgorithm { * offers a tunable trade-off between search speed and accuracy. */ model HnswAlgorithmConfiguration extends VectorSearchAlgorithmConfiguration { - /** - * Contains the parameters specific to HNSW algorithm. - */ - hnswParameters?: HnswParameters; + /** + * Contains the parameters specific to HNSW algorithm. + */ + hnswParameters?: HnswParameters; - /** - * The name of the kind of algorithm being configured for use with vector search. - */ - kind: "hnsw"; + /** + * The name of the kind of algorithm being configured for use with vector search. + */ + kind: "hnsw"; } /** * Contains the parameters specific to the HNSW algorithm. */ model HnswParameters { - /** - * The number of bi-directional links created for every new element during - * construction. Increasing this parameter value may improve recall and reduce - * retrieval times for datasets with high intrinsic dimensionality at the expense - * of increased memory consumption and longer indexing time. - */ - @maxValue(10) - @minValue(4) - m?: int32 = 4; - - /** - * The size of the dynamic list containing the nearest neighbors, which is used - * during index time. Increasing this parameter may improve index quality, at the - * expense of increased indexing time. At a certain point, increasing this - * parameter leads to diminishing returns. - */ - @maxValue(1000) - @minValue(100) - efConstruction?: int32 = 400; - - /** - * The size of the dynamic list containing the nearest neighbors, which is used - * during search time. Increasing this parameter may improve search results, at - * the expense of slower search. At a certain point, increasing this parameter - * leads to diminishing returns. - */ - @maxValue(1000) - @minValue(100) - efSearch?: int32 = 500; - - /** - * The similarity metric to use for vector comparisons. - */ - metric?: VectorSearchAlgorithmMetric; + /** + * The number of bi-directional links created for every new element during + * construction. Increasing this parameter value may improve recall and reduce + * retrieval times for datasets with high intrinsic dimensionality at the expense + * of increased memory consumption and longer indexing time. + */ + @maxValue(10) + @minValue(4) + m?: int32 = 4; + + /** + * The size of the dynamic list containing the nearest neighbors, which is used + * during index time. Increasing this parameter may improve index quality, at the + * expense of increased indexing time. At a certain point, increasing this + * parameter leads to diminishing returns. + */ + @maxValue(1000) + @minValue(100) + efConstruction?: int32 = 400; + + /** + * The size of the dynamic list containing the nearest neighbors, which is used + * during search time. Increasing this parameter may improve search results, at + * the expense of slower search. At a certain point, increasing this parameter + * leads to diminishing returns. + */ + @maxValue(1000) + @minValue(100) + efSearch?: int32 = 500; + + /** + * The similarity metric to use for vector comparisons. + */ + metric?: VectorSearchAlgorithmMetric; } /** @@ -7939,26 +7939,26 @@ model HnswParameters { * index. */ model ExhaustiveKnnAlgorithmConfiguration - extends VectorSearchAlgorithmConfiguration { - /** - * Contains the parameters specific to exhaustive KNN algorithm. - */ - exhaustiveKnnParameters?: ExhaustiveKnnParameters; + extends VectorSearchAlgorithmConfiguration { + /** + * Contains the parameters specific to exhaustive KNN algorithm. + */ + exhaustiveKnnParameters?: ExhaustiveKnnParameters; - /** - * The name of the kind of algorithm being configured for use with vector search. - */ - kind: "exhaustiveKnn"; + /** + * The name of the kind of algorithm being configured for use with vector search. + */ + kind: "exhaustiveKnn"; } /** * Contains the parameters specific to exhaustive KNN algorithm. */ model ExhaustiveKnnParameters { - /** - * The similarity metric to use for vector comparisons. - */ - metric?: VectorSearchAlgorithmMetric; + /** + * The similarity metric to use for vector comparisons. + */ + metric?: VectorSearchAlgorithmMetric; } /** @@ -7966,26 +7966,26 @@ model ExhaustiveKnnParameters { * method used during indexing and querying. */ model ScalarQuantizationCompression extends VectorSearchCompression { - /** - * Contains the parameters specific to Scalar Quantization. - */ - scalarQuantizationParameters?: ScalarQuantizationParameters; + /** + * Contains the parameters specific to Scalar Quantization. + */ + scalarQuantizationParameters?: ScalarQuantizationParameters; - /** - * The name of the kind of compression method being configured for use with vector - * search. - */ - kind: "scalarQuantization"; + /** + * The name of the kind of compression method being configured for use with vector + * search. + */ + kind: "scalarQuantization"; } /** * Contains the parameters specific to Scalar Quantization. */ model ScalarQuantizationParameters { - /** - * The quantized data type of compressed vector values. - */ - quantizedDataType?: VectorSearchCompressionTarget; + /** + * The quantized data type of compressed vector values. + */ + quantizedDataType?: VectorSearchCompressionTarget; } /** @@ -7993,11 +7993,11 @@ model ScalarQuantizationParameters { * method used during indexing and querying. */ model BinaryQuantizationCompression extends VectorSearchCompression { - /** - * The name of the kind of compression method being configured for use with vector - * search. - */ - kind: "binaryQuantization"; + /** + * The name of the kind of compression method being configured for use with vector + * search. + */ + kind: "binaryQuantization"; } /** @@ -8005,16 +8005,16 @@ model BinaryQuantizationCompression extends VectorSearchCompression { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model AzureOpenAIVectorizer extends VectorSearchVectorizer { - /** - * Contains the parameters specific to Azure OpenAI embedding vectorization. - */ - azureOpenAIParameters?: AzureOpenAIVectorizerParameters; + /** + * Contains the parameters specific to Azure OpenAI embedding vectorization. + */ + azureOpenAIParameters?: AzureOpenAIVectorizerParameters; - /** - * The name of the kind of vectorization method being configured for use with - * vector search. - */ - kind: "azureOpenAI"; + /** + * The name of the kind of vectorization method being configured for use with + * vector search. + */ + kind: "azureOpenAI"; } /** @@ -8022,31 +8022,31 @@ model AzureOpenAIVectorizer extends VectorSearchVectorizer { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model AzureOpenAIVectorizerParameters { - /** - * The resource URI of the Azure OpenAI resource. - */ - resourceUri?: url; + /** + * The resource URI of the Azure OpenAI resource. + */ + resourceUri?: url; - /** - * ID of the Azure OpenAI model deployment on the designated resource. - */ - deploymentId?: string; + /** + * ID of the Azure OpenAI model deployment on the designated resource. + */ + deploymentId?: string; - /** - * API key of the designated Azure OpenAI resource. - */ - apiKey?: string; + /** + * API key of the designated Azure OpenAI resource. + */ + apiKey?: string; - /** - * The user-assigned managed identity used for outbound connections. - */ - authIdentity?: SearchIndexerDataIdentity; + /** + * The user-assigned managed identity used for outbound connections. + */ + authIdentity?: SearchIndexerDataIdentity; - /** - * The name of the embedding model that is deployed at the provided deploymentId - * path. - */ - modelName?: AzureOpenAIModelName; + /** + * The name of the embedding model that is deployed at the provided deploymentId + * path. + */ + modelName?: AzureOpenAIModelName; } /** @@ -8054,10 +8054,10 @@ model AzureOpenAIVectorizerParameters { */ @discriminator("odataType") model SearchIndexerDataIdentity { - /** The discriminator for derived types. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: string; } /** @@ -8066,93 +8066,93 @@ model SearchIndexerDataIdentity { * custom Web API interface of a skillset. */ model WebApiVectorizer extends VectorSearchVectorizer { - /** - * Specifies the properties of the user-defined vectorizer. - */ - customWebApiParameters?: WebApiVectorizerParameters; + /** + * Specifies the properties of the user-defined vectorizer. + */ + customWebApiParameters?: WebApiVectorizerParameters; - /** - * The name of the kind of vectorization method being configured for use with - * vector search. - */ - kind: "customWebApi"; + /** + * The name of the kind of vectorization method being configured for use with + * vector search. + */ + kind: "customWebApi"; } /** * Specifies the properties for connecting to a user-defined vectorizer. */ model WebApiVectorizerParameters { - /** - * The URI of the Web API providing the vectorizer. - */ - uri?: url; - - /** - * The headers required to make the HTTP request. - */ - httpHeaders?: Record; - - /** - * The method for the HTTP request. - */ - httpMethod?: string; - - /** - * The desired timeout for the request. Default is 30 seconds. - */ - timeout?: duration; - - /** - * Applies to custom endpoints that connect to external code in an Azure function - * or some other application that provides the transformations. This value should - * be the application ID created for the function or app when it was registered - * with Azure Active Directory. When specified, the vectorization connects to the - * function or app using a managed ID (either system or user-assigned) of the - * search service and the access token of the function or app, using this value as - * the resource id for creating the scope of the access token. - */ - authResourceId?: string; - - /** - * The user-assigned managed identity used for outbound connections. If an - * authResourceId is provided and it's not specified, the system-assigned managed - * identity is used. On updates to the indexer, if the identity is unspecified, - * the value remains unchanged. If set to "none", the value of this property is - * cleared. - */ - authIdentity?: SearchIndexerDataIdentity; + /** + * The URI of the Web API providing the vectorizer. + */ + uri?: url; + + /** + * The headers required to make the HTTP request. + */ + httpHeaders?: Record; + + /** + * The method for the HTTP request. + */ + httpMethod?: string; + + /** + * The desired timeout for the request. Default is 30 seconds. + */ + timeout?: duration; + + /** + * Applies to custom endpoints that connect to external code in an Azure function + * or some other application that provides the transformations. This value should + * be the application ID created for the function or app when it was registered + * with Azure Active Directory. When specified, the vectorization connects to the + * function or app using a managed ID (either system or user-assigned) of the + * search service and the access token of the function or app, using this value as + * the resource id for creating the scope of the access token. + */ + authResourceId?: string; + + /** + * The user-assigned managed identity used for outbound connections. If an + * authResourceId is provided and it's not specified, the system-assigned managed + * identity is used. On updates to the indexer, if the identity is unspecified, + * the value remains unchanged. If set to "none", the value of this property is + * cleared. + */ + authIdentity?: SearchIndexerDataIdentity; } /** * Clears the identity property of a datasource. */ model SearchIndexerDataNoneIdentity extends SearchIndexerDataIdentity { - /** - * A URI fragment specifying the type of identity. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DataNoneIdentity"; + /** + * A URI fragment specifying the type of identity. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.DataNoneIdentity"; } /** * Specifies the identity for a datasource to use. */ model SearchIndexerDataUserAssignedIdentity extends SearchIndexerDataIdentity { - /** - * The fully qualified Azure resource Id of a user assigned managed identity - * typically in the form - * "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" - * that should have been assigned to the search service. - */ - userAssignedIdentity: string; + /** + * The fully qualified Azure resource Id of a user assigned managed identity + * typically in the form + * "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" + * that should have been assigned to the search service. + */ + userAssignedIdentity: string; - /** - * A URI fragment specifying the type of identity. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; + /** + * A URI fragment specifying the type of identity. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; } /** @@ -8160,17 +8160,17 @@ model SearchIndexerDataUserAssignedIdentity extends SearchIndexerDataIdentity { * of a high water mark column. */ model HighWaterMarkChangeDetectionPolicy extends DataChangeDetectionPolicy { - /** - * The name of the high water mark column. - */ - highWaterMarkColumnName: string; + /** + * The name of the high water mark column. + */ + highWaterMarkColumnName: string; - /** - * A URI fragment specifying the type of data change detection policy. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; + /** + * A URI fragment specifying the type of data change detection policy. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; } /** @@ -8178,12 +8178,12 @@ model HighWaterMarkChangeDetectionPolicy extends DataChangeDetectionPolicy { * Integrated Change Tracking feature of Azure SQL Database. */ model SqlIntegratedChangeTrackingPolicy extends DataChangeDetectionPolicy { - /** - * A URI fragment specifying the type of data change detection policy. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; + /** + * A URI fragment specifying the type of data change detection policy. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; } /** @@ -8192,23 +8192,23 @@ model SqlIntegratedChangeTrackingPolicy extends DataChangeDetectionPolicy { * a designated 'soft delete' column. */ model SoftDeleteColumnDeletionDetectionPolicy - extends DataDeletionDetectionPolicy { - /** - * The name of the column to use for soft-deletion detection. - */ - softDeleteColumnName?: string; + extends DataDeletionDetectionPolicy { + /** + * The name of the column to use for soft-deletion detection. + */ + softDeleteColumnName?: string; - /** - * The marker value that identifies an item as deleted. - */ - softDeleteMarkerValue?: string; + /** + * The marker value that identifies an item as deleted. + */ + softDeleteMarkerValue?: string; - /** - * A URI fragment specifying the type of data deletion detection policy. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; + /** + * A URI fragment specifying the type of data deletion detection policy. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; } /** @@ -8216,96 +8216,96 @@ model SoftDeleteColumnDeletionDetectionPolicy * location. */ model DistanceScoringFunction extends ScoringFunction { - /** - * Parameter values for the distance scoring function. - */ - distance: DistanceScoringParameters; + /** + * Parameter values for the distance scoring function. + */ + distance: DistanceScoringParameters; - /** - * Indicates the type of function to use. Valid values include magnitude, - * freshness, distance, and tag. The function type must be lower case. - */ - type: "distance"; + /** + * Indicates the type of function to use. Valid values include magnitude, + * freshness, distance, and tag. The function type must be lower case. + */ + type: "distance"; } /** * Provides parameter values to a distance scoring function. */ model DistanceScoringParameters { - /** - * The name of the parameter passed in search queries to specify the reference - * location. - */ - referencePointParameter: string; + /** + * The name of the parameter passed in search queries to specify the reference + * location. + */ + referencePointParameter: string; - /** - * The distance in kilometers from the reference location where the boosting range - * ends. - */ - boostingDistance: float64; + /** + * The distance in kilometers from the reference location where the boosting range + * ends. + */ + boostingDistance: float64; } /** * Defines a function that boosts scores based on the value of a date-time field. */ model FreshnessScoringFunction extends ScoringFunction { - /** - * Parameter values for the freshness scoring function. - */ - freshness: FreshnessScoringParameters; + /** + * Parameter values for the freshness scoring function. + */ + freshness: FreshnessScoringParameters; - /** - * Indicates the type of function to use. Valid values include magnitude, - * freshness, distance, and tag. The function type must be lower case. - */ - type: "freshness"; + /** + * Indicates the type of function to use. Valid values include magnitude, + * freshness, distance, and tag. The function type must be lower case. + */ + type: "freshness"; } /** * Provides parameter values to a freshness scoring function. */ model FreshnessScoringParameters { - /** - * The expiration period after which boosting will stop for a particular document. - */ - boostingDuration: duration; + /** + * The expiration period after which boosting will stop for a particular document. + */ + boostingDuration: duration; } /** * Defines a function that boosts scores based on the magnitude of a numeric field. */ model MagnitudeScoringFunction extends ScoringFunction { - /** - * Parameter values for the magnitude scoring function. - */ - magnitude: MagnitudeScoringParameters; + /** + * Parameter values for the magnitude scoring function. + */ + magnitude: MagnitudeScoringParameters; - /** - * Indicates the type of function to use. Valid values include magnitude, - * freshness, distance, and tag. The function type must be lower case. - */ - type: "magnitude"; + /** + * Indicates the type of function to use. Valid values include magnitude, + * freshness, distance, and tag. The function type must be lower case. + */ + type: "magnitude"; } /** * Provides parameter values to a magnitude scoring function. */ model MagnitudeScoringParameters { - /** - * The field value at which boosting starts. - */ - boostingRangeStart: float64; + /** + * The field value at which boosting starts. + */ + boostingRangeStart: float64; - /** - * The field value at which boosting ends. - */ - boostingRangeEnd: float64; + /** + * The field value at which boosting ends. + */ + boostingRangeEnd: float64; - /** - * A value indicating whether to apply a constant boost for field values beyond - * the range end value; default is false. - */ - constantBoostBeyondRange?: boolean; + /** + * A value indicating whether to apply a constant boost for field values beyond + * the range end value; default is false. + */ + constantBoostBeyondRange?: boolean; } /** @@ -8313,27 +8313,27 @@ model MagnitudeScoringParameters { * a given list of tags. */ model TagScoringFunction extends ScoringFunction { - /** - * Parameter values for the tag scoring function. - */ - tag: TagScoringParameters; + /** + * Parameter values for the tag scoring function. + */ + tag: TagScoringParameters; - /** - * Indicates the type of function to use. Valid values include magnitude, - * freshness, distance, and tag. The function type must be lower case. - */ - type: "tag"; + /** + * Indicates the type of function to use. Valid values include magnitude, + * freshness, distance, and tag. The function type must be lower case. + */ + type: "tag"; } /** * Provides parameter values to a tag scoring function. */ model TagScoringParameters { - /** - * The name of the parameter passed in search queries to specify the list of tags - * to compare against the target field. - */ - tagsParameter: string; + /** + * The name of the parameter passed in search queries to specify the list of tags + * to compare against the target field. + */ + tagsParameter: string; } /** @@ -8342,13 +8342,13 @@ model TagScoringParameters { */ #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model SearchIndexerKnowledgeStoreParameters { - ...Record; + ...Record; - /** - * Whether or not projections should synthesize a generated key name if one isn't - * already present. - */ - synthesizeGeneratedKeyName?: boolean; + /** + * Whether or not projections should synthesize a generated key name if one isn't + * already present. + */ + synthesizeGeneratedKeyName?: boolean; } /** @@ -8356,13 +8356,13 @@ model SearchIndexerKnowledgeStoreParameters { * skillset. */ model DefaultCognitiveServicesAccount extends CognitiveServicesAccount { - /** - * A URI fragment specifying the type of Azure AI service resource attached to a - * skillset. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; + /** + * A URI fragment specifying the type of Azure AI service resource attached to a + * skillset. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; } /** @@ -8370,18 +8370,18 @@ model DefaultCognitiveServicesAccount extends CognitiveServicesAccount { * a skillset. */ model CognitiveServicesAccountKey extends CognitiveServicesAccount { - /** - * The key used to provision the Azure AI service resource attached to a skillset. - */ - key: string; + /** + * The key used to provision the Azure AI service resource attached to a skillset. + */ + key: string; - /** - * A URI fragment specifying the type of Azure AI service resource attached to a - * skillset. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; + /** + * A URI fragment specifying the type of Azure AI service resource attached to a + * skillset. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; } /** @@ -8389,87 +8389,87 @@ model CognitiveServicesAccountKey extends CognitiveServicesAccount { * related metadata. */ model CustomEntity { - /** - * The top-level entity descriptor. Matches in the skill output will be grouped by - * this name, and it should represent the "normalized" form of the text being - * found. - */ - name: string; - - /** - * This field can be used as a passthrough for custom metadata about the matched - * text(s). The value of this field will appear with every match of its entity in - * the skill output. - */ - description?: string; - - /** - * This field can be used as a passthrough for custom metadata about the matched - * text(s). The value of this field will appear with every match of its entity in - * the skill output. - */ - type?: string; - - /** - * This field can be used as a passthrough for custom metadata about the matched - * text(s). The value of this field will appear with every match of its entity in - * the skill output. - */ - subtype?: string; - - /** - * This field can be used as a passthrough for custom metadata about the matched - * text(s). The value of this field will appear with every match of its entity in - * the skill output. - */ - id?: string; - - /** - * Defaults to false. Boolean value denoting whether comparisons with the entity - * name should be sensitive to character casing. Sample case insensitive matches - * of "Microsoft" could be: microsoft, microSoft, MICROSOFT. - */ - caseSensitive?: boolean; - - /** - * Defaults to false. Boolean value denoting whether comparisons with the entity - * name should be sensitive to accent. - */ - accentSensitive?: boolean; - - /** - * Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent - * characters that would still constitute a match with the entity name. The - * smallest possible fuzziness for any given match is returned. For instance, if - * the edit distance is set to 3, "Windows10" would still match "Windows", - * "Windows10" and "Windows 7". When case sensitivity is set to false, case - * differences do NOT count towards fuzziness tolerance, but otherwise do. - */ - fuzzyEditDistance?: int32; - - /** - * Changes the default case sensitivity value for this entity. It be used to - * change the default value of all aliases caseSensitive values. - */ - defaultCaseSensitive?: boolean; - - /** - * Changes the default accent sensitivity value for this entity. It be used to - * change the default value of all aliases accentSensitive values. - */ - defaultAccentSensitive?: boolean; - - /** - * Changes the default fuzzy edit distance value for this entity. It can be used - * to change the default value of all aliases fuzzyEditDistance values. - */ - defaultFuzzyEditDistance?: int32; - - /** - * An array of complex objects that can be used to specify alternative spellings - * or synonyms to the root entity name. - */ - aliases?: CustomEntityAlias[]; + /** + * The top-level entity descriptor. Matches in the skill output will be grouped by + * this name, and it should represent the "normalized" form of the text being + * found. + */ + name: string; + + /** + * This field can be used as a passthrough for custom metadata about the matched + * text(s). The value of this field will appear with every match of its entity in + * the skill output. + */ + description?: string; + + /** + * This field can be used as a passthrough for custom metadata about the matched + * text(s). The value of this field will appear with every match of its entity in + * the skill output. + */ + type?: string; + + /** + * This field can be used as a passthrough for custom metadata about the matched + * text(s). The value of this field will appear with every match of its entity in + * the skill output. + */ + subtype?: string; + + /** + * This field can be used as a passthrough for custom metadata about the matched + * text(s). The value of this field will appear with every match of its entity in + * the skill output. + */ + id?: string; + + /** + * Defaults to false. Boolean value denoting whether comparisons with the entity + * name should be sensitive to character casing. Sample case insensitive matches + * of "Microsoft" could be: microsoft, microSoft, MICROSOFT. + */ + caseSensitive?: boolean; + + /** + * Defaults to false. Boolean value denoting whether comparisons with the entity + * name should be sensitive to accent. + */ + accentSensitive?: boolean; + + /** + * Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent + * characters that would still constitute a match with the entity name. The + * smallest possible fuzziness for any given match is returned. For instance, if + * the edit distance is set to 3, "Windows10" would still match "Windows", + * "Windows10" and "Windows 7". When case sensitivity is set to false, case + * differences do NOT count towards fuzziness tolerance, but otherwise do. + */ + fuzzyEditDistance?: int32; + + /** + * Changes the default case sensitivity value for this entity. It be used to + * change the default value of all aliases caseSensitive values. + */ + defaultCaseSensitive?: boolean; + + /** + * Changes the default accent sensitivity value for this entity. It be used to + * change the default value of all aliases accentSensitive values. + */ + defaultAccentSensitive?: boolean; + + /** + * Changes the default fuzzy edit distance value for this entity. It can be used + * to change the default value of all aliases fuzzyEditDistance values. + */ + defaultFuzzyEditDistance?: int32; + + /** + * An array of complex objects that can be used to specify alternative spellings + * or synonyms to the root entity name. + */ + aliases?: CustomEntityAlias[]; } /** @@ -8477,25 +8477,25 @@ model CustomEntity { * to the root entity name. */ model CustomEntityAlias { - /** - * The text of the alias. - */ - text: string; + /** + * The text of the alias. + */ + text: string; - /** - * Determine if the alias is case sensitive. - */ - caseSensitive?: boolean; + /** + * Determine if the alias is case sensitive. + */ + caseSensitive?: boolean; - /** - * Determine if the alias is accent sensitive. - */ - accentSensitive?: boolean; + /** + * Determine if the alias is accent sensitive. + */ + accentSensitive?: boolean; - /** - * Determine the fuzzy edit distance of the alias. - */ - fuzzyEditDistance?: int32; + /** + * Determine the fuzzy edit distance of the alias. + */ + fuzzyEditDistance?: int32; } /** @@ -8503,70 +8503,70 @@ model CustomEntityAlias { * the data to assign to an output. */ model ConditionalSkill extends SearchIndexerSkill { - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Util.ConditionalSkill"; + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Util.ConditionalSkill"; } /** * A skill that uses text analytics for key phrase extraction. */ model KeyPhraseExtractionSkill extends SearchIndexerSkill { - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: KeyPhraseExtractionSkillLanguage; + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: KeyPhraseExtractionSkillLanguage; - /** - * A number indicating how many key phrases to return. If absent, all identified - * key phrases will be returned. - */ - maxKeyPhraseCount?: int32; + /** + * A number indicating how many key phrases to return. If absent, all identified + * key phrases will be returned. + */ + maxKeyPhraseCount?: int32; - /** - * The version of the model to use when calling the Text Analytics service. It - * will default to the latest available when not specified. We recommend you do - * not specify this value unless absolutely necessary. - */ - modelVersion?: string; + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; } /** * A skill that extracts text from image files. */ model OcrSkill extends SearchIndexerSkill { - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: OcrSkillLanguage; + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: OcrSkillLanguage; - /** - * A value indicating to turn orientation detection on or not. Default is false. - */ - detectOrientation?: boolean; + /** + * A value indicating to turn orientation detection on or not. Default is false. + */ + detectOrientation?: boolean; - /** - * Defines the sequence of characters to use between the lines of text recognized - * by the OCR skill. The default value is "space". - */ - lineEnding?: OcrLineEnding; + /** + * Defines the sequence of characters to use between the lines of text recognized + * by the OCR skill. The default value is "space". + */ + lineEnding?: OcrLineEnding; - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Vision.OcrSkill"; + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Vision.OcrSkill"; } /** @@ -8574,27 +8574,27 @@ model OcrSkill extends SearchIndexerSkill { * based on the image content. */ model ImageAnalysisSkill extends SearchIndexerSkill { - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: ImageAnalysisSkillLanguage; + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: ImageAnalysisSkillLanguage; - /** - * A list of visual features. - */ - visualFeatures?: VisualFeature[]; + /** + * A list of visual features. + */ + visualFeatures?: VisualFeature[]; - /** - * A string indicating which domain-specific details to return. - */ - details?: ImageDetail[]; + /** + * A string indicating which domain-specific details to return. + */ + details?: ImageDetail[]; - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; } /** @@ -8603,25 +8603,25 @@ model ImageAnalysisSkill extends SearchIndexerSkill { * with a score indicating the confidence of the analysis. */ model LanguageDetectionSkill extends SearchIndexerSkill { - /** - * A country code to use as a hint to the language detection model if it cannot - * disambiguate the language. - */ - defaultCountryHint?: string; + /** + * A country code to use as a hint to the language detection model if it cannot + * disambiguate the language. + */ + defaultCountryHint?: string; - /** - * The version of the model to use when calling the Text Analytics service. It - * will default to the latest available when not specified. We recommend you do - * not specify this value unless absolutely necessary. - */ - modelVersion?: string; + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; } /** @@ -8629,12 +8629,12 @@ model LanguageDetectionSkill extends SearchIndexerSkill { * composite fields (also known as multipart fields). */ model ShaperSkill extends SearchIndexerSkill { - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Util.ShaperSkill"; + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Util.ShaperSkill"; } /** @@ -8642,78 +8642,78 @@ model ShaperSkill extends SearchIndexerSkill { * optional user-defined delimiter separating each component part. */ model MergeSkill extends SearchIndexerSkill { - /** - * The tag indicates the start of the merged text. By default, the tag is an empty - * space. - */ - insertPreTag?: string = " "; + /** + * The tag indicates the start of the merged text. By default, the tag is an empty + * space. + */ + insertPreTag?: string = " "; - /** - * The tag indicates the end of the merged text. By default, the tag is an empty - * space. - */ - insertPostTag?: string = " "; + /** + * The tag indicates the end of the merged text. By default, the tag is an empty + * space. + */ + insertPostTag?: string = " "; - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.MergeSkill"; + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.MergeSkill"; } /** * This skill is deprecated. Use the V3.EntityRecognitionSkill instead. */ model EntityRecognitionSkill extends SearchIndexerSkill { - /** - * A list of entity categories that should be extracted. - */ - categories?: EntityCategory[]; - - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: EntityRecognitionSkillLanguage; - - /** - * Determines whether or not to include entities which are well known but don't - * conform to a pre-defined type. If this configuration is not set (default), set - * to null or set to false, entities which don't conform to one of the pre-defined - * types will not be surfaced. - */ - includeTypelessEntities?: boolean; - - /** - * A value between 0 and 1 that be used to only include entities whose confidence - * score is greater than the value specified. If not set (default), or if - * explicitly set to null, all entities will be included. - */ - minimumPrecision?: float64; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; + /** + * A list of entity categories that should be extracted. + */ + categories?: EntityCategory[]; + + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: EntityRecognitionSkillLanguage; + + /** + * Determines whether or not to include entities which are well known but don't + * conform to a pre-defined type. If this configuration is not set (default), set + * to null or set to false, entities which don't conform to one of the pre-defined + * types will not be surfaced. + */ + includeTypelessEntities?: boolean; + + /** + * A value between 0 and 1 that be used to only include entities whose confidence + * score is greater than the value specified. If not set (default), or if + * explicitly set to null, all entities will be included. + */ + minimumPrecision?: float64; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; } /** * This skill is deprecated. Use the V3.SentimentSkill instead. */ model SentimentSkill extends SearchIndexerSkill { - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: SentimentSkillLanguage; + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: SentimentSkillLanguage; - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.SentimentSkill"; + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.SentimentSkill"; } /** @@ -8723,100 +8723,100 @@ model SentimentSkill extends SearchIndexerSkill { * document-level. */ model SentimentSkillV3 extends SearchIndexerSkill { - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: string; - - /** - * If set to true, the skill output will include information from Text Analytics - * for opinion mining, namely targets (nouns or verbs) and their associated - * assessment (adjective) in the text. Default is false. - */ - includeOpinionMining?: boolean; - - /** - * The version of the model to use when calling the Text Analytics service. It - * will default to the latest available when not specified. We recommend you do - * not specify this value unless absolutely necessary. - */ - modelVersion?: string; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: string; + + /** + * If set to true, the skill output will include information from Text Analytics + * for opinion mining, namely targets (nouns or verbs) and their associated + * assessment (adjective) in the text. Default is false. + */ + includeOpinionMining?: boolean; + + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; } /** * Using the Text Analytics API, extracts linked entities from text. */ model EntityLinkingSkill extends SearchIndexerSkill { - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: string; - - /** - * A value between 0 and 1 that be used to only include entities whose confidence - * score is greater than the value specified. If not set (default), or if - * explicitly set to null, all entities will be included. - */ - @maxValue(1) - minimumPrecision?: float64; - - /** - * The version of the model to use when calling the Text Analytics service. It - * will default to the latest available when not specified. We recommend you do - * not specify this value unless absolutely necessary. - */ - modelVersion?: string; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: string; + + /** + * A value between 0 and 1 that be used to only include entities whose confidence + * score is greater than the value specified. If not set (default), or if + * explicitly set to null, all entities will be included. + */ + @maxValue(1) + minimumPrecision?: float64; + + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; } /** * Using the Text Analytics API, extracts entities of different types from text. */ model EntityRecognitionSkillV3 extends SearchIndexerSkill { - /** - * A list of entity categories that should be extracted. - */ - categories?: string[]; - - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: string; - - /** - * A value between 0 and 1 that be used to only include entities whose confidence - * score is greater than the value specified. If not set (default), or if - * explicitly set to null, all entities will be included. - */ - @maxValue(1) - minimumPrecision?: float64; - - /** - * The version of the model to use when calling the Text Analytics API. It will - * default to the latest available when not specified. We recommend you do not - * specify this value unless absolutely necessary. - */ - modelVersion?: string; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; + /** + * A list of entity categories that should be extracted. + */ + categories?: string[]; + + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: string; + + /** + * A value between 0 and 1 that be used to only include entities whose confidence + * score is greater than the value specified. If not set (default), or if + * explicitly set to null, all entities will be included. + */ + @maxValue(1) + minimumPrecision?: float64; + + /** + * The version of the model to use when calling the Text Analytics API. It will + * default to the latest available when not specified. We recommend you do not + * specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; } /** @@ -8825,205 +8825,205 @@ model EntityRecognitionSkillV3 extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model PIIDetectionSkill extends SearchIndexerSkill { - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: string; - - /** - * A value between 0 and 1 that be used to only include entities whose confidence - * score is greater than the value specified. If not set (default), or if - * explicitly set to null, all entities will be included. - */ - @maxValue(1) - minimumPrecision?: float64; - - /** - * A parameter that provides various ways to mask the personal information - * detected in the input text. Default is 'none'. - */ - maskingMode?: PIIDetectionSkillMaskingMode; - - /** - * The character used to mask the text if the maskingMode parameter is set to - * replace. Default is '*'. - */ - @maxLength(1) - maskingCharacter?: string; - - /** - * The version of the model to use when calling the Text Analytics service. It - * will default to the latest available when not specified. We recommend you do - * not specify this value unless absolutely necessary. - */ - modelVersion?: string; - - /** - * A list of PII entity categories that should be extracted and masked. - */ - piiCategories?: string[]; - - /** - * If specified, will set the PII domain to include only a subset of the entity - * categories. Possible values include: 'phi', 'none'. Default is 'none'. - */ - domain?: string; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: string; + + /** + * A value between 0 and 1 that be used to only include entities whose confidence + * score is greater than the value specified. If not set (default), or if + * explicitly set to null, all entities will be included. + */ + @maxValue(1) + minimumPrecision?: float64; + + /** + * A parameter that provides various ways to mask the personal information + * detected in the input text. Default is 'none'. + */ + maskingMode?: PIIDetectionSkillMaskingMode; + + /** + * The character used to mask the text if the maskingMode parameter is set to + * replace. Default is '*'. + */ + @maxLength(1) + maskingCharacter?: string; + + /** + * The version of the model to use when calling the Text Analytics service. It + * will default to the latest available when not specified. We recommend you do + * not specify this value unless absolutely necessary. + */ + modelVersion?: string; + + /** + * A list of PII entity categories that should be extracted and masked. + */ + piiCategories?: string[]; + + /** + * If specified, will set the PII domain to include only a subset of the entity + * categories. Possible values include: 'phi', 'none'. Default is 'none'. + */ + domain?: string; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; } /** * A skill to split a string into chunks of text. */ model SplitSkill extends SearchIndexerSkill { - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: SplitSkillLanguage; - - /** - * A value indicating which split mode to perform. - */ - textSplitMode?: TextSplitMode; - - /** - * The desired maximum page length. Default is 10000. - */ - maximumPageLength?: int32; - - /** - * Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk - * will start with this number of characters/tokens from the end of the nth chunk. - */ - pageOverlapLength?: int32; - - /** - * Only applicable when textSplitMode is set to 'pages'. If specified, the - * SplitSkill will discontinue splitting after processing the first - * 'maximumPagesToTake' pages, in order to improve performance when only a few - * initial pages are needed from each document. - */ - maximumPagesToTake?: int32; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.SplitSkill"; + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: SplitSkillLanguage; + + /** + * A value indicating which split mode to perform. + */ + textSplitMode?: TextSplitMode; + + /** + * The desired maximum page length. Default is 10000. + */ + maximumPageLength?: int32; + + /** + * Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk + * will start with this number of characters/tokens from the end of the nth chunk. + */ + pageOverlapLength?: int32; + + /** + * Only applicable when textSplitMode is set to 'pages'. If specified, the + * SplitSkill will discontinue splitting after processing the first + * 'maximumPagesToTake' pages, in order to improve performance when only a few + * initial pages are needed from each document. + */ + maximumPagesToTake?: int32; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.SplitSkill"; } /** * A skill looks for text from a custom, user-defined list of words and phrases. */ model CustomEntityLookupSkill extends SearchIndexerSkill { - /** - * A value indicating which language code to use. Default is `en`. - */ - defaultLanguageCode?: CustomEntityLookupSkillLanguage; - - /** - * Path to a JSON or CSV file containing all the target text to match against. - * This entity definition is read at the beginning of an indexer run. Any updates - * to this file during an indexer run will not take effect until subsequent runs. - * This config must be accessible over HTTPS. - */ - entitiesDefinitionUri?: string; - - /** - * The inline CustomEntity definition. - */ - inlineEntitiesDefinition?: CustomEntity[]; - - /** - * A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity, - * this value will be the default value. - */ - globalDefaultCaseSensitive?: boolean; - - /** - * A global flag for AccentSensitive. If AccentSensitive is not set in - * CustomEntity, this value will be the default value. - */ - globalDefaultAccentSensitive?: boolean; - - /** - * A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in - * CustomEntity, this value will be the default value. - */ - globalDefaultFuzzyEditDistance?: int32; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; + /** + * A value indicating which language code to use. Default is `en`. + */ + defaultLanguageCode?: CustomEntityLookupSkillLanguage; + + /** + * Path to a JSON or CSV file containing all the target text to match against. + * This entity definition is read at the beginning of an indexer run. Any updates + * to this file during an indexer run will not take effect until subsequent runs. + * This config must be accessible over HTTPS. + */ + entitiesDefinitionUri?: string; + + /** + * The inline CustomEntity definition. + */ + inlineEntitiesDefinition?: CustomEntity[]; + + /** + * A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity, + * this value will be the default value. + */ + globalDefaultCaseSensitive?: boolean; + + /** + * A global flag for AccentSensitive. If AccentSensitive is not set in + * CustomEntity, this value will be the default value. + */ + globalDefaultAccentSensitive?: boolean; + + /** + * A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in + * CustomEntity, this value will be the default value. + */ + globalDefaultFuzzyEditDistance?: int32; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; } /** * A skill to translate text from one language to another. */ model TextTranslationSkill extends SearchIndexerSkill { - /** - * The language code to translate documents into for documents that don't specify - * the to language explicitly. - */ - defaultToLanguageCode: TextTranslationSkillLanguage; - - /** - * The language code to translate documents from for documents that don't specify - * the from language explicitly. - */ - defaultFromLanguageCode?: TextTranslationSkillLanguage; - - /** - * The language code to translate documents from when neither the fromLanguageCode - * input nor the defaultFromLanguageCode parameter are provided, and the automatic - * language detection is unsuccessful. Default is `en`. - */ - suggestedFrom?: TextTranslationSkillLanguage; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.TranslationSkill"; + /** + * The language code to translate documents into for documents that don't specify + * the to language explicitly. + */ + defaultToLanguageCode: TextTranslationSkillLanguage; + + /** + * The language code to translate documents from for documents that don't specify + * the from language explicitly. + */ + defaultFromLanguageCode?: TextTranslationSkillLanguage; + + /** + * The language code to translate documents from when neither the fromLanguageCode + * input nor the defaultFromLanguageCode parameter are provided, and the automatic + * language detection is unsuccessful. Default is `en`. + */ + suggestedFrom?: TextTranslationSkillLanguage; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.TranslationSkill"; } /** * A skill that extracts content from a file within the enrichment pipeline. */ model DocumentExtractionSkill extends SearchIndexerSkill { - /** - * The parsingMode for the skill. Will be set to 'default' if not defined. - */ - parsingMode?: string; + /** + * The parsingMode for the skill. Will be set to 'default' if not defined. + */ + parsingMode?: string; - /** - * The type of data to be extracted for the skill. Will be set to - * 'contentAndMetadata' if not defined. - */ - dataToExtract?: string; + /** + * The type of data to be extracted for the skill. Will be set to + * 'contentAndMetadata' if not defined. + */ + dataToExtract?: string; - /** - * A dictionary of configurations for the skill. - */ - #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" - configuration?: Record; + /** + * A dictionary of configurations for the skill. + */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" + configuration?: Record; - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; } /** @@ -9031,62 +9031,62 @@ model DocumentExtractionSkill extends SearchIndexerSkill { * having it call your custom code. */ model WebApiSkill extends SearchIndexerSkill { - /** - * The url for the Web API. - */ - uri: string; - - /** - * The headers required to make the http request. - */ - httpHeaders?: Record; - - /** - * The method for the http request. - */ - httpMethod?: string; - - /** - * The desired timeout for the request. Default is 30 seconds. - */ - timeout?: duration; - - /** - * The desired batch size which indicates number of documents. - */ - batchSize?: int32; - - /** - * If set, the number of parallel calls that can be made to the Web API. - */ - degreeOfParallelism?: int32; - - /** - * Applies to custom skills that connect to external code in an Azure function or - * some other application that provides the transformations. This value should be - * the application ID created for the function or app when it was registered with - * Azure Active Directory. When specified, the custom skill connects to the - * function or app using a managed ID (either system or user-assigned) of the - * search service and the access token of the function or app, using this value as - * the resource id for creating the scope of the access token. - */ - authResourceId?: string; - - /** - * The user-assigned managed identity used for outbound connections. If an - * authResourceId is provided and it's not specified, the system-assigned managed - * identity is used. On updates to the indexer, if the identity is unspecified, - * the value remains unchanged. If set to "none", the value of this property is - * cleared. - */ - authIdentity?: SearchIndexerDataIdentity; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Custom.WebApiSkill"; + /** + * The url for the Web API. + */ + uri: string; + + /** + * The headers required to make the http request. + */ + httpHeaders?: Record; + + /** + * The method for the http request. + */ + httpMethod?: string; + + /** + * The desired timeout for the request. Default is 30 seconds. + */ + timeout?: duration; + + /** + * The desired batch size which indicates number of documents. + */ + batchSize?: int32; + + /** + * If set, the number of parallel calls that can be made to the Web API. + */ + degreeOfParallelism?: int32; + + /** + * Applies to custom skills that connect to external code in an Azure function or + * some other application that provides the transformations. This value should be + * the application ID created for the function or app when it was registered with + * Azure Active Directory. When specified, the custom skill connects to the + * function or app using a managed ID (either system or user-assigned) of the + * search service and the access token of the function or app, using this value as + * the resource id for creating the scope of the access token. + */ + authResourceId?: string; + + /** + * The user-assigned managed identity used for outbound connections. If an + * authResourceId is provided and it's not specified, the system-assigned managed + * identity is used. On updates to the indexer, if the identity is unspecified, + * the value remains unchanged. If set to "none", the value of this property is + * cleared. + */ + authIdentity?: SearchIndexerDataIdentity; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Custom.WebApiSkill"; } /** @@ -9095,18 +9095,18 @@ model WebApiSkill extends SearchIndexerSkill { */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." model AzureOpenAIEmbeddingSkill extends SearchIndexerSkill { - ...AzureOpenAIVectorizerParameters; - - /** - * The number of dimensions the resulting output embeddings should have. Only - * supported in text-embedding-3 and later models. - */ - dimensions?: int32; - - /** - * A URI fragment specifying the type of skill. - */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; + ...AzureOpenAIVectorizerParameters; + + /** + * The number of dimensions the resulting output embeddings should have. Only + * supported in text-embedding-3 and later models. + */ + dimensions?: int32; + + /** + * A URI fragment specifying the type of skill. + */ + #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" + @encodedName("application/json", "@odata.type") + odataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; } diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index f13761f226c6..4ee4278b5ae6 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -8,507 +8,507 @@ using TypeSpec.Http; namespace Search; interface DataSourcesOperations { - /** - * Creates a new datasource or updates a datasource if it already exists. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/datasources('{dataSourceName}')") - @put - createOrUpdate is SearchDataSourceOperation< - { - ...matchingHeader; - ...preferHeader; - - /** - * The definition of the datasource to create or update. - */ - @body - dataSource: SearchIndexerDataSource; - }, - SearchIndexerDataSource & { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "200" | "201"; - } - >; - - /** - * Deletes a datasource. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/datasources('{dataSourceName}')") - @delete - delete is SearchDataSourceOperation< - { - ...matchingHeader; - }, - { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "204" | "404"; - } - >; - - /** - * Retrieves a datasource definition. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/datasources('{dataSourceName}')") - @get - get is SearchDataSourceOperation<{}, SearchIndexerDataSource>; - - /** - * Lists all datasources available for a search service. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/datasources") - @get - list is SearchOperation; - - /** - * Creates a new datasource. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/datasources") - @post - create is SearchOperation< - { - /** - * The definition of the datasource to create. - */ - @body - dataSource: SearchIndexerDataSource; - }, - SearchIndexerDataSource & { - @doc("A process exit code.") - @statusCode - code: "201"; - } - >; + /** + * Creates a new datasource or updates a datasource if it already exists. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/datasources('{dataSourceName}')") + @put + createOrUpdate is SearchDataSourceOperation< + { + ...matchingHeader; + ...preferHeader; + + /** + * The definition of the datasource to create or update. + */ + @body + dataSource: SearchIndexerDataSource; + }, + SearchIndexerDataSource & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } + >; + + /** + * Deletes a datasource. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/datasources('{dataSourceName}')") + @delete + delete is SearchDataSourceOperation< + { + ...matchingHeader; + }, + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } + >; + + /** + * Retrieves a datasource definition. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/datasources('{dataSourceName}')") + @get + get is SearchDataSourceOperation<{}, SearchIndexerDataSource>; + + /** + * Lists all datasources available for a search service. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/datasources") + @get + list is SearchOperation; + + /** + * Creates a new datasource. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/datasources") + @post + create is SearchOperation< + { + /** + * The definition of the datasource to create. + */ + @body + dataSource: SearchIndexerDataSource; + }, + SearchIndexerDataSource & { + @doc("A process exit code.") + @statusCode + code: "201"; + } + >; } interface IndexersOperations { - /** - * Resets the change tracking state associated with an indexer. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/indexers('{indexerName}')/search.reset") - @post - reset is SearchIndexerOperation< - {}, - { - @doc("A process exit code.") - @statusCode - code: "204"; - } - >; - - /** - * Runs an indexer on-demand. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/indexers('{indexerName}')/search.run") - @post - run is SearchIndexerOperation< - {}, - { - @doc("A process exit code.") - @statusCode - code: "202"; - } - >; - - /** - * Creates a new indexer or updates an indexer if it already exists. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/indexers('{indexerName}')") - @put - createOrUpdate is SearchIndexerOperation< - { - ...matchingHeader; - ...preferHeader; - - /** - * The definition of the indexer to create or update. - */ - @body - indexer: SearchIndexer; - }, - SearchIndexer & { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "200" | "201"; - } - >; - - /** - * Deletes an indexer. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/indexers('{indexerName}')") - @delete - delete is SearchIndexerOperation< - { - ...matchingHeader; - }, - { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "204" | "404"; - } - >; - - /** - * Retrieves an indexer definition. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/indexers('{indexerName}')") - @get - get is SearchIndexerOperation<{}, SearchIndexer>; - - /** - * Lists all indexers available for a search service. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/indexers") - @get - list is SearchOperation; - - /** - * Creates a new indexer. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/indexers") - @post - create is SearchOperation< - { - /** - * The definition of the indexer to create. - */ - @body - indexer: SearchIndexer; - }, - SearchIndexer & { - @doc("A process exit code.") - @statusCode - code: "201"; - } - >; - - /** - * Returns the current status and execution history of an indexer. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/indexers('{indexerName}')/search.status") - @get - getStatus is SearchIndexerOperation<{}, SearchIndexerStatus>; + /** + * Resets the change tracking state associated with an indexer. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/indexers('{indexerName}')/search.reset") + @post + reset is SearchIndexerOperation< + {}, + { + @doc("A process exit code.") + @statusCode + code: "204"; + } + >; + + /** + * Runs an indexer on-demand. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/indexers('{indexerName}')/search.run") + @post + run is SearchIndexerOperation< + {}, + { + @doc("A process exit code.") + @statusCode + code: "202"; + } + >; + + /** + * Creates a new indexer or updates an indexer if it already exists. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/indexers('{indexerName}')") + @put + createOrUpdate is SearchIndexerOperation< + { + ...matchingHeader; + ...preferHeader; + + /** + * The definition of the indexer to create or update. + */ + @body + indexer: SearchIndexer; + }, + SearchIndexer & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } + >; + + /** + * Deletes an indexer. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/indexers('{indexerName}')") + @delete + delete is SearchIndexerOperation< + { + ...matchingHeader; + }, + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } + >; + + /** + * Retrieves an indexer definition. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/indexers('{indexerName}')") + @get + get is SearchIndexerOperation<{}, SearchIndexer>; + + /** + * Lists all indexers available for a search service. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/indexers") + @get + list is SearchOperation; + + /** + * Creates a new indexer. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/indexers") + @post + create is SearchOperation< + { + /** + * The definition of the indexer to create. + */ + @body + indexer: SearchIndexer; + }, + SearchIndexer & { + @doc("A process exit code.") + @statusCode + code: "201"; + } + >; + + /** + * Returns the current status and execution history of an indexer. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/indexers('{indexerName}')/search.status") + @get + getStatus is SearchIndexerOperation<{}, SearchIndexerStatus>; } interface SkillsetsOperations { - /** - * Creates a new skillset in a search service or updates the skillset if it - * already exists. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/skillsets('{skillsetName}')") - @put - createOrUpdate is SearchSkillsetOperation< - { - ...matchingHeader; - ...preferHeader; - - /** - * The skillset containing one or more skills to create or update in a search - * service. - */ - @body - skillset: SearchIndexerSkillset; - }, - SearchIndexerSkillset & { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "200" | "201"; - } - >; - - /** - * Deletes a skillset in a search service. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/skillsets('{skillsetName}')") - @delete - delete is SearchSkillsetOperation< - { - ...matchingHeader; - }, - { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "204" | "404"; - } - >; - - /** - * Retrieves a skillset in a search service. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/skillsets('{skillsetName}')") - @get - get is SearchSkillsetOperation<{}, SearchIndexerSkillset>; - - /** - * List all skillsets in a search service. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/skillsets") - @get - list is SearchOperation; - - /** - * Creates a new skillset in a search service. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/skillsets") - @post - create is SearchOperation< - { - /** - * The skillset containing one or more skills to create in a search service. - */ - @body - skillset: SearchIndexerSkillset; - }, - SearchIndexerSkillset & { - @doc("A process exit code.") - @statusCode - code: "201"; - } - >; + /** + * Creates a new skillset in a search service or updates the skillset if it + * already exists. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/skillsets('{skillsetName}')") + @put + createOrUpdate is SearchSkillsetOperation< + { + ...matchingHeader; + ...preferHeader; + + /** + * The skillset containing one or more skills to create or update in a search + * service. + */ + @body + skillset: SearchIndexerSkillset; + }, + SearchIndexerSkillset & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } + >; + + /** + * Deletes a skillset in a search service. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/skillsets('{skillsetName}')") + @delete + delete is SearchSkillsetOperation< + { + ...matchingHeader; + }, + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } + >; + + /** + * Retrieves a skillset in a search service. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/skillsets('{skillsetName}')") + @get + get is SearchSkillsetOperation<{}, SearchIndexerSkillset>; + + /** + * List all skillsets in a search service. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/skillsets") + @get + list is SearchOperation; + + /** + * Creates a new skillset in a search service. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/skillsets") + @post + create is SearchOperation< + { + /** + * The skillset containing one or more skills to create in a search service. + */ + @body + skillset: SearchIndexerSkillset; + }, + SearchIndexerSkillset & { + @doc("A process exit code.") + @statusCode + code: "201"; + } + >; } interface SynonymMapsOperations { - /** - * Creates a new synonym map or updates a synonym map if it already exists. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/synonymmaps('{synonymMapName}')") - @put - createOrUpdate is SearchSynonymMapOperation< - { - ...matchingHeader; - ...preferHeader; - - /** - * The definition of the synonym map to create or update. - */ - @body - synonymMap: SynonymMap; - }, - SynonymMap & { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "200" | "201"; - } - >; - - /** - * Deletes a synonym map. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/synonymmaps('{synonymMapName}')") - @delete - delete is SearchSynonymMapOperation< - { - ...matchingHeader; - }, - { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "204" | "404"; - } - >; - - /** - * Retrieves a synonym map definition. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/synonymmaps('{synonymMapName}')") - @get - get is SearchSynonymMapOperation<{}, SynonymMap>; - - /** - * Lists all synonym maps available for a search service. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/synonymmaps") - @get - list is SearchOperation; - - /** - * Creates a new synonym map. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/synonymmaps") - @post - create is SearchOperation< - { - /** - * The definition of the synonym map to create. - */ - @body - synonymMap: SynonymMap; - }, - SynonymMap & { - @doc("A process exit code.") - @statusCode - code: "201"; - } - >; + /** + * Creates a new synonym map or updates a synonym map if it already exists. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/synonymmaps('{synonymMapName}')") + @put + createOrUpdate is SearchSynonymMapOperation< + { + ...matchingHeader; + ...preferHeader; + + /** + * The definition of the synonym map to create or update. + */ + @body + synonymMap: SynonymMap; + }, + SynonymMap & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } + >; + + /** + * Deletes a synonym map. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/synonymmaps('{synonymMapName}')") + @delete + delete is SearchSynonymMapOperation< + { + ...matchingHeader; + }, + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } + >; + + /** + * Retrieves a synonym map definition. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/synonymmaps('{synonymMapName}')") + @get + get is SearchSynonymMapOperation<{}, SynonymMap>; + + /** + * Lists all synonym maps available for a search service. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/synonymmaps") + @get + list is SearchOperation; + + /** + * Creates a new synonym map. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/synonymmaps") + @post + create is SearchOperation< + { + /** + * The definition of the synonym map to create. + */ + @body + synonymMap: SynonymMap; + }, + SynonymMap & { + @doc("A process exit code.") + @statusCode + code: "201"; + } + >; } interface IndexesOperations { - /** - * Creates a new search index. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/indexes") - @post - create is SearchOperation< - { - /** - * The definition of the index to create. - */ - @body - index: SearchIndex; - }, - SearchIndex & { - @doc("A process exit code.") - @statusCode - code: "201"; - } - >; - - /** - * Lists all indexes available for a search service. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/indexes") - @get - list is SearchOperation; - - /** - * Creates a new search index or updates an index if it already exists. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" - @route("/indexes('{indexName}')") - @put - createOrUpdate is SearchIndexOperation< - { - ...matchingHeader; - - /** - * Allows new analyzers, tokenizers, token filters, or char filters to be added to - * an index by taking the index offline for at least a few seconds. This - * temporarily causes indexing and query requests to fail. Performance and write - * availability of the index can be impaired for several minutes after the index - * is updated, or longer for very large indexes. - */ - @query - allowIndexDowntime?: boolean; - - ...preferHeader; - - /** - * The definition of the index to create or update. - */ - @body - index: SearchIndex; - }, - SearchIndex & { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "200" | "201"; - } - >; - - /** - * Deletes a search index and all the documents it contains. This operation is - * permanent, with no recovery option. Make sure you have a master copy of your - * index definition, data ingestion code, and a backup of the primary data source - * in case you need to re-build the index. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/indexes('{indexName}')") - @delete - delete is SearchIndexOperation< - { - ...matchingHeader; - }, - { - #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") - @statusCode - code: "204" | "404"; - } - >; - - /** - * Retrieves an index definition. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/indexes('{indexName}')") - @get - get is SearchIndexOperation<{}, SearchIndex>; - - /** - * Returns statistics for the given index, including a document count and storage - * usage. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/indexes('{indexName}')/search.stats") - @get - getStatistics is SearchIndexOperation<{}, GetIndexStatisticsResult>; - - /** - * Shows how an analyzer breaks text into tokens. - */ - #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" - @route("/indexes('{indexName}')/search.analyze") - @post - analyze is SearchIndexOperation< - { - /** - * The text and analyzer or analysis components to test. - */ - @body - request: AnalyzeRequest; - }, - AnalyzeResult - >; + /** + * Creates a new search index. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/indexes") + @post + create is SearchOperation< + { + /** + * The definition of the index to create. + */ + @body + index: SearchIndex; + }, + SearchIndex & { + @doc("A process exit code.") + @statusCode + code: "201"; + } + >; + + /** + * Lists all indexes available for a search service. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/indexes") + @get + list is SearchOperation; + + /** + * Creates a new search index or updates an index if it already exists. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Pre-existing API contract" + @route("/indexes('{indexName}')") + @put + createOrUpdate is SearchIndexOperation< + { + ...matchingHeader; + + /** + * Allows new analyzers, tokenizers, token filters, or char filters to be added to + * an index by taking the index offline for at least a few seconds. This + * temporarily causes indexing and query requests to fail. Performance and write + * availability of the index can be impaired for several minutes after the index + * is updated, or longer for very large indexes. + */ + @query + allowIndexDowntime?: boolean; + + ...preferHeader; + + /** + * The definition of the index to create or update. + */ + @body + index: SearchIndex; + }, + SearchIndex & { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "200" | "201"; + } + >; + + /** + * Deletes a search index and all the documents it contains. This operation is + * permanent, with no recovery option. Make sure you have a master copy of your + * index definition, data ingestion code, and a backup of the primary data source + * in case you need to re-build the index. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/indexes('{indexName}')") + @delete + delete is SearchIndexOperation< + { + ...matchingHeader; + }, + { + #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" + @doc("A process exit code.") + @statusCode + code: "204" | "404"; + } + >; + + /** + * Retrieves an index definition. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/indexes('{indexName}')") + @get + get is SearchIndexOperation<{}, SearchIndex>; + + /** + * Returns statistics for the given index, including a document count and storage + * usage. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/indexes('{indexName}')/search.stats") + @get + getStatistics is SearchIndexOperation<{}, GetIndexStatisticsResult>; + + /** + * Shows how an analyzer breaks text into tokens. + */ + #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "Pre-existing API contract" + @route("/indexes('{indexName}')/search.analyze") + @post + analyze is SearchIndexOperation< + { + /** + * The text and analyzer or analysis components to test. + */ + @body + request: AnalyzeRequest; + }, + AnalyzeResult + >; } /** From 6835b53e2d8ba8a41fcf88b1eae56d4ad44ff9fb Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 12 Nov 2024 11:19:46 -0800 Subject: [PATCH 40/78] update --- specification/search/Azure.Search/tspconfig.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/search/Azure.Search/tspconfig.yaml b/specification/search/Azure.Search/tspconfig.yaml index 48ca1fd3a10d..de4eef6a647b 100644 --- a/specification/search/Azure.Search/tspconfig.yaml +++ b/specification/search/Azure.Search/tspconfig.yaml @@ -1,4 +1,4 @@ -parameters: +parameters: "service-dir": default: "sdk/search" "dependencies": @@ -11,7 +11,7 @@ options: azure-resource-provider-folder: "data-plane" emitter-output-dir: "{project-root}/.." output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json" - "@azure-tools/typespec-python": + "@azure-tools/typespec-python": package-dir: "azure-search-documents" api-version: "2024-07-01" package-name: "{package-dir}" From 321baf98e969149a3422a451a43ffc25842db5dd Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 11:05:16 -0800 Subject: [PATCH 41/78] update --- specification/search/Azure.Search/client.tsp | 84 ++++ .../search/Azure.Search/models-index.tsp | 19 +- .../search/Azure.Search/models-service.tsp | 423 ++++++++---------- .../search/Azure.Search/routes-index.tsp | 2 +- .../search/Azure.Search/tspconfig.yaml | 2 +- 5 files changed, 279 insertions(+), 251 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index f1dbabc351df..cb5d8323c52d 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -104,3 +104,87 @@ namespace Customizations; @@clientName(TagScoringFunction.tag, "parameters"); @@clientName(OcrSkill.detectOrientation, "shouldDetectOrientation"); @@clientName(PIIDetectionSkill.maskingCharacter, "mask"); +@@clientName(DataChangeDetectionPolicy.`@odata.type`, "odataType"); +@@clientName(DataDeletionDetectionPolicy.`@odata.type`, "odataType"); +@@clientName(SearchIndexerSkill.`@odata.type`, "odataType"); +@@clientName(CognitiveServicesAccount.`@odata.type`, "odataType"); +@@clientName(LexicalAnalyzer.`@odata.type`, "odataType"); +@@clientName(LexicalTokenizer.`@odata.type`, "odataType"); +@@clientName(TokenFilter.`@odata.type`, "odataType"); +@@clientName(CharFilter.`@odata.type`, "odataType"); +@@clientName(SimilarityAlgorithm.`@odata.type`, "odataType"); +@@clientName(CustomAnalyzer.`@odata.type`, "odataType"); +@@clientName(PatternAnalyzer.`@odata.type`, "odataType"); +@@clientName(LuceneStandardAnalyzer.`@odata.type`, "odataType"); +@@clientName(StopAnalyzer.`@odata.type`, "odataType"); +@@clientName(ClassicTokenizer.`@odata.type`, "odataType"); +@@clientName(EdgeNGramTokenizer.`@odata.type`, "odataType"); +@@clientName(KeywordTokenizer.`@odata.type`, "odataType"); +@@clientName(KeywordTokenizerV2.`@odata.type`, "odataType"); +@@clientName(MicrosoftLanguageTokenizer.`@odata.type`, "odataType"); +@@clientName(MicrosoftLanguageStemmingTokenizer.`@odata.type`, "odataType"); +@@clientName(NGramTokenizer.`@odata.type`, "odataType"); +@@clientName(PatternTokenizer.`@odata.type`, "odataType"); +@@clientName(LuceneStandardTokenizer.`@odata.type`, "odataType"); +@@clientName(LuceneStandardTokenizerV2.`@odata.type`, "odataType"); +@@clientName(UaxUrlEmailTokenizer.`@odata.type`, "odataType"); +@@clientName(AsciiFoldingTokenFilter.`@odata.type`, "odataType"); +@@clientName(CjkBigramTokenFilter.`@odata.type`, "odataType"); +@@clientName(CommonGramTokenFilter.`@odata.type`, "odataType"); +@@clientName(DictionaryDecompounderTokenFilter.`@odata.type`, "odataType"); +@@clientName(EdgeNGramTokenFilter.`@odata.type`, "odataType"); +@@clientName(EdgeNGramTokenFilterV2.`@odata.type`, "odataType"); +@@clientName(ElisionTokenFilter.`@odata.type`, "odataType"); +@@clientName(KeepTokenFilter.`@odata.type`, "odataType"); +@@clientName(KeywordMarkerTokenFilter.`@odata.type`, "odataType"); +@@clientName(LengthTokenFilter.`@odata.type`, "odataType"); +@@clientName(LimitTokenFilter.`@odata.type`, "odataType"); +@@clientName(NGramTokenFilter.`@odata.type`, "odataType"); +@@clientName(NGramTokenFilterV2.`@odata.type`, "odataType"); +@@clientName(PatternCaptureTokenFilter.`@odata.type`, "odataType"); +@@clientName(PatternReplaceTokenFilter.`@odata.type`, "odataType"); +@@clientName(PhoneticTokenFilter.`@odata.type`, "odataType"); +@@clientName(ShingleTokenFilter.`@odata.type`, "odataType"); +@@clientName(SnowballTokenFilter.`@odata.type`, "odataType"); +@@clientName(StemmerTokenFilter.`@odata.type`, "odataType"); +@@clientName(StemmerOverrideTokenFilter.`@odata.type`, "odataType"); +@@clientName(StopwordsTokenFilter.`@odata.type`, "odataType"); +@@clientName(SynonymTokenFilter.`@odata.type`, "odataType"); +@@clientName(TruncateTokenFilter.`@odata.type`, "odataType"); +@@clientName(UniqueTokenFilter.`@odata.type`, "odataType"); +@@clientName(WordDelimiterTokenFilter.`@odata.type`, "odataType"); +@@clientName(MappingCharFilter.`@odata.type`, "odataType"); +@@clientName(PatternReplaceCharFilter.`@odata.type`, "odataType"); +@@clientName(ClassicSimilarityAlgorithm.`@odata.type`, "odataType"); +@@clientName(BM25SimilarityAlgorithm.`@odata.type`, "odataType"); +@@clientName(SearchIndexerDataIdentity.`@odata.type`, "odataType"); +@@clientName(SearchIndexerDataNoneIdentity.`@odata.type`, "odataType"); +@@clientName(SearchIndexerDataUserAssignedIdentity.`@odata.type`, "odataType"); +@@clientName(HighWaterMarkChangeDetectionPolicy.`@odata.type`, "odataType"); +@@clientName(SqlIntegratedChangeTrackingPolicy.`@odata.type`, "odataType"); +@@clientName(SoftDeleteColumnDeletionDetectionPolicy.`@odata.type`, + "odataType" +); +@@clientName(DefaultCognitiveServicesAccount.`@odata.type`, "odataType"); +@@clientName(CognitiveServicesAccountKey.`@odata.type`, "odataType"); +@@clientName(ConditionalSkill.`@odata.type`, "odataType"); +@@clientName(KeyPhraseExtractionSkill.`@odata.type`, "odataType"); +@@clientName(OcrSkill.`@odata.type`, "odataType"); +@@clientName(ImageAnalysisSkill.`@odata.type`, "odataType"); +@@clientName(LanguageDetectionSkill.`@odata.type`, "odataType"); +@@clientName(ShaperSkill.`@odata.type`, "odataType"); +@@clientName(MergeSkill.`@odata.type`, "odataType"); +@@clientName(EntityRecognitionSkill.`@odata.type`, "odataType"); +@@clientName(SentimentSkill.`@odata.type`, "odataType"); +@@clientName(SentimentSkillV3.`@odata.type`, "odataType"); +@@clientName(EntityLinkingSkill.`@odata.type`, "odataType"); +@@clientName(EntityRecognitionSkillV3.`@odata.type`, "odataType"); +@@clientName(EntityRecognitionSkill.`@odata.type`, "odataType"); +@@clientName(PIIDetectionSkill.`@odata.type`, "odataType"); +@@clientName(SplitSkill.`@odata.type`, "odataType"); +@@clientName(CustomEntityLookupSkill.`@odata.type`, "odataType"); +@@clientName(TextTranslationSkill.`@odata.type`, "odataType"); +@@clientName(DocumentExtractionSkill.`@odata.type`, "odataType"); +@@clientName(WebApiSkill.`@odata.type`, "odataType"); +@@clientName(AzureOpenAIEmbeddingSkill.`@odata.type`, "odataType"); +@@clientName(PathHierarchyTokenizerV2.`@odata.type`, "odataType"); \ No newline at end of file diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index c0d5ee5c5d54..ddf66c12e249 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -279,16 +279,13 @@ union AutocompleteMode { /** * Matching two-term phrases in the index will be suggested. For example, if the - * input is 'medic', the suggested terms could include 'medicare coverage' and - * 'medical assistant'. + * input is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'. */ TwoTerms: "twoTerms", /** * Completes the last term in a query with two or more terms, where the last two - * terms are a phrase that exists in the index. For example, if the input is - * 'washington medic', the suggested terms could include 'washington medicaid' and - * 'washington medical'. + * terms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'. */ OneTermWithContext: "oneTermWithContext", } @@ -646,8 +643,8 @@ model VectorQuery { /** * Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling' - * parameter configured in the index definition. It can be set only when - * 'rerankWithOriginalVectors' is true. This parameter is only permitted when a + * parameter configured in the index definition. It can be set only when 'rerankWithOriginalVectors' + * is true. This parameter is only permitted when a * compression method is used on the underlying vector field. */ oversampling?: float64; @@ -874,6 +871,14 @@ model IndexAction { actionType?: IndexActionType; } +/** + * A document retrieved via a document lookup operation. + */ +#suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" +model LookupDocument { + ...Record; +} + /** * Response containing the status of operations for all documents in the indexing * request. diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 679d161577c2..0fbd8bbf697a 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -831,8 +831,8 @@ union VectorSearchCompressionKind { /** * Binary Quantization, a type of compression method. In binary quantization, the - * original vectors values are compressed to the narrower binary type by - * discretizing and representing each component of a vector using binary values, + * original vectors values are compressed to the narrower binary type by discretizing + * and representing each component of a vector using binary values, * thereby reducing the overall data size. */ BinaryQuantization: "binaryQuantization", @@ -4815,23 +4815,23 @@ model SearchIndexerDataContainer { /** * Base type for data change detection policies. */ -@discriminator("odataType") +@discriminator("@odata.type") model DataChangeDetectionPolicy { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; } /** * Base type for data deletion detection policies. */ -@discriminator("odataType") +@discriminator("@odata.type") model DataDeletionDetectionPolicy { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; } /** @@ -5451,12 +5451,12 @@ model SearchIndexerSkillset { /** * Base type for skills. */ -@discriminator("odataType") +@discriminator("@odata.type") model SearchIndexerSkill { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; /** * The name of the skill which uniquely identifies it within the skillset. A skill @@ -5534,12 +5534,12 @@ model OutputFieldMappingEntry { /** * Base type for describing any Azure AI service resource attached to a skillset. */ -@discriminator("odataType") +@discriminator("@odata.type") model CognitiveServicesAccount { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; /** * Description of the Azure AI service resource attached to a skillset. @@ -5673,8 +5673,7 @@ model SearchIndexerIndexProjection { */ model SearchIndexerIndexProjectionSelector { /** - * Name of the search index to project to. Must have a key field with the - * 'keyword' analyzer set. + * Name of the search index to project to. Must have a key field with the 'keyword' analyzer set. */ targetIndexName: string; @@ -6144,12 +6143,12 @@ model SearchSuggester { /** * Base type for analyzers. */ -@discriminator("odataType") +@discriminator("@odata.type") model LexicalAnalyzer { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; /** * The name of the analyzer. It must only contain letters, digits, spaces, dashes @@ -6162,12 +6161,12 @@ model LexicalAnalyzer { /** * Base type for tokenizers. */ -@discriminator("odataType") +@discriminator("@odata.type") model LexicalTokenizer { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; /** * The name of the tokenizer. It must only contain letters, digits, spaces, dashes @@ -6180,12 +6179,12 @@ model LexicalTokenizer { /** * Base type for token filters. */ -@discriminator("odataType") +@discriminator("@odata.type") model TokenFilter { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; /** * The name of the token filter. It must only contain letters, digits, spaces, @@ -6198,12 +6197,12 @@ model TokenFilter { /** * Base type for character filters. */ -@discriminator("odataType") +@discriminator("@odata.type") model CharFilter { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; /** * The name of the char filter. It must only contain letters, digits, spaces, @@ -6219,12 +6218,12 @@ model CharFilter { * relevant the document is to that specific query. Those scores are used to rank * the search results. */ -@discriminator("odataType") +@discriminator("@odata.type") model SimilarityAlgorithm { /** The discriminator for derived types. */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; } /** @@ -6674,8 +6673,8 @@ model CustomAnalyzer extends LexicalAnalyzer { /** * A URI fragment specifying the type of analyzer. */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CustomAnalyzer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.CustomAnalyzer"; } /** @@ -6708,7 +6707,7 @@ model PatternAnalyzer extends LexicalAnalyzer { * A URI fragment specifying the type of analyzer. */ #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." - odataType: "#Microsoft.Azure.Search.PatternAnalyzer"; + `@odata.type`: "#Microsoft.Azure.Search.PatternAnalyzer"; } /** @@ -6731,9 +6730,8 @@ model LuceneStandardAnalyzer extends LexicalAnalyzer { /** * A URI fragment specifying the type of analyzer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StandardAnalyzer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.StandardAnalyzer"; } /** @@ -6749,8 +6747,8 @@ model StopAnalyzer extends LexicalAnalyzer { /** * A URI fragment specifying the type of analyzer. */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StopAnalyzer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.StopAnalyzer"; } /** @@ -6768,9 +6766,8 @@ model ClassicTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ClassicTokenizer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.ClassicTokenizer"; } /** @@ -6800,8 +6797,8 @@ model EdgeNGramTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; } /** @@ -6817,9 +6814,8 @@ model KeywordTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeywordTokenizer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.KeywordTokenizer"; } /** @@ -6837,9 +6833,8 @@ model KeywordTokenizerV2 extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeywordTokenizerV2"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.KeywordTokenizerV2"; } /** @@ -6869,8 +6864,8 @@ model MicrosoftLanguageTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer"; } /** @@ -6901,9 +6896,8 @@ model MicrosoftLanguageStemmingTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer"; } /** @@ -6933,9 +6927,8 @@ model NGramTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.NGramTokenizer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.NGramTokenizer"; } /** @@ -6973,8 +6966,8 @@ model PathHierarchyTokenizerV2 extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.PathHierarchyTokenizerV2"; } /** @@ -7003,9 +6996,8 @@ model PatternTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternTokenizer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.PatternTokenizer"; } /** @@ -7022,9 +7014,8 @@ model LuceneStandardTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StandardTokenizer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.StandardTokenizer"; } /** @@ -7042,9 +7033,8 @@ model LuceneStandardTokenizerV2 extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StandardTokenizerV2"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.StandardTokenizerV2"; } /** @@ -7062,9 +7052,8 @@ model UaxUrlEmailTokenizer extends LexicalTokenizer { /** * A URI fragment specifying the type of tokenizer. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.UaxUrlEmailTokenizer"; } /** @@ -7082,9 +7071,8 @@ model AsciiFoldingTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.AsciiFoldingTokenFilter"; } /** @@ -7106,9 +7094,8 @@ model CjkBigramTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; } /** @@ -7138,9 +7125,8 @@ model CommonGramTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CommonGramTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.CommonGramTokenFilter"; } /** @@ -7183,9 +7169,8 @@ model DictionaryDecompounderTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; } /** @@ -7213,9 +7198,8 @@ model EdgeNGramTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; } /** @@ -7246,9 +7230,8 @@ model EdgeNGramTokenFilterV2 extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2"; } /** @@ -7264,9 +7247,8 @@ model ElisionTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ElisionTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.ElisionTokenFilter"; } /** @@ -7287,9 +7269,8 @@ model KeepTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeepTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.KeepTokenFilter"; } /** @@ -7310,9 +7291,8 @@ model KeywordMarkerTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.KeywordMarkerTokenFilter"; } /** @@ -7336,9 +7316,8 @@ model LengthTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.LengthTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.LengthTokenFilter"; } /** @@ -7360,9 +7339,8 @@ model LimitTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.LimitTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.LimitTokenFilter"; } /** @@ -7384,9 +7362,8 @@ model NGramTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.NGramTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.NGramTokenFilter"; } /** @@ -7411,9 +7388,8 @@ model NGramTokenFilterV2 extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.NGramTokenFilterV2"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.NGramTokenFilterV2"; } /** @@ -7435,9 +7411,8 @@ model PatternCaptureTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.PatternCaptureTokenFilter"; } /** @@ -7462,9 +7437,8 @@ model PatternReplaceTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.PatternReplaceTokenFilter"; } /** @@ -7486,9 +7460,8 @@ model PhoneticTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PhoneticTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.PhoneticTokenFilter"; } /** @@ -7537,9 +7510,8 @@ model ShingleTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ShingleTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.ShingleTokenFilter"; } /** @@ -7555,9 +7527,8 @@ model SnowballTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SnowballTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.SnowballTokenFilter"; } /** @@ -7573,9 +7544,8 @@ model StemmerTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StemmerTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.StemmerTokenFilter"; } /** @@ -7595,9 +7565,8 @@ model StemmerOverrideTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.StemmerOverrideTokenFilter"; } /** @@ -7632,9 +7601,8 @@ model StopwordsTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.StopwordsTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.StopwordsTokenFilter"; } /** @@ -7671,9 +7639,8 @@ model SynonymTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SynonymTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.SynonymTokenFilter"; } /** @@ -7690,9 +7657,8 @@ model TruncateTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.TruncateTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.TruncateTokenFilter"; } /** @@ -7709,9 +7675,8 @@ model UniqueTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.UniqueTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.UniqueTokenFilter"; } /** @@ -7782,9 +7747,8 @@ model WordDelimiterTokenFilter extends TokenFilter { /** * A URI fragment specifying the type of token filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.WordDelimiterTokenFilter"; } /** @@ -7803,9 +7767,8 @@ model MappingCharFilter extends CharFilter { /** * A URI fragment specifying the type of char filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.MappingCharFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.MappingCharFilter"; } /** @@ -7830,9 +7793,8 @@ model PatternReplaceCharFilter extends CharFilter { /** * A URI fragment specifying the type of char filter. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.PatternReplaceCharFilter"; } /** @@ -7842,9 +7804,9 @@ model PatternReplaceCharFilter extends CharFilter { * that only partially match the searched queries. */ model ClassicSimilarityAlgorithm extends SimilarityAlgorithm { - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.ClassicSimilarity"; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.ClassicSimilarity"; } /** @@ -7871,9 +7833,9 @@ model BM25SimilarityAlgorithm extends SimilarityAlgorithm { */ b?: float64; - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.BM25Similarity"; + /** The discriminator for derived types. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.BM25Similarity"; } /** @@ -8052,12 +8014,14 @@ model AzureOpenAIVectorizerParameters { /** * Abstract base type for data identities. */ -@discriminator("odataType") +@discriminator("@odata.type") model SearchIndexerDataIdentity { - /** The discriminator for derived types. */ + /** + * A URI fragment specifying the type of identity. + */ #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: string; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: string; } /** @@ -8124,15 +8088,15 @@ model WebApiVectorizerParameters { } /** - * Clears the identity property of a datasource. + * Specifies the AI Services Vision parameters for vectorizing a query image or + * text. */ model SearchIndexerDataNoneIdentity extends SearchIndexerDataIdentity { /** * A URI fragment specifying the type of identity. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DataNoneIdentity"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.DataNoneIdentity"; } /** @@ -8150,9 +8114,8 @@ model SearchIndexerDataUserAssignedIdentity extends SearchIndexerDataIdentity { /** * A URI fragment specifying the type of identity. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.DataUserAssignedIdentity"; } /** @@ -8168,9 +8131,8 @@ model HighWaterMarkChangeDetectionPolicy extends DataChangeDetectionPolicy { /** * A URI fragment specifying the type of data change detection policy. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"; } /** @@ -8181,9 +8143,8 @@ model SqlIntegratedChangeTrackingPolicy extends DataChangeDetectionPolicy { /** * A URI fragment specifying the type of data change detection policy. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"; } /** @@ -8206,9 +8167,8 @@ model SoftDeleteColumnDeletionDetectionPolicy /** * A URI fragment specifying the type of data deletion detection policy. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"; } /** @@ -8360,9 +8320,8 @@ model DefaultCognitiveServicesAccount extends CognitiveServicesAccount { * A URI fragment specifying the type of Azure AI service resource attached to a * skillset. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.DefaultCognitiveServices"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.DefaultCognitiveServices"; } /** @@ -8379,9 +8338,8 @@ model CognitiveServicesAccountKey extends CognitiveServicesAccount { * A URI fragment specifying the type of Azure AI service resource attached to a * skillset. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Azure.Search.CognitiveServicesByKey"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.CognitiveServicesByKey"; } /** @@ -8506,9 +8464,8 @@ model ConditionalSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Util.ConditionalSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Util.ConditionalSkill"; } /** @@ -8536,9 +8493,8 @@ model KeyPhraseExtractionSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.KeyPhraseExtractionSkill"; } /** @@ -8564,9 +8520,8 @@ model OcrSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Vision.OcrSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Vision.OcrSkill"; } /** @@ -8592,9 +8547,8 @@ model ImageAnalysisSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Vision.ImageAnalysisSkill"; } /** @@ -8619,9 +8573,8 @@ model LanguageDetectionSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.LanguageDetectionSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.LanguageDetectionSkill"; } /** @@ -8632,9 +8585,8 @@ model ShaperSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Util.ShaperSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Util.ShaperSkill"; } /** @@ -8657,9 +8609,8 @@ model MergeSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.MergeSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.MergeSkill"; } /** @@ -8694,9 +8645,8 @@ model EntityRecognitionSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.EntityRecognitionSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.EntityRecognitionSkill"; } /** @@ -8711,9 +8661,8 @@ model SentimentSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.SentimentSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.SentimentSkill"; } /** @@ -8745,9 +8694,8 @@ model SentimentSkillV3 extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.V3.SentimentSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.V3.SentimentSkill"; } /** @@ -8777,9 +8725,8 @@ model EntityLinkingSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.V3.EntityLinkingSkill"; } /** @@ -8814,9 +8761,8 @@ model EntityRecognitionSkillV3 extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.V3.EntityRecognitionSkill"; } /** @@ -8872,9 +8818,8 @@ model PIIDetectionSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.PIIDetectionSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.PIIDetectionSkill"; } /** @@ -8913,9 +8858,8 @@ model SplitSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.SplitSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.SplitSkill"; } /** @@ -8961,9 +8905,8 @@ model CustomEntityLookupSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.CustomEntityLookupSkill"; } /** @@ -8992,9 +8935,8 @@ model TextTranslationSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.TranslationSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.TranslationSkill"; } /** @@ -9021,9 +8963,8 @@ model DocumentExtractionSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Util.DocumentExtractionSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Util.DocumentExtractionSkill"; } /** @@ -9084,9 +9025,8 @@ model WebApiSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Custom.WebApiSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Custom.WebApiSkill"; } /** @@ -9106,7 +9046,6 @@ model AzureOpenAIEmbeddingSkill extends SearchIndexerSkill { /** * A URI fragment specifying the type of skill. */ - #suppress "@azure-tools/typespec-azure-core/no-string-discriminator" "Existing" - @encodedName("application/json", "@odata.type") - odataType: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill"; } diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index 05de430627ae..d4b94f708ba3 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -282,7 +282,7 @@ interface DocumentsOperations { @query("$select") selectedFields?: string[]; }, - Record + LookupDocument >; /** diff --git a/specification/search/Azure.Search/tspconfig.yaml b/specification/search/Azure.Search/tspconfig.yaml index de4eef6a647b..ae2244125853 100644 --- a/specification/search/Azure.Search/tspconfig.yaml +++ b/specification/search/Azure.Search/tspconfig.yaml @@ -10,7 +10,7 @@ options: "@azure-tools/typespec-autorest": azure-resource-provider-folder: "data-plane" emitter-output-dir: "{project-root}/.." - output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json" + output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/search.json" "@azure-tools/typespec-python": package-dir: "azure-search-documents" api-version: "2024-07-01" From 2a53899a2c95d93e77f8a898d57082cc7caa4994 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 11:12:17 -0800 Subject: [PATCH 42/78] update --- .../2024-07-01/{openapi.json => search.json} | 1064 +---------------- 1 file changed, 52 insertions(+), 1012 deletions(-) rename specification/search/data-plane/Search/stable/2024-07-01/{openapi.json => search.json} (93%) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/openapi.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json similarity index 93% rename from specification/search/data-plane/Search/stable/2024-07-01/openapi.json rename to specification/search/data-plane/Search/stable/2024-07-01/search.json index 05cdd55da13d..c0840968bbcd 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/openapi.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -1301,12 +1301,12 @@ { "name": "TwoTerms", "value": "twoTerms", - "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and\n'medical assistant'." + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." }, { "name": "OneTermWithContext", "value": "oneTermWithContext", - "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is\n'washington medic', the suggested terms could include 'washington medicaid' and\n'washington medical'." + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." } ] } @@ -1747,8 +1747,7 @@ "200": { "description": "The request has succeeded.", "schema": { - "type": "object", - "additionalProperties": {} + "$ref": "#/definitions/LookupDocument" } }, "default": { @@ -2427,22 +2426,8 @@ "preserveOriginal": { "type": "boolean", "description": "A value indicating whether the original token will be kept. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -2490,12 +2475,12 @@ { "name": "TwoTerms", "value": "twoTerms", - "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and\n'medical assistant'." + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." }, { "name": "OneTermWithContext", "value": "oneTermWithContext", - "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is\n'washington medic', the suggested terms could include 'washington medicaid' and\n'washington medical'." + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." } ] } @@ -2623,22 +2608,8 @@ "type": "integer", "format": "int32", "description": "The number of dimensions the resulting output embeddings should have. Only\nsupported in text-embedding-3 and later models." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -2732,21 +2703,8 @@ "type": "number", "format": "double", "description": "This property controls how the length of a document affects the relevance\nscore. By default, a value of 0.75 is used. A value of 0.0 means no length\nnormalization is applied, while a value of 1.0 means the score is fully\nnormalized by the length of the document." - }, - "@odata.type": { - "type": "string", - "enum": [ - "#Microsoft.Azure.Search.BM25Similarity" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SimilarityAlgorithm" @@ -2902,15 +2860,14 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "The discriminator for derived types." }, "name": { "type": "string", "description": "The name of the char filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type", "name" @@ -2948,22 +2905,8 @@ "outputUnigrams": { "type": "boolean", "description": "A value indicating whether to output both unigrams and bigrams (if true), or\njust bigrams (if false). Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.CjkBigramTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -3010,21 +2953,6 @@ "ClassicSimilarityAlgorithm": { "type": "object", "description": "Legacy similarity algorithm which uses the Lucene TFIDFSimilarity\nimplementation of TF-IDF. This variation of TF-IDF introduces static document\nlength normalization as well as coordinating factors that penalize documents\nthat only partially match the searched queries.", - "properties": { - "@odata.type": { - "type": "string", - "enum": [ - "#Microsoft.Azure.Search.ClassicSimilarity" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SimilarityAlgorithm" @@ -3042,22 +2970,8 @@ "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", "default": 255, "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.ClassicTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -3071,15 +2985,14 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "The discriminator for derived types." }, "description": { "type": "string", "description": "Description of the Azure AI service resource attached to a skillset." } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type" ] @@ -3091,22 +3004,10 @@ "key": { "type": "string", "description": "The key used to provision the Azure AI service resource attached to a skillset." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of Azure AI service resource attached to a\nskillset.", - "enum": [ - "#Microsoft.Azure.Search.CognitiveServicesByKey" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "key", - "@odata.type" + "key" ], "allOf": [ { @@ -3133,22 +3034,10 @@ "queryMode": { "type": "boolean", "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.CommonGramTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "commonWords", - "@odata.type" + "commonWords" ], "allOf": [ { @@ -3160,22 +3049,6 @@ "ConditionalSkill": { "type": "object", "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Util.ConditionalSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -3225,22 +3098,10 @@ "items": { "$ref": "#/definitions/CharFilterName" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of analyzer.", - "enum": [ - "#Microsoft.Azure.Search.CustomAnalyzer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "tokenizer", - "@odata.type" + "tokenizer" ], "allOf": [ { @@ -3369,22 +3230,8 @@ "type": "integer", "format": "int32", "description": "A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in\nCustomEntity, this value will be the default value." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.CustomEntityLookupSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -3464,11 +3311,10 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "The discriminator for derived types." } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type" ] @@ -3479,11 +3325,10 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "The discriminator for derived types." } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type" ] @@ -3501,22 +3346,6 @@ "DefaultCognitiveServicesAccount": { "type": "object", "description": "An empty object that represents the default Azure AI service resource for a\nskillset.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of Azure AI service resource attached to a\nskillset.", - "enum": [ - "#Microsoft.Azure.Search.DefaultCognitiveServices" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/CognitiveServicesAccount" @@ -3559,22 +3388,10 @@ "onlyLongestMatch": { "type": "boolean", "description": "A value indicating whether to add only the longest matching subword to the\noutput. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "wordList", - "@odata.type" + "wordList" ], "allOf": [ { @@ -3637,22 +3454,8 @@ "type": "object", "description": "A dictionary of configurations for the skill.", "additionalProperties": {} - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Util.DocumentExtractionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -3679,22 +3482,8 @@ "side": { "$ref": "#/definitions/EdgeNGramTokenFilterSide", "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.EdgeNGramTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -3747,22 +3536,8 @@ "side": { "$ref": "#/definitions/EdgeNGramTokenFilterSide", "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -3794,22 +3569,8 @@ "items": { "$ref": "#/definitions/TokenCharacterKind" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.EdgeNGramTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -3827,22 +3588,8 @@ "items": { "type": "string" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.ElisionTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -3921,22 +3668,8 @@ "modelVersion": { "type": "string", "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.V3.EntityLinkingSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -3967,22 +3700,8 @@ "type": "number", "format": "double", "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.EntityRecognitionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -4164,22 +3883,8 @@ "modelVersion": { "type": "string", "description": "The version of the model to use when calling the Text Analytics API. It will\ndefault to the latest available when not specified. We recommend you do not\nspecify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -4402,22 +4107,10 @@ "highWaterMarkColumnName": { "type": "string", "description": "The name of the high water mark column." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of data change detection policy.", - "enum": [ - "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "highWaterMarkColumnName", - "@odata.type" + "highWaterMarkColumnName" ], "allOf": [ { @@ -4497,22 +4190,8 @@ "items": { "$ref": "#/definitions/ImageDetail" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Vision.ImageAnalysisSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -5473,22 +5152,10 @@ "keepWordsCase": { "type": "boolean", "description": "A value indicating whether to lower case all words first. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.KeepTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "keepWords", - "@odata.type" + "keepWords" ], "allOf": [ { @@ -5513,22 +5180,8 @@ "modelVersion": { "type": "string", "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -5658,22 +5311,10 @@ "ignoreCase": { "type": "boolean", "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "keywords", - "@odata.type" + "keywords" ], "allOf": [ { @@ -5691,22 +5332,8 @@ "format": "int32", "description": "The read buffer size in bytes. Default is 256.", "default": 256 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.KeywordTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -5724,22 +5351,8 @@ "description": "The maximum token length. Default is 256. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", "default": 256, "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.KeywordTokenizerV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -5758,22 +5371,8 @@ "modelVersion": { "type": "string", "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.LanguageDetectionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -5797,22 +5396,8 @@ "description": "The maximum length in characters. Default and maximum is 300.", "default": 300, "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.LengthTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -5826,15 +5411,14 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "The discriminator for derived types." }, "name": { "type": "string", "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type", "name" @@ -6416,15 +6000,14 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "The discriminator for derived types." }, "name": { "type": "string", "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type", "name" @@ -6533,22 +6116,8 @@ "consumeAllTokens": { "type": "boolean", "description": "A value indicating whether all tokens from the input must be consumed even if\nmaxTokenCount is reached. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.LimitTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -6646,6 +6215,11 @@ "value" ] }, + "LookupDocument": { + "type": "object", + "description": "A document retrieved via a document lookup operation.", + "additionalProperties": {} + }, "LuceneStandardAnalyzer": { "type": "object", "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase\nfilter and stop filter.", @@ -6663,22 +6237,8 @@ "items": { "type": "string" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of analyzer.", - "enum": [ - "#Microsoft.Azure.Search.StandardAnalyzer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalAnalyzer" @@ -6695,22 +6255,8 @@ "format": "int32", "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split.", "default": 255 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.StandardTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -6728,22 +6274,8 @@ "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", "default": 255, "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.StandardTokenizerV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -6804,22 +6336,10 @@ "items": { "type": "string" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of char filter.", - "enum": [ - "#Microsoft.Azure.Search.MappingCharFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "mappings", - "@odata.type" + "mappings" ], "allOf": [ { @@ -6841,22 +6361,8 @@ "type": "string", "description": "The tag indicates the end of the merged text. By default, the tag is an empty\nspace.", "default": " " - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.MergeSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -6882,22 +6388,8 @@ "language": { "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", "description": "The language to use. The default is English." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -6923,22 +6415,8 @@ "language": { "$ref": "#/definitions/MicrosoftTokenizerLanguage", "description": "The language to use. The default is English." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -7507,22 +6985,8 @@ "format": "int32", "description": "The maximum n-gram length. Default is 2.", "default": 2 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.NGramTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -7547,22 +7011,8 @@ "description": "The maximum n-gram length. Default is 2. Maximum is 300.", "default": 2, "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.NGramTokenFilterV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -7594,22 +7044,8 @@ "items": { "$ref": "#/definitions/TokenCharacterKind" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.NGramTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -7668,22 +7104,8 @@ "lineEnding": { "$ref": "#/definitions/OcrLineEnding", "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\"." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Vision.OcrSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -8777,22 +8199,8 @@ "domain": { "type": "string", "description": "If specified, will set the PII domain to include only a subset of the entity\ncategories. Possible values include: 'phi', 'none'. Default is 'none'." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.PIIDetectionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -8853,22 +8261,8 @@ "type": "integer", "format": "int32", "description": "The number of initial tokens to skip. Default is 0." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -8924,22 +8318,10 @@ "type": "boolean", "description": "A value indicating whether to return the original token even if one of the\npatterns matches. Default is true.", "default": true - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.PatternCaptureTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "patterns", - "@odata.type" + "patterns" ], "allOf": [ { @@ -8959,23 +8341,11 @@ "replacement": { "type": "string", "description": "The replacement text." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of char filter.", - "enum": [ - "#Microsoft.Azure.Search.PatternReplaceCharFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ "pattern", - "replacement", - "@odata.type" + "replacement" ], "allOf": [ { @@ -8995,23 +8365,11 @@ "replacement": { "type": "string", "description": "The replacement text." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.PatternReplaceTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ "pattern", - "replacement", - "@odata.type" + "replacement" ], "allOf": [ { @@ -9038,22 +8396,8 @@ "format": "int32", "description": "The zero-based ordinal of the matching group in the regular expression pattern\nto extract into tokens. Use -1 if you want to use the entire pattern to split\nthe input into tokens, irrespective of matching groups. Default is -1.", "default": -1 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.PatternTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -9151,22 +8495,8 @@ "type": "boolean", "description": "A value indicating whether encoded tokens should replace original tokens. If\nfalse, encoded tokens are added as synonyms. Default is true.", "default": true - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.PhoneticTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -10009,34 +9339,17 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "A URI fragment specifying the type of identity." } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type" ] }, "SearchIndexerDataNoneIdentity": { "type": "object", - "description": "Clears the identity property of a datasource.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of identity.", - "enum": [ - "#Microsoft.Azure.Search.DataNoneIdentity" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], + "description": "Specifies the AI Services Vision parameters for vectorizing a query image or\ntext.", "allOf": [ { "$ref": "#/definitions/SearchIndexerDataIdentity" @@ -10148,22 +9461,10 @@ "userAssignedIdentity": { "type": "string", "description": "The fully qualified Azure resource Id of a user assigned managed identity\ntypically in the form\n\"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\"\nthat should have been assigned to the search service." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of identity.", - "enum": [ - "#Microsoft.Azure.Search.DataUserAssignedIdentity" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "userAssignedIdentity", - "@odata.type" + "userAssignedIdentity" ], "allOf": [ { @@ -10240,7 +9541,7 @@ "properties": { "targetIndexName": { "type": "string", - "description": "Name of the search index to project to. Must have a key field with the\n'keyword' analyzer set." + "description": "Name of the search index to project to. Must have a key field with the 'keyword' analyzer set." }, "parentKeyFieldName": { "type": "string", @@ -10454,8 +9755,7 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "The discriminator for derived types." }, "name": { "type": "string", @@ -10486,7 +9786,7 @@ "x-ms-identifiers": [] } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type", "inputs", @@ -11124,22 +10424,8 @@ "defaultLanguageCode": { "$ref": "#/definitions/SentimentSkillLanguage", "description": "A value indicating which language code to use. Default is `en`." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.SentimentSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -11264,22 +10550,8 @@ "modelVersion": { "type": "string", "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.V3.SentimentSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -11290,22 +10562,6 @@ "ShaperSkill": { "type": "object", "description": "A skill for reshaping the outputs. It creates a complex type to support\ncomposite fields (also known as multipart fields).", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Util.ShaperSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -11349,22 +10605,8 @@ "type": "string", "description": "The string to insert for each position at which there is no token. Default is\nan underscore (\"_\").", "default": "_" - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.ShingleTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -11378,11 +10620,10 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "The discriminator for derived types." } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type" ] @@ -11394,22 +10635,10 @@ "language": { "$ref": "#/definitions/SnowballTokenFilterLanguage", "description": "The language to use." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.SnowballTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "language", - "@odata.type" + "language" ], "allOf": [ { @@ -11573,22 +10802,8 @@ "softDeleteMarkerValue": { "type": "string", "description": "The marker value that identifies an item as deleted." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of data deletion detection policy.", - "enum": [ - "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/DataDeletionDetectionPolicy" @@ -11622,22 +10837,8 @@ "type": "integer", "format": "int32", "description": "Only applicable when textSplitMode is set to 'pages'. If specified, the\nSplitSkill will discontinue splitting after processing the first\n'maximumPagesToTake' pages, in order to improve performance when only a few\ninitial pages are needed from each document." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.SplitSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" @@ -11858,22 +11059,6 @@ "SqlIntegratedChangeTrackingPolicy": { "type": "object", "description": "Defines a data change detection policy that captures changes using the\nIntegrated Change Tracking feature of Azure SQL Database.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of data change detection policy.", - "enum": [ - "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/DataChangeDetectionPolicy" @@ -11891,22 +11076,10 @@ "items": { "type": "string" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "rules", - "@odata.type" + "rules" ], "allOf": [ { @@ -11922,22 +11095,10 @@ "language": { "$ref": "#/definitions/StemmerTokenFilterLanguage", "description": "The language to use." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.StemmerTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "language", - "@odata.type" + "language" ], "allOf": [ { @@ -12292,22 +11453,8 @@ "items": { "type": "string" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of analyzer.", - "enum": [ - "#Microsoft.Azure.Search.StopAnalyzer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalAnalyzer" @@ -12536,22 +11683,8 @@ "type": "boolean", "description": "A value indicating whether to ignore the last search term if it's a stop word.\nDefault is true.", "default": true - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.StopwordsTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -12713,22 +11846,10 @@ "type": "boolean", "description": "A value indicating whether all words in the list of synonyms (if => notation is\nnot used) will map to one another. If true, all words in the list of synonyms\n(if => notation is not used) will map to one another. The following list:\nincredible, unbelievable, fabulous, amazing is equivalent to: incredible,\nunbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing.\nIf false, the following list: incredible, unbelievable, fabulous, amazing will\nbe equivalent to: incredible, unbelievable, fabulous, amazing => incredible.\nDefault is true.", "default": true - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.SynonymTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "synonyms", - "@odata.type" + "synonyms" ], "allOf": [ { @@ -12808,22 +11929,10 @@ "suggestedFrom": { "$ref": "#/definitions/TextTranslationSkillLanguage", "description": "The language code to translate documents from when neither the fromLanguageCode\ninput nor the defaultFromLanguageCode parameter are provided, and the automatic\nlanguage detection is unsuccessful. Default is `en`." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.TranslationSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "defaultToLanguageCode", - "@odata.type" + "defaultToLanguageCode" ], "allOf": [ { @@ -13341,15 +12450,14 @@ "properties": { "@odata.type": { "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" + "description": "The discriminator for derived types." }, "name": { "type": "string", "description": "The name of the token filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." } }, - "discriminator": "odataType", + "discriminator": "@odata.type", "required": [ "@odata.type", "name" @@ -13581,22 +12689,8 @@ "description": "The length at which terms will be truncated. Default and maximum is 300.", "default": 300, "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.TruncateTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -13614,22 +12708,8 @@ "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", "default": 255, "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/LexicalTokenizer" @@ -13644,22 +12724,8 @@ "onlyOnSamePosition": { "type": "boolean", "description": "A value indicating whether to remove duplicates only at the same position.\nDefault is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.UniqueTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" @@ -13729,7 +12795,7 @@ "oversampling": { "type": "number", "format": "double", - "description": "Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling'\nparameter configured in the index definition. It can be set only when\n'rerankWithOriginalVectors' is true. This parameter is only permitted when a\ncompression method is used on the underlying vector field." + "description": "Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling'\nparameter configured in the index definition. It can be set only when 'rerankWithOriginalVectors'\nis true. This parameter is only permitted when a\ncompression method is used on the underlying vector field." }, "weight": { "type": "number", @@ -13935,7 +13001,7 @@ { "name": "BinaryQuantization", "value": "binaryQuantization", - "description": "Binary Quantization, a type of compression method. In binary quantization, the\noriginal vectors values are compressed to the narrower binary type by\ndiscretizing and representing each component of a vector using binary values,\nthereby reducing the overall data size." + "description": "Binary Quantization, a type of compression method. In binary quantization, the\noriginal vectors values are compressed to the narrower binary type by discretizing\nand representing each component of a vector using binary values,\nthereby reducing the overall data size." } ] } @@ -14164,22 +13230,10 @@ "authIdentity": { "$ref": "#/definitions/SearchIndexerDataIdentity", "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Custom.WebApiSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, "required": [ - "uri", - "@odata.type" + "uri" ], "allOf": [ { @@ -14290,22 +13344,8 @@ "items": { "type": "string" } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.WordDelimiterTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" } }, - "required": [ - "@odata.type" - ], "allOf": [ { "$ref": "#/definitions/TokenFilter" From df9dbfd2f910dbc913a0020e19d11cbce66e3297 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 11:17:15 -0800 Subject: [PATCH 43/78] update --- specification/search/Azure.Search/client.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index cb5d8323c52d..066aaa0cf7dd 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -187,4 +187,4 @@ namespace Customizations; @@clientName(DocumentExtractionSkill.`@odata.type`, "odataType"); @@clientName(WebApiSkill.`@odata.type`, "odataType"); @@clientName(AzureOpenAIEmbeddingSkill.`@odata.type`, "odataType"); -@@clientName(PathHierarchyTokenizerV2.`@odata.type`, "odataType"); \ No newline at end of file +@@clientName(PathHierarchyTokenizerV2.`@odata.type`, "odataType"); From 54f869064650990cfc10139856d664d02db724b3 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 11:22:07 -0800 Subject: [PATCH 44/78] update --- .../preview/2024-11-01-preview/openapi.json | 15561 ---------------- 1 file changed, 15561 deletions(-) delete mode 100644 specification/search/data-plane/Search/preview/2024-11-01-preview/openapi.json diff --git a/specification/search/data-plane/Search/preview/2024-11-01-preview/openapi.json b/specification/search/data-plane/Search/preview/2024-11-01-preview/openapi.json deleted file mode 100644 index 178abe200a1c..000000000000 --- a/specification/search/data-plane/Search/preview/2024-11-01-preview/openapi.json +++ /dev/null @@ -1,15561 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Azure AI Search", - "version": "2024-11-01-preview", - "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", - "x-typespec-generated": [ - { - "emitter": "@azure-tools/typespec-autorest" - } - ] - }, - "schemes": [ - "https" - ], - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ], - "security": [ - { - "ApiKeyAuth": [] - }, - { - "OAuth2Auth": [ - "https://search.azure.com/.default" - ] - } - ], - "securityDefinitions": { - "ApiKeyAuth": { - "type": "apiKey", - "name": "api-key", - "in": "header" - }, - "OAuth2Auth": { - "type": "oauth2", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", - "scopes": { - "https://search.azure.com/.default": "" - } - } - }, - "tags": [], - "paths": { - "/datasources": { - "get": { - "operationId": "DataSourcesOperations_List", - "description": "Lists all datasources available for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListDataSourcesResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "DataSourcesOperations_Create", - "description": "Creates a new datasource.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "dataSource", - "in": "body", - "description": "The definition of the datasource to create.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerDataSourceCreate" - } - } - ], - "responses": { - "200": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "201": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/datasources('{dataSourceName}')": { - "get": { - "operationId": "DataSourcesOperations_Get", - "description": "Retrieves a datasource definition.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "dataSourceName", - "in": "path", - "description": "The name of the datasource.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "201": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "DataSourcesOperations_CreateOrUpdate", - "description": "Creates a new datasource or updates a datasource if it already exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "dataSourceName", - "in": "path", - "description": "The name of the datasource.", - "required": true, - "type": "string" - }, - { - "name": "dataSource", - "in": "body", - "description": "The definition of the datasource to create or update.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerDataSourceCreateOrUpdate" - } - } - ], - "responses": { - "200": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "201": { - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "DataSourcesOperations_Delete", - "description": "Deletes a datasource.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "dataSourceName", - "in": "path", - "description": "The name of the datasource.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers": { - "get": { - "operationId": "IndexersOperations_List", - "description": "Lists all indexers available for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListIndexersResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "IndexersOperations_Create", - "description": "Creates a new indexer.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexer", - "in": "body", - "description": "The definition of the indexer to create.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerCreate" - } - } - ], - "responses": { - "200": { - "description": "Represents an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "201": { - "description": "Represents an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers('{indexerName}')": { - "get": { - "operationId": "IndexersOperations_Get", - "description": "Retrieves an indexer definition.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Represents an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "201": { - "description": "Represents an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "IndexersOperations_CreateOrUpdate", - "description": "Creates a new indexer or updates an indexer if it already exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - }, - { - "name": "indexer", - "in": "body", - "description": "The definition of the indexer to create or update.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerCreateOrUpdate" - } - } - ], - "responses": { - "200": { - "description": "Represents an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "201": { - "description": "Represents an indexer.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "IndexersOperations_Delete", - "description": "Deletes an indexer.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers('{indexerName}')/search.reset": { - "post": { - "operationId": "IndexersOperations_Reset", - "description": "Resets the change tracking state associated with an indexer.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers('{indexerName}')/search.run": { - "post": { - "operationId": "IndexersOperations_Run", - "description": "Runs an indexer on-demand.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers('{indexerName}')/search.status": { - "get": { - "operationId": "IndexersOperations_GetStatus", - "description": "Returns the current status and execution history of an indexer.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndexerStatus" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes": { - "get": { - "operationId": "IndexesOperations_List", - "description": "Lists all indexes available for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListIndexesResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "IndexesOperations_Create", - "description": "Creates a new search index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "index", - "in": "body", - "description": "The definition of the index to create.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexCreate" - } - } - ], - "responses": { - "200": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "201": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')": { - "get": { - "operationId": "IndexesOperations_Get", - "description": "Retrieves an index definition.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "201": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "IndexesOperations_CreateOrUpdate", - "description": "Creates a new search index or updates an index if it already exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "allowIndexDowntime", - "in": "query", - "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to\nan index by taking the index offline for at least a few seconds. This\ntemporarily causes indexing and query requests to fail. Performance and write\navailability of the index can be impaired for several minutes after the index\nis updated, or longer for very large indexes.", - "required": false, - "type": "boolean" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "index", - "in": "body", - "description": "The definition of the index to create or update.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexCreateOrUpdate" - } - } - ], - "responses": { - "200": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "201": { - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "IndexesOperations_Delete", - "description": "Deletes a search index and all the documents it contains. This operation is\npermanent, with no recovery option. Make sure you have a master copy of your\nindex definition, data ingestion code, and a backup of the primary data source\nin case you need to re-build the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs": { - "get": { - "operationId": "DocumentsOperations_SearchGet", - "description": "Searches for documents in the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "search", - "in": "query", - "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", - "required": false, - "type": "string", - "x-ms-client-name": "searchText" - }, - { - "name": "$count", - "in": "query", - "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", - "required": false, - "type": "boolean", - "x-ms-client-name": "includeTotalResultCount" - }, - { - "name": "facet", - "in": "query", - "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "x-ms-client-name": "facets" - }, - { - "name": "$filter", - "in": "query", - "description": "The OData $filter expression to apply to the search query.", - "required": false, - "type": "string" - }, - { - "name": "highlight", - "in": "query", - "description": "The list of field names to use for hit highlights. Only searchable fields can\nbe used for hit highlighting.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv", - "x-ms-client-name": "highlightFields" - }, - { - "name": "highlightPostTag", - "in": "query", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>.", - "required": false, - "type": "string" - }, - { - "name": "highlightPreTag", - "in": "query", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>.", - "required": false, - "type": "string" - }, - { - "name": "minimumCoverage", - "in": "query", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100.", - "required": false, - "type": "number", - "format": "double" - }, - { - "name": "$orderby", - "in": "query", - "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, and desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no OrderBy is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv", - "x-ms-client-name": "orderBy" - }, - { - "name": "queryType", - "in": "query", - "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax.", - "required": false, - "type": "string", - "enum": [ - "simple", - "full", - "semantic" - ], - "x-ms-enum": { - "name": "QueryType", - "modelAsString": true, - "values": [ - { - "name": "Simple", - "value": "simple", - "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." - }, - { - "name": "Full", - "value": "full", - "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." - }, - { - "name": "Semantic", - "value": "semantic", - "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." - } - ] - } - }, - { - "name": "scoringParameter", - "in": "query", - "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "x-ms-client-name": "scoringParameters" - }, - { - "name": "scoringProfile", - "in": "query", - "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results.", - "required": false, - "type": "string" - }, - { - "name": "searchFields", - "in": "query", - "description": "The list of field names to which to scope the full-text search. When using\nfielded search (fieldName:searchExpression) in a full Lucene query, the field\nnames of each fielded search expression take precedence over any field names\nlisted in this parameter.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "searchMode", - "in": "query", - "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match.", - "required": false, - "type": "string", - "enum": [ - "any", - "all" - ], - "x-ms-enum": { - "name": "SearchMode", - "modelAsString": true, - "values": [ - { - "name": "Any", - "value": "any", - "description": "Any of the search terms must be matched in order to count the document as a\nmatch." - }, - { - "name": "All", - "value": "all", - "description": "All of the search terms must be matched in order to count the document as a\nmatch." - } - ] - } - }, - { - "name": "scoringStatistics", - "in": "query", - "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency.", - "required": false, - "type": "string", - "enum": [ - "local", - "global" - ], - "x-ms-enum": { - "name": "ScoringStatistics", - "modelAsString": true, - "values": [ - { - "name": "Local", - "value": "local", - "description": "The scoring statistics will be calculated locally for lower latency." - }, - { - "name": "Global", - "value": "global", - "description": "The scoring statistics will be calculated globally for more consistent scoring." - } - ] - } - }, - { - "name": "sessionId", - "in": "query", - "description": "A value to be used to create a sticky session, which can help to get more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character.", - "required": false, - "type": "string" - }, - { - "name": "$select", - "in": "query", - "description": "The list of fields to retrieve. If unspecified, all fields marked as\nretrievable in the schema are included.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "$skip", - "in": "query", - "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use $skip due to\nthis limitation, consider using $orderby on a totally-ordered key and $filter\nwith a range query instead.", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "name": "$top", - "in": "query", - "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults.", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "name": "semanticConfiguration", - "in": "query", - "description": "The name of the semantic configuration that lists which fields should be used\nfor semantic ranking, captions, highlights, and answers", - "required": false, - "type": "string" - }, - { - "name": "semanticErrorHandling", - "in": "query", - "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results (default).", - "required": false, - "type": "string", - "enum": [ - "partial", - "fail" - ], - "x-ms-enum": { - "name": "SemanticErrorMode", - "modelAsString": true, - "values": [ - { - "name": "Partial", - "value": "partial", - "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." - }, - { - "name": "Fail", - "value": "fail", - "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." - } - ] - } - }, - { - "name": "semanticMaxWaitInMilliseconds", - "in": "query", - "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 700 - }, - { - "name": "answers", - "in": "query", - "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", - "required": false, - "type": "string", - "enum": [ - "none", - "extractive" - ], - "x-ms-enum": { - "name": "QueryAnswerType", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Do not return answers for the query." - }, - { - "name": "Extractive", - "value": "extractive", - "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." - } - ] - } - }, - { - "name": "captions", - "in": "query", - "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", - "required": false, - "type": "string", - "enum": [ - "none", - "extractive" - ], - "x-ms-enum": { - "name": "QueryCaptionType", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Do not return captions for the query." - }, - { - "name": "Extractive", - "value": "extractive", - "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." - } - ] - } - }, - { - "name": "semanticQuery", - "in": "query", - "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/$count": { - "get": { - "operationId": "DocumentsOperations_Count", - "description": "Queries the number of documents in the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "type": "integer", - "format": "int32" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.autocomplete": { - "get": { - "operationId": "DocumentsOperations_AutocompleteGet", - "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "search", - "in": "query", - "description": "The incomplete term which should be auto-completed.", - "required": true, - "type": "string", - "x-ms-client-name": "searchText" - }, - { - "name": "suggesterName", - "in": "query", - "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", - "required": true, - "type": "string" - }, - { - "name": "autocompleteMode", - "in": "query", - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms.", - "required": false, - "type": "string", - "enum": [ - "oneTerm", - "twoTerms", - "oneTermWithContext" - ], - "x-ms-enum": { - "name": "AutocompleteMode", - "modelAsString": true, - "values": [ - { - "name": "OneTerm", - "value": "oneTerm", - "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." - }, - { - "name": "TwoTerms", - "value": "twoTerms", - "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and\n'medical assistant'." - }, - { - "name": "OneTermWithContext", - "value": "oneTermWithContext", - "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is\n'washington medic', the suggested terms could include 'washington medicaid' and\n'washington medical'." - } - ] - } - }, - { - "name": "$filter", - "in": "query", - "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result.", - "required": false, - "type": "string" - }, - { - "name": "fuzzy", - "in": "query", - "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nautocomplete queries are slower and consume more resources.", - "required": false, - "type": "boolean", - "x-ms-client-name": "useFuzzyMatching" - }, - { - "name": "highlightPostTag", - "in": "query", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled.", - "required": false, - "type": "string" - }, - { - "name": "highlightPreTag", - "in": "query", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled.", - "required": false, - "type": "string" - }, - { - "name": "minimumCoverage", - "in": "query", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", - "required": false, - "type": "number", - "format": "double" - }, - { - "name": "searchFields", - "in": "query", - "description": "The list of field names to consider when querying for auto-completed terms.\nTarget fields must be included in the specified suggester.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "$top", - "in": "query", - "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5.", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/AutocompleteResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.index": { - "post": { - "operationId": "DocumentsOperations_Index", - "description": "Sends a batch of document write actions to the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "batch", - "in": "body", - "description": "The batch of index actions.", - "required": true, - "schema": { - "$ref": "#/definitions/IndexBatch" - } - } - ], - "responses": { - "200": { - "description": "Response containing the status of operations for all documents in the indexing\nrequest.", - "schema": { - "$ref": "#/definitions/IndexDocumentsResult" - } - }, - "207": { - "description": "Response containing the status of operations for all documents in the indexing\nrequest.", - "schema": { - "$ref": "#/definitions/IndexDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.post.autocomplete": { - "post": { - "operationId": "DocumentsOperations_AutocompletePost", - "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "autocompleteRequest", - "in": "body", - "description": "The definition of the Autocomplete request.", - "required": true, - "schema": { - "$ref": "#/definitions/AutocompleteRequest" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/AutocompleteResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.post.search": { - "post": { - "operationId": "DocumentsOperations_SearchPost", - "description": "Searches for documents in the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "searchRequest", - "in": "body", - "description": "The definition of the Search request.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchRequest" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.post.suggest": { - "post": { - "operationId": "DocumentsOperations_SuggestPost", - "description": "Suggests documents in the index that match the given partial query text.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "suggestRequest", - "in": "body", - "description": "The Suggest request.", - "required": true, - "schema": { - "$ref": "#/definitions/SuggestRequest" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SuggestDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.suggest": { - "get": { - "operationId": "DocumentsOperations_SuggestGet", - "description": "Suggests documents in the index that match the given partial query text.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "search", - "in": "query", - "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", - "required": true, - "type": "string", - "x-ms-client-name": "searchText" - }, - { - "name": "suggesterName", - "in": "query", - "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", - "required": true, - "type": "string" - }, - { - "name": "$filter", - "in": "query", - "description": "An OData expression that filters the documents considered for suggestions.", - "required": false, - "type": "string" - }, - { - "name": "fuzzy", - "in": "query", - "description": "A value indicating whether to use fuzzy matching for the suggestions query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nsuggestions queries are slower and consume more resources.", - "required": false, - "type": "boolean", - "x-ms-client-name": "useFuzzyMatching" - }, - { - "name": "highlightPostTag", - "in": "query", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled.", - "required": false, - "type": "string" - }, - { - "name": "highlightPreTag", - "in": "query", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled.", - "required": false, - "type": "string" - }, - { - "name": "minimumCoverage", - "in": "query", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestions query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", - "required": false, - "type": "number", - "format": "double" - }, - { - "name": "$orderby", - "in": "query", - "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, or desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no $orderby is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv", - "x-ms-client-name": "orderBy" - }, - { - "name": "searchFields", - "in": "query", - "description": "The list of field names to search for the specified search text. Target fields\nmust be included in the specified suggester.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "$select", - "in": "query", - "description": "The list of fields to retrieve. If unspecified, only the key field will be\nincluded in the results.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "$top", - "in": "query", - "description": "The number of suggestions to retrieve. The value must be a number between 1 and\n100. The default is 5.", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SuggestDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs('{key}')": { - "get": { - "operationId": "DocumentsOperations_Get", - "description": "Retrieves a document from the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "key", - "in": "path", - "description": "The key of the document to retrieve.", - "required": true, - "type": "string" - }, - { - "name": "$select", - "in": "query", - "description": "List of field names to retrieve for the document; Any field not retrieved will\nbe missing from the returned document.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv", - "x-ms-client-name": "selectedFields" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "type": "object", - "additionalProperties": {} - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/search.analyze": { - "post": { - "operationId": "IndexesOperations_Analyze", - "description": "Shows how an analyzer breaks text into tokens.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "request", - "in": "body", - "description": "The text and analyzer or analysis components to test.", - "required": true, - "schema": { - "$ref": "#/definitions/AnalyzeRequest" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/AnalyzeResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/search.stats": { - "get": { - "operationId": "IndexesOperations_GetStatistics", - "description": "Returns statistics for the given index, including a document count and storage\nusage.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/GetIndexStatisticsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/servicestats": { - "get": { - "operationId": "GetServiceStatistics", - "description": "Gets service level statistics for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchServiceStatistics" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/skillsets": { - "get": { - "operationId": "SkillsetsOperations_List", - "description": "List all skillsets in a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListSkillsetsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "SkillsetsOperations_Create", - "description": "Creates a new skillset in a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "skillset", - "in": "body", - "description": "The skillset containing one or more skills to create in a search service.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerSkillsetCreate" - } - } - ], - "responses": { - "200": { - "description": "A list of skills.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "201": { - "description": "A list of skills.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/skillsets('{skillsetName}')": { - "get": { - "operationId": "SkillsetsOperations_Get", - "description": "Retrieves a skillset in a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "skillsetName", - "in": "path", - "description": "The name of the skillset.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "A list of skills.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "201": { - "description": "A list of skills.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "SkillsetsOperations_CreateOrUpdate", - "description": "Creates a new skillset in a search service or updates the skillset if it\nalready exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "skillsetName", - "in": "path", - "description": "The name of the skillset.", - "required": true, - "type": "string" - }, - { - "name": "skillset", - "in": "body", - "description": "The skillset containing one or more skills to create or update in a search\nservice.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerSkillsetCreateOrUpdate" - } - } - ], - "responses": { - "200": { - "description": "A list of skills.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "201": { - "description": "A list of skills.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "SkillsetsOperations_Delete", - "description": "Deletes a skillset in a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "skillsetName", - "in": "path", - "description": "The name of the skillset.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/synonymmaps": { - "get": { - "operationId": "SynonymMapsOperations_List", - "description": "Lists all synonym maps available for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListSynonymMapsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "SynonymMapsOperations_Create", - "description": "Creates a new synonym map.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "synonymMap", - "in": "body", - "description": "The definition of the synonym map to create.", - "required": true, - "schema": { - "$ref": "#/definitions/SynonymMapCreate" - } - } - ], - "responses": { - "200": { - "description": "Represents a synonym map definition.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "201": { - "description": "Represents a synonym map definition.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/synonymmaps('{synonymMapName}')": { - "get": { - "operationId": "SynonymMapsOperations_Get", - "description": "Retrieves a synonym map definition.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "synonymMapName", - "in": "path", - "description": "The name of the synonym map.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Represents a synonym map definition.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "201": { - "description": "Represents a synonym map definition.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "SynonymMapsOperations_CreateOrUpdate", - "description": "Creates a new synonym map or updates a synonym map if it already exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "synonymMapName", - "in": "path", - "description": "The name of the synonym map.", - "required": true, - "type": "string" - }, - { - "name": "synonymMap", - "in": "body", - "description": "The definition of the synonym map to create or update.", - "required": true, - "schema": { - "$ref": "#/definitions/SynonymMapCreateOrUpdate" - } - } - ], - "responses": { - "200": { - "description": "Represents a synonym map definition.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "201": { - "description": "Represents a synonym map definition.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "SynonymMapsOperations_Delete", - "description": "Deletes a synonym map.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "synonymMapName", - "in": "path", - "description": "The name of the synonym map.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - } - }, - "definitions": { - "AnalyzeRequest": { - "type": "object", - "description": "Specifies some text and analysis components used to break that text into tokens.", - "properties": { - "text": { - "type": "string", - "description": "The text to break into tokens." - }, - "analyzer": { - "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer to use to break the given text. If this parameter is\nnot specified, you must specify a tokenizer instead. The tokenizer and analyzer\nparameters are mutually exclusive." - }, - "tokenizer": { - "$ref": "#/definitions/LexicalTokenizerName", - "description": "The name of the tokenizer to use to break the given text. If this parameter is\nnot specified, you must specify an analyzer instead. The tokenizer and analyzer\nparameters are mutually exclusive." - }, - "tokenFilters": { - "type": "array", - "description": "An optional list of token filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", - "items": { - "$ref": "#/definitions/TokenFilterName" - } - }, - "charFilters": { - "type": "array", - "description": "An optional list of character filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", - "items": { - "$ref": "#/definitions/CharFilterName" - } - } - }, - "required": [ - "text" - ] - }, - "AnalyzeResult": { - "type": "object", - "description": "The result of testing an analyzer on text.", - "properties": { - "tokens": { - "type": "array", - "description": "The list of tokens returned by the analyzer specified in the request.", - "items": { - "$ref": "#/definitions/AnalyzedTokenInfo" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "tokens" - ] - }, - "AnalyzedTokenInfo": { - "type": "object", - "description": "Information about a token returned by an analyzer.", - "properties": { - "token": { - "type": "string", - "description": "The token returned by the analyzer.", - "readOnly": true - }, - "startOffset": { - "type": "integer", - "format": "int32", - "description": "The index of the first character of the token in the input text.", - "readOnly": true - }, - "endOffset": { - "type": "integer", - "format": "int32", - "description": "The index of the last character of the token in the input text.", - "readOnly": true - }, - "position": { - "type": "integer", - "format": "int32", - "description": "The position of the token in the input text relative to other tokens. The first\ntoken in the input text has position 0, the next has position 1, and so on.\nDepending on the analyzer used, some tokens might have the same position, for\nexample if they are synonyms of each other.", - "readOnly": true - } - }, - "required": [ - "token", - "startOffset", - "endOffset", - "position" - ] - }, - "AsciiFoldingTokenFilter": { - "type": "object", - "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "preserveOriginal": { - "type": "boolean", - "description": "A value indicating whether the original token will be kept. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" - }, - "AutocompleteItem": { - "type": "object", - "description": "The result of Autocomplete requests.", - "properties": { - "text": { - "type": "string", - "description": "The completed term.", - "readOnly": true - }, - "queryPlusText": { - "type": "string", - "description": "The query along with the completed term.", - "readOnly": true - } - }, - "required": [ - "text", - "queryPlusText" - ] - }, - "AutocompleteMode": { - "type": "string", - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context in\nproducing autocomplete terms.", - "enum": [ - "oneTerm", - "twoTerms", - "oneTermWithContext" - ], - "x-ms-enum": { - "name": "AutocompleteMode", - "modelAsString": true, - "values": [ - { - "name": "OneTerm", - "value": "oneTerm", - "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." - }, - { - "name": "TwoTerms", - "value": "twoTerms", - "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and\n'medical assistant'." - }, - { - "name": "OneTermWithContext", - "value": "oneTermWithContext", - "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is\n'washington medic', the suggested terms could include 'washington medicaid' and\n'washington medical'." - } - ] - } - }, - "AutocompleteRequest": { - "type": "object", - "description": "Parameters for fuzzy matching, and other autocomplete query behaviors.", - "properties": { - "search": { - "type": "string", - "description": "The search text on which to base autocomplete results.", - "x-ms-client-name": "searchText" - }, - "autocompleteMode": { - "$ref": "#/definitions/AutocompleteMode", - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms." - }, - "filter": { - "type": "string", - "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result." - }, - "fuzzy": { - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will autocomplete terms even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy autocomplete queries are slower and consume more resources.", - "x-ms-client-name": "useFuzzyMatching" - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to consider when querying for\nauto-completed terms. Target fields must be included in the specified\nsuggester." - }, - "suggesterName": { - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5." - } - }, - "required": [ - "search", - "suggesterName" - ] - }, - "AutocompleteResult": { - "type": "object", - "description": "The result of Autocomplete query.", - "properties": { - "@search.coverage": { - "type": "number", - "format": "double", - "description": "A value indicating the percentage of the index that was considered by the\nautocomplete request, or null if minimumCoverage was not specified in the\nrequest.", - "readOnly": true, - "x-ms-client-name": "coverage" - }, - "value": { - "type": "array", - "description": "The list of returned Autocompleted items.", - "items": { - "$ref": "#/definitions/AutocompleteItem" - }, - "readOnly": true, - "x-ms-client-name": "results", - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "AzureActiveDirectoryApplicationCredentials": { - "type": "object", - "description": "Credentials of a registered application created for your search service, used\nfor authenticated access to the encryption keys stored in Azure Key Vault.", - "properties": { - "applicationId": { - "type": "string", - "description": "An AAD Application ID that was granted the required access permissions to the\nAzure Key Vault that is to be used when encrypting your data at rest. The\nApplication ID should not be confused with the Object ID for your AAD\nApplication." - }, - "applicationSecret": { - "type": "string", - "description": "The authentication key of the specified AAD application." - } - }, - "required": [ - "applicationId" - ] - }, - "AzureOpenAIEmbeddingSkill": { - "type": "object", - "description": "Allows you to generate a vector embedding for a given text input using the\nAzure OpenAI resource.", - "properties": { - "resourceUri": { - "type": "string", - "format": "uri", - "description": "The resource URI of the Azure OpenAI resource.", - "x-ms-client-name": "resourceUrl" - }, - "deploymentId": { - "type": "string", - "description": "ID of the Azure OpenAI model deployment on the designated resource.", - "x-ms-client-name": "deploymentName" - }, - "apiKey": { - "type": "string", - "description": "API key of the designated Azure OpenAI resource." - }, - "authIdentity": { - "$ref": "#/definitions/SearchIndexerDataIdentity", - "description": "The user-assigned managed identity used for outbound connections." - }, - "modelName": { - "$ref": "#/definitions/AzureOpenAIModelName", - "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." - }, - "dimensions": { - "type": "integer", - "format": "int32", - "description": "The number of dimensions the resulting output embeddings should have. Only\nsupported in text-embedding-3 and later models." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" - }, - "AzureOpenAIModelName": { - "type": "string", - "description": "The Azure Open AI model name that will be called.", - "enum": [ - "text-embedding-ada-002", - "text-embedding-3-large", - "text-embedding-3-small" - ], - "x-ms-enum": { - "name": "AzureOpenAIModelName", - "modelAsString": true, - "values": [ - { - "name": "TextEmbeddingAda002", - "value": "text-embedding-ada-002", - "description": "TextEmbeddingAda002 model." - }, - { - "name": "TextEmbedding3Large", - "value": "text-embedding-3-large", - "description": "TextEmbedding3Large model." - }, - { - "name": "TextEmbedding3Small", - "value": "text-embedding-3-small", - "description": "TextEmbedding3Small model." - } - ] - } - }, - "AzureOpenAIVectorizer": { - "type": "object", - "description": "Specifies the Azure OpenAI resource used to vectorize a query string.", - "properties": { - "azureOpenAIParameters": { - "$ref": "#/definitions/AzureOpenAIVectorizerParameters", - "description": "Contains the parameters specific to Azure OpenAI embedding vectorization.", - "x-ms-client-name": "parameters" - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchVectorizer" - } - ], - "x-ms-discriminator-value": "azureOpenAI" - }, - "AzureOpenAIVectorizerParameters": { - "type": "object", - "description": "Specifies the parameters for connecting to the Azure OpenAI resource.", - "properties": { - "resourceUri": { - "type": "string", - "format": "uri", - "description": "The resource URI of the Azure OpenAI resource.", - "x-ms-client-name": "resourceUrl" - }, - "deploymentId": { - "type": "string", - "description": "ID of the Azure OpenAI model deployment on the designated resource.", - "x-ms-client-name": "deploymentName" - }, - "apiKey": { - "type": "string", - "description": "API key of the designated Azure OpenAI resource." - }, - "authIdentity": { - "$ref": "#/definitions/SearchIndexerDataIdentity", - "description": "The user-assigned managed identity used for outbound connections." - }, - "modelName": { - "$ref": "#/definitions/AzureOpenAIModelName", - "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." - } - } - }, - "BM25SimilarityAlgorithm": { - "type": "object", - "description": "Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a\nTF-IDF-like algorithm that includes length normalization (controlled by the 'b'\nparameter) as well as term frequency saturation (controlled by the 'k1'\nparameter).", - "properties": { - "k1": { - "type": "number", - "format": "double", - "description": "This property controls the scaling function between the term frequency of each\nmatching terms and the final relevance score of a document-query pair. By\ndefault, a value of 1.2 is used. A value of 0.0 means the score does not scale\nwith an increase in term frequency." - }, - "b": { - "type": "number", - "format": "double", - "description": "This property controls how the length of a document affects the relevance\nscore. By default, a value of 0.75 is used. A value of 0.0 means no length\nnormalization is applied, while a value of 1.0 means the score is fully\nnormalized by the length of the document." - }, - "@odata.type": { - "type": "string", - "enum": [ - "#Microsoft.Azure.Search.BM25Similarity" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SimilarityAlgorithm" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.BM25Similarity" - }, - "BinaryQuantizationCompression": { - "type": "object", - "description": "Contains configuration options specific to the binary quantization compression\nmethod used during indexing and querying.", - "allOf": [ - { - "$ref": "#/definitions/VectorSearchCompression" - } - ], - "x-ms-discriminator-value": "binaryQuantization" - }, - "BlobIndexerDataToExtract": { - "type": "string", - "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", - "enum": [ - "storageMetadata", - "allMetadata", - "contentAndMetadata" - ], - "x-ms-enum": { - "name": "BlobIndexerDataToExtract", - "modelAsString": true, - "values": [ - { - "name": "StorageMetadata", - "value": "storageMetadata", - "description": "Indexes just the standard blob properties and user-specified metadata." - }, - { - "name": "AllMetadata", - "value": "allMetadata", - "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." - }, - { - "name": "ContentAndMetadata", - "value": "contentAndMetadata", - "description": "Extracts all metadata and textual content from each blob." - } - ] - } - }, - "BlobIndexerImageAction": { - "type": "string", - "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", - "enum": [ - "none", - "generateNormalizedImages", - "generateNormalizedImagePerPage" - ], - "x-ms-enum": { - "name": "BlobIndexerImageAction", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Ignores embedded images or image files in the data set. This is the default." - }, - { - "name": "GenerateNormalizedImages", - "value": "generateNormalizedImages", - "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." - }, - { - "name": "GenerateNormalizedImagePerPage", - "value": "generateNormalizedImagePerPage", - "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." - } - ] - } - }, - "BlobIndexerPDFTextRotationAlgorithm": { - "type": "string", - "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", - "enum": [ - "none", - "detectAngles" - ], - "x-ms-enum": { - "name": "BlobIndexerPDFTextRotationAlgorithm", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Leverages normal text extraction. This is the default." - }, - { - "name": "DetectAngles", - "value": "detectAngles", - "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." - } - ] - } - }, - "BlobIndexerParsingMode": { - "type": "string", - "description": "Represents the parsing mode for indexing from an Azure blob data source.", - "enum": [ - "default", - "text", - "delimitedText", - "json", - "jsonArray", - "jsonLines" - ], - "x-ms-enum": { - "name": "BlobIndexerParsingMode", - "modelAsString": true, - "values": [ - { - "name": "Default", - "value": "default", - "description": "Set to default for normal file processing." - }, - { - "name": "Text", - "value": "text", - "description": "Set to text to improve indexing performance on plain text files in blob storage." - }, - { - "name": "DelimitedText", - "value": "delimitedText", - "description": "Set to delimitedText when blobs are plain CSV files." - }, - { - "name": "Json", - "value": "json", - "description": "Set to json to extract structured content from JSON files." - }, - { - "name": "JsonArray", - "value": "jsonArray", - "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." - }, - { - "name": "JsonLines", - "value": "jsonLines", - "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." - } - ] - } - }, - "CharFilter": { - "type": "object", - "description": "Base type for character filters.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - }, - "name": { - "type": "string", - "description": "The name of the char filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type", - "name" - ] - }, - "CharFilterName": { - "type": "string", - "description": "Defines the names of all character filters supported by the search engine.", - "enum": [ - "html_strip" - ], - "x-ms-enum": { - "name": "CharFilterName", - "modelAsString": true, - "values": [ - { - "name": "HtmlStrip", - "value": "html_strip", - "description": "A character filter that attempts to strip out HTML constructs. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" - } - ] - } - }, - "CjkBigramTokenFilter": { - "type": "object", - "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. This\ntoken filter is implemented using Apache Lucene.", - "properties": { - "ignoreScripts": { - "type": "array", - "description": "The scripts to ignore.", - "items": { - "$ref": "#/definitions/CjkBigramTokenFilterScripts" - } - }, - "outputUnigrams": { - "type": "boolean", - "description": "A value indicating whether to output both unigrams and bigrams (if true), or\njust bigrams (if false). Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.CjkBigramTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter" - }, - "CjkBigramTokenFilterScripts": { - "type": "string", - "description": "Scripts that can be ignored by CjkBigramTokenFilter.", - "enum": [ - "han", - "hiragana", - "katakana", - "hangul" - ], - "x-ms-enum": { - "name": "CjkBigramTokenFilterScripts", - "modelAsString": true, - "values": [ - { - "name": "Han", - "value": "han", - "description": "Ignore Han script when forming bigrams of CJK terms." - }, - { - "name": "Hiragana", - "value": "hiragana", - "description": "Ignore Hiragana script when forming bigrams of CJK terms." - }, - { - "name": "Katakana", - "value": "katakana", - "description": "Ignore Katakana script when forming bigrams of CJK terms." - }, - { - "name": "Hangul", - "value": "hangul", - "description": "Ignore Hangul script when forming bigrams of CJK terms." - } - ] - } - }, - "ClassicSimilarityAlgorithm": { - "type": "object", - "description": "Legacy similarity algorithm which uses the Lucene TFIDFSimilarity\nimplementation of TF-IDF. This variation of TF-IDF introduces static document\nlength normalization as well as coordinating factors that penalize documents\nthat only partially match the searched queries.", - "properties": { - "@odata.type": { - "type": "string", - "enum": [ - "#Microsoft.Azure.Search.ClassicSimilarity" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SimilarityAlgorithm" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicSimilarity" - }, - "ClassicTokenizer": { - "type": "object", - "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. This tokenizer is implemented using Apache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 255, - "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.ClassicTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer" - }, - "CognitiveServicesAccount": { - "type": "object", - "description": "Base type for describing any Azure AI service resource attached to a skillset.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - }, - "description": { - "type": "string", - "description": "Description of the Azure AI service resource attached to a skillset." - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type" - ] - }, - "CognitiveServicesAccountKey": { - "type": "object", - "description": "The multi-region account key of an Azure AI service resource that's attached to\na skillset.", - "properties": { - "key": { - "type": "string", - "description": "The key used to provision the Azure AI service resource attached to a skillset." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of Azure AI service resource attached to a\nskillset.", - "enum": [ - "#Microsoft.Azure.Search.CognitiveServicesByKey" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "key", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/CognitiveServicesAccount" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" - }, - "CommonGramTokenFilter": { - "type": "object", - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "commonWords": { - "type": "array", - "description": "The set of common words.", - "items": { - "type": "string" - } - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." - }, - "queryMode": { - "type": "boolean", - "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false.", - "x-ms-client-name": "useQueryMode" - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.CommonGramTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "commonWords", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" - }, - "ConditionalSkill": { - "type": "object", - "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Util.ConditionalSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill" - }, - "CorsOptions": { - "type": "object", - "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index.", - "properties": { - "allowedOrigins": { - "type": "array", - "description": "The list of origins from which JavaScript code will be granted access to your\nindex. Can contain a list of hosts of the form\n{protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow\nall origins (not recommended).", - "items": { - "type": "string" - } - }, - "maxAgeInSeconds": { - "type": "integer", - "format": "int64", - "description": "The duration for which browsers should cache CORS preflight responses. Defaults\nto 5 minutes." - } - }, - "required": [ - "allowedOrigins" - ] - }, - "CustomAnalyzer": { - "type": "object", - "description": "Allows you to take control over the process of converting text into\nindexable/searchable tokens. It's a user-defined configuration consisting of a\nsingle predefined tokenizer and one or more filters. The tokenizer is\nresponsible for breaking text into tokens, and the filters for modifying tokens\nemitted by the tokenizer.", - "properties": { - "tokenizer": { - "$ref": "#/definitions/LexicalTokenizerName", - "description": "The name of the tokenizer to use to divide continuous text into a sequence of\ntokens, such as breaking a sentence into words." - }, - "tokenFilters": { - "type": "array", - "description": "A list of token filters used to filter out or modify the tokens generated by a\ntokenizer. For example, you can specify a lowercase filter that converts all\ncharacters to lowercase. The filters are run in the order in which they are\nlisted.", - "items": { - "$ref": "#/definitions/TokenFilterName" - } - }, - "charFilters": { - "type": "array", - "description": "A list of character filters used to prepare input text before it is processed\nby the tokenizer. For instance, they can replace certain characters or symbols.\nThe filters are run in the order in which they are listed.", - "items": { - "$ref": "#/definitions/CharFilterName" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of analyzer.", - "enum": [ - "#Microsoft.Azure.Search.CustomAnalyzer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "tokenizer", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalAnalyzer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer" - }, - "CustomEntity": { - "type": "object", - "description": "An object that contains information about the matches that were found, and\nrelated metadata.", - "properties": { - "name": { - "type": "string", - "description": "The top-level entity descriptor. Matches in the skill output will be grouped by\nthis name, and it should represent the \"normalized\" form of the text being\nfound." - }, - "description": { - "type": "string", - "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." - }, - "type": { - "type": "string", - "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." - }, - "subtype": { - "type": "string", - "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." - }, - "id": { - "type": "string", - "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." - }, - "caseSensitive": { - "type": "boolean", - "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to character casing. Sample case insensitive matches\nof \"Microsoft\" could be: microsoft, microSoft, MICROSOFT." - }, - "accentSensitive": { - "type": "boolean", - "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to accent." - }, - "fuzzyEditDistance": { - "type": "integer", - "format": "int32", - "description": "Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent\ncharacters that would still constitute a match with the entity name. The\nsmallest possible fuzziness for any given match is returned. For instance, if\nthe edit distance is set to 3, \"Windows10\" would still match \"Windows\",\n\"Windows10\" and \"Windows 7\". When case sensitivity is set to false, case\ndifferences do NOT count towards fuzziness tolerance, but otherwise do." - }, - "defaultCaseSensitive": { - "type": "boolean", - "description": "Changes the default case sensitivity value for this entity. It be used to\nchange the default value of all aliases caseSensitive values." - }, - "defaultAccentSensitive": { - "type": "boolean", - "description": "Changes the default accent sensitivity value for this entity. It be used to\nchange the default value of all aliases accentSensitive values." - }, - "defaultFuzzyEditDistance": { - "type": "integer", - "format": "int32", - "description": "Changes the default fuzzy edit distance value for this entity. It can be used\nto change the default value of all aliases fuzzyEditDistance values." - }, - "aliases": { - "type": "array", - "description": "An array of complex objects that can be used to specify alternative spellings\nor synonyms to the root entity name.", - "items": { - "$ref": "#/definitions/CustomEntityAlias" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "name" - ] - }, - "CustomEntityAlias": { - "type": "object", - "description": "A complex object that can be used to specify alternative spellings or synonyms\nto the root entity name.", - "properties": { - "text": { - "type": "string", - "description": "The text of the alias." - }, - "caseSensitive": { - "type": "boolean", - "description": "Determine if the alias is case sensitive." - }, - "accentSensitive": { - "type": "boolean", - "description": "Determine if the alias is accent sensitive." - }, - "fuzzyEditDistance": { - "type": "integer", - "format": "int32", - "description": "Determine the fuzzy edit distance of the alias." - } - }, - "required": [ - "text" - ] - }, - "CustomEntityLookupSkill": { - "type": "object", - "description": "A skill looks for text from a custom, user-defined list of words and phrases.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/CustomEntityLookupSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "entitiesDefinitionUri": { - "type": "string", - "description": "Path to a JSON or CSV file containing all the target text to match against.\nThis entity definition is read at the beginning of an indexer run. Any updates\nto this file during an indexer run will not take effect until subsequent runs.\nThis config must be accessible over HTTPS." - }, - "inlineEntitiesDefinition": { - "type": "array", - "description": "The inline CustomEntity definition.", - "items": { - "$ref": "#/definitions/CustomEntity" - } - }, - "globalDefaultCaseSensitive": { - "type": "boolean", - "description": "A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity,\nthis value will be the default value." - }, - "globalDefaultAccentSensitive": { - "type": "boolean", - "description": "A global flag for AccentSensitive. If AccentSensitive is not set in\nCustomEntity, this value will be the default value." - }, - "globalDefaultFuzzyEditDistance": { - "type": "integer", - "format": "int32", - "description": "A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in\nCustomEntity, this value will be the default value." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.CustomEntityLookupSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.CustomEntityLookupSkill" - }, - "CustomEntityLookupSkillLanguage": { - "type": "string", - "description": "The language codes supported for input text by CustomEntityLookupSkill.", - "enum": [ - "da", - "de", - "en", - "es", - "fi", - "fr", - "it", - "ko", - "pt" - ], - "x-ms-enum": { - "name": "CustomEntityLookupSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese" - } - ] - } - }, - "DataChangeDetectionPolicy": { - "type": "object", - "description": "Base type for data change detection policies.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type" - ] - }, - "DataDeletionDetectionPolicy": { - "type": "object", - "description": "Base type for data deletion detection policies.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type" - ] - }, - "DataSourceCredentials": { - "type": "object", - "description": "Represents credentials that can be used to connect to a datasource.", - "properties": { - "connectionString": { - "type": "string", - "description": "The connection string for the datasource. Set to `` (with brackets)\nif you don't want the connection string updated. Set to `` if you\nwant to remove the connection string value from the datasource." - } - } - }, - "DefaultCognitiveServicesAccount": { - "type": "object", - "description": "An empty object that represents the default Azure AI service resource for a\nskillset.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of Azure AI service resource attached to a\nskillset.", - "enum": [ - "#Microsoft.Azure.Search.DefaultCognitiveServices" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/CognitiveServicesAccount" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices" - }, - "DictionaryDecompounderTokenFilter": { - "type": "object", - "description": "Decomposes compound words found in many Germanic languages. This token filter\nis implemented using Apache Lucene.", - "properties": { - "wordList": { - "type": "array", - "description": "The list of words to match against.", - "items": { - "type": "string" - } - }, - "minWordSize": { - "type": "integer", - "format": "int32", - "description": "The minimum word size. Only words longer than this get processed. Default is 5.\nMaximum is 300.", - "default": 5, - "maximum": 300 - }, - "minSubwordSize": { - "type": "integer", - "format": "int32", - "description": "The minimum subword size. Only subwords longer than this are outputted. Default\nis 2. Maximum is 300.", - "default": 2, - "maximum": 300 - }, - "maxSubwordSize": { - "type": "integer", - "format": "int32", - "description": "The maximum subword size. Only subwords shorter than this are outputted.\nDefault is 15. Maximum is 300.", - "default": 15, - "maximum": 300 - }, - "onlyLongestMatch": { - "type": "boolean", - "description": "A value indicating whether to add only the longest matching subword to the\noutput. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "wordList", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" - }, - "DistanceScoringFunction": { - "type": "object", - "description": "Defines a function that boosts scores based on distance from a geographic\nlocation.", - "properties": { - "distance": { - "$ref": "#/definitions/DistanceScoringParameters", - "description": "Parameter values for the distance scoring function.", - "x-ms-client-name": "parameters" - } - }, - "required": [ - "distance" - ], - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "x-ms-discriminator-value": "distance" - }, - "DistanceScoringParameters": { - "type": "object", - "description": "Provides parameter values to a distance scoring function.", - "properties": { - "referencePointParameter": { - "type": "string", - "description": "The name of the parameter passed in search queries to specify the reference\nlocation." - }, - "boostingDistance": { - "type": "number", - "format": "double", - "description": "The distance in kilometers from the reference location where the boosting range\nends." - } - }, - "required": [ - "referencePointParameter", - "boostingDistance" - ] - }, - "DocumentExtractionSkill": { - "type": "object", - "description": "A skill that extracts content from a file within the enrichment pipeline.", - "properties": { - "parsingMode": { - "type": "string", - "description": "The parsingMode for the skill. Will be set to 'default' if not defined." - }, - "dataToExtract": { - "type": "string", - "description": "The type of data to be extracted for the skill. Will be set to\n'contentAndMetadata' if not defined." - }, - "configuration": { - "type": "object", - "description": "A dictionary of configurations for the skill.", - "additionalProperties": {} - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Util.DocumentExtractionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Util.DocumentExtractionSkill" - }, - "EdgeNGramTokenFilter": { - "type": "object", - "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", - "default": 1 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2.", - "default": 2 - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.EdgeNGramTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter" - }, - "EdgeNGramTokenFilterSide": { - "type": "string", - "description": "Specifies which side of the input an n-gram should be generated from.", - "enum": [ - "front", - "back" - ], - "x-ms-enum": { - "name": "EdgeNGramTokenFilterSide", - "modelAsString": true, - "values": [ - { - "name": "Front", - "value": "front", - "description": "Specifies that the n-gram should be generated from the front of the input." - }, - { - "name": "Back", - "value": "back", - "description": "Specifies that the n-gram should be generated from the back of the input." - } - ] - } - }, - "EdgeNGramTokenFilterV2": { - "type": "object", - "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", - "default": 1, - "maximum": 300 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2. Maximum is 300.", - "default": 2, - "maximum": 300 - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" - }, - "EdgeNGramTokenizer": { - "type": "object", - "description": "Tokenizes the input from an edge into n-grams of the given size(s). This\ntokenizer is implemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", - "default": 1, - "maximum": 300 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2. Maximum is 300.", - "default": 2, - "maximum": 300 - }, - "tokenChars": { - "type": "array", - "description": "Character classes to keep in the tokens.", - "items": { - "$ref": "#/definitions/TokenCharacterKind" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.EdgeNGramTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer" - }, - "ElisionTokenFilter": { - "type": "object", - "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). This token filter is implemented using Apache Lucene.", - "properties": { - "articles": { - "type": "array", - "description": "The set of articles to remove.", - "items": { - "type": "string" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.ElisionTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter" - }, - "EntityCategory": { - "type": "string", - "description": "A string indicating what entity categories to return.", - "enum": [ - "location", - "organization", - "person", - "quantity", - "datetime", - "url", - "email" - ], - "x-ms-enum": { - "name": "EntityCategory", - "modelAsString": true, - "values": [ - { - "name": "Location", - "value": "location", - "description": "Entities describing a physical location." - }, - { - "name": "Organization", - "value": "organization", - "description": "Entities describing an organization." - }, - { - "name": "Person", - "value": "person", - "description": "Entities describing a person." - }, - { - "name": "Quantity", - "value": "quantity", - "description": "Entities describing a quantity." - }, - { - "name": "Datetime", - "value": "datetime", - "description": "Entities describing a date and time." - }, - { - "name": "Url", - "value": "url", - "description": "Entities describing a URL." - }, - { - "name": "Email", - "value": "email", - "description": "Entities describing an email address." - } - ] - } - }, - "EntityLinkingSkill": { - "type": "object", - "description": "Using the Text Analytics API, extracts linked entities from text.", - "properties": { - "defaultLanguageCode": { - "type": "string", - "description": "A value indicating which language code to use. Default is `en`." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", - "maximum": 1 - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.V3.EntityLinkingSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityLinkingSkill" - }, - "EntityRecognitionSkill": { - "type": "object", - "description": "This skill is deprecated. Use the V3.EntityRecognitionSkill instead.", - "properties": { - "categories": { - "type": "array", - "description": "A list of entity categories that should be extracted.", - "items": { - "$ref": "#/definitions/EntityCategory" - } - }, - "defaultLanguageCode": { - "$ref": "#/definitions/EntityRecognitionSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "includeTypelessEntities": { - "type": "boolean", - "description": "Determines whether or not to include entities which are well known but don't\nconform to a pre-defined type. If this configuration is not set (default), set\nto null or set to false, entities which don't conform to one of the pre-defined\ntypes will not be surfaced." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.EntityRecognitionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill" - }, - "EntityRecognitionSkillLanguage": { - "type": "string", - "description": "Deprecated. The language codes supported for input text by\nEntityRecognitionSkill.", - "enum": [ - "ar", - "cs", - "zh-Hans", - "zh-Hant", - "da", - "nl", - "en", - "fi", - "fr", - "de", - "el", - "hu", - "it", - "ja", - "ko", - "no", - "pl", - "pt-PT", - "pt-BR", - "ru", - "es", - "sv", - "tr" - ], - "x-ms-enum": { - "name": "EntityRecognitionSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "ar", - "value": "ar", - "description": "Arabic" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "zh-Hans", - "value": "zh-Hans", - "description": "Chinese-Simplified" - }, - { - "name": "zh-Hant", - "value": "zh-Hant", - "description": "Chinese-Traditional" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "no", - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "name": "pt-BR", - "value": "pt-BR", - "description": "Portuguese (Brazil)" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - } - ] - } - }, - "EntityRecognitionSkillV3": { - "type": "object", - "description": "Using the Text Analytics API, extracts entities of different types from text.", - "properties": { - "categories": { - "type": "array", - "description": "A list of entity categories that should be extracted.", - "items": { - "type": "string" - } - }, - "defaultLanguageCode": { - "type": "string", - "description": "A value indicating which language code to use. Default is `en`." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", - "maximum": 1 - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics API. It will\ndefault to the latest available when not specified. We recommend you do not\nspecify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" - }, - "ErrorAdditionalInfo": { - "type": "object", - "description": "The resource management error additional info.", - "properties": { - "type": { - "type": "string", - "description": "The additional info type.", - "readOnly": true - }, - "info": { - "type": "object", - "description": "The additional info.", - "additionalProperties": { - "type": "string" - }, - "readOnly": true - } - } - }, - "ErrorDetail": { - "type": "object", - "description": "The error detail.", - "properties": { - "code": { - "type": "string", - "description": "The error code.", - "readOnly": true - }, - "message": { - "type": "string", - "description": "The error message.", - "readOnly": true - }, - "target": { - "type": "string", - "description": "The error target.", - "readOnly": true - }, - "details": { - "type": "array", - "description": "The error details.", - "items": { - "$ref": "#/definitions/ErrorDetail" - }, - "readOnly": true, - "x-ms-identifiers": [] - }, - "additionalInfo": { - "type": "array", - "description": "The error additional info.", - "items": { - "$ref": "#/definitions/ErrorAdditionalInfo" - }, - "readOnly": true, - "x-ms-identifiers": [] - } - } - }, - "ErrorResponse": { - "type": "object", - "description": "Common error response for all Azure Resource Manager APIs to return error\ndetails for failed operations. (This also follows the OData error response\nformat.).", - "properties": { - "error": { - "$ref": "#/definitions/ErrorDetail", - "description": "The error object." - } - } - }, - "ExhaustiveKnnAlgorithmConfiguration": { - "type": "object", - "description": "Contains configuration options specific to the exhaustive KNN algorithm used\nduring querying, which will perform brute-force search across the entire vector\nindex.", - "properties": { - "exhaustiveKnnParameters": { - "$ref": "#/definitions/ExhaustiveKnnParameters", - "description": "Contains the parameters specific to exhaustive KNN algorithm.", - "x-ms-client-name": "parameters" - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" - } - ], - "x-ms-discriminator-value": "exhaustiveKnn" - }, - "ExhaustiveKnnParameters": { - "type": "object", - "description": "Contains the parameters specific to exhaustive KNN algorithm.", - "properties": { - "metric": { - "$ref": "#/definitions/VectorSearchAlgorithmMetric", - "description": "The similarity metric to use for vector comparisons." - } - } - }, - "FacetResult": { - "type": "object", - "description": "A single bucket of a facet query result. Reports the number of documents with a\nfield value falling within a particular range or having a particular value or\ninterval.", - "properties": { - "count": { - "type": "integer", - "format": "int64", - "description": "The approximate count of documents falling within the bucket described by this\nfacet.", - "readOnly": true - } - }, - "additionalProperties": {} - }, - "FieldMapping": { - "type": "object", - "description": "Defines a mapping between a field in a data source and a target field in an\nindex.", - "properties": { - "sourceFieldName": { - "type": "string", - "description": "The name of the field in the data source." - }, - "targetFieldName": { - "type": "string", - "description": "The name of the target field in the index. Same as the source field name by\ndefault." - }, - "mappingFunction": { - "$ref": "#/definitions/FieldMappingFunction", - "description": "A function to apply to each source field value before indexing." - } - }, - "required": [ - "sourceFieldName" - ] - }, - "FieldMappingFunction": { - "type": "object", - "description": "Represents a function that transforms a value from a data source before\nindexing.", - "properties": { - "name": { - "type": "string", - "description": "The name of the field mapping function." - }, - "parameters": { - "type": "object", - "description": "A dictionary of parameter name/value pairs to pass to the function. Each value\nmust be of a primitive type.", - "additionalProperties": {} - } - }, - "required": [ - "name" - ] - }, - "FreshnessScoringFunction": { - "type": "object", - "description": "Defines a function that boosts scores based on the value of a date-time field.", - "properties": { - "freshness": { - "$ref": "#/definitions/FreshnessScoringParameters", - "description": "Parameter values for the freshness scoring function.", - "x-ms-client-name": "parameters" - } - }, - "required": [ - "freshness" - ], - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "x-ms-discriminator-value": "freshness" - }, - "FreshnessScoringParameters": { - "type": "object", - "description": "Provides parameter values to a freshness scoring function.", - "properties": { - "boostingDuration": { - "type": "string", - "format": "duration", - "description": "The expiration period after which boosting will stop for a particular document." - } - }, - "required": [ - "boostingDuration" - ] - }, - "GetIndexStatisticsResult": { - "type": "object", - "description": "Statistics for a given index. Statistics are collected periodically and are not\nguaranteed to always be up-to-date.", - "properties": { - "documentCount": { - "type": "integer", - "format": "int64", - "description": "The number of documents in the index.", - "readOnly": true - }, - "storageSize": { - "type": "integer", - "format": "int64", - "description": "The amount of storage in bytes consumed by the index.", - "readOnly": true - }, - "vectorIndexSize": { - "type": "integer", - "format": "int64", - "description": "The amount of memory in bytes consumed by vectors in the index.", - "readOnly": true - } - }, - "required": [ - "documentCount", - "storageSize", - "vectorIndexSize" - ] - }, - "HighWaterMarkChangeDetectionPolicy": { - "type": "object", - "description": "Defines a data change detection policy that captures changes based on the value\nof a high water mark column.", - "properties": { - "highWaterMarkColumnName": { - "type": "string", - "description": "The name of the high water mark column." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of data change detection policy.", - "enum": [ - "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "highWaterMarkColumnName", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/DataChangeDetectionPolicy" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" - }, - "HnswAlgorithmConfiguration": { - "type": "object", - "description": "Contains configuration options specific to the HNSW approximate nearest\nneighbors algorithm used during indexing and querying. The HNSW algorithm\noffers a tunable trade-off between search speed and accuracy.", - "properties": { - "hnswParameters": { - "$ref": "#/definitions/HnswParameters", - "description": "Contains the parameters specific to HNSW algorithm.", - "x-ms-client-name": "parameters" - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" - } - ], - "x-ms-discriminator-value": "hnsw" - }, - "HnswParameters": { - "type": "object", - "description": "Contains the parameters specific to the HNSW algorithm.", - "properties": { - "m": { - "type": "integer", - "format": "int32", - "description": "The number of bi-directional links created for every new element during\nconstruction. Increasing this parameter value may improve recall and reduce\nretrieval times for datasets with high intrinsic dimensionality at the expense\nof increased memory consumption and longer indexing time.", - "default": 4, - "minimum": 4, - "maximum": 10 - }, - "efConstruction": { - "type": "integer", - "format": "int32", - "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring index time. Increasing this parameter may improve index quality, at the\nexpense of increased indexing time. At a certain point, increasing this\nparameter leads to diminishing returns.", - "default": 400, - "minimum": 100, - "maximum": 1000 - }, - "efSearch": { - "type": "integer", - "format": "int32", - "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring search time. Increasing this parameter may improve search results, at\nthe expense of slower search. At a certain point, increasing this parameter\nleads to diminishing returns.", - "default": 500, - "minimum": 100, - "maximum": 1000 - }, - "metric": { - "$ref": "#/definitions/VectorSearchAlgorithmMetric", - "description": "The similarity metric to use for vector comparisons." - } - } - }, - "ImageAnalysisSkill": { - "type": "object", - "description": "A skill that analyzes image files. It extracts a rich set of visual features\nbased on the image content.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/ImageAnalysisSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "visualFeatures": { - "type": "array", - "description": "A list of visual features.", - "items": { - "$ref": "#/definitions/VisualFeature" - } - }, - "details": { - "type": "array", - "description": "A string indicating which domain-specific details to return.", - "items": { - "$ref": "#/definitions/ImageDetail" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Vision.ImageAnalysisSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill" - }, - "ImageAnalysisSkillLanguage": { - "type": "string", - "description": "The language codes supported for input by ImageAnalysisSkill.", - "enum": [ - "ar", - "az", - "bg", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "el", - "en", - "es", - "et", - "eu", - "fi", - "fr", - "ga", - "gl", - "he", - "hi", - "hr", - "hu", - "id", - "it", - "ja", - "kk", - "ko", - "lt", - "lv", - "mk", - "ms", - "nb", - "nl", - "pl", - "prs", - "pt-BR", - "pt", - "pt-PT", - "ro", - "ru", - "sk", - "sl", - "sr-Cyrl", - "sr-Latn", - "sv", - "th", - "tr", - "uk", - "vi", - "zh", - "zh-Hans", - "zh-Hant" - ], - "x-ms-enum": { - "name": "ImageAnalysisSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "ar", - "value": "ar", - "description": "Arabic" - }, - { - "name": "az", - "value": "az", - "description": "Azerbaijani" - }, - { - "name": "bg", - "value": "bg", - "description": "Bulgarian" - }, - { - "name": "bs", - "value": "bs", - "description": "Bosnian Latin" - }, - { - "name": "ca", - "value": "ca", - "description": "Catalan" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "cy", - "value": "cy", - "description": "Welsh" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "et", - "value": "et", - "description": "Estonian" - }, - { - "name": "eu", - "value": "eu", - "description": "Basque" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "ga", - "value": "ga", - "description": "Irish" - }, - { - "name": "gl", - "value": "gl", - "description": "Galician" - }, - { - "name": "he", - "value": "he", - "description": "Hebrew" - }, - { - "name": "hi", - "value": "hi", - "description": "Hindi" - }, - { - "name": "hr", - "value": "hr", - "description": "Croatian" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "id", - "value": "id", - "description": "Indonesian" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "kk", - "value": "kk", - "description": "Kazakh" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "lt", - "value": "lt", - "description": "Lithuanian" - }, - { - "name": "lv", - "value": "lv", - "description": "Latvian" - }, - { - "name": "mk", - "value": "mk", - "description": "Macedonian" - }, - { - "name": "ms", - "value": "ms", - "description": "Malay Malaysia" - }, - { - "name": "nb", - "value": "nb", - "description": "Norwegian (Bokmal)" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "prs", - "value": "prs", - "description": "Dari" - }, - { - "name": "pt-BR", - "value": "pt-BR", - "description": "Portuguese-Brazil" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese-Portugal" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese-Portugal" - }, - { - "name": "ro", - "value": "ro", - "description": "Romanian" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "sk", - "value": "sk", - "description": "Slovak" - }, - { - "name": "sl", - "value": "sl", - "description": "Slovenian" - }, - { - "name": "sr-Cyrl", - "value": "sr-Cyrl", - "description": "Serbian - Cyrillic RS" - }, - { - "name": "sr-Latn", - "value": "sr-Latn", - "description": "Serbian - Latin RS" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "th", - "value": "th", - "description": "Thai" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - }, - { - "name": "uk", - "value": "uk", - "description": "Ukrainian" - }, - { - "name": "vi", - "value": "vi", - "description": "Vietnamese" - }, - { - "name": "zh", - "value": "zh", - "description": "Chinese Simplified" - }, - { - "name": "zh-Hans", - "value": "zh-Hans", - "description": "Chinese Simplified" - }, - { - "name": "zh-Hant", - "value": "zh-Hant", - "description": "Chinese Traditional" - } - ] - } - }, - "ImageDetail": { - "type": "string", - "description": "A string indicating which domain-specific details to return.", - "enum": [ - "celebrities", - "landmarks" - ], - "x-ms-enum": { - "name": "ImageDetail", - "modelAsString": true, - "values": [ - { - "name": "Celebrities", - "value": "celebrities", - "description": "Details recognized as celebrities." - }, - { - "name": "Landmarks", - "value": "landmarks", - "description": "Details recognized as landmarks." - } - ] - } - }, - "IndexAction": { - "type": "object", - "description": "Represents an index action that operates on a document.", - "properties": { - "@search.action": { - "$ref": "#/definitions/IndexActionType", - "description": "The operation to perform on a document in an indexing batch.", - "x-ms-client-name": "actionType" - } - }, - "additionalProperties": {} - }, - "IndexActionType": { - "type": "string", - "description": "The operation to perform on a document in an indexing batch.", - "enum": [ - "upload", - "merge", - "mergeOrUpload", - "delete" - ], - "x-ms-enum": { - "name": "IndexActionType", - "modelAsString": true, - "values": [ - { - "name": "Upload", - "value": "upload", - "description": "Inserts the document into the index if it is new and updates it if it exists.\nAll fields are replaced in the update case." - }, - { - "name": "Merge", - "value": "merge", - "description": "Merges the specified field values with an existing document. If the document\ndoes not exist, the merge will fail. Any field you specify in a merge will\nreplace the existing field in the document. This also applies to collections of\nprimitive and complex types." - }, - { - "name": "MergeOrUpload", - "value": "mergeOrUpload", - "description": "Behaves like merge if a document with the given key already exists in the\nindex. If the document does not exist, it behaves like upload with a new\ndocument." - }, - { - "name": "Delete", - "value": "delete", - "description": "Removes the specified document from the index. Any field you specify in a\ndelete operation other than the key field will be ignored. If you want to\nremove an individual field from a document, use merge instead and set the field\nexplicitly to null." - } - ] - } - }, - "IndexBatch": { - "type": "object", - "description": "Contains a batch of document write actions to send to the index.", - "properties": { - "value": { - "type": "array", - "description": "The actions in the batch.", - "items": { - "$ref": "#/definitions/IndexAction" - }, - "x-ms-client-name": "actions", - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "IndexDocumentsResult": { - "type": "object", - "description": "Response containing the status of operations for all documents in the indexing\nrequest.", - "properties": { - "value": { - "type": "array", - "description": "The list of status information for each document in the indexing request.", - "items": { - "$ref": "#/definitions/IndexingResult" - }, - "readOnly": true, - "x-ms-client-name": "results", - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "IndexProjectionMode": { - "type": "string", - "description": "Defines behavior of the index projections in relation to the rest of the\nindexer.", - "enum": [ - "skipIndexingParentDocuments", - "includeIndexingParentDocuments" - ], - "x-ms-enum": { - "name": "IndexProjectionMode", - "modelAsString": true, - "values": [ - { - "name": "SkipIndexingParentDocuments", - "value": "skipIndexingParentDocuments", - "description": "The source document will be skipped from writing into the indexer's target\nindex." - }, - { - "name": "IncludeIndexingParentDocuments", - "value": "includeIndexingParentDocuments", - "description": "The source document will be written into the indexer's target index. This is\nthe default pattern." - } - ] - } - }, - "IndexerExecutionEnvironment": { - "type": "string", - "description": "Specifies the environment in which the indexer should execute.", - "enum": [ - "standard", - "private" - ], - "x-ms-enum": { - "name": "IndexerExecutionEnvironment", - "modelAsString": true, - "values": [ - { - "name": "standard", - "value": "standard", - "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." - }, - { - "name": "private", - "value": "private", - "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." - } - ] - } - }, - "IndexerExecutionResult": { - "type": "object", - "description": "Represents the result of an individual indexer execution.", - "properties": { - "status": { - "$ref": "#/definitions/IndexerExecutionStatus", - "description": "The outcome of this indexer execution.", - "readOnly": true - }, - "errorMessage": { - "type": "string", - "description": "The error message indicating the top-level error, if any.", - "readOnly": true - }, - "startTime": { - "type": "string", - "format": "date-time", - "description": "The start time of this indexer execution.", - "readOnly": true - }, - "endTime": { - "type": "string", - "format": "date-time", - "description": "The end time of this indexer execution, if the execution has already completed.", - "readOnly": true - }, - "errors": { - "type": "array", - "description": "The item-level indexing errors.", - "items": { - "$ref": "#/definitions/SearchIndexerError" - }, - "readOnly": true, - "x-ms-identifiers": [] - }, - "warnings": { - "type": "array", - "description": "The item-level indexing warnings.", - "items": { - "$ref": "#/definitions/SearchIndexerWarning" - }, - "readOnly": true, - "x-ms-identifiers": [] - }, - "itemsProcessed": { - "type": "integer", - "format": "int32", - "description": "The number of items that were processed during this indexer execution. This\nincludes both successfully processed items and items where indexing was\nattempted but failed.", - "readOnly": true, - "x-ms-client-name": "itemCount" - }, - "itemsFailed": { - "type": "integer", - "format": "int32", - "description": "The number of items that failed to be indexed during this indexer execution.", - "readOnly": true, - "x-ms-client-name": "failedItemCount" - }, - "initialTrackingState": { - "type": "string", - "description": "Change tracking state with which an indexer execution started.", - "readOnly": true - }, - "finalTrackingState": { - "type": "string", - "description": "Change tracking state with which an indexer execution finished.", - "readOnly": true - } - }, - "required": [ - "status", - "errors", - "warnings", - "itemsProcessed", - "itemsFailed" - ] - }, - "IndexerExecutionStatus": { - "type": "string", - "description": "Represents the status of an individual indexer execution.", - "enum": [ - "transientFailure", - "success", - "inProgress", - "reset" - ], - "x-ms-enum": { - "name": "IndexerExecutionStatus", - "modelAsString": true, - "values": [ - { - "name": "TransientFailure", - "value": "transientFailure", - "description": "An indexer invocation has failed, but the failure may be transient. Indexer\ninvocations will continue per schedule." - }, - { - "name": "Success", - "value": "success", - "description": "Indexer execution completed successfully." - }, - { - "name": "InProgress", - "value": "inProgress", - "description": "Indexer execution is in progress." - }, - { - "name": "Reset", - "value": "reset", - "description": "Indexer has been reset." - } - ] - } - }, - "IndexerStatus": { - "type": "string", - "description": "Represents the overall indexer status.", - "enum": [ - "unknown", - "error", - "running" - ], - "x-ms-enum": { - "name": "IndexerStatus", - "modelAsString": true, - "values": [ - { - "name": "Unknown", - "value": "unknown", - "description": "Indicates that the indexer is in an unknown state." - }, - { - "name": "Error", - "value": "error", - "description": "Indicates that the indexer experienced an error that cannot be corrected\nwithout human intervention." - }, - { - "name": "Running", - "value": "running", - "description": "Indicates that the indexer is running normally." - } - ] - } - }, - "IndexingParameters": { - "type": "object", - "description": "Represents parameters for indexer execution.", - "properties": { - "batchSize": { - "type": "integer", - "format": "int32", - "description": "The number of items that are read from the data source and indexed as a single\nbatch in order to improve performance. The default depends on the data source\ntype." - }, - "maxFailedItems": { - "type": "integer", - "format": "int32", - "description": "The maximum number of items that can fail indexing for indexer execution to\nstill be considered successful. -1 means no limit. Default is 0." - }, - "maxFailedItemsPerBatch": { - "type": "integer", - "format": "int32", - "description": "The maximum number of items in a single batch that can fail indexing for the\nbatch to still be considered successful. -1 means no limit. Default is 0." - }, - "configuration": { - "$ref": "#/definitions/IndexingParametersConfiguration", - "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type." - } - } - }, - "IndexingParametersConfiguration": { - "type": "object", - "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type.", - "properties": { - "parsingMode": { - "type": "string", - "description": "Represents the parsing mode for indexing from an Azure blob data source.", - "default": "default", - "enum": [ - "default", - "text", - "delimitedText", - "json", - "jsonArray", - "jsonLines" - ], - "x-ms-enum": { - "name": "BlobIndexerParsingMode", - "modelAsString": true, - "values": [ - { - "name": "Default", - "value": "default", - "description": "Set to default for normal file processing." - }, - { - "name": "Text", - "value": "text", - "description": "Set to text to improve indexing performance on plain text files in blob storage." - }, - { - "name": "DelimitedText", - "value": "delimitedText", - "description": "Set to delimitedText when blobs are plain CSV files." - }, - { - "name": "Json", - "value": "json", - "description": "Set to json to extract structured content from JSON files." - }, - { - "name": "JsonArray", - "value": "jsonArray", - "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." - }, - { - "name": "JsonLines", - "value": "jsonLines", - "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." - } - ] - } - }, - "excludedFileNameExtensions": { - "type": "string", - "description": "Comma-delimited list of filename extensions to ignore when processing from\nAzure blob storage. For example, you could exclude \".png, .mp4\" to skip over\nthose files during indexing." - }, - "indexedFileNameExtensions": { - "type": "string", - "description": "Comma-delimited list of filename extensions to select when processing from\nAzure blob storage. For example, you could focus indexing on specific\napplication files \".docx, .pptx, .msg\" to specifically include those file\ntypes." - }, - "failOnUnsupportedContentType": { - "type": "boolean", - "description": "For Azure blobs, set to false if you want to continue indexing when an\nunsupported content type is encountered, and you don't know all the content\ntypes (file extensions) in advance." - }, - "failOnUnprocessableDocument": { - "type": "boolean", - "description": "For Azure blobs, set to false if you want to continue indexing if a document\nfails indexing." - }, - "indexStorageMetadataOnlyForOversizedDocuments": { - "type": "boolean", - "description": "For Azure blobs, set this property to true to still index storage metadata for\nblob content that is too large to process. Oversized blobs are treated as\nerrors by default. For limits on blob size, see\nhttps://learn.microsoft.com/azure/search/search-limits-quotas-capacity." - }, - "delimitedTextHeaders": { - "type": "string", - "description": "For CSV blobs, specifies a comma-delimited list of column headers, useful for\nmapping source fields to destination fields in an index." - }, - "delimitedTextDelimiter": { - "type": "string", - "description": "For CSV blobs, specifies the end-of-line single-character delimiter for CSV\nfiles where each line starts a new document (for example, \"|\")." - }, - "firstLineContainsHeaders": { - "type": "boolean", - "description": "For CSV blobs, indicates that the first (non-blank) line of each blob contains\nheaders.", - "default": true - }, - "documentRoot": { - "type": "string", - "description": "For JSON arrays, given a structured or semi-structured document, you can\nspecify a path to the array using this property." - }, - "dataToExtract": { - "type": "string", - "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", - "default": "contentAndMetadata", - "enum": [ - "storageMetadata", - "allMetadata", - "contentAndMetadata" - ], - "x-ms-enum": { - "name": "BlobIndexerDataToExtract", - "modelAsString": true, - "values": [ - { - "name": "StorageMetadata", - "value": "storageMetadata", - "description": "Indexes just the standard blob properties and user-specified metadata." - }, - { - "name": "AllMetadata", - "value": "allMetadata", - "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." - }, - { - "name": "ContentAndMetadata", - "value": "contentAndMetadata", - "description": "Extracts all metadata and textual content from each blob." - } - ] - } - }, - "imageAction": { - "type": "string", - "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", - "default": "none", - "enum": [ - "none", - "generateNormalizedImages", - "generateNormalizedImagePerPage" - ], - "x-ms-enum": { - "name": "BlobIndexerImageAction", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Ignores embedded images or image files in the data set. This is the default." - }, - { - "name": "GenerateNormalizedImages", - "value": "generateNormalizedImages", - "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." - }, - { - "name": "GenerateNormalizedImagePerPage", - "value": "generateNormalizedImagePerPage", - "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." - } - ] - } - }, - "allowSkillsetToReadFileData": { - "type": "boolean", - "description": "If true, will create a path //document//file_data that is an object\nrepresenting the original file data downloaded from your blob data source.\nThis allows you to pass the original file data to a custom skill for processing\nwithin the enrichment pipeline, or to the Document Extraction skill." - }, - "pdfTextRotationAlgorithm": { - "type": "string", - "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", - "default": "none", - "enum": [ - "none", - "detectAngles" - ], - "x-ms-enum": { - "name": "BlobIndexerPDFTextRotationAlgorithm", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Leverages normal text extraction. This is the default." - }, - { - "name": "DetectAngles", - "value": "detectAngles", - "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." - } - ] - } - }, - "executionEnvironment": { - "type": "string", - "description": "Specifies the environment in which the indexer should execute.", - "default": "standard", - "enum": [ - "standard", - "private" - ], - "x-ms-enum": { - "name": "IndexerExecutionEnvironment", - "modelAsString": true, - "values": [ - { - "name": "standard", - "value": "standard", - "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." - }, - { - "name": "private", - "value": "private", - "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." - } - ] - } - }, - "queryTimeout": { - "type": "string", - "description": "Increases the timeout beyond the 5-minute default for Azure SQL database data\nsources, specified in the format \"hh:mm:ss\".", - "default": "00:05:00" - } - }, - "additionalProperties": {} - }, - "IndexingResult": { - "type": "object", - "description": "Status of an indexing operation for a single document.", - "properties": { - "key": { - "type": "string", - "description": "The key of a document that was in the indexing request.", - "readOnly": true - }, - "errorMessage": { - "type": "string", - "description": "The error message explaining why the indexing operation failed for the document\nidentified by the key; null if indexing succeeded.", - "readOnly": true - }, - "status": { - "type": "boolean", - "description": "A value indicating whether the indexing operation succeeded for the document\nidentified by the key.", - "readOnly": true, - "x-ms-client-name": "succeeded" - }, - "statusCode": { - "type": "integer", - "format": "int32", - "description": "The status code of the indexing operation. Possible values include: 200 for a\nsuccessful update or delete, 201 for successful document creation, 400 for a\nmalformed input document, 404 for document not found, 409 for a version\nconflict, 422 when the index is temporarily unavailable, or 503 for when the\nservice is too busy.", - "readOnly": true - } - }, - "required": [ - "key", - "status", - "statusCode" - ] - }, - "IndexingSchedule": { - "type": "object", - "description": "Represents a schedule for indexer execution.", - "properties": { - "interval": { - "type": "string", - "format": "duration", - "description": "The interval of time between indexer executions." - }, - "startTime": { - "type": "string", - "format": "date-time", - "description": "The time when an indexer should start running." - } - }, - "required": [ - "interval" - ] - }, - "InputFieldMappingEntry": { - "type": "object", - "description": "Input field mapping for a skill.", - "properties": { - "name": { - "type": "string", - "description": "The name of the input." - }, - "source": { - "type": "string", - "description": "The source of the input." - }, - "sourceContext": { - "type": "string", - "description": "The source context used for selecting recursive inputs." - }, - "inputs": { - "type": "array", - "description": "The recursive inputs used when creating a complex type.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "name" - ] - }, - "KeepTokenFilter": { - "type": "object", - "description": "A token filter that only keeps tokens with text contained in a specified list\nof words. This token filter is implemented using Apache Lucene.", - "properties": { - "keepWords": { - "type": "array", - "description": "The list of words to keep.", - "items": { - "type": "string" - } - }, - "keepWordsCase": { - "type": "boolean", - "description": "A value indicating whether to lower case all words first. Default is false.", - "x-ms-client-name": "lowerCaseKeepWords" - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.KeepTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "keepWords", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter" - }, - "KeyPhraseExtractionSkill": { - "type": "object", - "description": "A skill that uses text analytics for key phrase extraction.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "maxKeyPhraseCount": { - "type": "integer", - "format": "int32", - "description": "A number indicating how many key phrases to return. If absent, all identified\nkey phrases will be returned." - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" - }, - "KeyPhraseExtractionSkillLanguage": { - "type": "string", - "description": "The language codes supported for input text by KeyPhraseExtractionSkill.", - "enum": [ - "da", - "nl", - "en", - "fi", - "fr", - "de", - "it", - "ja", - "ko", - "no", - "pl", - "pt-PT", - "pt-BR", - "ru", - "es", - "sv" - ], - "x-ms-enum": { - "name": "KeyPhraseExtractionSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "no", - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "name": "pt-BR", - "value": "pt-BR", - "description": "Portuguese (Brazil)" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - } - ] - } - }, - "KeywordMarkerTokenFilter": { - "type": "object", - "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", - "properties": { - "keywords": { - "type": "array", - "description": "A list of words to mark as keywords.", - "items": { - "type": "string" - } - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "keywords", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" - }, - "KeywordTokenizer": { - "type": "object", - "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", - "properties": { - "bufferSize": { - "type": "integer", - "format": "int32", - "description": "The read buffer size in bytes. Default is 256.", - "default": 256 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.KeywordTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer" - }, - "KeywordTokenizerV2": { - "type": "object", - "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 256. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 256, - "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.KeywordTokenizerV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2" - }, - "LanguageDetectionSkill": { - "type": "object", - "description": "A skill that detects the language of input text and reports a single language\ncode for every document submitted on the request. The language code is paired\nwith a score indicating the confidence of the analysis.", - "properties": { - "defaultCountryHint": { - "type": "string", - "description": "A country code to use as a hint to the language detection model if it cannot\ndisambiguate the language." - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.LanguageDetectionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill" - }, - "LengthTokenFilter": { - "type": "object", - "description": "Removes words that are too long or too short. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "min": { - "type": "integer", - "format": "int32", - "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less\nthan the value of max.", - "maximum": 300, - "x-ms-client-name": "minLength" - }, - "max": { - "type": "integer", - "format": "int32", - "description": "The maximum length in characters. Default and maximum is 300.", - "default": 300, - "maximum": 300, - "x-ms-client-name": "maxLength" - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.LengthTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter" - }, - "LexicalAnalyzer": { - "type": "object", - "description": "Base type for analyzers.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - }, - "name": { - "type": "string", - "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type", - "name" - ] - }, - "LexicalAnalyzerName": { - "type": "string", - "description": "Defines the names of all text analyzers supported by the search engine.", - "enum": [ - "ar.microsoft", - "ar.lucene", - "hy.lucene", - "bn.microsoft", - "eu.lucene", - "bg.microsoft", - "bg.lucene", - "ca.microsoft", - "ca.lucene", - "zh-Hans.microsoft", - "zh-Hans.lucene", - "zh-Hant.microsoft", - "zh-Hant.lucene", - "hr.microsoft", - "cs.microsoft", - "cs.lucene", - "da.microsoft", - "da.lucene", - "nl.microsoft", - "nl.lucene", - "en.microsoft", - "en.lucene", - "et.microsoft", - "fi.microsoft", - "fi.lucene", - "fr.microsoft", - "fr.lucene", - "gl.lucene", - "de.microsoft", - "de.lucene", - "el.microsoft", - "el.lucene", - "gu.microsoft", - "he.microsoft", - "hi.microsoft", - "hi.lucene", - "hu.microsoft", - "hu.lucene", - "is.microsoft", - "id.microsoft", - "id.lucene", - "ga.lucene", - "it.microsoft", - "it.lucene", - "ja.microsoft", - "ja.lucene", - "kn.microsoft", - "ko.microsoft", - "ko.lucene", - "lv.microsoft", - "lv.lucene", - "lt.microsoft", - "ml.microsoft", - "ms.microsoft", - "mr.microsoft", - "nb.microsoft", - "no.lucene", - "fa.lucene", - "pl.microsoft", - "pl.lucene", - "pt-BR.microsoft", - "pt-BR.lucene", - "pt-PT.microsoft", - "pt-PT.lucene", - "pa.microsoft", - "ro.microsoft", - "ro.lucene", - "ru.microsoft", - "ru.lucene", - "sr-cyrillic.microsoft", - "sr-latin.microsoft", - "sk.microsoft", - "sl.microsoft", - "es.microsoft", - "es.lucene", - "sv.microsoft", - "sv.lucene", - "ta.microsoft", - "te.microsoft", - "th.microsoft", - "th.lucene", - "tr.microsoft", - "tr.lucene", - "uk.microsoft", - "ur.microsoft", - "vi.microsoft", - "standard.lucene", - "standardasciifolding.lucene", - "keyword", - "pattern", - "simple", - "stop", - "whitespace" - ], - "x-ms-enum": { - "name": "LexicalAnalyzerName", - "modelAsString": true, - "values": [ - { - "name": "ArMicrosoft", - "value": "ar.microsoft", - "description": "Microsoft analyzer for Arabic." - }, - { - "name": "ArLucene", - "value": "ar.lucene", - "description": "Lucene analyzer for Arabic." - }, - { - "name": "HyLucene", - "value": "hy.lucene", - "description": "Lucene analyzer for Armenian." - }, - { - "name": "BnMicrosoft", - "value": "bn.microsoft", - "description": "Microsoft analyzer for Bangla." - }, - { - "name": "EuLucene", - "value": "eu.lucene", - "description": "Lucene analyzer for Basque." - }, - { - "name": "BgMicrosoft", - "value": "bg.microsoft", - "description": "Microsoft analyzer for Bulgarian." - }, - { - "name": "BgLucene", - "value": "bg.lucene", - "description": "Lucene analyzer for Bulgarian." - }, - { - "name": "CaMicrosoft", - "value": "ca.microsoft", - "description": "Microsoft analyzer for Catalan." - }, - { - "name": "CaLucene", - "value": "ca.lucene", - "description": "Lucene analyzer for Catalan." - }, - { - "name": "ZhHansMicrosoft", - "value": "zh-Hans.microsoft", - "description": "Microsoft analyzer for Chinese (Simplified)." - }, - { - "name": "ZhHansLucene", - "value": "zh-Hans.lucene", - "description": "Lucene analyzer for Chinese (Simplified)." - }, - { - "name": "ZhHantMicrosoft", - "value": "zh-Hant.microsoft", - "description": "Microsoft analyzer for Chinese (Traditional)." - }, - { - "name": "ZhHantLucene", - "value": "zh-Hant.lucene", - "description": "Lucene analyzer for Chinese (Traditional)." - }, - { - "name": "HrMicrosoft", - "value": "hr.microsoft", - "description": "Microsoft analyzer for Croatian." - }, - { - "name": "CsMicrosoft", - "value": "cs.microsoft", - "description": "Microsoft analyzer for Czech." - }, - { - "name": "CsLucene", - "value": "cs.lucene", - "description": "Lucene analyzer for Czech." - }, - { - "name": "DaMicrosoft", - "value": "da.microsoft", - "description": "Microsoft analyzer for Danish." - }, - { - "name": "DaLucene", - "value": "da.lucene", - "description": "Lucene analyzer for Danish." - }, - { - "name": "NlMicrosoft", - "value": "nl.microsoft", - "description": "Microsoft analyzer for Dutch." - }, - { - "name": "NlLucene", - "value": "nl.lucene", - "description": "Lucene analyzer for Dutch." - }, - { - "name": "EnMicrosoft", - "value": "en.microsoft", - "description": "Microsoft analyzer for English." - }, - { - "name": "EnLucene", - "value": "en.lucene", - "description": "Lucene analyzer for English." - }, - { - "name": "EtMicrosoft", - "value": "et.microsoft", - "description": "Microsoft analyzer for Estonian." - }, - { - "name": "FiMicrosoft", - "value": "fi.microsoft", - "description": "Microsoft analyzer for Finnish." - }, - { - "name": "FiLucene", - "value": "fi.lucene", - "description": "Lucene analyzer for Finnish." - }, - { - "name": "FrMicrosoft", - "value": "fr.microsoft", - "description": "Microsoft analyzer for French." - }, - { - "name": "FrLucene", - "value": "fr.lucene", - "description": "Lucene analyzer for French." - }, - { - "name": "GlLucene", - "value": "gl.lucene", - "description": "Lucene analyzer for Galician." - }, - { - "name": "DeMicrosoft", - "value": "de.microsoft", - "description": "Microsoft analyzer for German." - }, - { - "name": "DeLucene", - "value": "de.lucene", - "description": "Lucene analyzer for German." - }, - { - "name": "ElMicrosoft", - "value": "el.microsoft", - "description": "Microsoft analyzer for Greek." - }, - { - "name": "ElLucene", - "value": "el.lucene", - "description": "Lucene analyzer for Greek." - }, - { - "name": "GuMicrosoft", - "value": "gu.microsoft", - "description": "Microsoft analyzer for Gujarati." - }, - { - "name": "HeMicrosoft", - "value": "he.microsoft", - "description": "Microsoft analyzer for Hebrew." - }, - { - "name": "HiMicrosoft", - "value": "hi.microsoft", - "description": "Microsoft analyzer for Hindi." - }, - { - "name": "HiLucene", - "value": "hi.lucene", - "description": "Lucene analyzer for Hindi." - }, - { - "name": "HuMicrosoft", - "value": "hu.microsoft", - "description": "Microsoft analyzer for Hungarian." - }, - { - "name": "HuLucene", - "value": "hu.lucene", - "description": "Lucene analyzer for Hungarian." - }, - { - "name": "IsMicrosoft", - "value": "is.microsoft", - "description": "Microsoft analyzer for Icelandic." - }, - { - "name": "IdMicrosoft", - "value": "id.microsoft", - "description": "Microsoft analyzer for Indonesian (Bahasa)." - }, - { - "name": "IdLucene", - "value": "id.lucene", - "description": "Lucene analyzer for Indonesian." - }, - { - "name": "GaLucene", - "value": "ga.lucene", - "description": "Lucene analyzer for Irish." - }, - { - "name": "ItMicrosoft", - "value": "it.microsoft", - "description": "Microsoft analyzer for Italian." - }, - { - "name": "ItLucene", - "value": "it.lucene", - "description": "Lucene analyzer for Italian." - }, - { - "name": "JaMicrosoft", - "value": "ja.microsoft", - "description": "Microsoft analyzer for Japanese." - }, - { - "name": "JaLucene", - "value": "ja.lucene", - "description": "Lucene analyzer for Japanese." - }, - { - "name": "KnMicrosoft", - "value": "kn.microsoft", - "description": "Microsoft analyzer for Kannada." - }, - { - "name": "KoMicrosoft", - "value": "ko.microsoft", - "description": "Microsoft analyzer for Korean." - }, - { - "name": "KoLucene", - "value": "ko.lucene", - "description": "Lucene analyzer for Korean." - }, - { - "name": "LvMicrosoft", - "value": "lv.microsoft", - "description": "Microsoft analyzer for Latvian." - }, - { - "name": "LvLucene", - "value": "lv.lucene", - "description": "Lucene analyzer for Latvian." - }, - { - "name": "LtMicrosoft", - "value": "lt.microsoft", - "description": "Microsoft analyzer for Lithuanian." - }, - { - "name": "MlMicrosoft", - "value": "ml.microsoft", - "description": "Microsoft analyzer for Malayalam." - }, - { - "name": "MsMicrosoft", - "value": "ms.microsoft", - "description": "Microsoft analyzer for Malay (Latin)." - }, - { - "name": "MrMicrosoft", - "value": "mr.microsoft", - "description": "Microsoft analyzer for Marathi." - }, - { - "name": "NbMicrosoft", - "value": "nb.microsoft", - "description": "Microsoft analyzer for Norwegian (Bokmål)." - }, - { - "name": "NoLucene", - "value": "no.lucene", - "description": "Lucene analyzer for Norwegian." - }, - { - "name": "FaLucene", - "value": "fa.lucene", - "description": "Lucene analyzer for Persian." - }, - { - "name": "PlMicrosoft", - "value": "pl.microsoft", - "description": "Microsoft analyzer for Polish." - }, - { - "name": "PlLucene", - "value": "pl.lucene", - "description": "Lucene analyzer for Polish." - }, - { - "name": "PtBrMicrosoft", - "value": "pt-BR.microsoft", - "description": "Microsoft analyzer for Portuguese (Brazil)." - }, - { - "name": "PtBrLucene", - "value": "pt-BR.lucene", - "description": "Lucene analyzer for Portuguese (Brazil)." - }, - { - "name": "PtPtMicrosoft", - "value": "pt-PT.microsoft", - "description": "Microsoft analyzer for Portuguese (Portugal)." - }, - { - "name": "PtPtLucene", - "value": "pt-PT.lucene", - "description": "Lucene analyzer for Portuguese (Portugal)." - }, - { - "name": "PaMicrosoft", - "value": "pa.microsoft", - "description": "Microsoft analyzer for Punjabi." - }, - { - "name": "RoMicrosoft", - "value": "ro.microsoft", - "description": "Microsoft analyzer for Romanian." - }, - { - "name": "RoLucene", - "value": "ro.lucene", - "description": "Lucene analyzer for Romanian." - }, - { - "name": "RuMicrosoft", - "value": "ru.microsoft", - "description": "Microsoft analyzer for Russian." - }, - { - "name": "RuLucene", - "value": "ru.lucene", - "description": "Lucene analyzer for Russian." - }, - { - "name": "SrCyrillicMicrosoft", - "value": "sr-cyrillic.microsoft", - "description": "Microsoft analyzer for Serbian (Cyrillic)." - }, - { - "name": "SrLatinMicrosoft", - "value": "sr-latin.microsoft", - "description": "Microsoft analyzer for Serbian (Latin)." - }, - { - "name": "SkMicrosoft", - "value": "sk.microsoft", - "description": "Microsoft analyzer for Slovak." - }, - { - "name": "SlMicrosoft", - "value": "sl.microsoft", - "description": "Microsoft analyzer for Slovenian." - }, - { - "name": "EsMicrosoft", - "value": "es.microsoft", - "description": "Microsoft analyzer for Spanish." - }, - { - "name": "EsLucene", - "value": "es.lucene", - "description": "Lucene analyzer for Spanish." - }, - { - "name": "SvMicrosoft", - "value": "sv.microsoft", - "description": "Microsoft analyzer for Swedish." - }, - { - "name": "SvLucene", - "value": "sv.lucene", - "description": "Lucene analyzer for Swedish." - }, - { - "name": "TaMicrosoft", - "value": "ta.microsoft", - "description": "Microsoft analyzer for Tamil." - }, - { - "name": "TeMicrosoft", - "value": "te.microsoft", - "description": "Microsoft analyzer for Telugu." - }, - { - "name": "ThMicrosoft", - "value": "th.microsoft", - "description": "Microsoft analyzer for Thai." - }, - { - "name": "ThLucene", - "value": "th.lucene", - "description": "Lucene analyzer for Thai." - }, - { - "name": "TrMicrosoft", - "value": "tr.microsoft", - "description": "Microsoft analyzer for Turkish." - }, - { - "name": "TrLucene", - "value": "tr.lucene", - "description": "Lucene analyzer for Turkish." - }, - { - "name": "UkMicrosoft", - "value": "uk.microsoft", - "description": "Microsoft analyzer for Ukrainian." - }, - { - "name": "UrMicrosoft", - "value": "ur.microsoft", - "description": "Microsoft analyzer for Urdu." - }, - { - "name": "ViMicrosoft", - "value": "vi.microsoft", - "description": "Microsoft analyzer for Vietnamese." - }, - { - "name": "StandardLucene", - "value": "standard.lucene", - "description": "Standard Lucene analyzer." - }, - { - "name": "StandardAsciiFoldingLucene", - "value": "standardasciifolding.lucene", - "description": "Standard ASCII Folding Lucene analyzer. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers" - }, - { - "name": "Keyword", - "value": "keyword", - "description": "Treats the entire content of a field as a single token. This is useful for data\nlike zip codes, ids, and some product names. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html" - }, - { - "name": "Pattern", - "value": "pattern", - "description": "Flexibly separates text into terms via a regular expression pattern. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" - }, - { - "name": "Simple", - "value": "simple", - "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html" - }, - { - "name": "Stop", - "value": "stop", - "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" - }, - { - "name": "Whitespace", - "value": "whitespace", - "description": "An analyzer that uses the whitespace tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html" - } - ] - } - }, - "LexicalTokenizer": { - "type": "object", - "description": "Base type for tokenizers.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - }, - "name": { - "type": "string", - "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type", - "name" - ] - }, - "LexicalTokenizerName": { - "type": "string", - "description": "Defines the names of all tokenizers supported by the search engine.", - "enum": [ - "classic", - "edgeNGram", - "keyword_v2", - "letter", - "lowercase", - "microsoft_language_tokenizer", - "microsoft_language_stemming_tokenizer", - "nGram", - "path_hierarchy_v2", - "pattern", - "standard_v2", - "uax_url_email", - "whitespace" - ], - "x-ms-enum": { - "name": "LexicalTokenizerName", - "modelAsString": true, - "values": [ - { - "name": "Classic", - "value": "classic", - "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" - }, - { - "name": "EdgeNGram", - "value": "edgeNGram", - "description": "Tokenizes the input from an edge into n-grams of the given size(s). See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" - }, - { - "name": "Keyword", - "value": "keyword_v2", - "description": "Emits the entire input as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" - }, - { - "name": "Letter", - "value": "letter", - "description": "Divides text at non-letters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" - }, - { - "name": "Lowercase", - "value": "lowercase", - "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" - }, - { - "name": "MicrosoftLanguageTokenizer", - "value": "microsoft_language_tokenizer", - "description": "Divides text using language-specific rules." - }, - { - "name": "MicrosoftLanguageStemmingTokenizer", - "value": "microsoft_language_stemming_tokenizer", - "description": "Divides text using language-specific rules and reduces words to their base\nforms." - }, - { - "name": "NGram", - "value": "nGram", - "description": "Tokenizes the input into n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" - }, - { - "name": "PathHierarchy", - "value": "path_hierarchy_v2", - "description": "Tokenizer for path-like hierarchies. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" - }, - { - "name": "Pattern", - "value": "pattern", - "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" - }, - { - "name": "Standard", - "value": "standard_v2", - "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter\nand stop filter. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" - }, - { - "name": "UaxUrlEmail", - "value": "uax_url_email", - "description": "Tokenizes urls and emails as one token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" - }, - { - "name": "Whitespace", - "value": "whitespace", - "description": "Divides text at whitespace. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" - } - ] - } - }, - "LimitTokenFilter": { - "type": "object", - "description": "Limits the number of tokens while indexing. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "maxTokenCount": { - "type": "integer", - "format": "int32", - "description": "The maximum number of tokens to produce. Default is 1.", - "default": 1 - }, - "consumeAllTokens": { - "type": "boolean", - "description": "A value indicating whether all tokens from the input must be consumed even if\nmaxTokenCount is reached. Default is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.LimitTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter" - }, - "ListDataSourcesResult": { - "type": "object", - "description": "Response from a List Datasources request. If successful, it includes the full\ndefinitions of all datasources.", - "properties": { - "value": { - "type": "array", - "description": "The datasources in the Search service.", - "items": { - "$ref": "#/definitions/SearchIndexerDataSourceItem" - }, - "readOnly": true, - "x-ms-client-name": "dataSources", - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "ListIndexersResult": { - "type": "object", - "description": "Response from a List Indexers request. If successful, it includes the full\ndefinitions of all indexers.", - "properties": { - "value": { - "type": "array", - "description": "The indexers in the Search service.", - "items": { - "$ref": "#/definitions/SearchIndexerItem" - }, - "readOnly": true, - "x-ms-client-name": "indexers", - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "ListIndexesResult": { - "type": "object", - "description": "Response from a List Indexes request. If successful, it includes the full\ndefinitions of all indexes.", - "properties": { - "value": { - "type": "array", - "description": "The indexes in the Search service.", - "items": { - "$ref": "#/definitions/SearchIndexItem" - }, - "readOnly": true, - "x-ms-client-name": "indexes", - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "ListSkillsetsResult": { - "type": "object", - "description": "Response from a list skillset request. If successful, it includes the full\ndefinitions of all skillsets.", - "properties": { - "value": { - "type": "array", - "description": "The skillsets defined in the Search service.", - "items": { - "$ref": "#/definitions/SearchIndexerSkillsetItem" - }, - "readOnly": true, - "x-ms-client-name": "skillsets", - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "ListSynonymMapsResult": { - "type": "object", - "description": "Response from a List SynonymMaps request. If successful, it includes the full\ndefinitions of all synonym maps.", - "properties": { - "value": { - "type": "array", - "description": "The synonym maps in the Search service.", - "items": { - "$ref": "#/definitions/SynonymMapItem" - }, - "readOnly": true, - "x-ms-client-name": "synonymMaps", - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "LuceneStandardAnalyzer": { - "type": "object", - "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase\nfilter and stop filter.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 255, - "maximum": 300 - }, - "stopwords": { - "type": "array", - "description": "A list of stopwords.", - "items": { - "type": "string" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of analyzer.", - "enum": [ - "#Microsoft.Azure.Search.StandardAnalyzer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalAnalyzer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer" - }, - "LuceneStandardTokenizer": { - "type": "object", - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split.", - "default": 255 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.StandardTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer" - }, - "LuceneStandardTokenizerV2": { - "type": "object", - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 255, - "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.StandardTokenizerV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2" - }, - "MagnitudeScoringFunction": { - "type": "object", - "description": "Defines a function that boosts scores based on the magnitude of a numeric field.", - "properties": { - "magnitude": { - "$ref": "#/definitions/MagnitudeScoringParameters", - "description": "Parameter values for the magnitude scoring function.", - "x-ms-client-name": "parameters" - } - }, - "required": [ - "magnitude" - ], - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "x-ms-discriminator-value": "magnitude" - }, - "MagnitudeScoringParameters": { - "type": "object", - "description": "Provides parameter values to a magnitude scoring function.", - "properties": { - "boostingRangeStart": { - "type": "number", - "format": "double", - "description": "The field value at which boosting starts." - }, - "boostingRangeEnd": { - "type": "number", - "format": "double", - "description": "The field value at which boosting ends." - }, - "constantBoostBeyondRange": { - "type": "boolean", - "description": "A value indicating whether to apply a constant boost for field values beyond\nthe range end value; default is false.", - "x-ms-client-name": "shouldBoostBeyondRangeByConstant" - } - }, - "required": [ - "boostingRangeStart", - "boostingRangeEnd" - ] - }, - "MappingCharFilter": { - "type": "object", - "description": "A character filter that applies mappings defined with the mappings option.\nMatching is greedy (longest pattern matching at a given point wins).\nReplacement is allowed to be the empty string. This character filter is\nimplemented using Apache Lucene.", - "properties": { - "mappings": { - "type": "array", - "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the\ncharacter \"a\" will be replaced with character \"b\").", - "items": { - "type": "string" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of char filter.", - "enum": [ - "#Microsoft.Azure.Search.MappingCharFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "mappings", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/CharFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter" - }, - "MergeSkill": { - "type": "object", - "description": "A skill for merging two or more strings into a single unified string, with an\noptional user-defined delimiter separating each component part.", - "properties": { - "insertPreTag": { - "type": "string", - "description": "The tag indicates the start of the merged text. By default, the tag is an empty\nspace.", - "default": " " - }, - "insertPostTag": { - "type": "string", - "description": "The tag indicates the end of the merged text. By default, the tag is an empty\nspace.", - "default": " " - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.MergeSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill" - }, - "MicrosoftLanguageStemmingTokenizer": { - "type": "object", - "description": "Divides text using language-specific rules and reduces words to their base\nforms.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", - "default": 255, - "maximum": 300 - }, - "isSearchTokenizer": { - "type": "boolean", - "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." - }, - "language": { - "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", - "description": "The language to use. The default is English." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" - }, - "MicrosoftLanguageTokenizer": { - "type": "object", - "description": "Divides text using language-specific rules.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", - "default": 255, - "maximum": 300 - }, - "isSearchTokenizer": { - "type": "boolean", - "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." - }, - "language": { - "$ref": "#/definitions/MicrosoftTokenizerLanguage", - "description": "The language to use. The default is English." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" - }, - "MicrosoftStemmingTokenizerLanguage": { - "type": "string", - "description": "Lists the languages supported by the Microsoft language stemming tokenizer.", - "enum": [ - "arabic", - "bangla", - "bulgarian", - "catalan", - "croatian", - "czech", - "danish", - "dutch", - "english", - "estonian", - "finnish", - "french", - "german", - "greek", - "gujarati", - "hebrew", - "hindi", - "hungarian", - "icelandic", - "indonesian", - "italian", - "kannada", - "latvian", - "lithuanian", - "malay", - "malayalam", - "marathi", - "norwegianBokmaal", - "polish", - "portuguese", - "portugueseBrazilian", - "punjabi", - "romanian", - "russian", - "serbianCyrillic", - "serbianLatin", - "slovak", - "slovenian", - "spanish", - "swedish", - "tamil", - "telugu", - "turkish", - "ukrainian", - "urdu" - ], - "x-ms-enum": { - "name": "MicrosoftStemmingTokenizerLanguage", - "modelAsString": true, - "values": [ - { - "name": "Arabic", - "value": "arabic", - "description": "Selects the Microsoft stemming tokenizer for Arabic." - }, - { - "name": "Bangla", - "value": "bangla", - "description": "Selects the Microsoft stemming tokenizer for Bangla." - }, - { - "name": "Bulgarian", - "value": "bulgarian", - "description": "Selects the Microsoft stemming tokenizer for Bulgarian." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the Microsoft stemming tokenizer for Catalan." - }, - { - "name": "Croatian", - "value": "croatian", - "description": "Selects the Microsoft stemming tokenizer for Croatian." - }, - { - "name": "Czech", - "value": "czech", - "description": "Selects the Microsoft stemming tokenizer for Czech." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the Microsoft stemming tokenizer for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the Microsoft stemming tokenizer for Dutch." - }, - { - "name": "English", - "value": "english", - "description": "Selects the Microsoft stemming tokenizer for English." - }, - { - "name": "Estonian", - "value": "estonian", - "description": "Selects the Microsoft stemming tokenizer for Estonian." - }, - { - "name": "Finnish", - "value": "finnish", - "description": "Selects the Microsoft stemming tokenizer for Finnish." - }, - { - "name": "French", - "value": "french", - "description": "Selects the Microsoft stemming tokenizer for French." - }, - { - "name": "German", - "value": "german", - "description": "Selects the Microsoft stemming tokenizer for German." - }, - { - "name": "Greek", - "value": "greek", - "description": "Selects the Microsoft stemming tokenizer for Greek." - }, - { - "name": "Gujarati", - "value": "gujarati", - "description": "Selects the Microsoft stemming tokenizer for Gujarati." - }, - { - "name": "Hebrew", - "value": "hebrew", - "description": "Selects the Microsoft stemming tokenizer for Hebrew." - }, - { - "name": "Hindi", - "value": "hindi", - "description": "Selects the Microsoft stemming tokenizer for Hindi." - }, - { - "name": "Hungarian", - "value": "hungarian", - "description": "Selects the Microsoft stemming tokenizer for Hungarian." - }, - { - "name": "Icelandic", - "value": "icelandic", - "description": "Selects the Microsoft stemming tokenizer for Icelandic." - }, - { - "name": "Indonesian", - "value": "indonesian", - "description": "Selects the Microsoft stemming tokenizer for Indonesian." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the Microsoft stemming tokenizer for Italian." - }, - { - "name": "Kannada", - "value": "kannada", - "description": "Selects the Microsoft stemming tokenizer for Kannada." - }, - { - "name": "Latvian", - "value": "latvian", - "description": "Selects the Microsoft stemming tokenizer for Latvian." - }, - { - "name": "Lithuanian", - "value": "lithuanian", - "description": "Selects the Microsoft stemming tokenizer for Lithuanian." - }, - { - "name": "Malay", - "value": "malay", - "description": "Selects the Microsoft stemming tokenizer for Malay." - }, - { - "name": "Malayalam", - "value": "malayalam", - "description": "Selects the Microsoft stemming tokenizer for Malayalam." - }, - { - "name": "Marathi", - "value": "marathi", - "description": "Selects the Microsoft stemming tokenizer for Marathi." - }, - { - "name": "NorwegianBokmaal", - "value": "norwegianBokmaal", - "description": "Selects the Microsoft stemming tokenizer for Norwegian (Bokmål)." - }, - { - "name": "Polish", - "value": "polish", - "description": "Selects the Microsoft stemming tokenizer for Polish." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the Microsoft stemming tokenizer for Portuguese." - }, - { - "name": "PortugueseBrazilian", - "value": "portugueseBrazilian", - "description": "Selects the Microsoft stemming tokenizer for Portuguese (Brazil)." - }, - { - "name": "Punjabi", - "value": "punjabi", - "description": "Selects the Microsoft stemming tokenizer for Punjabi." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the Microsoft stemming tokenizer for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the Microsoft stemming tokenizer for Russian." - }, - { - "name": "SerbianCyrillic", - "value": "serbianCyrillic", - "description": "Selects the Microsoft stemming tokenizer for Serbian (Cyrillic)." - }, - { - "name": "SerbianLatin", - "value": "serbianLatin", - "description": "Selects the Microsoft stemming tokenizer for Serbian (Latin)." - }, - { - "name": "Slovak", - "value": "slovak", - "description": "Selects the Microsoft stemming tokenizer for Slovak." - }, - { - "name": "Slovenian", - "value": "slovenian", - "description": "Selects the Microsoft stemming tokenizer for Slovenian." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the Microsoft stemming tokenizer for Spanish." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the Microsoft stemming tokenizer for Swedish." - }, - { - "name": "Tamil", - "value": "tamil", - "description": "Selects the Microsoft stemming tokenizer for Tamil." - }, - { - "name": "Telugu", - "value": "telugu", - "description": "Selects the Microsoft stemming tokenizer for Telugu." - }, - { - "name": "Turkish", - "value": "turkish", - "description": "Selects the Microsoft stemming tokenizer for Turkish." - }, - { - "name": "Ukrainian", - "value": "ukrainian", - "description": "Selects the Microsoft stemming tokenizer for Ukrainian." - }, - { - "name": "Urdu", - "value": "urdu", - "description": "Selects the Microsoft stemming tokenizer for Urdu." - } - ] - } - }, - "MicrosoftTokenizerLanguage": { - "type": "string", - "description": "Lists the languages supported by the Microsoft language tokenizer.", - "enum": [ - "bangla", - "bulgarian", - "catalan", - "chineseSimplified", - "chineseTraditional", - "croatian", - "czech", - "danish", - "dutch", - "english", - "french", - "german", - "greek", - "gujarati", - "hindi", - "icelandic", - "indonesian", - "italian", - "japanese", - "kannada", - "korean", - "malay", - "malayalam", - "marathi", - "norwegianBokmaal", - "polish", - "portuguese", - "portugueseBrazilian", - "punjabi", - "romanian", - "russian", - "serbianCyrillic", - "serbianLatin", - "slovenian", - "spanish", - "swedish", - "tamil", - "telugu", - "thai", - "ukrainian", - "urdu", - "vietnamese" - ], - "x-ms-enum": { - "name": "MicrosoftTokenizerLanguage", - "modelAsString": true, - "values": [ - { - "name": "Bangla", - "value": "bangla", - "description": "Selects the Microsoft tokenizer for Bangla." - }, - { - "name": "Bulgarian", - "value": "bulgarian", - "description": "Selects the Microsoft tokenizer for Bulgarian." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the Microsoft tokenizer for Catalan." - }, - { - "name": "ChineseSimplified", - "value": "chineseSimplified", - "description": "Selects the Microsoft tokenizer for Chinese (Simplified)." - }, - { - "name": "ChineseTraditional", - "value": "chineseTraditional", - "description": "Selects the Microsoft tokenizer for Chinese (Traditional)." - }, - { - "name": "Croatian", - "value": "croatian", - "description": "Selects the Microsoft tokenizer for Croatian." - }, - { - "name": "Czech", - "value": "czech", - "description": "Selects the Microsoft tokenizer for Czech." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the Microsoft tokenizer for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the Microsoft tokenizer for Dutch." - }, - { - "name": "English", - "value": "english", - "description": "Selects the Microsoft tokenizer for English." - }, - { - "name": "French", - "value": "french", - "description": "Selects the Microsoft tokenizer for French." - }, - { - "name": "German", - "value": "german", - "description": "Selects the Microsoft tokenizer for German." - }, - { - "name": "Greek", - "value": "greek", - "description": "Selects the Microsoft tokenizer for Greek." - }, - { - "name": "Gujarati", - "value": "gujarati", - "description": "Selects the Microsoft tokenizer for Gujarati." - }, - { - "name": "Hindi", - "value": "hindi", - "description": "Selects the Microsoft tokenizer for Hindi." - }, - { - "name": "Icelandic", - "value": "icelandic", - "description": "Selects the Microsoft tokenizer for Icelandic." - }, - { - "name": "Indonesian", - "value": "indonesian", - "description": "Selects the Microsoft tokenizer for Indonesian." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the Microsoft tokenizer for Italian." - }, - { - "name": "Japanese", - "value": "japanese", - "description": "Selects the Microsoft tokenizer for Japanese." - }, - { - "name": "Kannada", - "value": "kannada", - "description": "Selects the Microsoft tokenizer for Kannada." - }, - { - "name": "Korean", - "value": "korean", - "description": "Selects the Microsoft tokenizer for Korean." - }, - { - "name": "Malay", - "value": "malay", - "description": "Selects the Microsoft tokenizer for Malay." - }, - { - "name": "Malayalam", - "value": "malayalam", - "description": "Selects the Microsoft tokenizer for Malayalam." - }, - { - "name": "Marathi", - "value": "marathi", - "description": "Selects the Microsoft tokenizer for Marathi." - }, - { - "name": "NorwegianBokmaal", - "value": "norwegianBokmaal", - "description": "Selects the Microsoft tokenizer for Norwegian (Bokmål)." - }, - { - "name": "Polish", - "value": "polish", - "description": "Selects the Microsoft tokenizer for Polish." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the Microsoft tokenizer for Portuguese." - }, - { - "name": "PortugueseBrazilian", - "value": "portugueseBrazilian", - "description": "Selects the Microsoft tokenizer for Portuguese (Brazil)." - }, - { - "name": "Punjabi", - "value": "punjabi", - "description": "Selects the Microsoft tokenizer for Punjabi." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the Microsoft tokenizer for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the Microsoft tokenizer for Russian." - }, - { - "name": "SerbianCyrillic", - "value": "serbianCyrillic", - "description": "Selects the Microsoft tokenizer for Serbian (Cyrillic)." - }, - { - "name": "SerbianLatin", - "value": "serbianLatin", - "description": "Selects the Microsoft tokenizer for Serbian (Latin)." - }, - { - "name": "Slovenian", - "value": "slovenian", - "description": "Selects the Microsoft tokenizer for Slovenian." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the Microsoft tokenizer for Spanish." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the Microsoft tokenizer for Swedish." - }, - { - "name": "Tamil", - "value": "tamil", - "description": "Selects the Microsoft tokenizer for Tamil." - }, - { - "name": "Telugu", - "value": "telugu", - "description": "Selects the Microsoft tokenizer for Telugu." - }, - { - "name": "Thai", - "value": "thai", - "description": "Selects the Microsoft tokenizer for Thai." - }, - { - "name": "Ukrainian", - "value": "ukrainian", - "description": "Selects the Microsoft tokenizer for Ukrainian." - }, - { - "name": "Urdu", - "value": "urdu", - "description": "Selects the Microsoft tokenizer for Urdu." - }, - { - "name": "Vietnamese", - "value": "vietnamese", - "description": "Selects the Microsoft tokenizer for Vietnamese." - } - ] - } - }, - "NGramTokenFilter": { - "type": "object", - "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", - "default": 1 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2.", - "default": 2 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.NGramTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter" - }, - "NGramTokenFilterV2": { - "type": "object", - "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", - "default": 1, - "maximum": 300 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2. Maximum is 300.", - "default": 2, - "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.NGramTokenFilterV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2" - }, - "NGramTokenizer": { - "type": "object", - "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is\nimplemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", - "default": 1, - "maximum": 300 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2. Maximum is 300.", - "default": 2, - "maximum": 300 - }, - "tokenChars": { - "type": "array", - "description": "Character classes to keep in the tokens.", - "items": { - "$ref": "#/definitions/TokenCharacterKind" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.NGramTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer" - }, - "OcrLineEnding": { - "type": "string", - "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\".", - "enum": [ - "space", - "carriageReturn", - "lineFeed", - "carriageReturnLineFeed" - ], - "x-ms-enum": { - "name": "OcrLineEnding", - "modelAsString": true, - "values": [ - { - "name": "Space", - "value": "space", - "description": "Lines are separated by a single space character." - }, - { - "name": "CarriageReturn", - "value": "carriageReturn", - "description": "Lines are separated by a carriage return ('\\r') character." - }, - { - "name": "LineFeed", - "value": "lineFeed", - "description": "Lines are separated by a single line feed ('\\n') character." - }, - { - "name": "CarriageReturnLineFeed", - "value": "carriageReturnLineFeed", - "description": "Lines are separated by a carriage return and a line feed ('\\r\\n') character." - } - ] - } - }, - "OcrSkill": { - "type": "object", - "description": "A skill that extracts text from image files.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/OcrSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "detectOrientation": { - "type": "boolean", - "description": "A value indicating to turn orientation detection on or not. Default is false.", - "x-ms-client-name": "shouldDetectOrientation" - }, - "lineEnding": { - "$ref": "#/definitions/OcrLineEnding", - "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\"." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Vision.OcrSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill" - }, - "OcrSkillLanguage": { - "type": "string", - "description": "The language codes supported for input by OcrSkill.", - "enum": [ - "af", - "sq", - "anp", - "ar", - "ast", - "awa", - "az", - "bfy", - "eu", - "be", - "be-cyrl", - "be-latn", - "bho", - "bi", - "brx", - "bs", - "bra", - "br", - "bg", - "bns", - "bua", - "ca", - "ceb", - "rab", - "ch", - "hne", - "zh-Hans", - "zh-Hant", - "kw", - "co", - "crh", - "hr", - "cs", - "da", - "prs", - "dhi", - "doi", - "nl", - "en", - "myv", - "et", - "fo", - "fj", - "fil", - "fi", - "fr", - "fur", - "gag", - "gl", - "de", - "gil", - "gon", - "el", - "kl", - "gvr", - "ht", - "hlb", - "hni", - "bgc", - "haw", - "hi", - "mww", - "hoc", - "hu", - "is", - "smn", - "id", - "ia", - "iu", - "ga", - "it", - "ja", - "Jns", - "jv", - "kea", - "kac", - "xnr", - "krc", - "kaa-cyrl", - "kaa", - "csb", - "kk-cyrl", - "kk-latn", - "klr", - "kha", - "quc", - "ko", - "kfq", - "kpy", - "kos", - "kum", - "ku-arab", - "ku-latn", - "kru", - "ky", - "lkt", - "la", - "lt", - "dsb", - "smj", - "lb", - "bfz", - "ms", - "mt", - "kmj", - "gv", - "mi", - "mr", - "mn", - "cnr-cyrl", - "cnr-latn", - "nap", - "ne", - "niu", - "nog", - "sme", - "nb", - "no", - "oc", - "os", - "ps", - "fa", - "pl", - "pt", - "pa", - "ksh", - "ro", - "rm", - "ru", - "sck", - "sm", - "sa", - "sat", - "sco", - "gd", - "sr", - "sr-Cyrl", - "sr-Latn", - "xsr", - "srx", - "sms", - "sk", - "sl", - "so", - "sma", - "es", - "sw", - "sv", - "tg", - "tt", - "tet", - "thf", - "to", - "tr", - "tk", - "tyv", - "hsb", - "ur", - "ug", - "uz-arab", - "uz-cyrl", - "uz", - "vo", - "wae", - "cy", - "fy", - "yua", - "za", - "zu", - "unk" - ], - "x-ms-enum": { - "name": "OcrSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "af", - "value": "af", - "description": "Afrikaans" - }, - { - "name": "sq", - "value": "sq", - "description": "Albanian" - }, - { - "name": "anp", - "value": "anp", - "description": "Angika (Devanagiri)" - }, - { - "name": "ar", - "value": "ar", - "description": "Arabic" - }, - { - "name": "ast", - "value": "ast", - "description": "Asturian" - }, - { - "name": "awa", - "value": "awa", - "description": "Awadhi-Hindi (Devanagiri)" - }, - { - "name": "az", - "value": "az", - "description": "Azerbaijani (Latin)" - }, - { - "name": "bfy", - "value": "bfy", - "description": "Bagheli" - }, - { - "name": "eu", - "value": "eu", - "description": "Basque" - }, - { - "name": "be", - "value": "be", - "description": "Belarusian (Cyrillic and Latin)" - }, - { - "name": "be-cyrl", - "value": "be-cyrl", - "description": "Belarusian (Cyrillic)" - }, - { - "name": "be-latn", - "value": "be-latn", - "description": "Belarusian (Latin)" - }, - { - "name": "bho", - "value": "bho", - "description": "Bhojpuri-Hindi (Devanagiri)" - }, - { - "name": "bi", - "value": "bi", - "description": "Bislama" - }, - { - "name": "brx", - "value": "brx", - "description": "Bodo (Devanagiri)" - }, - { - "name": "bs", - "value": "bs", - "description": "Bosnian Latin" - }, - { - "name": "bra", - "value": "bra", - "description": "Brajbha" - }, - { - "name": "br", - "value": "br", - "description": "Breton" - }, - { - "name": "bg", - "value": "bg", - "description": "Bulgarian" - }, - { - "name": "bns", - "value": "bns", - "description": "Bundeli" - }, - { - "name": "bua", - "value": "bua", - "description": "Buryat (Cyrillic)" - }, - { - "name": "ca", - "value": "ca", - "description": "Catalan" - }, - { - "name": "ceb", - "value": "ceb", - "description": "Cebuano" - }, - { - "name": "rab", - "value": "rab", - "description": "Chamling" - }, - { - "name": "ch", - "value": "ch", - "description": "Chamorro" - }, - { - "name": "hne", - "value": "hne", - "description": "Chhattisgarhi (Devanagiri)" - }, - { - "name": "zh-Hans", - "value": "zh-Hans", - "description": "Chinese Simplified" - }, - { - "name": "zh-Hant", - "value": "zh-Hant", - "description": "Chinese Traditional" - }, - { - "name": "kw", - "value": "kw", - "description": "Cornish" - }, - { - "name": "co", - "value": "co", - "description": "Corsican" - }, - { - "name": "crh", - "value": "crh", - "description": "Crimean Tatar (Latin)" - }, - { - "name": "hr", - "value": "hr", - "description": "Croatian" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "prs", - "value": "prs", - "description": "Dari" - }, - { - "name": "dhi", - "value": "dhi", - "description": "Dhimal (Devanagiri)" - }, - { - "name": "doi", - "value": "doi", - "description": "Dogri (Devanagiri)" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "myv", - "value": "myv", - "description": "Erzya (Cyrillic)" - }, - { - "name": "et", - "value": "et", - "description": "Estonian" - }, - { - "name": "fo", - "value": "fo", - "description": "Faroese" - }, - { - "name": "fj", - "value": "fj", - "description": "Fijian" - }, - { - "name": "fil", - "value": "fil", - "description": "Filipino" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "fur", - "value": "fur", - "description": "Frulian" - }, - { - "name": "gag", - "value": "gag", - "description": "Gagauz (Latin)" - }, - { - "name": "gl", - "value": "gl", - "description": "Galician" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "gil", - "value": "gil", - "description": "Gilbertese" - }, - { - "name": "gon", - "value": "gon", - "description": "Gondi (Devanagiri)" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "kl", - "value": "kl", - "description": "Greenlandic" - }, - { - "name": "gvr", - "value": "gvr", - "description": "Gurung (Devanagiri)" - }, - { - "name": "ht", - "value": "ht", - "description": "Haitian Creole" - }, - { - "name": "hlb", - "value": "hlb", - "description": "Halbi (Devanagiri)" - }, - { - "name": "hni", - "value": "hni", - "description": "Hani" - }, - { - "name": "bgc", - "value": "bgc", - "description": "Haryanvi" - }, - { - "name": "haw", - "value": "haw", - "description": "Hawaiian" - }, - { - "name": "hi", - "value": "hi", - "description": "Hindi" - }, - { - "name": "mww", - "value": "mww", - "description": "Hmong Daw (Latin)" - }, - { - "name": "hoc", - "value": "hoc", - "description": "Ho (Devanagiri)" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "is", - "value": "is", - "description": "Icelandic" - }, - { - "name": "smn", - "value": "smn", - "description": "Inari Sami" - }, - { - "name": "id", - "value": "id", - "description": "Indonesian" - }, - { - "name": "ia", - "value": "ia", - "description": "Interlingua" - }, - { - "name": "iu", - "value": "iu", - "description": "Inuktitut (Latin)" - }, - { - "name": "ga", - "value": "ga", - "description": "Irish" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "Jns", - "value": "Jns", - "description": "Jaunsari (Devanagiri)" - }, - { - "name": "jv", - "value": "jv", - "description": "Javanese" - }, - { - "name": "kea", - "value": "kea", - "description": "Kabuverdianu" - }, - { - "name": "kac", - "value": "kac", - "description": "Kachin (Latin)" - }, - { - "name": "xnr", - "value": "xnr", - "description": "Kangri (Devanagiri)" - }, - { - "name": "krc", - "value": "krc", - "description": "Karachay-Balkar" - }, - { - "name": "kaa-cyrl", - "value": "kaa-cyrl", - "description": "Kara-Kalpak (Cyrillic)" - }, - { - "name": "kaa", - "value": "kaa", - "description": "Kara-Kalpak (Latin)" - }, - { - "name": "csb", - "value": "csb", - "description": "Kashubian" - }, - { - "name": "kk-cyrl", - "value": "kk-cyrl", - "description": "Kazakh (Cyrillic)" - }, - { - "name": "kk-latn", - "value": "kk-latn", - "description": "Kazakh (Latin)" - }, - { - "name": "klr", - "value": "klr", - "description": "Khaling" - }, - { - "name": "kha", - "value": "kha", - "description": "Khasi" - }, - { - "name": "quc", - "value": "quc", - "description": "K'iche'" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "kfq", - "value": "kfq", - "description": "Korku" - }, - { - "name": "kpy", - "value": "kpy", - "description": "Koryak" - }, - { - "name": "kos", - "value": "kos", - "description": "Kosraean" - }, - { - "name": "kum", - "value": "kum", - "description": "Kumyk (Cyrillic)" - }, - { - "name": "ku-arab", - "value": "ku-arab", - "description": "Kurdish (Arabic)" - }, - { - "name": "ku-latn", - "value": "ku-latn", - "description": "Kurdish (Latin)" - }, - { - "name": "kru", - "value": "kru", - "description": "Kurukh (Devanagiri)" - }, - { - "name": "ky", - "value": "ky", - "description": "Kyrgyz (Cyrillic)" - }, - { - "name": "lkt", - "value": "lkt", - "description": "Lakota" - }, - { - "name": "la", - "value": "la", - "description": "Latin" - }, - { - "name": "lt", - "value": "lt", - "description": "Lithuanian" - }, - { - "name": "dsb", - "value": "dsb", - "description": "Lower Sorbian" - }, - { - "name": "smj", - "value": "smj", - "description": "Lule Sami" - }, - { - "name": "lb", - "value": "lb", - "description": "Luxembourgish" - }, - { - "name": "bfz", - "value": "bfz", - "description": "Mahasu Pahari (Devanagiri)" - }, - { - "name": "ms", - "value": "ms", - "description": "Malay (Latin)" - }, - { - "name": "mt", - "value": "mt", - "description": "Maltese" - }, - { - "name": "kmj", - "value": "kmj", - "description": "Malto (Devanagiri)" - }, - { - "name": "gv", - "value": "gv", - "description": "Manx" - }, - { - "name": "mi", - "value": "mi", - "description": "Maori" - }, - { - "name": "mr", - "value": "mr", - "description": "Marathi" - }, - { - "name": "mn", - "value": "mn", - "description": "Mongolian (Cyrillic)" - }, - { - "name": "cnr-cyrl", - "value": "cnr-cyrl", - "description": "Montenegrin (Cyrillic)" - }, - { - "name": "cnr-latn", - "value": "cnr-latn", - "description": "Montenegrin (Latin)" - }, - { - "name": "nap", - "value": "nap", - "description": "Neapolitan" - }, - { - "name": "ne", - "value": "ne", - "description": "Nepali" - }, - { - "name": "niu", - "value": "niu", - "description": "Niuean" - }, - { - "name": "nog", - "value": "nog", - "description": "Nogay" - }, - { - "name": "sme", - "value": "sme", - "description": "Northern Sami (Latin)" - }, - { - "name": "nb", - "value": "nb", - "description": "Norwegian" - }, - { - "name": "no", - "value": "no", - "description": "Norwegian" - }, - { - "name": "oc", - "value": "oc", - "description": "Occitan" - }, - { - "name": "os", - "value": "os", - "description": "Ossetic" - }, - { - "name": "ps", - "value": "ps", - "description": "Pashto" - }, - { - "name": "fa", - "value": "fa", - "description": "Persian" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese" - }, - { - "name": "pa", - "value": "pa", - "description": "Punjabi (Arabic)" - }, - { - "name": "ksh", - "value": "ksh", - "description": "Ripuarian" - }, - { - "name": "ro", - "value": "ro", - "description": "Romanian" - }, - { - "name": "rm", - "value": "rm", - "description": "Romansh" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "sck", - "value": "sck", - "description": "Sadri (Devanagiri)" - }, - { - "name": "sm", - "value": "sm", - "description": "Samoan (Latin)" - }, - { - "name": "sa", - "value": "sa", - "description": "Sanskrit (Devanagiri)" - }, - { - "name": "sat", - "value": "sat", - "description": "Santali (Devanagiri)" - }, - { - "name": "sco", - "value": "sco", - "description": "Scots" - }, - { - "name": "gd", - "value": "gd", - "description": "Scottish Gaelic" - }, - { - "name": "sr", - "value": "sr", - "description": "Serbian (Latin)" - }, - { - "name": "sr-Cyrl", - "value": "sr-Cyrl", - "description": "Serbian (Cyrillic)" - }, - { - "name": "sr-Latn", - "value": "sr-Latn", - "description": "Serbian (Latin)" - }, - { - "name": "xsr", - "value": "xsr", - "description": "Sherpa (Devanagiri)" - }, - { - "name": "srx", - "value": "srx", - "description": "Sirmauri (Devanagiri)" - }, - { - "name": "sms", - "value": "sms", - "description": "Skolt Sami" - }, - { - "name": "sk", - "value": "sk", - "description": "Slovak" - }, - { - "name": "sl", - "value": "sl", - "description": "Slovenian" - }, - { - "name": "so", - "value": "so", - "description": "Somali (Arabic)" - }, - { - "name": "sma", - "value": "sma", - "description": "Southern Sami" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sw", - "value": "sw", - "description": "Swahili (Latin)" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "tg", - "value": "tg", - "description": "Tajik (Cyrillic)" - }, - { - "name": "tt", - "value": "tt", - "description": "Tatar (Latin)" - }, - { - "name": "tet", - "value": "tet", - "description": "Tetum" - }, - { - "name": "thf", - "value": "thf", - "description": "Thangmi" - }, - { - "name": "to", - "value": "to", - "description": "Tongan" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - }, - { - "name": "tk", - "value": "tk", - "description": "Turkmen (Latin)" - }, - { - "name": "tyv", - "value": "tyv", - "description": "Tuvan" - }, - { - "name": "hsb", - "value": "hsb", - "description": "Upper Sorbian" - }, - { - "name": "ur", - "value": "ur", - "description": "Urdu" - }, - { - "name": "ug", - "value": "ug", - "description": "Uyghur (Arabic)" - }, - { - "name": "uz-arab", - "value": "uz-arab", - "description": "Uzbek (Arabic)" - }, - { - "name": "uz-cyrl", - "value": "uz-cyrl", - "description": "Uzbek (Cyrillic)" - }, - { - "name": "uz", - "value": "uz", - "description": "Uzbek (Latin)" - }, - { - "name": "vo", - "value": "vo", - "description": "Volapük" - }, - { - "name": "wae", - "value": "wae", - "description": "Walser" - }, - { - "name": "cy", - "value": "cy", - "description": "Welsh" - }, - { - "name": "fy", - "value": "fy", - "description": "Western Frisian" - }, - { - "name": "yua", - "value": "yua", - "description": "Yucatec Maya" - }, - { - "name": "za", - "value": "za", - "description": "Zhuang" - }, - { - "name": "zu", - "value": "zu", - "description": "Zulu" - }, - { - "name": "unk", - "value": "unk", - "description": "Unknown (All)" - } - ] - } - }, - "OutputFieldMappingEntry": { - "type": "object", - "description": "Output field mapping for a skill.", - "properties": { - "name": { - "type": "string", - "description": "The name of the output defined by the skill." - }, - "targetName": { - "type": "string", - "description": "The target name of the output. It is optional and default to name." - } - }, - "required": [ - "name" - ] - }, - "PIIDetectionSkill": { - "type": "object", - "description": "Using the Text Analytics API, extracts personal information from an input text\nand gives you the option of masking it.", - "properties": { - "defaultLanguageCode": { - "type": "string", - "description": "A value indicating which language code to use. Default is `en`." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", - "maximum": 1 - }, - "maskingMode": { - "$ref": "#/definitions/PIIDetectionSkillMaskingMode", - "description": "A parameter that provides various ways to mask the personal information\ndetected in the input text. Default is 'none'." - }, - "maskingCharacter": { - "type": "string", - "description": "The character used to mask the text if the maskingMode parameter is set to\nreplace. Default is '*'.", - "maxLength": 1, - "x-ms-client-name": "mask" - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "piiCategories": { - "type": "array", - "description": "A list of PII entity categories that should be extracted and masked.", - "items": { - "type": "string" - } - }, - "domain": { - "type": "string", - "description": "If specified, will set the PII domain to include only a subset of the entity\ncategories. Possible values include: 'phi', 'none'. Default is 'none'." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.PIIDetectionSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.PIIDetectionSkill" - }, - "PIIDetectionSkillMaskingMode": { - "type": "string", - "description": "A string indicating what maskingMode to use to mask the personal information\ndetected in the input text.", - "enum": [ - "none", - "replace" - ], - "x-ms-enum": { - "name": "PIIDetectionSkillMaskingMode", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "No masking occurs and the maskedText output will not be returned." - }, - { - "name": "Replace", - "value": "replace", - "description": "Replaces the detected entities with the character given in the maskingCharacter\nparameter. The character will be repeated to the length of the detected entity\nso that the offsets will correctly correspond to both the input text as well as\nthe output maskedText." - } - ] - } - }, - "PathHierarchyTokenizerV2": { - "type": "object", - "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache\nLucene.", - "properties": { - "delimiter": { - "type": "string", - "description": "The delimiter character to use. Default is \"/\".", - "default": "/" - }, - "replacement": { - "type": "string", - "description": "A value that, if set, replaces the delimiter character. Default is \"/\".", - "default": "/" - }, - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default and maximum is 300.", - "default": 300, - "maximum": 300 - }, - "reverse": { - "type": "boolean", - "description": "A value indicating whether to generate tokens in reverse order. Default is\nfalse.", - "x-ms-client-name": "reverseTokenOrder" - }, - "skip": { - "type": "integer", - "format": "int32", - "description": "The number of initial tokens to skip. Default is 0.", - "x-ms-client-name": "numberOfTokensToSkip" - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" - }, - "PatternAnalyzer": { - "type": "object", - "description": "Flexibly separates text into terms via a regular expression pattern. This\nanalyzer is implemented using Apache Lucene.", - "properties": { - "lowercase": { - "type": "boolean", - "description": "A value indicating whether terms should be lower-cased. Default is true.", - "default": true, - "x-ms-client-name": "lowerCaseTerms" - }, - "pattern": { - "type": "string", - "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", - "default": "\\W+" - }, - "flags": { - "$ref": "#/definitions/RegexFlags", - "description": "Regular expression flags." - }, - "stopwords": { - "type": "array", - "description": "A list of stopwords.", - "items": { - "type": "string" - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalAnalyzer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer" - }, - "PatternCaptureTokenFilter": { - "type": "object", - "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one\nor more patterns. This token filter is implemented using Apache Lucene.", - "properties": { - "patterns": { - "type": "array", - "description": "A list of patterns to match against each token.", - "items": { - "type": "string" - } - }, - "preserveOriginal": { - "type": "boolean", - "description": "A value indicating whether to return the original token even if one of the\npatterns matches. Default is true.", - "default": true - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.PatternCaptureTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "patterns", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter" - }, - "PatternReplaceCharFilter": { - "type": "object", - "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This character filter is implemented using\nApache Lucene.", - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern." - }, - "replacement": { - "type": "string", - "description": "The replacement text." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of char filter.", - "enum": [ - "#Microsoft.Azure.Search.PatternReplaceCharFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "pattern", - "replacement", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/CharFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter" - }, - "PatternReplaceTokenFilter": { - "type": "object", - "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This token filter is implemented using Apache\nLucene.", - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern." - }, - "replacement": { - "type": "string", - "description": "The replacement text." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.PatternReplaceTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "pattern", - "replacement", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter" - }, - "PatternTokenizer": { - "type": "object", - "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This\ntokenizer is implemented using Apache Lucene.", - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", - "default": "\\W+" - }, - "flags": { - "$ref": "#/definitions/RegexFlags", - "description": "Regular expression flags." - }, - "group": { - "type": "integer", - "format": "int32", - "description": "The zero-based ordinal of the matching group in the regular expression pattern\nto extract into tokens. Use -1 if you want to use the entire pattern to split\nthe input into tokens, irrespective of matching groups. Default is -1.", - "default": -1 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.PatternTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer" - }, - "PhoneticEncoder": { - "type": "string", - "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter.", - "enum": [ - "metaphone", - "doubleMetaphone", - "soundex", - "refinedSoundex", - "caverphone1", - "caverphone2", - "cologne", - "nysiis", - "koelnerPhonetik", - "haasePhonetik", - "beiderMorse" - ], - "x-ms-enum": { - "name": "PhoneticEncoder", - "modelAsString": true, - "values": [ - { - "name": "Metaphone", - "value": "metaphone", - "description": "Encodes a token into a Metaphone value." - }, - { - "name": "DoubleMetaphone", - "value": "doubleMetaphone", - "description": "Encodes a token into a double metaphone value." - }, - { - "name": "Soundex", - "value": "soundex", - "description": "Encodes a token into a Soundex value." - }, - { - "name": "RefinedSoundex", - "value": "refinedSoundex", - "description": "Encodes a token into a Refined Soundex value." - }, - { - "name": "Caverphone1", - "value": "caverphone1", - "description": "Encodes a token into a Caverphone 1.0 value." - }, - { - "name": "Caverphone2", - "value": "caverphone2", - "description": "Encodes a token into a Caverphone 2.0 value." - }, - { - "name": "Cologne", - "value": "cologne", - "description": "Encodes a token into a Cologne Phonetic value." - }, - { - "name": "Nysiis", - "value": "nysiis", - "description": "Encodes a token into a NYSIIS value." - }, - { - "name": "KoelnerPhonetik", - "value": "koelnerPhonetik", - "description": "Encodes a token using the Kölner Phonetik algorithm." - }, - { - "name": "HaasePhonetik", - "value": "haasePhonetik", - "description": "Encodes a token using the Haase refinement of the Kölner Phonetik algorithm." - }, - { - "name": "BeiderMorse", - "value": "beiderMorse", - "description": "Encodes a token into a Beider-Morse value." - } - ] - } - }, - "PhoneticTokenFilter": { - "type": "object", - "description": "Create tokens for phonetic matches. This token filter is implemented using\nApache Lucene.", - "properties": { - "encoder": { - "$ref": "#/definitions/PhoneticEncoder", - "description": "The phonetic encoder to use. Default is \"metaphone\"." - }, - "replace": { - "type": "boolean", - "description": "A value indicating whether encoded tokens should replace original tokens. If\nfalse, encoded tokens are added as synonyms. Default is true.", - "default": true, - "x-ms-client-name": "replaceOriginalTokens" - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.PhoneticTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter" - }, - "QueryAnswerResult": { - "type": "object", - "description": "An answer is a text passage extracted from the contents of the most relevant\ndocuments that matched the query. Answers are extracted from the top search\nresults. Answer candidates are scored and the top answers are selected.", - "properties": { - "score": { - "type": "number", - "format": "double", - "description": "The score value represents how relevant the answer is to the query relative to\nother answers returned for the query.", - "readOnly": true - }, - "key": { - "type": "string", - "description": "The key of the document the answer was extracted from.", - "readOnly": true - }, - "text": { - "type": "string", - "description": "The text passage extracted from the document contents as the answer.", - "readOnly": true - }, - "highlights": { - "type": "string", - "description": "Same text passage as in the Text property with highlighted text phrases most\nrelevant to the query.", - "readOnly": true - } - }, - "additionalProperties": {} - }, - "QueryAnswerType": { - "type": "string", - "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", - "enum": [ - "none", - "extractive" - ], - "x-ms-enum": { - "name": "QueryAnswerType", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Do not return answers for the query." - }, - { - "name": "Extractive", - "value": "extractive", - "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." - } - ] - } - }, - "QueryCaptionResult": { - "type": "object", - "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type `semantic`.", - "properties": { - "text": { - "type": "string", - "description": "A representative text passage extracted from the document most relevant to the\nsearch query.", - "readOnly": true - }, - "highlights": { - "type": "string", - "description": "Same text passage as in the Text property with highlighted phrases most\nrelevant to the query.", - "readOnly": true - } - }, - "additionalProperties": {} - }, - "QueryCaptionType": { - "type": "string", - "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", - "enum": [ - "none", - "extractive" - ], - "x-ms-enum": { - "name": "QueryCaptionType", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Do not return captions for the query." - }, - { - "name": "Extractive", - "value": "extractive", - "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." - } - ] - } - }, - "QueryType": { - "type": "string", - "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full'\nif your query uses the Lucene query syntax.", - "enum": [ - "simple", - "full", - "semantic" - ], - "x-ms-enum": { - "name": "QueryType", - "modelAsString": true, - "values": [ - { - "name": "Simple", - "value": "simple", - "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." - }, - { - "name": "Full", - "value": "full", - "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." - }, - { - "name": "Semantic", - "value": "semantic", - "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." - } - ] - } - }, - "RegexFlags": { - "type": "string", - "description": "Defines flags that can be combined to control how regular expressions are used\nin the pattern analyzer and pattern tokenizer.", - "enum": [ - "CANON_EQ", - "CASE_INSENSITIVE", - "COMMENTS", - "DOTALL", - "LITERAL", - "MULTILINE", - "UNICODE_CASE", - "UNIX_LINES" - ], - "x-ms-enum": { - "name": "RegexFlags", - "modelAsString": true, - "values": [ - { - "name": "CanonEq", - "value": "CANON_EQ", - "description": "Enables canonical equivalence." - }, - { - "name": "CaseInsensitive", - "value": "CASE_INSENSITIVE", - "description": "Enables case-insensitive matching." - }, - { - "name": "Comments", - "value": "COMMENTS", - "description": "Permits whitespace and comments in the pattern." - }, - { - "name": "DotAll", - "value": "DOTALL", - "description": "Enables dotall mode." - }, - { - "name": "Literal", - "value": "LITERAL", - "description": "Enables literal parsing of the pattern." - }, - { - "name": "Multiline", - "value": "MULTILINE", - "description": "Enables multiline mode." - }, - { - "name": "UnicodeCase", - "value": "UNICODE_CASE", - "description": "Enables Unicode-aware case folding." - }, - { - "name": "UnixLines", - "value": "UNIX_LINES", - "description": "Enables Unix lines mode." - } - ] - } - }, - "ResourceCounter": { - "type": "object", - "description": "Represents a resource's usage and quota.", - "properties": { - "usage": { - "type": "integer", - "format": "int64", - "description": "The resource usage amount." - }, - "quota": { - "type": "integer", - "format": "int64", - "description": "The resource amount quota." - } - }, - "required": [ - "usage" - ] - }, - "ScalarQuantizationCompression": { - "type": "object", - "description": "Contains configuration options specific to the scalar quantization compression\nmethod used during indexing and querying.", - "properties": { - "scalarQuantizationParameters": { - "$ref": "#/definitions/ScalarQuantizationParameters", - "description": "Contains the parameters specific to Scalar Quantization.", - "x-ms-client-name": "parameters" - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchCompression" - } - ], - "x-ms-discriminator-value": "scalarQuantization" - }, - "ScalarQuantizationParameters": { - "type": "object", - "description": "Contains the parameters specific to Scalar Quantization.", - "properties": { - "quantizedDataType": { - "$ref": "#/definitions/VectorSearchCompressionTarget", - "description": "The quantized data type of compressed vector values." - } - } - }, - "ScoringFunction": { - "type": "object", - "description": "Base type for functions that can modify document scores during ranking.", - "properties": { - "type": { - "type": "string", - "description": "Discriminator property for ScoringFunction." - }, - "fieldName": { - "type": "string", - "description": "The name of the field used as input to the scoring function." - }, - "boost": { - "type": "number", - "format": "double", - "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." - }, - "interpolation": { - "$ref": "#/definitions/ScoringFunctionInterpolation", - "description": "A value indicating how boosting will be interpolated across document scores;\ndefaults to \"Linear\"." - }, - "kind": { - "type": "string", - "description": "Type of ScoringFunction." - } - }, - "discriminator": "type", - "required": [ - "type", - "fieldName", - "boost", - "kind" - ] - }, - "ScoringFunctionAggregation": { - "type": "string", - "description": "Defines the aggregation function used to combine the results of all the scoring\nfunctions in a scoring profile.", - "enum": [ - "sum", - "average", - "minimum", - "maximum", - "firstMatching" - ], - "x-ms-enum": { - "name": "ScoringFunctionAggregation", - "modelAsString": true, - "values": [ - { - "name": "Sum", - "value": "sum", - "description": "Boost scores by the sum of all scoring function results." - }, - { - "name": "Average", - "value": "average", - "description": "Boost scores by the average of all scoring function results." - }, - { - "name": "Minimum", - "value": "minimum", - "description": "Boost scores by the minimum of all scoring function results." - }, - { - "name": "Maximum", - "value": "maximum", - "description": "Boost scores by the maximum of all scoring function results." - }, - { - "name": "FirstMatching", - "value": "firstMatching", - "description": "Boost scores using the first applicable scoring function in the scoring profile." - } - ] - } - }, - "ScoringFunctionInterpolation": { - "type": "string", - "description": "Defines the function used to interpolate score boosting across a range of\ndocuments.", - "enum": [ - "linear", - "constant", - "quadratic", - "logarithmic" - ], - "x-ms-enum": { - "name": "ScoringFunctionInterpolation", - "modelAsString": true, - "values": [ - { - "name": "Linear", - "value": "linear", - "description": "Boosts scores by a linearly decreasing amount. This is the default\ninterpolation for scoring functions." - }, - { - "name": "Constant", - "value": "constant", - "description": "Boosts scores by a constant factor." - }, - { - "name": "Quadratic", - "value": "quadratic", - "description": "Boosts scores by an amount that decreases quadratically. Boosts decrease slowly\nfor higher scores, and more quickly as the scores decrease. This interpolation\noption is not allowed in tag scoring functions." - }, - { - "name": "Logarithmic", - "value": "logarithmic", - "description": "Boosts scores by an amount that decreases logarithmically. Boosts decrease\nquickly for higher scores, and more slowly as the scores decrease. This\ninterpolation option is not allowed in tag scoring functions." - } - ] - } - }, - "ScoringProfile": { - "type": "object", - "description": "Defines parameters for a search index that influence scoring in search queries.", - "properties": { - "name": { - "type": "string", - "description": "The name of the scoring profile." - }, - "text": { - "$ref": "#/definitions/TextWeights", - "description": "Parameters that boost scoring based on text matches in certain index fields.", - "x-ms-client-name": "textWeights" - }, - "functions": { - "type": "array", - "description": "The collection of functions that influence the scoring of documents.", - "items": { - "$ref": "#/definitions/ScoringFunction" - }, - "x-ms-identifiers": [] - }, - "functionAggregation": { - "$ref": "#/definitions/ScoringFunctionAggregation", - "description": "A value indicating how the results of individual scoring functions should be\ncombined. Defaults to \"Sum\". Ignored if there are no scoring functions." - } - }, - "required": [ - "name" - ] - }, - "ScoringStatistics": { - "type": "string", - "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries.", - "enum": [ - "local", - "global" - ], - "x-ms-enum": { - "name": "ScoringStatistics", - "modelAsString": true, - "values": [ - { - "name": "Local", - "value": "local", - "description": "The scoring statistics will be calculated locally for lower latency." - }, - { - "name": "Global", - "value": "global", - "description": "The scoring statistics will be calculated globally for more consistent scoring." - } - ] - } - }, - "SearchDocumentsResult": { - "type": "object", - "description": "Response containing search results from an index.", - "properties": { - "@odata.count": { - "type": "integer", - "format": "int64", - "description": "The total count of results found by the search operation, or null if the count\nwas not requested. If present, the count may be greater than the number of\nresults in this response. This can happen if you use the $top or $skip\nparameters, or if the query can't return all the requested documents in a\nsingle response.", - "readOnly": true, - "x-ms-client-name": "count" - }, - "@search.coverage": { - "type": "number", - "format": "double", - "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not specified in the request.", - "readOnly": true, - "x-ms-client-name": "coverage" - }, - "@search.facets": { - "type": "object", - "description": "The facet query results for the search operation, organized as a collection of\nbuckets for each faceted field; null if the query did not include any facet\nexpressions.", - "additionalProperties": { - "items": { - "$ref": "#/definitions/FacetResult" - }, - "type": "array", - "x-ms-identifiers": [] - }, - "readOnly": true, - "x-ms-client-name": "facets" - }, - "@search.answers": { - "type": "array", - "description": "The answers query results for the search operation; null if the answers query\nparameter was not specified or set to 'none'.", - "items": { - "$ref": "#/definitions/QueryAnswerResult" - }, - "readOnly": true, - "x-ms-client-name": "answers", - "x-ms-identifiers": [] - }, - "@search.nextPageParameters": { - "$ref": "#/definitions/SearchRequest", - "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with\n@odata.nextLink to formulate another POST Search request to get the next part\nof the search response.", - "readOnly": true, - "x-ms-client-name": "nextPageParameters" - }, - "value": { - "type": "array", - "description": "The sequence of results returned by the query.", - "items": { - "$ref": "#/definitions/SearchResult" - }, - "readOnly": true, - "x-ms-client-name": "results", - "x-ms-identifiers": [] - }, - "@odata.nextLink": { - "type": "string", - "description": "Continuation URL returned when the query can't return all the requested results\nin a single response. You can use this URL to formulate another GET or POST\nSearch request to get the next part of the search response. Make sure to use\nthe same verb (GET or POST) as the request that produced this response.", - "readOnly": true, - "x-ms-client-name": "nextLink" - }, - "@search.semanticPartialResponseReason": { - "$ref": "#/definitions/SemanticErrorReason", - "description": "Reason that a partial response was returned for a semantic ranking request.", - "readOnly": true, - "x-ms-client-name": "semanticPartialResponseReason" - }, - "@search.semanticPartialResponseType": { - "$ref": "#/definitions/SemanticSearchResultsType", - "description": "Type of partial response that was returned for a semantic ranking request.", - "readOnly": true, - "x-ms-client-name": "semanticPartialResponseType" - } - }, - "required": [ - "value" - ] - }, - "SearchField": { - "type": "object", - "description": "Represents a field in an index definition, which describes the name, data type,\nand search behavior of a field.", - "properties": { - "name": { - "type": "string", - "description": "The name of the field, which must be unique within the fields collection of the\nindex or parent field." - }, - "type": { - "$ref": "#/definitions/SearchFieldDataType", - "description": "The data type of the field." - }, - "key": { - "type": "boolean", - "description": "A value indicating whether the field uniquely identifies documents in the\nindex. Exactly one top-level field in each index must be chosen as the key\nfield and it must be of type Edm.String. Key fields can be used to look up\ndocuments directly and update or delete specific documents. Default is false\nfor simple fields and null for complex fields." - }, - "retrievable": { - "type": "boolean", - "description": "A value indicating whether the field can be returned in a search result. You\ncan disable this option if you want to use a field (for example, margin) as a\nfilter, sorting, or scoring mechanism but do not want the field to be visible\nto the end user. This property must be true for key fields, and it must be null\nfor complex fields. This property can be changed on existing fields. Enabling\nthis property does not cause any increase in index storage requirements.\nDefault is true for simple fields, false for vector fields, and null for\ncomplex fields." - }, - "stored": { - "type": "boolean", - "description": "An immutable value indicating whether the field will be persisted separately on\ndisk to be returned in a search result. You can disable this option if you\ndon't plan to return the field contents in a search response to save on storage\noverhead. This can only be set during index creation and only for vector\nfields. This property cannot be changed for existing fields or set as false for\nnew fields. If this property is set as false, the property 'retrievable' must\nalso be set to false. This property must be true or unset for key fields, for\nnew fields, and for non-vector fields, and it must be null for complex fields.\nDisabling this property will reduce index storage requirements. The default is\ntrue for vector fields." - }, - "searchable": { - "type": "boolean", - "description": "A value indicating whether the field is full-text searchable. This means it\nwill undergo analysis such as word-breaking during indexing. If you set a\nsearchable field to a value like \"sunny day\", internally it will be split into\nthe individual tokens \"sunny\" and \"day\". This enables full-text searches for\nthese terms. Fields of type Edm.String or Collection(Edm.String) are searchable\nby default. This property must be false for simple fields of other non-string\ndata types, and it must be null for complex fields. Note: searchable fields\nconsume extra space in your index to accommodate additional tokenized versions\nof the field value for full-text searches. If you want to save space in your\nindex and you don't need a field to be included in searches, set searchable to\nfalse." - }, - "filterable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $filter\nqueries. filterable differs from searchable in how strings are handled. Fields\nof type Edm.String or Collection(Edm.String) that are filterable do not undergo\nword-breaking, so comparisons are for exact matches only. For example, if you\nset such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches,\nbut $filter=f eq 'sunny day' will. This property must be null for complex\nfields. Default is true for simple fields and null for complex fields." - }, - "sortable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $orderby\nexpressions. By default, the search engine sorts results by score, but in many\nexperiences users will want to sort by fields in the documents. A simple field\ncan be sortable only if it is single-valued (it has a single value in the scope\nof the parent document). Simple collection fields cannot be sortable, since\nthey are multi-valued. Simple sub-fields of complex collections are also\nmulti-valued, and therefore cannot be sortable. This is true whether it's an\nimmediate parent field, or an ancestor field, that's the complex collection.\nComplex fields cannot be sortable and the sortable property must be null for\nsuch fields. The default for sortable is true for single-valued simple fields,\nfalse for multi-valued simple fields, and null for complex fields." - }, - "facetable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in facet\nqueries. Typically used in a presentation of search results that includes hit\ncount by category (for example, search for digital cameras and see hits by\nbrand, by megapixels, by price, and so on). This property must be null for\ncomplex fields. Fields of type Edm.GeographyPoint or\nCollection(Edm.GeographyPoint) cannot be facetable. Default is true for all\nother simple fields." - }, - "analyzer": { - "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer to use for the field. This option can be used only\nwith searchable fields and it can't be set together with either searchAnalyzer\nor indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the\nfield. Must be null for complex fields." - }, - "searchAnalyzer": { - "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer used at search time for the field. This option can be\nused only with searchable fields. It must be set together with indexAnalyzer\nand it cannot be set together with the analyzer option. This property cannot be\nset to the name of a language analyzer; use the analyzer property instead if\nyou need a language analyzer. This analyzer can be updated on an existing\nfield. Must be null for complex fields." - }, - "indexAnalyzer": { - "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer used at indexing time for the field. This option can\nbe used only with searchable fields. It must be set together with\nsearchAnalyzer and it cannot be set together with the analyzer option. This\nproperty cannot be set to the name of a language analyzer; use the analyzer\nproperty instead if you need a language analyzer. Once the analyzer is chosen,\nit cannot be changed for the field. Must be null for complex fields." - }, - "dimensions": { - "type": "integer", - "format": "int32", - "description": "The dimensionality of the vector field.", - "minimum": 2, - "maximum": 2048, - "x-ms-client-name": "vectorSearchDimensions" - }, - "vectorSearchProfile": { - "type": "string", - "description": "The name of the vector search profile that specifies the algorithm and\nvectorizer to use when searching the vector field.", - "x-ms-client-name": "vectorSearchProfileName" - }, - "vectorEncoding": { - "$ref": "#/definitions/VectorEncodingFormat", - "description": "The encoding format to interpret the field contents.", - "x-ms-client-name": "vectorEncodingFormat" - }, - "synonymMaps": { - "type": "array", - "description": "A list of the names of synonym maps to associate with this field. This option\ncan be used only with searchable fields. Currently only one synonym map per\nfield is supported. Assigning a synonym map to a field ensures that query terms\ntargeting that field are expanded at query-time using the rules in the synonym\nmap. This attribute can be changed on existing fields. Must be null or an empty\ncollection for complex fields.", - "items": { - "type": "string" - } - }, - "fields": { - "type": "array", - "description": "A list of sub-fields if this is a field of type Edm.ComplexType or\nCollection(Edm.ComplexType). Must be null or empty for simple fields.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "name", - "type" - ] - }, - "SearchFieldDataType": { - "type": "string", - "description": "Defines the data type of a field in a search index.", - "enum": [ - "Edm.String", - "Edm.Int32", - "Edm.Int64", - "Edm.Double", - "Edm.Boolean", - "Edm.DateTimeOffset", - "Edm.GeographyPoint", - "Edm.ComplexType", - "Edm.Single", - "Edm.Half", - "Edm.Int16", - "Edm.SByte", - "Edm.Byte" - ], - "x-ms-enum": { - "name": "SearchFieldDataType", - "modelAsString": true, - "values": [ - { - "name": "String", - "value": "Edm.String", - "description": "Indicates that a field contains a string." - }, - { - "name": "Int32", - "value": "Edm.Int32", - "description": "Indicates that a field contains a 32-bit signed integer." - }, - { - "name": "Int64", - "value": "Edm.Int64", - "description": "Indicates that a field contains a 64-bit signed integer." - }, - { - "name": "Double", - "value": "Edm.Double", - "description": "Indicates that a field contains an IEEE double-precision floating point number." - }, - { - "name": "Boolean", - "value": "Edm.Boolean", - "description": "Indicates that a field contains a Boolean value (true or false)." - }, - { - "name": "DateTimeOffset", - "value": "Edm.DateTimeOffset", - "description": "Indicates that a field contains a date/time value, including timezone\ninformation." - }, - { - "name": "GeographyPoint", - "value": "Edm.GeographyPoint", - "description": "Indicates that a field contains a geo-location in terms of longitude and\nlatitude." - }, - { - "name": "Complex", - "value": "Edm.ComplexType", - "description": "Indicates that a field contains one or more complex objects that in turn have\nsub-fields of other types." - }, - { - "name": "Single", - "value": "Edm.Single", - "description": "Indicates that a field contains a single-precision floating point number. This\nis only valid when used with Collection(Edm.Single)." - }, - { - "name": "Half", - "value": "Edm.Half", - "description": "Indicates that a field contains a half-precision floating point number. This is\nonly valid when used with Collection(Edm.Half)." - }, - { - "name": "Int16", - "value": "Edm.Int16", - "description": "Indicates that a field contains a 16-bit signed integer. This is only valid\nwhen used with Collection(Edm.Int16)." - }, - { - "name": "SByte", - "value": "Edm.SByte", - "description": "Indicates that a field contains a 8-bit signed integer. This is only valid when\nused with Collection(Edm.SByte)." - }, - { - "name": "Byte", - "value": "Edm.Byte", - "description": "Indicates that a field contains a 8-bit unsigned integer. This is only valid\nwhen used with Collection(Edm.Byte)." - } - ] - } - }, - "SearchIndex": { - "type": "object", - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "properties": { - "name": { - "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "description": "The fields of the index.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] - }, - "scoringProfiles": { - "type": "array", - "description": "The scoring profiles for the index.", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "x-ms-identifiers": [] - }, - "defaultScoringProfile": { - "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." - }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." - }, - "suggesters": { - "type": "array", - "description": "The suggesters for the index.", - "items": { - "$ref": "#/definitions/SearchSuggester" - }, - "x-ms-identifiers": [] - }, - "analyzers": { - "type": "array", - "description": "The analyzers for the index.", - "items": { - "$ref": "#/definitions/LexicalAnalyzer" - }, - "x-ms-identifiers": [] - }, - "tokenizers": { - "type": "array", - "description": "The tokenizers for the index.", - "items": { - "$ref": "#/definitions/LexicalTokenizer" - }, - "x-ms-identifiers": [] - }, - "tokenFilters": { - "type": "array", - "description": "The token filters for the index.", - "items": { - "$ref": "#/definitions/TokenFilter" - }, - "x-ms-identifiers": [] - }, - "charFilters": { - "type": "array", - "description": "The character filters for the index.", - "items": { - "$ref": "#/definitions/CharFilter" - }, - "x-ms-identifiers": [] - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "similarity": { - "$ref": "#/definitions/SimilarityAlgorithm", - "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." - }, - "semantic": { - "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "x-ms-client-name": "semanticSearch" - }, - "vectorSearch": { - "$ref": "#/definitions/VectorSearch", - "description": "Contains configuration options related to vector search." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the index.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "name", - "fields" - ] - }, - "SearchIndexCreate": { - "type": "object", - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "description": "The fields of the index.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] - }, - "scoringProfiles": { - "type": "array", - "description": "The scoring profiles for the index.", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "x-ms-identifiers": [] - }, - "defaultScoringProfile": { - "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." - }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." - }, - "suggesters": { - "type": "array", - "description": "The suggesters for the index.", - "items": { - "$ref": "#/definitions/SearchSuggester" - }, - "x-ms-identifiers": [] - }, - "analyzers": { - "type": "array", - "description": "The analyzers for the index.", - "items": { - "$ref": "#/definitions/LexicalAnalyzer" - }, - "x-ms-identifiers": [] - }, - "tokenizers": { - "type": "array", - "description": "The tokenizers for the index.", - "items": { - "$ref": "#/definitions/LexicalTokenizer" - }, - "x-ms-identifiers": [] - }, - "tokenFilters": { - "type": "array", - "description": "The token filters for the index.", - "items": { - "$ref": "#/definitions/TokenFilter" - }, - "x-ms-identifiers": [] - }, - "charFilters": { - "type": "array", - "description": "The character filters for the index.", - "items": { - "$ref": "#/definitions/CharFilter" - }, - "x-ms-identifiers": [] - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "similarity": { - "$ref": "#/definitions/SimilarityAlgorithm", - "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." - }, - "semantic": { - "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "x-ms-client-name": "semanticSearch" - }, - "vectorSearch": { - "$ref": "#/definitions/VectorSearch", - "description": "Contains configuration options related to vector search." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the index.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "fields" - ] - }, - "SearchIndexCreateOrUpdate": { - "type": "object", - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "description": "The fields of the index.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] - }, - "scoringProfiles": { - "type": "array", - "description": "The scoring profiles for the index.", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "x-ms-identifiers": [] - }, - "defaultScoringProfile": { - "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." - }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." - }, - "suggesters": { - "type": "array", - "description": "The suggesters for the index.", - "items": { - "$ref": "#/definitions/SearchSuggester" - }, - "x-ms-identifiers": [] - }, - "analyzers": { - "type": "array", - "description": "The analyzers for the index.", - "items": { - "$ref": "#/definitions/LexicalAnalyzer" - }, - "x-ms-identifiers": [] - }, - "tokenizers": { - "type": "array", - "description": "The tokenizers for the index.", - "items": { - "$ref": "#/definitions/LexicalTokenizer" - }, - "x-ms-identifiers": [] - }, - "tokenFilters": { - "type": "array", - "description": "The token filters for the index.", - "items": { - "$ref": "#/definitions/TokenFilter" - }, - "x-ms-identifiers": [] - }, - "charFilters": { - "type": "array", - "description": "The character filters for the index.", - "items": { - "$ref": "#/definitions/CharFilter" - }, - "x-ms-identifiers": [] - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "similarity": { - "$ref": "#/definitions/SimilarityAlgorithm", - "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." - }, - "semantic": { - "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "x-ms-client-name": "semanticSearch" - }, - "vectorSearch": { - "$ref": "#/definitions/VectorSearch", - "description": "Contains configuration options related to vector search." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the index.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "fields" - ] - }, - "SearchIndexItem": { - "type": "object", - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "description": "The fields of the index.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] - }, - "scoringProfiles": { - "type": "array", - "description": "The scoring profiles for the index.", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "x-ms-identifiers": [] - }, - "defaultScoringProfile": { - "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." - }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." - }, - "suggesters": { - "type": "array", - "description": "The suggesters for the index.", - "items": { - "$ref": "#/definitions/SearchSuggester" - }, - "x-ms-identifiers": [] - }, - "analyzers": { - "type": "array", - "description": "The analyzers for the index.", - "items": { - "$ref": "#/definitions/LexicalAnalyzer" - }, - "x-ms-identifiers": [] - }, - "tokenizers": { - "type": "array", - "description": "The tokenizers for the index.", - "items": { - "$ref": "#/definitions/LexicalTokenizer" - }, - "x-ms-identifiers": [] - }, - "tokenFilters": { - "type": "array", - "description": "The token filters for the index.", - "items": { - "$ref": "#/definitions/TokenFilter" - }, - "x-ms-identifiers": [] - }, - "charFilters": { - "type": "array", - "description": "The character filters for the index.", - "items": { - "$ref": "#/definitions/CharFilter" - }, - "x-ms-identifiers": [] - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "similarity": { - "$ref": "#/definitions/SimilarityAlgorithm", - "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." - }, - "semantic": { - "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "x-ms-client-name": "semanticSearch" - }, - "vectorSearch": { - "$ref": "#/definitions/VectorSearch", - "description": "Contains configuration options related to vector search." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the index.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "fields" - ] - }, - "SearchIndexer": { - "type": "object", - "description": "Represents an indexer.", - "properties": { - "name": { - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "outputFieldMappings": { - "type": "array", - "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "disabled": { - "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false.", - "x-ms-client-name": "isDisabled" - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the indexer.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." - } - }, - "required": [ - "name", - "dataSourceName", - "targetIndexName" - ] - }, - "SearchIndexerCreate": { - "type": "object", - "description": "Represents an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "outputFieldMappings": { - "type": "array", - "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "disabled": { - "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false.", - "x-ms-client-name": "isDisabled" - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the indexer.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "dataSourceName", - "targetIndexName" - ] - }, - "SearchIndexerCreateOrUpdate": { - "type": "object", - "description": "Represents an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "outputFieldMappings": { - "type": "array", - "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "disabled": { - "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false.", - "x-ms-client-name": "isDisabled" - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the indexer.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "dataSourceName", - "targetIndexName" - ] - }, - "SearchIndexerDataContainer": { - "type": "object", - "description": "Represents information about the entity (such as Azure SQL table or CosmosDB\ncollection) that will be indexed.", - "properties": { - "name": { - "type": "string", - "description": "The name of the table or view (for Azure SQL data source) or collection (for\nCosmosDB data source) that will be indexed." - }, - "query": { - "type": "string", - "description": "A query that is applied to this data container. The syntax and meaning of this\nparameter is datasource-specific. Not supported by Azure SQL datasources." - } - }, - "required": [ - "name" - ] - }, - "SearchIndexerDataIdentity": { - "type": "object", - "description": "Abstract base type for data identities.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type" - ] - }, - "SearchIndexerDataNoneIdentity": { - "type": "object", - "description": "Clears the identity property of a datasource.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of identity.", - "enum": [ - "#Microsoft.Azure.Search.DataNoneIdentity" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerDataIdentity" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataNoneIdentity" - }, - "SearchIndexerDataSource": { - "type": "object", - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "properties": { - "name": { - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/SearchIndexerDataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/SearchIndexerDataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the data source.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." - } - }, - "required": [ - "name", - "type", - "credentials", - "container" - ] - }, - "SearchIndexerDataSourceCreate": { - "type": "object", - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/SearchIndexerDataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/SearchIndexerDataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the data source.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "type", - "credentials", - "container" - ] - }, - "SearchIndexerDataSourceCreateOrUpdate": { - "type": "object", - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/SearchIndexerDataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/SearchIndexerDataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the data source.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "type", - "credentials", - "container" - ] - }, - "SearchIndexerDataSourceItem": { - "type": "object", - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/SearchIndexerDataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/SearchIndexerDataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the data source.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "type", - "credentials", - "container" - ] - }, - "SearchIndexerDataSourceType": { - "type": "string", - "description": "Defines the type of a datasource.", - "enum": [ - "azuresql", - "cosmosdb", - "azureblob", - "azuretable", - "mysql", - "adlsgen2" - ], - "x-ms-enum": { - "name": "SearchIndexerDataSourceType", - "modelAsString": true, - "values": [ - { - "name": "AzureSql", - "value": "azuresql", - "description": "Indicates an Azure SQL datasource." - }, - { - "name": "CosmosDb", - "value": "cosmosdb", - "description": "Indicates a CosmosDB datasource." - }, - { - "name": "AzureBlob", - "value": "azureblob", - "description": "Indicates an Azure Blob datasource." - }, - { - "name": "AzureTable", - "value": "azuretable", - "description": "Indicates an Azure Table datasource." - }, - { - "name": "MySql", - "value": "mysql", - "description": "Indicates a MySql datasource." - }, - { - "name": "AdlsGen2", - "value": "adlsgen2", - "description": "Indicates an ADLS Gen2 datasource." - } - ] - } - }, - "SearchIndexerDataUserAssignedIdentity": { - "type": "object", - "description": "Specifies the identity for a datasource to use.", - "properties": { - "userAssignedIdentity": { - "type": "string", - "description": "The fully qualified Azure resource Id of a user assigned managed identity\ntypically in the form\n\"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\"\nthat should have been assigned to the search service.", - "x-ms-client-name": "resourceId" - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of identity.", - "enum": [ - "#Microsoft.Azure.Search.DataUserAssignedIdentity" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "userAssignedIdentity", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerDataIdentity" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataUserAssignedIdentity" - }, - "SearchIndexerError": { - "type": "object", - "description": "Represents an item- or document-level indexing error.", - "properties": { - "key": { - "type": "string", - "description": "The key of the item for which indexing failed.", - "readOnly": true - }, - "errorMessage": { - "type": "string", - "description": "The message describing the error that occurred while processing the item.", - "readOnly": true - }, - "statusCode": { - "type": "integer", - "format": "int32", - "description": "The status code indicating why the indexing operation failed. Possible values\ninclude: 400 for a malformed input document, 404 for document not found, 409\nfor a version conflict, 422 when the index is temporarily unavailable, or 503\nfor when the service is too busy.", - "readOnly": true - }, - "name": { - "type": "string", - "description": "The name of the source at which the error originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable.", - "readOnly": true - }, - "details": { - "type": "string", - "description": "Additional, verbose details about the error to assist in debugging the indexer.\nThis may not be always available.", - "readOnly": true - }, - "documentationLink": { - "type": "string", - "description": "A link to a troubleshooting guide for these classes of errors. This may not be\nalways available.", - "readOnly": true - } - }, - "required": [ - "errorMessage", - "statusCode" - ] - }, - "SearchIndexerIndexProjection": { - "type": "object", - "description": "Definition of additional projections to secondary search indexes.", - "properties": { - "selectors": { - "type": "array", - "description": "A list of projections to be performed to secondary search indexes.", - "items": { - "$ref": "#/definitions/SearchIndexerIndexProjectionSelector" - }, - "x-ms-identifiers": [] - }, - "parameters": { - "$ref": "#/definitions/SearchIndexerIndexProjectionsParameters", - "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type." - } - }, - "required": [ - "selectors" - ] - }, - "SearchIndexerIndexProjectionSelector": { - "type": "object", - "description": "Description for what data to store in the designated search index.", - "properties": { - "targetIndexName": { - "type": "string", - "description": "Name of the search index to project to. Must have a key field with the\n'keyword' analyzer set." - }, - "parentKeyFieldName": { - "type": "string", - "description": "Name of the field in the search index to map the parent document's key value\nto. Must be a string field that is filterable and not the key field." - }, - "sourceContext": { - "type": "string", - "description": "Source context for the projections. Represents the cardinality at which the\ndocument will be split into multiple sub documents." - }, - "mappings": { - "type": "array", - "description": "Mappings for the projection, or which source should be mapped to which field in\nthe target index.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "targetIndexName", - "parentKeyFieldName", - "sourceContext", - "mappings" - ] - }, - "SearchIndexerIndexProjectionsParameters": { - "type": "object", - "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type.", - "properties": { - "projectionMode": { - "$ref": "#/definitions/IndexProjectionMode", - "description": "Defines behavior of the index projections in relation to the rest of the\nindexer." - } - }, - "additionalProperties": {} - }, - "SearchIndexerItem": { - "type": "object", - "description": "Represents an indexer.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "outputFieldMappings": { - "type": "array", - "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "disabled": { - "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false.", - "x-ms-client-name": "isDisabled" - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the indexer.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." - } - }, - "required": [ - "_", - "name", - "dataSourceName", - "targetIndexName" - ] - }, - "SearchIndexerKnowledgeStore": { - "type": "object", - "description": "Definition of additional projections to azure blob, table, or files, of\nenriched data.", - "properties": { - "storageConnectionString": { - "type": "string", - "description": "The connection string to the storage account projections will be stored in." - }, - "projections": { - "type": "array", - "description": "A list of additional projections to perform during indexing.", - "items": { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjection" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "storageConnectionString", - "projections" - ] - }, - "SearchIndexerKnowledgeStoreBlobProjectionSelector": { - "type": "object", - "description": "Abstract class to share properties between concrete selectors.", - "properties": { - "storageContainer": { - "type": "string", - "description": "Blob container to store projections in." - } - }, - "required": [ - "storageContainer" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" - } - ] - }, - "SearchIndexerKnowledgeStoreFileProjectionSelector": { - "type": "object", - "description": "Projection definition for what data to store in Azure Files.", - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" - } - ] - }, - "SearchIndexerKnowledgeStoreObjectProjectionSelector": { - "type": "object", - "description": "Projection definition for what data to store in Azure Blob.", - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" - } - ] - }, - "SearchIndexerKnowledgeStoreParameters": { - "type": "object", - "description": "A dictionary of knowledge store-specific configuration properties. Each name is\nthe name of a specific property. Each value must be of a primitive type.", - "properties": { - "synthesizeGeneratedKeyName": { - "type": "boolean", - "description": "Whether or not projections should synthesize a generated key name if one isn't\nalready present." - } - }, - "additionalProperties": {} - }, - "SearchIndexerKnowledgeStoreProjection": { - "type": "object", - "description": "Container object for various projection selectors.", - "properties": { - "tables": { - "type": "array", - "description": "Projections to Azure Table storage.", - "items": { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreTableProjectionSelector" - }, - "x-ms-identifiers": [] - }, - "objects": { - "type": "array", - "description": "Projections to Azure Blob storage.", - "items": { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreObjectProjectionSelector" - }, - "x-ms-identifiers": [] - }, - "files": { - "type": "array", - "description": "Projections to Azure File storage.", - "items": { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreFileProjectionSelector" - }, - "x-ms-identifiers": [] - } - } - }, - "SearchIndexerKnowledgeStoreProjectionSelector": { - "type": "object", - "description": "Abstract class to share properties between concrete selectors.", - "properties": { - "referenceKeyName": { - "type": "string", - "description": "Name of reference key to different projection." - }, - "generatedKeyName": { - "type": "string", - "description": "Name of generated key to store projection under." - }, - "source": { - "type": "string", - "description": "Source data to project." - }, - "sourceContext": { - "type": "string", - "description": "Source context for complex projections." - }, - "inputs": { - "type": "array", - "description": "Nested inputs for complex projections.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - } - }, - "SearchIndexerKnowledgeStoreTableProjectionSelector": { - "type": "object", - "description": "Description for what data to store in Azure Tables.", - "properties": { - "tableName": { - "type": "string", - "description": "Name of the Azure table to store projected data in." - } - }, - "required": [ - "tableName" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" - } - ] - }, - "SearchIndexerLimits": { - "type": "object", - "description": "Represents the limits that can be applied to an indexer.", - "properties": { - "maxRunTime": { - "type": "string", - "format": "duration", - "description": "The maximum duration that the indexer is permitted to run for one execution.", - "readOnly": true - }, - "maxDocumentExtractionSize": { - "type": "integer", - "format": "int64", - "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing.", - "readOnly": true - }, - "maxDocumentContentCharactersToExtract": { - "type": "integer", - "format": "int64", - "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing.", - "readOnly": true - } - } - }, - "SearchIndexerSkill": { - "type": "object", - "description": "Base type for skills.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - }, - "name": { - "type": "string", - "description": "The name of the skill which uniquely identifies it within the skillset. A skill\nwith no name defined will be given a default name of its 1-based index in the\nskills array, prefixed with the character '#'." - }, - "description": { - "type": "string", - "description": "The description of the skill which describes the inputs, outputs, and usage of\nthe skill." - }, - "context": { - "type": "string", - "description": "Represents the level at which operations take place, such as the document root\nor document content (for example, /document or /document/content). The default\nis /document." - }, - "inputs": { - "type": "array", - "description": "Inputs of the skills could be a column in the source data set, or the output of\nan upstream skill.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - }, - "outputs": { - "type": "array", - "description": "The output of a skill is either a field in a search index, or a value that can\nbe consumed as an input by another skill.", - "items": { - "$ref": "#/definitions/OutputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type", - "inputs", - "outputs" - ] - }, - "SearchIndexerSkillset": { - "type": "object", - "description": "A list of skills.", - "properties": { - "name": { - "type": "string", - "description": "The name of the skillset." - }, - "description": { - "type": "string", - "description": "The description of the skillset." - }, - "skills": { - "type": "array", - "description": "A list of skills in the skillset.", - "items": { - "$ref": "#/definitions/SearchIndexerSkill" - }, - "x-ms-identifiers": [] - }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills.", - "x-ms-client-name": "cognitiveServicesAccount" - }, - "knowledgeStore": { - "$ref": "#/definitions/SearchIndexerKnowledgeStore", - "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." - }, - "indexProjections": { - "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es).", - "x-ms-client-name": "indexProjection" - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the skillset.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - } - }, - "required": [ - "name", - "skills" - ] - }, - "SearchIndexerSkillsetCreate": { - "type": "object", - "description": "A list of skills.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the skillset." - }, - "description": { - "type": "string", - "description": "The description of the skillset." - }, - "skills": { - "type": "array", - "description": "A list of skills in the skillset.", - "items": { - "$ref": "#/definitions/SearchIndexerSkill" - }, - "x-ms-identifiers": [] - }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills.", - "x-ms-client-name": "cognitiveServicesAccount" - }, - "knowledgeStore": { - "$ref": "#/definitions/SearchIndexerKnowledgeStore", - "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." - }, - "indexProjections": { - "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es).", - "x-ms-client-name": "indexProjection" - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the skillset.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - } - }, - "required": [ - "_", - "name", - "skills" - ] - }, - "SearchIndexerSkillsetCreateOrUpdate": { - "type": "object", - "description": "A list of skills.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the skillset." - }, - "description": { - "type": "string", - "description": "The description of the skillset." - }, - "skills": { - "type": "array", - "description": "A list of skills in the skillset.", - "items": { - "$ref": "#/definitions/SearchIndexerSkill" - }, - "x-ms-identifiers": [] - }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills.", - "x-ms-client-name": "cognitiveServicesAccount" - }, - "knowledgeStore": { - "$ref": "#/definitions/SearchIndexerKnowledgeStore", - "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." - }, - "indexProjections": { - "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es).", - "x-ms-client-name": "indexProjection" - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the skillset.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - } - }, - "required": [ - "_", - "name", - "skills" - ] - }, - "SearchIndexerSkillsetItem": { - "type": "object", - "description": "A list of skills.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the skillset." - }, - "description": { - "type": "string", - "description": "The description of the skillset." - }, - "skills": { - "type": "array", - "description": "A list of skills in the skillset.", - "items": { - "$ref": "#/definitions/SearchIndexerSkill" - }, - "x-ms-identifiers": [] - }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills.", - "x-ms-client-name": "cognitiveServicesAccount" - }, - "knowledgeStore": { - "$ref": "#/definitions/SearchIndexerKnowledgeStore", - "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." - }, - "indexProjections": { - "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es).", - "x-ms-client-name": "indexProjection" - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the skillset.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - } - }, - "required": [ - "_", - "name", - "skills" - ] - }, - "SearchIndexerStatus": { - "type": "object", - "description": "Represents the current status and execution history of an indexer.", - "properties": { - "status": { - "$ref": "#/definitions/IndexerStatus", - "description": "Overall indexer status.", - "readOnly": true - }, - "lastResult": { - "$ref": "#/definitions/IndexerExecutionResult", - "description": "The result of the most recent or an in-progress indexer execution.", - "readOnly": true - }, - "executionHistory": { - "type": "array", - "description": "History of the recent indexer executions, sorted in reverse chronological order.", - "items": { - "$ref": "#/definitions/IndexerExecutionResult" - }, - "readOnly": true, - "x-ms-identifiers": [] - }, - "limits": { - "$ref": "#/definitions/SearchIndexerLimits", - "description": "The execution limits for the indexer.", - "readOnly": true - } - }, - "required": [ - "status", - "executionHistory", - "limits" - ] - }, - "SearchIndexerWarning": { - "type": "object", - "description": "Represents an item-level warning.", - "properties": { - "key": { - "type": "string", - "description": "The key of the item which generated a warning.", - "readOnly": true - }, - "message": { - "type": "string", - "description": "The message describing the warning that occurred while processing the item.", - "readOnly": true - }, - "name": { - "type": "string", - "description": "The name of the source at which the warning originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable.", - "readOnly": true - }, - "details": { - "type": "string", - "description": "Additional, verbose details about the warning to assist in debugging the\nindexer. This may not be always available.", - "readOnly": true - }, - "documentationLink": { - "type": "string", - "description": "A link to a troubleshooting guide for these classes of warnings. This may not\nbe always available.", - "readOnly": true - } - }, - "required": [ - "message" - ] - }, - "SearchMode": { - "type": "string", - "description": "Specifies whether any or all of the search terms must be matched in order to\ncount the document as a match.", - "enum": [ - "any", - "all" - ], - "x-ms-enum": { - "name": "SearchMode", - "modelAsString": true, - "values": [ - { - "name": "Any", - "value": "any", - "description": "Any of the search terms must be matched in order to count the document as a\nmatch." - }, - { - "name": "All", - "value": "all", - "description": "All of the search terms must be matched in order to count the document as a\nmatch." - } - ] - } - }, - "SearchRequest": { - "type": "object", - "description": "Parameters for filtering, sorting, faceting, paging, and other search query\nbehaviors.", - "properties": { - "count": { - "type": "boolean", - "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", - "x-ms-client-name": "includeTotalResultCount" - }, - "facets": { - "type": "array", - "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", - "items": { - "type": "string" - } - }, - "filter": { - "type": "string", - "description": "The OData $filter expression to apply to the search query." - }, - "highlight": { - "type": "string", - "description": "The comma-separated list of field names to use for hit highlights. Only\nsearchable fields can be used for hit highlighting.", - "x-ms-client-name": "highlightFields" - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100." - }, - "orderby": { - "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses.", - "x-ms-client-name": "orderBy" - }, - "queryType": { - "$ref": "#/definitions/QueryType", - "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax." - }, - "scoringStatistics": { - "$ref": "#/definitions/ScoringStatistics", - "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries." - }, - "sessionId": { - "type": "string", - "description": "A value to be used to create a sticky session, which can help getting more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character." - }, - "scoringParameters": { - "type": "array", - "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", - "items": { - "type": "string" - } - }, - "scoringProfile": { - "type": "string", - "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results." - }, - "search": { - "type": "string", - "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", - "x-ms-client-name": "searchText" - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to which to scope the full-text search.\nWhen using fielded search (fieldName:searchExpression) in a full Lucene query,\nthe field names of each fielded search expression take precedence over any\nfield names listed in this parameter." - }, - "searchMode": { - "$ref": "#/definitions/SearchMode", - "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match." - }, - "select": { - "type": "string", - "description": "The comma-separated list of fields to retrieve. If unspecified, all fields\nmarked as retrievable in the schema are included." - }, - "skip": { - "type": "integer", - "format": "int32", - "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use skip due to\nthis limitation, consider using orderby on a totally-ordered key and filter\nwith a range query instead." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults." - }, - "semanticConfiguration": { - "type": "string", - "description": "The name of a semantic configuration that will be used when processing\ndocuments for queries of type semantic." - }, - "semanticErrorHandling": { - "$ref": "#/definitions/SemanticErrorMode", - "description": "Allows the user to choose whether a semantic call should fail completely\n(default / current behavior), or to return partial results." - }, - "semanticMaxWaitInMilliseconds": { - "type": "integer", - "format": "int32", - "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", - "minimum": 700 - }, - "semanticQuery": { - "type": "string", - "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase." - }, - "answers": { - "$ref": "#/definitions/QueryAnswerType", - "description": "A value that specifies whether answers should be returned as part of the search\nresponse." - }, - "captions": { - "$ref": "#/definitions/QueryCaptionType", - "description": "A value that specifies whether captions should be returned as part of the\nsearch response." - }, - "vectorQueries": { - "type": "array", - "description": "The query parameters for vector and hybrid search queries.", - "items": { - "$ref": "#/definitions/VectorQuery" - }, - "x-ms-identifiers": [] - }, - "vectorFilterMode": { - "$ref": "#/definitions/VectorFilterMode", - "description": "Determines whether or not filters are applied before or after the vector search\nis performed. Default is 'preFilter' for new indexes." - } - } - }, - "SearchResourceEncryptionKey": { - "type": "object", - "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and\nmanage can be used to encrypt or decrypt data-at-rest, such as indexes and\nsynonym maps.", - "properties": { - "keyVaultKeyName": { - "type": "string", - "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest.", - "x-ms-client-name": "keyName" - }, - "keyVaultKeyVersion": { - "type": "string", - "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest.", - "x-ms-client-name": "keyVersion" - }, - "keyVaultUri": { - "type": "string", - "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains\nthe key to be used to encrypt your data at rest. An example URI might be\n`https://my-keyvault-name.vault.azure.net`.", - "x-ms-client-name": "vaultUri" - }, - "accessCredentials": { - "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", - "description": "Optional Azure Active Directory credentials used for accessing your Azure Key\nVault. Not required if using managed identity instead." - } - }, - "required": [ - "keyVaultKeyName", - "keyVaultKeyVersion", - "keyVaultUri" - ] - }, - "SearchResult": { - "type": "object", - "description": "Contains a document found by a search query, plus associated metadata.", - "properties": { - "@search.score": { - "type": "number", - "format": "double", - "description": "The relevance score of the document compared to other documents returned by the\nquery.", - "readOnly": true, - "x-ms-client-name": "score" - }, - "@search.rerankerScore": { - "type": "number", - "format": "double", - "description": "The relevance score computed by the semantic ranker for the top search results.\nSearch results are sorted by the RerankerScore first and then by the Score.\nRerankerScore is only returned for queries of type 'semantic'.", - "readOnly": true, - "x-ms-client-name": "rerankerScore" - }, - "@search.highlights": { - "type": "object", - "description": "Text fragments from the document that indicate the matching search terms,\norganized by each applicable field; null if hit highlighting was not enabled\nfor the query.", - "additionalProperties": { - "items": { - "type": "string" - }, - "type": "array" - }, - "readOnly": true, - "x-ms-client-name": "highlights" - }, - "@search.captions": { - "type": "array", - "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type 'semantic'.", - "items": { - "$ref": "#/definitions/QueryCaptionResult" - }, - "readOnly": true, - "x-ms-client-name": "captions", - "x-ms-identifiers": [] - } - }, - "required": [ - "@search.score" - ], - "additionalProperties": {} - }, - "SearchServiceCounters": { - "type": "object", - "description": "Represents service-level resource counters and quotas.", - "properties": { - "documentCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of documents across all indexes in the service.", - "x-ms-client-name": "documentCounter" - }, - "indexesCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexes.", - "x-ms-client-name": "indexCounter" - }, - "indexersCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexers.", - "x-ms-client-name": "indexerCounter" - }, - "dataSourcesCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of data sources.", - "x-ms-client-name": "dataSourceCounter" - }, - "storageSize": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total size of used storage in bytes.", - "x-ms-client-name": "storageSizeCounter" - }, - "synonymMaps": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of synonym maps.", - "x-ms-client-name": "synonymMapCounter" - }, - "skillsetCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of skillsets.", - "x-ms-client-name": "skillsetCounter" - }, - "vectorIndexSize": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total memory consumption of all vector indexes within the service, in bytes.", - "x-ms-client-name": "vectorIndexSizeCounter" - } - }, - "required": [ - "documentCount", - "indexesCount", - "indexersCount", - "dataSourcesCount", - "storageSize", - "synonymMaps", - "skillsetCount", - "vectorIndexSize" - ] - }, - "SearchServiceLimits": { - "type": "object", - "description": "Represents various service level limits.", - "properties": { - "maxFieldsPerIndex": { - "type": "integer", - "format": "int32", - "description": "The maximum allowed fields per index." - }, - "maxFieldNestingDepthPerIndex": { - "type": "integer", - "format": "int32", - "description": "The maximum depth which you can nest sub-fields in an index, including the\ntop-level complex field. For example, a/b/c has a nesting depth of 3." - }, - "maxComplexCollectionFieldsPerIndex": { - "type": "integer", - "format": "int32", - "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an\nindex." - }, - "maxComplexObjectsInCollectionsPerDocument": { - "type": "integer", - "format": "int32", - "description": "The maximum number of objects in complex collections allowed per document." - }, - "maxStoragePerIndex": { - "type": "integer", - "format": "int64", - "description": "The maximum amount of storage in bytes allowed per index.", - "x-ms-client-name": "maxStoragePerIndexInBytes" - } - } - }, - "SearchServiceStatistics": { - "type": "object", - "description": "Response from a get service statistics request. If successful, it includes\nservice level counters and limits.", - "properties": { - "counters": { - "$ref": "#/definitions/SearchServiceCounters", - "description": "Service level resource counters." - }, - "limits": { - "$ref": "#/definitions/SearchServiceLimits", - "description": "Service level general limits." - } - }, - "required": [ - "counters", - "limits" - ] - }, - "SearchSuggester": { - "type": "object", - "description": "Defines how the Suggest API should apply to a group of fields in the index.", - "properties": { - "name": { - "type": "string", - "description": "The name of the suggester." - }, - "searchMode": { - "type": "string", - "description": "A value indicating the capabilities of the suggester.", - "enum": [ - "analyzingInfixMatching" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "sourceFields": { - "type": "array", - "description": "The list of field names to which the suggester applies. Each field must be\nsearchable.", - "items": { - "type": "string" - } - } - }, - "required": [ - "name", - "searchMode", - "sourceFields" - ] - }, - "SemanticConfiguration": { - "type": "object", - "description": "Defines a specific configuration to be used in the context of semantic\ncapabilities.", - "properties": { - "name": { - "type": "string", - "description": "The name of the semantic configuration." - }, - "prioritizedFields": { - "$ref": "#/definitions/SemanticPrioritizedFields", - "description": "Describes the title, content, and keyword fields to be used for semantic\nranking, captions, highlights, and answers. At least one of the three sub\nproperties (titleField, prioritizedKeywordsFields and prioritizedContentFields)\nneed to be set." - } - }, - "required": [ - "name", - "prioritizedFields" - ] - }, - "SemanticErrorMode": { - "type": "string", - "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results.", - "enum": [ - "partial", - "fail" - ], - "x-ms-enum": { - "name": "SemanticErrorMode", - "modelAsString": true, - "values": [ - { - "name": "Partial", - "value": "partial", - "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." - }, - { - "name": "Fail", - "value": "fail", - "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." - } - ] - } - }, - "SemanticErrorReason": { - "type": "string", - "description": "Reason that a partial response was returned for a semantic ranking request.", - "enum": [ - "maxWaitExceeded", - "capacityOverloaded", - "transient" - ], - "x-ms-enum": { - "name": "SemanticErrorReason", - "modelAsString": true, - "values": [ - { - "name": "MaxWaitExceeded", - "value": "maxWaitExceeded", - "description": "If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration\nexceeded that value. Only the base results were returned." - }, - { - "name": "CapacityOverloaded", - "value": "capacityOverloaded", - "description": "The request was throttled. Only the base results were returned." - }, - { - "name": "Transient", - "value": "transient", - "description": "At least one step of the semantic process failed." - } - ] - } - }, - "SemanticField": { - "type": "object", - "description": "A field that is used as part of the semantic configuration.", - "properties": { - "fieldName": { - "type": "string", - "description": "File name" - } - }, - "required": [ - "fieldName" - ] - }, - "SemanticPrioritizedFields": { - "type": "object", - "description": "Describes the title, content, and keywords fields to be used for semantic\nranking, captions, highlights, and answers.", - "properties": { - "titleField": { - "$ref": "#/definitions/SemanticField", - "description": "Defines the title field to be used for semantic ranking, captions, highlights,\nand answers. If you don't have a title field in your index, leave this blank." - }, - "prioritizedContentFields": { - "type": "array", - "description": "Defines the content fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain text in natural language form. The order of the fields in the array\nrepresents their priority. Fields with lower priority may get truncated if the\ncontent is long.", - "items": { - "$ref": "#/definitions/SemanticField" - }, - "x-ms-client-name": "contentFields", - "x-ms-identifiers": [] - }, - "prioritizedKeywordsFields": { - "type": "array", - "description": "Defines the keyword fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain a list of keywords. The order of the fields in the array represents\ntheir priority. Fields with lower priority may get truncated if the content is\nlong.", - "items": { - "$ref": "#/definitions/SemanticField" - }, - "x-ms-client-name": "keywordsFields", - "x-ms-identifiers": [] - } - } - }, - "SemanticSearch": { - "type": "object", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "properties": { - "defaultConfiguration": { - "type": "string", - "description": "Allows you to set the name of a default semantic configuration in your index,\nmaking it optional to pass it on as a query parameter every time.", - "x-ms-client-name": "defaultConfigurationName" - }, - "configurations": { - "type": "array", - "description": "The semantic configurations for the index.", - "items": { - "$ref": "#/definitions/SemanticConfiguration" - }, - "x-ms-identifiers": [] - } - } - }, - "SemanticSearchResultsType": { - "type": "string", - "description": "Type of partial response that was returned for a semantic ranking request.", - "enum": [ - "baseResults", - "rerankedResults" - ], - "x-ms-enum": { - "name": "SemanticSearchResultsType", - "modelAsString": true, - "values": [ - { - "name": "BaseResults", - "value": "baseResults", - "description": "Results without any semantic enrichment or reranking." - }, - { - "name": "RerankedResults", - "value": "rerankedResults", - "description": "Results have been reranked with the reranker model and will include semantic\ncaptions. They will not include any answers, answers highlights or caption\nhighlights." - } - ] - } - }, - "SentimentSkill": { - "type": "object", - "description": "This skill is deprecated. Use the V3.SentimentSkill instead.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/SentimentSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.SentimentSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill" - }, - "SentimentSkillLanguage": { - "type": "string", - "description": "Deprecated. The language codes supported for input text by SentimentSkill.", - "enum": [ - "da", - "nl", - "en", - "fi", - "fr", - "de", - "el", - "it", - "no", - "pl", - "pt-PT", - "ru", - "es", - "sv", - "tr" - ], - "x-ms-enum": { - "name": "SentimentSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "no", - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - } - ] - } - }, - "SentimentSkillV3": { - "type": "object", - "description": "Using the Text Analytics API, evaluates unstructured text and for each record,\nprovides sentiment labels (such as \"negative\", \"neutral\" and \"positive\") based\non the highest confidence score found by the service at a sentence and\ndocument-level.", - "properties": { - "defaultLanguageCode": { - "type": "string", - "description": "A value indicating which language code to use. Default is `en`." - }, - "includeOpinionMining": { - "type": "boolean", - "description": "If set to true, the skill output will include information from Text Analytics\nfor opinion mining, namely targets (nouns or verbs) and their associated\nassessment (adjective) in the text. Default is false." - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.V3.SentimentSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.SentimentSkill" - }, - "ShaperSkill": { - "type": "object", - "description": "A skill for reshaping the outputs. It creates a complex type to support\ncomposite fields (also known as multipart fields).", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Util.ShaperSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill" - }, - "ShingleTokenFilter": { - "type": "object", - "description": "Creates combinations of tokens as a single token. This token filter is\nimplemented using Apache Lucene.", - "properties": { - "maxShingleSize": { - "type": "integer", - "format": "int32", - "description": "The maximum shingle size. Default and minimum value is 2.", - "default": 2, - "minimum": 2 - }, - "minShingleSize": { - "type": "integer", - "format": "int32", - "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the\nvalue of maxShingleSize.", - "default": 2, - "minimum": 2 - }, - "outputUnigrams": { - "type": "boolean", - "description": "A value indicating whether the output stream will contain the input tokens\n(unigrams) as well as shingles. Default is true.", - "default": true - }, - "outputUnigramsIfNoShingles": { - "type": "boolean", - "description": "A value indicating whether to output unigrams for those times when no shingles\nare available. This property takes precedence when outputUnigrams is set to\nfalse. Default is false." - }, - "tokenSeparator": { - "type": "string", - "description": "The string to use when joining adjacent tokens to form a shingle. Default is a\nsingle space (\" \").", - "default": " " - }, - "filterToken": { - "type": "string", - "description": "The string to insert for each position at which there is no token. Default is\nan underscore (\"_\").", - "default": "_" - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.ShingleTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter" - }, - "SimilarityAlgorithm": { - "type": "object", - "description": "Base type for similarity algorithms. Similarity algorithms are used to\ncalculate scores that tie queries to documents. The higher the score, the more\nrelevant the document is to that specific query. Those scores are used to rank\nthe search results.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type" - ] - }, - "SnowballTokenFilter": { - "type": "object", - "description": "A filter that stems words using a Snowball-generated stemmer. This token filter\nis implemented using Apache Lucene.", - "properties": { - "language": { - "$ref": "#/definitions/SnowballTokenFilterLanguage", - "description": "The language to use." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.SnowballTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "language", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter" - }, - "SnowballTokenFilterLanguage": { - "type": "string", - "description": "The language to use for a Snowball token filter.", - "enum": [ - "armenian", - "basque", - "catalan", - "danish", - "dutch", - "english", - "finnish", - "french", - "german", - "german2", - "hungarian", - "italian", - "kp", - "lovins", - "norwegian", - "porter", - "portuguese", - "romanian", - "russian", - "spanish", - "swedish", - "turkish" - ], - "x-ms-enum": { - "name": "SnowballTokenFilterLanguage", - "modelAsString": true, - "values": [ - { - "name": "Armenian", - "value": "armenian", - "description": "Selects the Lucene Snowball stemming tokenizer for Armenian." - }, - { - "name": "Basque", - "value": "basque", - "description": "Selects the Lucene Snowball stemming tokenizer for Basque." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the Lucene Snowball stemming tokenizer for Catalan." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the Lucene Snowball stemming tokenizer for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the Lucene Snowball stemming tokenizer for Dutch." - }, - { - "name": "English", - "value": "english", - "description": "Selects the Lucene Snowball stemming tokenizer for English." - }, - { - "name": "Finnish", - "value": "finnish", - "description": "Selects the Lucene Snowball stemming tokenizer for Finnish." - }, - { - "name": "French", - "value": "french", - "description": "Selects the Lucene Snowball stemming tokenizer for French." - }, - { - "name": "German", - "value": "german", - "description": "Selects the Lucene Snowball stemming tokenizer for German." - }, - { - "name": "German2", - "value": "german2", - "description": "Selects the Lucene Snowball stemming tokenizer that uses the German variant\nalgorithm." - }, - { - "name": "Hungarian", - "value": "hungarian", - "description": "Selects the Lucene Snowball stemming tokenizer for Hungarian." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the Lucene Snowball stemming tokenizer for Italian." - }, - { - "name": "Kp", - "value": "kp", - "description": "Selects the Lucene Snowball stemming tokenizer for Dutch that uses the\nKraaij-Pohlmann stemming algorithm." - }, - { - "name": "Lovins", - "value": "lovins", - "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins\nstemming algorithm." - }, - { - "name": "Norwegian", - "value": "norwegian", - "description": "Selects the Lucene Snowball stemming tokenizer for Norwegian." - }, - { - "name": "Porter", - "value": "porter", - "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Porter\nstemming algorithm." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the Lucene Snowball stemming tokenizer for Portuguese." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the Lucene Snowball stemming tokenizer for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the Lucene Snowball stemming tokenizer for Russian." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the Lucene Snowball stemming tokenizer for Spanish." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the Lucene Snowball stemming tokenizer for Swedish." - }, - { - "name": "Turkish", - "value": "turkish", - "description": "Selects the Lucene Snowball stemming tokenizer for Turkish." - } - ] - } - }, - "SoftDeleteColumnDeletionDetectionPolicy": { - "type": "object", - "description": "Defines a data deletion detection policy that implements a soft-deletion\nstrategy. It determines whether an item should be deleted based on the value of\na designated 'soft delete' column.", - "properties": { - "softDeleteColumnName": { - "type": "string", - "description": "The name of the column to use for soft-deletion detection." - }, - "softDeleteMarkerValue": { - "type": "string", - "description": "The marker value that identifies an item as deleted." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of data deletion detection policy.", - "enum": [ - "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/DataDeletionDetectionPolicy" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" - }, - "SplitSkill": { - "type": "object", - "description": "A skill to split a string into chunks of text.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/SplitSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "textSplitMode": { - "$ref": "#/definitions/TextSplitMode", - "description": "A value indicating which split mode to perform." - }, - "maximumPageLength": { - "type": "integer", - "format": "int32", - "description": "The desired maximum page length. Default is 10000." - }, - "pageOverlapLength": { - "type": "integer", - "format": "int32", - "description": "Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk\nwill start with this number of characters/tokens from the end of the nth chunk." - }, - "maximumPagesToTake": { - "type": "integer", - "format": "int32", - "description": "Only applicable when textSplitMode is set to 'pages'. If specified, the\nSplitSkill will discontinue splitting after processing the first\n'maximumPagesToTake' pages, in order to improve performance when only a few\ninitial pages are needed from each document." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.SplitSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill" - }, - "SplitSkillLanguage": { - "type": "string", - "description": "The language codes supported for input text by SplitSkill.", - "enum": [ - "am", - "bs", - "cs", - "da", - "de", - "en", - "es", - "et", - "fi", - "fr", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "ja", - "ko", - "lv", - "nb", - "nl", - "pl", - "pt", - "pt-br", - "ru", - "sk", - "sl", - "sr", - "sv", - "tr", - "ur", - "zh" - ], - "x-ms-enum": { - "name": "SplitSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "am", - "value": "am", - "description": "Amharic" - }, - { - "name": "bs", - "value": "bs", - "description": "Bosnian" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "et", - "value": "et", - "description": "Estonian" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "he", - "value": "he", - "description": "Hebrew" - }, - { - "name": "hi", - "value": "hi", - "description": "Hindi" - }, - { - "name": "hr", - "value": "hr", - "description": "Croatian" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "id", - "value": "id", - "description": "Indonesian" - }, - { - "name": "is", - "value": "is", - "description": "Icelandic" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "lv", - "value": "lv", - "description": "Latvian" - }, - { - "name": "nb", - "value": "nb", - "description": "Norwegian" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese (Portugal)" - }, - { - "name": "pt-br", - "value": "pt-br", - "description": "Portuguese (Brazil)" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "sk", - "value": "sk", - "description": "Slovak" - }, - { - "name": "sl", - "value": "sl", - "description": "Slovenian" - }, - { - "name": "sr", - "value": "sr", - "description": "Serbian" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - }, - { - "name": "ur", - "value": "ur", - "description": "Urdu" - }, - { - "name": "zh", - "value": "zh", - "description": "Chinese (Simplified)" - } - ] - } - }, - "SqlIntegratedChangeTrackingPolicy": { - "type": "object", - "description": "Defines a data change detection policy that captures changes using the\nIntegrated Change Tracking feature of Azure SQL Database.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of data change detection policy.", - "enum": [ - "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/DataChangeDetectionPolicy" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" - }, - "StemmerOverrideTokenFilter": { - "type": "object", - "description": "Provides the ability to override other stemming filters with custom\ndictionary-based stemming. Any dictionary-stemmed terms will be marked as\nkeywords so that they will not be stemmed with stemmers down the chain. Must be\nplaced before any stemming filters. This token filter is implemented using\nApache Lucene.", - "properties": { - "rules": { - "type": "array", - "description": "A list of stemming rules in the following format: \"word => stem\", for example:\n\"ran => run\".", - "items": { - "type": "string" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "rules", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" - }, - "StemmerTokenFilter": { - "type": "object", - "description": "Language specific stemming filter. This token filter is implemented using\nApache Lucene.", - "properties": { - "language": { - "$ref": "#/definitions/StemmerTokenFilterLanguage", - "description": "The language to use." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.StemmerTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "language", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter" - }, - "StemmerTokenFilterLanguage": { - "type": "string", - "description": "The language to use for a stemmer token filter.", - "enum": [ - "arabic", - "armenian", - "basque", - "brazilian", - "bulgarian", - "catalan", - "czech", - "danish", - "dutch", - "dutchKp", - "english", - "lightEnglish", - "minimalEnglish", - "possessiveEnglish", - "porter2", - "lovins", - "finnish", - "lightFinnish", - "french", - "lightFrench", - "minimalFrench", - "galician", - "minimalGalician", - "german", - "german2", - "lightGerman", - "minimalGerman", - "greek", - "hindi", - "hungarian", - "lightHungarian", - "indonesian", - "irish", - "italian", - "lightItalian", - "sorani", - "latvian", - "norwegian", - "lightNorwegian", - "minimalNorwegian", - "lightNynorsk", - "minimalNynorsk", - "portuguese", - "lightPortuguese", - "minimalPortuguese", - "portugueseRslp", - "romanian", - "russian", - "lightRussian", - "spanish", - "lightSpanish", - "swedish", - "lightSwedish", - "turkish" - ], - "x-ms-enum": { - "name": "StemmerTokenFilterLanguage", - "modelAsString": true, - "values": [ - { - "name": "Arabic", - "value": "arabic", - "description": "Selects the Lucene stemming tokenizer for Arabic." - }, - { - "name": "Armenian", - "value": "armenian", - "description": "Selects the Lucene stemming tokenizer for Armenian." - }, - { - "name": "Basque", - "value": "basque", - "description": "Selects the Lucene stemming tokenizer for Basque." - }, - { - "name": "Brazilian", - "value": "brazilian", - "description": "Selects the Lucene stemming tokenizer for Portuguese (Brazil)." - }, - { - "name": "Bulgarian", - "value": "bulgarian", - "description": "Selects the Lucene stemming tokenizer for Bulgarian." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the Lucene stemming tokenizer for Catalan." - }, - { - "name": "Czech", - "value": "czech", - "description": "Selects the Lucene stemming tokenizer for Czech." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the Lucene stemming tokenizer for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the Lucene stemming tokenizer for Dutch." - }, - { - "name": "DutchKp", - "value": "dutchKp", - "description": "Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann\nstemming algorithm." - }, - { - "name": "English", - "value": "english", - "description": "Selects the Lucene stemming tokenizer for English." - }, - { - "name": "LightEnglish", - "value": "lightEnglish", - "description": "Selects the Lucene stemming tokenizer for English that does light stemming." - }, - { - "name": "MinimalEnglish", - "value": "minimalEnglish", - "description": "Selects the Lucene stemming tokenizer for English that does minimal stemming." - }, - { - "name": "PossessiveEnglish", - "value": "possessiveEnglish", - "description": "Selects the Lucene stemming tokenizer for English that removes trailing\npossessives from words." - }, - { - "name": "Porter2", - "value": "porter2", - "description": "Selects the Lucene stemming tokenizer for English that uses the Porter2\nstemming algorithm." - }, - { - "name": "Lovins", - "value": "lovins", - "description": "Selects the Lucene stemming tokenizer for English that uses the Lovins stemming\nalgorithm." - }, - { - "name": "Finnish", - "value": "finnish", - "description": "Selects the Lucene stemming tokenizer for Finnish." - }, - { - "name": "LightFinnish", - "value": "lightFinnish", - "description": "Selects the Lucene stemming tokenizer for Finnish that does light stemming." - }, - { - "name": "French", - "value": "french", - "description": "Selects the Lucene stemming tokenizer for French." - }, - { - "name": "LightFrench", - "value": "lightFrench", - "description": "Selects the Lucene stemming tokenizer for French that does light stemming." - }, - { - "name": "MinimalFrench", - "value": "minimalFrench", - "description": "Selects the Lucene stemming tokenizer for French that does minimal stemming." - }, - { - "name": "Galician", - "value": "galician", - "description": "Selects the Lucene stemming tokenizer for Galician." - }, - { - "name": "MinimalGalician", - "value": "minimalGalician", - "description": "Selects the Lucene stemming tokenizer for Galician that does minimal stemming." - }, - { - "name": "German", - "value": "german", - "description": "Selects the Lucene stemming tokenizer for German." - }, - { - "name": "German2", - "value": "german2", - "description": "Selects the Lucene stemming tokenizer that uses the German variant algorithm." - }, - { - "name": "LightGerman", - "value": "lightGerman", - "description": "Selects the Lucene stemming tokenizer for German that does light stemming." - }, - { - "name": "MinimalGerman", - "value": "minimalGerman", - "description": "Selects the Lucene stemming tokenizer for German that does minimal stemming." - }, - { - "name": "Greek", - "value": "greek", - "description": "Selects the Lucene stemming tokenizer for Greek." - }, - { - "name": "Hindi", - "value": "hindi", - "description": "Selects the Lucene stemming tokenizer for Hindi." - }, - { - "name": "Hungarian", - "value": "hungarian", - "description": "Selects the Lucene stemming tokenizer for Hungarian." - }, - { - "name": "LightHungarian", - "value": "lightHungarian", - "description": "Selects the Lucene stemming tokenizer for Hungarian that does light stemming." - }, - { - "name": "Indonesian", - "value": "indonesian", - "description": "Selects the Lucene stemming tokenizer for Indonesian." - }, - { - "name": "Irish", - "value": "irish", - "description": "Selects the Lucene stemming tokenizer for Irish." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the Lucene stemming tokenizer for Italian." - }, - { - "name": "LightItalian", - "value": "lightItalian", - "description": "Selects the Lucene stemming tokenizer for Italian that does light stemming." - }, - { - "name": "Sorani", - "value": "sorani", - "description": "Selects the Lucene stemming tokenizer for Sorani." - }, - { - "name": "Latvian", - "value": "latvian", - "description": "Selects the Lucene stemming tokenizer for Latvian." - }, - { - "name": "Norwegian", - "value": "norwegian", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål)." - }, - { - "name": "LightNorwegian", - "value": "lightNorwegian", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light\nstemming." - }, - { - "name": "MinimalNorwegian", - "value": "minimalNorwegian", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal\nstemming." - }, - { - "name": "LightNynorsk", - "value": "lightNynorsk", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light\nstemming." - }, - { - "name": "MinimalNynorsk", - "value": "minimalNynorsk", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal\nstemming." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the Lucene stemming tokenizer for Portuguese." - }, - { - "name": "LightPortuguese", - "value": "lightPortuguese", - "description": "Selects the Lucene stemming tokenizer for Portuguese that does light stemming." - }, - { - "name": "MinimalPortuguese", - "value": "minimalPortuguese", - "description": "Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming." - }, - { - "name": "PortugueseRslp", - "value": "portugueseRslp", - "description": "Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP\nstemming algorithm." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the Lucene stemming tokenizer for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the Lucene stemming tokenizer for Russian." - }, - { - "name": "LightRussian", - "value": "lightRussian", - "description": "Selects the Lucene stemming tokenizer for Russian that does light stemming." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the Lucene stemming tokenizer for Spanish." - }, - { - "name": "LightSpanish", - "value": "lightSpanish", - "description": "Selects the Lucene stemming tokenizer for Spanish that does light stemming." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the Lucene stemming tokenizer for Swedish." - }, - { - "name": "LightSwedish", - "value": "lightSwedish", - "description": "Selects the Lucene stemming tokenizer for Swedish that does light stemming." - }, - { - "name": "Turkish", - "value": "turkish", - "description": "Selects the Lucene stemming tokenizer for Turkish." - } - ] - } - }, - "StopAnalyzer": { - "type": "object", - "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nThis analyzer is implemented using Apache Lucene.", - "properties": { - "stopwords": { - "type": "array", - "description": "A list of stopwords.", - "items": { - "type": "string" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of analyzer.", - "enum": [ - "#Microsoft.Azure.Search.StopAnalyzer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalAnalyzer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer" - }, - "StopwordsList": { - "type": "string", - "description": "Identifies a predefined list of language-specific stopwords.", - "enum": [ - "arabic", - "armenian", - "basque", - "brazilian", - "bulgarian", - "catalan", - "czech", - "danish", - "dutch", - "english", - "finnish", - "french", - "galician", - "german", - "greek", - "hindi", - "hungarian", - "indonesian", - "irish", - "italian", - "latvian", - "norwegian", - "persian", - "portuguese", - "romanian", - "russian", - "sorani", - "spanish", - "swedish", - "thai", - "turkish" - ], - "x-ms-enum": { - "name": "StopwordsList", - "modelAsString": true, - "values": [ - { - "name": "Arabic", - "value": "arabic", - "description": "Selects the stopword list for Arabic." - }, - { - "name": "Armenian", - "value": "armenian", - "description": "Selects the stopword list for Armenian." - }, - { - "name": "Basque", - "value": "basque", - "description": "Selects the stopword list for Basque." - }, - { - "name": "Brazilian", - "value": "brazilian", - "description": "Selects the stopword list for Portuguese (Brazil)." - }, - { - "name": "Bulgarian", - "value": "bulgarian", - "description": "Selects the stopword list for Bulgarian." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the stopword list for Catalan." - }, - { - "name": "Czech", - "value": "czech", - "description": "Selects the stopword list for Czech." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the stopword list for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the stopword list for Dutch." - }, - { - "name": "English", - "value": "english", - "description": "Selects the stopword list for English." - }, - { - "name": "Finnish", - "value": "finnish", - "description": "Selects the stopword list for Finnish." - }, - { - "name": "French", - "value": "french", - "description": "Selects the stopword list for French." - }, - { - "name": "Galician", - "value": "galician", - "description": "Selects the stopword list for Galician." - }, - { - "name": "German", - "value": "german", - "description": "Selects the stopword list for German." - }, - { - "name": "Greek", - "value": "greek", - "description": "Selects the stopword list for Greek." - }, - { - "name": "Hindi", - "value": "hindi", - "description": "Selects the stopword list for Hindi." - }, - { - "name": "Hungarian", - "value": "hungarian", - "description": "Selects the stopword list for Hungarian." - }, - { - "name": "Indonesian", - "value": "indonesian", - "description": "Selects the stopword list for Indonesian." - }, - { - "name": "Irish", - "value": "irish", - "description": "Selects the stopword list for Irish." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the stopword list for Italian." - }, - { - "name": "Latvian", - "value": "latvian", - "description": "Selects the stopword list for Latvian." - }, - { - "name": "Norwegian", - "value": "norwegian", - "description": "Selects the stopword list for Norwegian." - }, - { - "name": "Persian", - "value": "persian", - "description": "Selects the stopword list for Persian." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the stopword list for Portuguese." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the stopword list for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the stopword list for Russian." - }, - { - "name": "Sorani", - "value": "sorani", - "description": "Selects the stopword list for Sorani." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the stopword list for Spanish." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the stopword list for Swedish." - }, - { - "name": "Thai", - "value": "thai", - "description": "Selects the stopword list for Thai." - }, - { - "name": "Turkish", - "value": "turkish", - "description": "Selects the stopword list for Turkish." - } - ] - } - }, - "StopwordsTokenFilter": { - "type": "object", - "description": "Removes stop words from a token stream. This token filter is implemented using\nApache Lucene.", - "properties": { - "stopwords": { - "type": "array", - "description": "The list of stopwords. This property and the stopwords list property cannot\nboth be set.", - "items": { - "type": "string" - } - }, - "stopwordsList": { - "$ref": "#/definitions/StopwordsList", - "description": "A predefined list of stopwords to use. This property and the stopwords property\ncannot both be set. Default is English." - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." - }, - "removeTrailing": { - "type": "boolean", - "description": "A value indicating whether to ignore the last search term if it's a stop word.\nDefault is true.", - "default": true, - "x-ms-client-name": "removeTrailingStopWords" - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.StopwordsTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter" - }, - "SuggestDocumentsResult": { - "type": "object", - "description": "Response containing suggestion query results from an index.", - "properties": { - "value": { - "type": "array", - "description": "The sequence of results returned by the query.", - "items": { - "$ref": "#/definitions/SuggestResult" - }, - "readOnly": true, - "x-ms-client-name": "results", - "x-ms-identifiers": [] - }, - "@search.coverage": { - "type": "number", - "format": "double", - "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not set in the request.", - "readOnly": true, - "x-ms-client-name": "coverage" - } - }, - "required": [ - "value" - ] - }, - "SuggestRequest": { - "type": "object", - "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query\nbehaviors.", - "properties": { - "filter": { - "type": "string", - "description": "An OData expression that filters the documents considered for suggestions." - }, - "fuzzy": { - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the suggestion query.\nDefault is false. When set to true, the query will find suggestions even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy suggestion searches are slower and consume more resources.", - "x-ms-client-name": "useFuzzyMatching" - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestion query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." - }, - "orderby": { - "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses.", - "x-ms-client-name": "orderBy" - }, - "search": { - "type": "string", - "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", - "x-ms-client-name": "searchText" - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to search for the specified search\ntext. Target fields must be included in the specified suggester." - }, - "select": { - "type": "string", - "description": "The comma-separated list of fields to retrieve. If unspecified, only the key\nfield will be included in the results." - }, - "suggesterName": { - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of suggestions to retrieve. This must be a value between 1 and 100.\nThe default is 5." - } - }, - "required": [ - "search", - "suggesterName" - ] - }, - "SuggestResult": { - "type": "object", - "description": "A result containing a document found by a suggestion query, plus associated\nmetadata.", - "properties": { - "@search.text": { - "type": "string", - "description": "The text of the suggestion result.", - "readOnly": true, - "x-ms-client-name": "text" - } - }, - "required": [ - "@search.text" - ], - "additionalProperties": {} - }, - "SynonymMap": { - "type": "object", - "description": "Represents a synonym map definition.", - "properties": { - "name": { - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "description": "The format of the synonym map. Only the 'solr' format is currently supported.", - "enum": [ - "solr" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the synonym map.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "name", - "format", - "synonyms" - ] - }, - "SynonymMapCreate": { - "type": "object", - "description": "Represents a synonym map definition.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "description": "The format of the synonym map. Only the 'solr' format is currently supported.", - "enum": [ - "solr" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the synonym map.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "format", - "synonyms" - ] - }, - "SynonymMapCreateOrUpdate": { - "type": "object", - "description": "Represents a synonym map definition.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "description": "The format of the synonym map. Only the 'solr' format is currently supported.", - "enum": [ - "solr" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the synonym map.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "format", - "synonyms" - ] - }, - "SynonymMapItem": { - "type": "object", - "description": "Represents a synonym map definition.", - "properties": { - "_": { - "type": "number", - "description": "Succesfully created or updated", - "enum": [ - 200, - 201 - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "name": { - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "description": "The format of the synonym map. Only the 'solr' format is currently supported.", - "enum": [ - "solr" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the synonym map.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "_", - "name", - "format", - "synonyms" - ] - }, - "SynonymTokenFilter": { - "type": "object", - "description": "Matches single or multi-word synonyms in a token stream. This token filter is\nimplemented using Apache Lucene.", - "properties": { - "synonyms": { - "type": "array", - "description": "A list of synonyms in following one of two formats: 1. incredible,\nunbelievable, fabulous => amazing - all terms on the left side of => symbol\nwill be replaced with all terms on its right side; 2. incredible, unbelievable,\nfabulous, amazing - comma separated list of equivalent words. Set the expand\noption to change how this list is interpreted.", - "items": { - "type": "string" - } - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether to case-fold input for matching. Default is false." - }, - "expand": { - "type": "boolean", - "description": "A value indicating whether all words in the list of synonyms (if => notation is\nnot used) will map to one another. If true, all words in the list of synonyms\n(if => notation is not used) will map to one another. The following list:\nincredible, unbelievable, fabulous, amazing is equivalent to: incredible,\nunbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing.\nIf false, the following list: incredible, unbelievable, fabulous, amazing will\nbe equivalent to: incredible, unbelievable, fabulous, amazing => incredible.\nDefault is true.", - "default": true - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.SynonymTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "synonyms", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter" - }, - "TagScoringFunction": { - "type": "object", - "description": "Defines a function that boosts scores of documents with string values matching\na given list of tags.", - "properties": { - "tag": { - "$ref": "#/definitions/TagScoringParameters", - "description": "Parameter values for the tag scoring function.", - "x-ms-client-name": "parameters" - } - }, - "required": [ - "tag" - ], - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "x-ms-discriminator-value": "tag" - }, - "TagScoringParameters": { - "type": "object", - "description": "Provides parameter values to a tag scoring function.", - "properties": { - "tagsParameter": { - "type": "string", - "description": "The name of the parameter passed in search queries to specify the list of tags\nto compare against the target field." - } - }, - "required": [ - "tagsParameter" - ] - }, - "TextSplitMode": { - "type": "string", - "description": "A value indicating which split mode to perform.", - "enum": [ - "pages", - "sentences" - ], - "x-ms-enum": { - "name": "TextSplitMode", - "modelAsString": true, - "values": [ - { - "name": "Pages", - "value": "pages", - "description": "Split the text into individual pages." - }, - { - "name": "Sentences", - "value": "sentences", - "description": "Split the text into individual sentences." - } - ] - } - }, - "TextTranslationSkill": { - "type": "object", - "description": "A skill to translate text from one language to another.", - "properties": { - "defaultToLanguageCode": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents into for documents that don't specify\nthe to language explicitly." - }, - "defaultFromLanguageCode": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents from for documents that don't specify\nthe from language explicitly." - }, - "suggestedFrom": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents from when neither the fromLanguageCode\ninput nor the defaultFromLanguageCode parameter are provided, and the automatic\nlanguage detection is unsuccessful. Default is `en`." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Text.TranslationSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "defaultToLanguageCode", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill" - }, - "TextTranslationSkillLanguage": { - "type": "string", - "description": "The language codes supported for input text by TextTranslationSkill.", - "enum": [ - "af", - "ar", - "bn", - "bs", - "bg", - "yue", - "ca", - "zh-Hans", - "zh-Hant", - "hr", - "cs", - "da", - "nl", - "en", - "et", - "fj", - "fil", - "fi", - "fr", - "de", - "el", - "ht", - "he", - "hi", - "mww", - "hu", - "is", - "id", - "it", - "ja", - "sw", - "tlh", - "tlh-Latn", - "tlh-Piqd", - "ko", - "lv", - "lt", - "mg", - "ms", - "mt", - "nb", - "fa", - "pl", - "pt", - "pt-br", - "pt-PT", - "otq", - "ro", - "ru", - "sm", - "sr-Cyrl", - "sr-Latn", - "sk", - "sl", - "es", - "sv", - "ty", - "ta", - "te", - "th", - "to", - "tr", - "uk", - "ur", - "vi", - "cy", - "yua", - "ga", - "kn", - "mi", - "ml", - "pa" - ], - "x-ms-enum": { - "name": "TextTranslationSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "af", - "value": "af", - "description": "Afrikaans" - }, - { - "name": "ar", - "value": "ar", - "description": "Arabic" - }, - { - "name": "bn", - "value": "bn", - "description": "Bangla" - }, - { - "name": "bs", - "value": "bs", - "description": "Bosnian (Latin)" - }, - { - "name": "bg", - "value": "bg", - "description": "Bulgarian" - }, - { - "name": "yue", - "value": "yue", - "description": "Cantonese (Traditional)" - }, - { - "name": "ca", - "value": "ca", - "description": "Catalan" - }, - { - "name": "zh-Hans", - "value": "zh-Hans", - "description": "Chinese Simplified" - }, - { - "name": "zh-Hant", - "value": "zh-Hant", - "description": "Chinese Traditional" - }, - { - "name": "hr", - "value": "hr", - "description": "Croatian" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "et", - "value": "et", - "description": "Estonian" - }, - { - "name": "fj", - "value": "fj", - "description": "Fijian" - }, - { - "name": "fil", - "value": "fil", - "description": "Filipino" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "ht", - "value": "ht", - "description": "Haitian Creole" - }, - { - "name": "he", - "value": "he", - "description": "Hebrew" - }, - { - "name": "hi", - "value": "hi", - "description": "Hindi" - }, - { - "name": "mww", - "value": "mww", - "description": "Hmong Daw" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "is", - "value": "is", - "description": "Icelandic" - }, - { - "name": "id", - "value": "id", - "description": "Indonesian" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "sw", - "value": "sw", - "description": "Kiswahili" - }, - { - "name": "tlh", - "value": "tlh", - "description": "Klingon" - }, - { - "name": "tlh-Latn", - "value": "tlh-Latn", - "description": "Klingon (Latin script)" - }, - { - "name": "tlh-Piqd", - "value": "tlh-Piqd", - "description": "Klingon (Klingon script)" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "lv", - "value": "lv", - "description": "Latvian" - }, - { - "name": "lt", - "value": "lt", - "description": "Lithuanian" - }, - { - "name": "mg", - "value": "mg", - "description": "Malagasy" - }, - { - "name": "ms", - "value": "ms", - "description": "Malay" - }, - { - "name": "mt", - "value": "mt", - "description": "Maltese" - }, - { - "name": "nb", - "value": "nb", - "description": "Norwegian" - }, - { - "name": "fa", - "value": "fa", - "description": "Persian" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese" - }, - { - "name": "pt-br", - "value": "pt-br", - "description": "Portuguese (Brazil)" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "name": "otq", - "value": "otq", - "description": "Queretaro Otomi" - }, - { - "name": "ro", - "value": "ro", - "description": "Romanian" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "sm", - "value": "sm", - "description": "Samoan" - }, - { - "name": "sr-Cyrl", - "value": "sr-Cyrl", - "description": "Serbian (Cyrillic)" - }, - { - "name": "sr-Latn", - "value": "sr-Latn", - "description": "Serbian (Latin)" - }, - { - "name": "sk", - "value": "sk", - "description": "Slovak" - }, - { - "name": "sl", - "value": "sl", - "description": "Slovenian" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "ty", - "value": "ty", - "description": "Tahitian" - }, - { - "name": "ta", - "value": "ta", - "description": "Tamil" - }, - { - "name": "te", - "value": "te", - "description": "Telugu" - }, - { - "name": "th", - "value": "th", - "description": "Thai" - }, - { - "name": "to", - "value": "to", - "description": "Tongan" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - }, - { - "name": "uk", - "value": "uk", - "description": "Ukrainian" - }, - { - "name": "ur", - "value": "ur", - "description": "Urdu" - }, - { - "name": "vi", - "value": "vi", - "description": "Vietnamese" - }, - { - "name": "cy", - "value": "cy", - "description": "Welsh" - }, - { - "name": "yua", - "value": "yua", - "description": "Yucatec Maya" - }, - { - "name": "ga", - "value": "ga", - "description": "Irish" - }, - { - "name": "kn", - "value": "kn", - "description": "Kannada" - }, - { - "name": "mi", - "value": "mi", - "description": "Maori" - }, - { - "name": "ml", - "value": "ml", - "description": "Malayalam" - }, - { - "name": "pa", - "value": "pa", - "description": "Punjabi" - } - ] - } - }, - "TextWeights": { - "type": "object", - "description": "Defines weights on index fields for which matches should boost scoring in\nsearch queries.", - "properties": { - "weights": { - "type": "object", - "description": "The dictionary of per-field weights to boost document scoring. The keys are\nfield names and the values are the weights for each field.", - "additionalProperties": { - "format": "double", - "type": "number" - } - } - }, - "required": [ - "weights" - ] - }, - "TokenCharacterKind": { - "type": "string", - "description": "Represents classes of characters on which a token filter can operate.", - "enum": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "x-ms-enum": { - "name": "TokenCharacterKind", - "modelAsString": true, - "values": [ - { - "name": "Letter", - "value": "letter", - "description": "Keeps letters in tokens." - }, - { - "name": "Digit", - "value": "digit", - "description": "Keeps digits in tokens." - }, - { - "name": "Whitespace", - "value": "whitespace", - "description": "Keeps whitespace in tokens." - }, - { - "name": "Punctuation", - "value": "punctuation", - "description": "Keeps punctuation in tokens." - }, - { - "name": "Symbol", - "value": "symbol", - "description": "Keeps symbols in tokens." - } - ] - } - }, - "TokenFilter": { - "type": "object", - "description": "Base type for token filters.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types.", - "x-ms-client-name": "odataType" - }, - "name": { - "type": "string", - "description": "The name of the token filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." - } - }, - "discriminator": "odataType", - "required": [ - "@odata.type", - "name" - ] - }, - "TokenFilterName": { - "type": "string", - "description": "Defines the names of all token filters supported by the search engine.", - "enum": [ - "arabic_normalization", - "apostrophe", - "asciifolding", - "cjk_bigram", - "cjk_width", - "classic", - "common_grams", - "edgeNGram_v2", - "elision", - "german_normalization", - "hindi_normalization", - "indic_normalization", - "keyword_repeat", - "kstem", - "length", - "limit", - "lowercase", - "nGram_v2", - "persian_normalization", - "phonetic", - "porter_stem", - "reverse", - "scandinavian_normalization", - "scandinavian_folding", - "shingle", - "snowball", - "sorani_normalization", - "stemmer", - "stopwords", - "trim", - "truncate", - "unique", - "uppercase", - "word_delimiter" - ], - "x-ms-enum": { - "name": "TokenFilterName", - "modelAsString": true, - "values": [ - { - "name": "ArabicNormalization", - "value": "arabic_normalization", - "description": "A token filter that applies the Arabic normalizer to normalize the orthography.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" - }, - { - "name": "Apostrophe", - "value": "apostrophe", - "description": "Strips all characters after an apostrophe (including the apostrophe itself).\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" - }, - { - "name": "AsciiFolding", - "value": "asciifolding", - "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" - }, - { - "name": "CjkBigram", - "value": "cjk_bigram", - "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" - }, - { - "name": "CjkWidth", - "value": "cjk_width", - "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the\nequivalent basic Latin, and half-width Katakana variants into the equivalent\nKana. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" - }, - { - "name": "Classic", - "value": "classic", - "description": "Removes English possessives, and dots from acronyms. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" - }, - { - "name": "CommonGram", - "value": "common_grams", - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" - }, - { - "name": "EdgeNGram", - "value": "edgeNGram_v2", - "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" - }, - { - "name": "Elision", - "value": "elision", - "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" - }, - { - "name": "GermanNormalization", - "value": "german_normalization", - "description": "Normalizes German characters according to the heuristics of the German2\nsnowball algorithm. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" - }, - { - "name": "HindiNormalization", - "value": "hindi_normalization", - "description": "Normalizes text in Hindi to remove some differences in spelling variations. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" - }, - { - "name": "IndicNormalization", - "value": "indic_normalization", - "description": "Normalizes the Unicode representation of text in Indian languages. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" - }, - { - "name": "KeywordRepeat", - "value": "keyword_repeat", - "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" - }, - { - "name": "KStem", - "value": "kstem", - "description": "A high-performance kstem filter for English. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" - }, - { - "name": "Length", - "value": "length", - "description": "Removes words that are too long or too short. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" - }, - { - "name": "Limit", - "value": "limit", - "description": "Limits the number of tokens while indexing. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" - }, - { - "name": "Lowercase", - "value": "lowercase", - "description": "Normalizes token text to lower case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html" - }, - { - "name": "NGram", - "value": "nGram_v2", - "description": "Generates n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" - }, - { - "name": "PersianNormalization", - "value": "persian_normalization", - "description": "Applies normalization for Persian. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" - }, - { - "name": "Phonetic", - "value": "phonetic", - "description": "Create tokens for phonetic matches. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" - }, - { - "name": "PorterStem", - "value": "porter_stem", - "description": "Uses the Porter stemming algorithm to transform the token stream. See\nhttp://tartarus.org/~martin/PorterStemmer" - }, - { - "name": "Reverse", - "value": "reverse", - "description": "Reverses the token string. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" - }, - { - "name": "ScandinavianNormalization", - "value": "scandinavian_normalization", - "description": "Normalizes use of the interchangeable Scandinavian characters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" - }, - { - "name": "ScandinavianFoldingNormalization", - "value": "scandinavian_folding", - "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also\ndiscriminates against use of double vowels aa, ae, ao, oe and oo, leaving just\nthe first one. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" - }, - { - "name": "Shingle", - "value": "shingle", - "description": "Creates combinations of tokens as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" - }, - { - "name": "Snowball", - "value": "snowball", - "description": "A filter that stems words using a Snowball-generated stemmer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" - }, - { - "name": "SoraniNormalization", - "value": "sorani_normalization", - "description": "Normalizes the Unicode representation of Sorani text. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" - }, - { - "name": "Stemmer", - "value": "stemmer", - "description": "Language specific stemming filter. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" - }, - { - "name": "Stopwords", - "value": "stopwords", - "description": "Removes stop words from a token stream. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" - }, - { - "name": "Trim", - "value": "trim", - "description": "Trims leading and trailing whitespace from tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" - }, - { - "name": "Truncate", - "value": "truncate", - "description": "Truncates the terms to a specific length. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" - }, - { - "name": "Unique", - "value": "unique", - "description": "Filters out tokens with same text as the previous token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" - }, - { - "name": "Uppercase", - "value": "uppercase", - "description": "Normalizes token text to upper case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" - }, - { - "name": "WordDelimiter", - "value": "word_delimiter", - "description": "Splits words into subwords and performs optional transformations on subword\ngroups." - } - ] - } - }, - "TruncateTokenFilter": { - "type": "object", - "description": "Truncates the terms to a specific length. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "length": { - "type": "integer", - "format": "int32", - "description": "The length at which terms will be truncated. Default and maximum is 300.", - "default": 300, - "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.TruncateTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter" - }, - "UaxUrlEmailTokenizer": { - "type": "object", - "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using\nApache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 255, - "maximum": 300 - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of tokenizer.", - "enum": [ - "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" - }, - "UniqueTokenFilter": { - "type": "object", - "description": "Filters out tokens with same text as the previous token. This token filter is\nimplemented using Apache Lucene.", - "properties": { - "onlyOnSamePosition": { - "type": "boolean", - "description": "A value indicating whether to remove duplicates only at the same position.\nDefault is false." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.UniqueTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter" - }, - "VectorEncodingFormat": { - "type": "string", - "description": "The encoding format for interpreting vector field contents.", - "enum": [ - "packedBit" - ], - "x-ms-enum": { - "name": "VectorEncodingFormat", - "modelAsString": true, - "values": [ - { - "name": "PackedBit", - "value": "packedBit", - "description": "Encoding format representing bits packed into a wider data type." - } - ] - } - }, - "VectorFilterMode": { - "type": "string", - "description": "Determines whether or not filters are applied before or after the vector search\nis performed.", - "enum": [ - "postFilter", - "preFilter" - ], - "x-ms-enum": { - "name": "VectorFilterMode", - "modelAsString": true, - "values": [ - { - "name": "PostFilter", - "value": "postFilter", - "description": "The filter will be applied after the candidate set of vector results is\nreturned. Depending on the filter selectivity, this can result in fewer results\nthan requested by the parameter 'k'." - }, - { - "name": "PreFilter", - "value": "preFilter", - "description": "The filter will be applied before the search query." - } - ] - } - }, - "VectorQuery": { - "type": "object", - "description": "The query parameters for vector and hybrid search queries.", - "properties": { - "k": { - "type": "integer", - "format": "int32", - "description": "Number of nearest neighbors to return as top hits." - }, - "fields": { - "type": "string", - "description": "Vector Fields of type Collection(Edm.Single) to be included in the vector\nsearched." - }, - "exhaustive": { - "type": "boolean", - "description": "When true, triggers an exhaustive k-nearest neighbor search across all vectors\nwithin the vector index. Useful for scenarios where exact matches are critical,\nsuch as determining ground truth values." - }, - "oversampling": { - "type": "number", - "format": "double", - "description": "Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling'\nparameter configured in the index definition. It can be set only when\n'rerankWithOriginalVectors' is true. This parameter is only permitted when a\ncompression method is used on the underlying vector field." - }, - "weight": { - "type": "number", - "format": "float", - "description": "Relative weight of the vector query when compared to other vector query and/or\nthe text query within the same search request. This value is used when\ncombining the results of multiple ranking lists produced by the different\nvector queries and/or the results retrieved through the text query. The higher\nthe weight, the higher the documents that matched that query will be in the\nfinal ranking. Default is 1.0 and the value needs to be a positive number\nlarger than zero." - }, - "kind": { - "$ref": "#/definitions/VectorQueryKind", - "description": "Type of query." - } - }, - "discriminator": "kind", - "required": [ - "kind" - ] - }, - "VectorQueryKind": { - "type": "string", - "description": "The kind of vector query being performed.", - "enum": [ - "vector", - "text" - ], - "x-ms-enum": { - "name": "VectorQueryKind", - "modelAsString": true, - "values": [ - { - "name": "Vector", - "value": "vector", - "description": "Vector query where a raw vector value is provided." - }, - { - "name": "Text", - "value": "text", - "description": "Vector query where a text value that needs to be vectorized is provided." - } - ] - } - }, - "VectorSearch": { - "type": "object", - "description": "Contains configuration options related to vector search.", - "properties": { - "profiles": { - "type": "array", - "description": "Defines combinations of configurations to use with vector search.", - "items": { - "$ref": "#/definitions/VectorSearchProfile" - }, - "x-ms-identifiers": [] - }, - "algorithms": { - "type": "array", - "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", - "items": { - "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" - }, - "x-ms-identifiers": [] - }, - "vectorizers": { - "type": "array", - "description": "Contains configuration options on how to vectorize text vector queries.", - "items": { - "$ref": "#/definitions/VectorSearchVectorizer" - }, - "x-ms-identifiers": [] - }, - "compressions": { - "type": "array", - "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", - "items": { - "$ref": "#/definitions/VectorSearchCompression" - }, - "x-ms-identifiers": [] - } - } - }, - "VectorSearchAlgorithmConfiguration": { - "type": "object", - "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", - "properties": { - "name": { - "type": "string", - "description": "The name to associate with this particular configuration." - }, - "kind": { - "$ref": "#/definitions/VectorSearchAlgorithmKind", - "description": "Type of VectorSearchAlgorithmConfiguration." - } - }, - "discriminator": "kind", - "required": [ - "name", - "kind" - ] - }, - "VectorSearchAlgorithmKind": { - "type": "string", - "description": "The algorithm used for indexing and querying.", - "enum": [ - "hnsw", - "exhaustiveKnn" - ], - "x-ms-enum": { - "name": "VectorSearchAlgorithmKind", - "modelAsString": true, - "values": [ - { - "name": "Hnsw", - "value": "hnsw", - "description": "HNSW (Hierarchical Navigable Small World), a type of approximate nearest\nneighbors algorithm." - }, - { - "name": "ExhaustiveKnn", - "value": "exhaustiveKnn", - "description": "Exhaustive KNN algorithm which will perform brute-force search." - } - ] - } - }, - "VectorSearchAlgorithmMetric": { - "type": "string", - "description": "The similarity metric to use for vector comparisons. It is recommended to\nchoose the same similarity metric as the embedding model was trained on.", - "enum": [ - "cosine", - "euclidean", - "dotProduct", - "hamming" - ], - "x-ms-enum": { - "name": "VectorSearchAlgorithmMetric", - "modelAsString": true, - "values": [ - { - "name": "Cosine", - "value": "cosine", - "description": "Measures the angle between vectors to quantify their similarity, disregarding\nmagnitude. The smaller the angle, the closer the similarity." - }, - { - "name": "Euclidean", - "value": "euclidean", - "description": "Computes the straight-line distance between vectors in a multi-dimensional\nspace. The smaller the distance, the closer the similarity." - }, - { - "name": "DotProduct", - "value": "dotProduct", - "description": "Calculates the sum of element-wise products to gauge alignment and magnitude\nsimilarity. The larger and more positive, the closer the similarity." - }, - { - "name": "Hamming", - "value": "hamming", - "description": "Only applicable to bit-packed binary data types. Determines dissimilarity by\ncounting differing positions in binary vectors. The fewer differences, the\ncloser the similarity." - } - ] - } - }, - "VectorSearchCompression": { - "type": "object", - "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", - "properties": { - "name": { - "type": "string", - "description": "The name to associate with this particular configuration.", - "x-ms-client-name": "compressionName" - }, - "rerankWithOriginalVectors": { - "type": "boolean", - "description": "If set to true, once the ordered set of results calculated using compressed\nvectors are obtained, they will be reranked again by recalculating the\nfull-precision similarity scores. This will improve recall at the expense of\nlatency.", - "default": true - }, - "defaultOversampling": { - "type": "number", - "format": "double", - "description": "Default oversampling factor. Oversampling will internally request more\ndocuments (specified by this multiplier) in the initial search. This increases\nthe set of results that will be reranked using recomputed similarity scores\nfrom full-precision vectors. Minimum value is 1, meaning no oversampling (1x).\nThis parameter can only be set when rerankWithOriginalVectors is true. Higher\nvalues improve recall at the expense of latency." - }, - "kind": { - "$ref": "#/definitions/VectorSearchCompressionKind", - "description": "Type of VectorSearchCompression." - } - }, - "discriminator": "kind", - "required": [ - "name", - "kind" - ] - }, - "VectorSearchCompressionKind": { - "type": "string", - "description": "The compression method used for indexing and querying.", - "enum": [ - "scalarQuantization", - "binaryQuantization" - ], - "x-ms-enum": { - "name": "VectorSearchCompressionKind", - "modelAsString": true, - "values": [ - { - "name": "ScalarQuantization", - "value": "scalarQuantization", - "description": "Scalar Quantization, a type of compression method. In scalar quantization, the\noriginal vectors values are compressed to a narrower type by discretizing and\nrepresenting each component of a vector using a reduced set of quantized\nvalues, thereby reducing the overall data size." - }, - { - "name": "BinaryQuantization", - "value": "binaryQuantization", - "description": "Binary Quantization, a type of compression method. In binary quantization, the\noriginal vectors values are compressed to the narrower binary type by\ndiscretizing and representing each component of a vector using binary values,\nthereby reducing the overall data size." - } - ] - } - }, - "VectorSearchCompressionTarget": { - "type": "string", - "description": "The quantized data type of compressed vector values.", - "enum": [ - "int8" - ], - "x-ms-enum": { - "name": "VectorSearchCompressionTarget", - "modelAsString": true, - "values": [ - { - "name": "Int8", - "value": "int8", - "description": "8-bit signed integer." - } - ] - } - }, - "VectorSearchProfile": { - "type": "object", - "description": "Defines a combination of configurations to use with vector search.", - "properties": { - "name": { - "type": "string", - "description": "The name to associate with this particular vector search profile." - }, - "algorithm": { - "type": "string", - "description": "The name of the vector search algorithm configuration that specifies the\nalgorithm and optional parameters.", - "x-ms-client-name": "algorithmConfigurationName" - }, - "vectorizer": { - "type": "string", - "description": "The name of the vectorization being configured for use with vector search.", - "x-ms-client-name": "vectorizerName" - }, - "compression": { - "type": "string", - "description": "The name of the compression method configuration that specifies the compression\nmethod and optional parameters.", - "x-ms-client-name": "compressionName" - } - }, - "required": [ - "name", - "algorithm" - ] - }, - "VectorSearchVectorizer": { - "type": "object", - "description": "Specifies the vectorization method to be used during query time.", - "properties": { - "name": { - "type": "string", - "description": "The name to associate with this particular vectorization method.", - "x-ms-client-name": "vectorizerName" - }, - "kind": { - "$ref": "#/definitions/VectorSearchVectorizerKind", - "description": "Type of VectorSearchVectorizer." - } - }, - "discriminator": "kind", - "required": [ - "name", - "kind" - ] - }, - "VectorSearchVectorizerKind": { - "type": "string", - "description": "The vectorization method to be used during query time.", - "enum": [ - "azureOpenAI", - "customWebApi" - ], - "x-ms-enum": { - "name": "VectorSearchVectorizerKind", - "modelAsString": true, - "values": [ - { - "name": "AzureOpenAI", - "value": "azureOpenAI", - "description": "Generate embeddings using an Azure OpenAI resource at query time." - }, - { - "name": "CustomWebApi", - "value": "customWebApi", - "description": "Generate embeddings using a custom web endpoint at query time." - } - ] - } - }, - "VectorizableTextQuery": { - "type": "object", - "description": "The query parameters to use for vector search when a text value that needs to\nbe vectorized is provided.", - "properties": { - "text": { - "type": "string", - "description": "The text to be vectorized to perform a vector search query." - } - }, - "required": [ - "text" - ], - "allOf": [ - { - "$ref": "#/definitions/VectorQuery" - } - ], - "x-ms-discriminator-value": "text" - }, - "VectorizedQuery": { - "type": "object", - "description": "The query parameters to use for vector search when a raw vector value is\nprovided.", - "properties": { - "vector": { - "type": "array", - "description": "The vector representation of a search query.", - "items": { - "type": "number", - "format": "float" - } - } - }, - "required": [ - "vector" - ], - "allOf": [ - { - "$ref": "#/definitions/VectorQuery" - } - ], - "x-ms-discriminator-value": "vector" - }, - "VisualFeature": { - "type": "string", - "description": "The strings indicating what visual feature types to return.", - "enum": [ - "adult", - "brands", - "categories", - "description", - "faces", - "objects", - "tags" - ], - "x-ms-enum": { - "name": "VisualFeature", - "modelAsString": true, - "values": [ - { - "name": "Adult", - "value": "adult", - "description": "Visual features recognized as adult persons." - }, - { - "name": "Brands", - "value": "brands", - "description": "Visual features recognized as commercial brands." - }, - { - "name": "Categories", - "value": "categories", - "description": "Categories." - }, - { - "name": "Description", - "value": "description", - "description": "Description." - }, - { - "name": "Faces", - "value": "faces", - "description": "Visual features recognized as people faces." - }, - { - "name": "Objects", - "value": "objects", - "description": "Visual features recognized as objects." - }, - { - "name": "Tags", - "value": "tags", - "description": "Tags." - } - ] - } - }, - "WebApiSkill": { - "type": "object", - "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by\nhaving it call your custom code.", - "properties": { - "uri": { - "type": "string", - "description": "The url for the Web API." - }, - "httpHeaders": { - "type": "object", - "description": "The headers required to make the http request.", - "additionalProperties": { - "type": "string" - } - }, - "httpMethod": { - "type": "string", - "description": "The method for the http request." - }, - "timeout": { - "type": "string", - "format": "duration", - "description": "The desired timeout for the request. Default is 30 seconds." - }, - "batchSize": { - "type": "integer", - "format": "int32", - "description": "The desired batch size which indicates number of documents." - }, - "degreeOfParallelism": { - "type": "integer", - "format": "int32", - "description": "If set, the number of parallel calls that can be made to the Web API." - }, - "authResourceId": { - "type": "string", - "description": "Applies to custom skills that connect to external code in an Azure function or\nsome other application that provides the transformations. This value should be\nthe application ID created for the function or app when it was registered with\nAzure Active Directory. When specified, the custom skill connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." - }, - "authIdentity": { - "$ref": "#/definitions/SearchIndexerDataIdentity", - "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of skill.", - "enum": [ - "#Microsoft.Skills.Custom.WebApiSkill" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "uri", - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill" - }, - "WebApiVectorizer": { - "type": "object", - "description": "Specifies a user-defined vectorizer for generating the vector embedding of a\nquery string. Integration of an external vectorizer is achieved using the\ncustom Web API interface of a skillset.", - "properties": { - "customWebApiParameters": { - "$ref": "#/definitions/WebApiVectorizerParameters", - "description": "Specifies the properties of the user-defined vectorizer.", - "x-ms-client-name": "webApiParameters" - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchVectorizer" - } - ], - "x-ms-discriminator-value": "customWebApi" - }, - "WebApiVectorizerParameters": { - "type": "object", - "description": "Specifies the properties for connecting to a user-defined vectorizer.", - "properties": { - "uri": { - "type": "string", - "format": "uri", - "description": "The URI of the Web API providing the vectorizer.", - "x-ms-client-name": "url" - }, - "httpHeaders": { - "type": "object", - "description": "The headers required to make the HTTP request.", - "additionalProperties": { - "type": "string" - } - }, - "httpMethod": { - "type": "string", - "description": "The method for the HTTP request." - }, - "timeout": { - "type": "string", - "format": "duration", - "description": "The desired timeout for the request. Default is 30 seconds." - }, - "authResourceId": { - "type": "string", - "description": "Applies to custom endpoints that connect to external code in an Azure function\nor some other application that provides the transformations. This value should\nbe the application ID created for the function or app when it was registered\nwith Azure Active Directory. When specified, the vectorization connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." - }, - "authIdentity": { - "$ref": "#/definitions/SearchIndexerDataIdentity", - "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." - } - } - }, - "WordDelimiterTokenFilter": { - "type": "object", - "description": "Splits words into subwords and performs optional transformations on subword\ngroups. This token filter is implemented using Apache Lucene.", - "properties": { - "generateWordParts": { - "type": "boolean", - "description": "A value indicating whether to generate part words. If set, causes parts of\nwords to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\".\nDefault is true.", - "default": true - }, - "generateNumberParts": { - "type": "boolean", - "description": "A value indicating whether to generate number subwords. Default is true.", - "default": true - }, - "catenateWords": { - "type": "boolean", - "description": "A value indicating whether maximum runs of word parts will be catenated. For\nexample, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default\nis false." - }, - "catenateNumbers": { - "type": "boolean", - "description": "A value indicating whether maximum runs of number parts will be catenated. For\nexample, if this is set to true, \"1-2\" becomes \"12\". Default is false." - }, - "catenateAll": { - "type": "boolean", - "description": "A value indicating whether all subword parts will be catenated. For example, if\nthis is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." - }, - "splitOnCaseChange": { - "type": "boolean", - "description": "A value indicating whether to split words on caseChange. For example, if this\nis set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true.", - "default": true - }, - "preserveOriginal": { - "type": "boolean", - "description": "A value indicating whether original words will be preserved and added to the\nsubword list. Default is false." - }, - "splitOnNumerics": { - "type": "boolean", - "description": "A value indicating whether to split on numbers. For example, if this is set to\ntrue, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true.", - "default": true - }, - "stemEnglishPossessive": { - "type": "boolean", - "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is\ntrue.", - "default": true - }, - "protectedWords": { - "type": "array", - "description": "A list of tokens to protect from being delimited.", - "items": { - "type": "string" - } - }, - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of token filter.", - "enum": [ - "#Microsoft.Azure.Search.WordDelimiterTokenFilter" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "odataType" - } - }, - "required": [ - "@odata.type" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter" - } - }, - "parameters": { - "Azure.Core.ClientRequestIdHeader": { - "name": "x-ms-client-request-id", - "in": "header", - "description": "An opaque, globally-unique, client-generated string identifier for the request.", - "required": false, - "type": "string", - "format": "uuid", - "x-ms-parameter-location": "method", - "x-ms-client-name": "clientRequestId" - }, - "Azure.Core.Foundations.ApiVersionParameter": { - "name": "api-version", - "in": "query", - "description": "The API version to use for this operation.", - "required": true, - "type": "string", - "minLength": 1, - "x-ms-parameter-location": "method", - "x-ms-client-name": "apiVersion" - } - } -} From 6cca84c071a3714dbe518423b00ce16d94de80cb Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 11:28:42 -0800 Subject: [PATCH 45/78] update --- cSpell.json | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/cSpell.json b/cSpell.json index 3fded919fc5c..8d9d5e281cc6 100644 --- a/cSpell.json +++ b/cSpell.json @@ -1723,6 +1723,22 @@ "SEVSNP" ] }, + { + "filename": "**/specification/search/data-plane/Search/**/**/*.json", + "words": [ + "maxcharlength", + "Submode", + "Subscores", + "vectorizing", + "Rescoring", + "rescored", + "onelake", + "tiktoken", + "rerank", + "Matryoshka", + "discretizing" + ] + }, { "filename": "**/specification/connectedcache/resource-manager/Microsoft.ConnectedCache/preview/**/*.json", "words": [ From 8cbc6ee7390ec148af16f75cea4b2bbb553bb941 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 11:31:44 -0800 Subject: [PATCH 46/78] update --- .../search/data-plane/Search/readme.md | 49 + .../SearchIndexAutocompleteDocumentsGet.json | 40 + .../SearchIndexAutocompleteDocumentsPost.json | 38 + .../examples/SearchIndexCountDocuments.json | 14 + .../examples/SearchIndexGetDocument.json | 25 + .../examples/SearchIndexIndexDocuments.json | 96 ++ .../SearchIndexSearchDocumentsGet.json | 88 ++ .../SearchIndexSearchDocumentsPost.json | 121 +++ ...SearchIndexSearchDocumentsSemanticGet.json | 54 ++ ...earchIndexSearchDocumentsSemanticPost.json | 71 ++ .../SearchIndexSuggestDocumentsGet.json | 49 + .../SearchIndexSuggestDocumentsPost.json | 41 + .../SearchServiceCreateDataSource.json | 72 ++ .../examples/SearchServiceCreateIndex.json | 702 ++++++++++++++ .../examples/SearchServiceCreateIndexer.json | 60 ++ ...SearchServiceCreateOrUpdateDataSource.json | 97 ++ .../SearchServiceCreateOrUpdateIndex.json | 865 ++++++++++++++++++ .../SearchServiceCreateOrUpdateIndexer.json | 80 ++ .../SearchServiceCreateOrUpdateSkillset.json | 389 ++++++++ ...SearchServiceCreateOrUpdateSynonymMap.json | 49 + .../examples/SearchServiceCreateSkillset.json | 309 +++++++ .../SearchServiceCreateSynonymMap.json | 40 + .../SearchServiceDeleteDataSource.json | 13 + .../examples/SearchServiceDeleteIndex.json | 13 + .../examples/SearchServiceDeleteIndexer.json | 13 + .../examples/SearchServiceDeleteSkillset.json | 13 + .../SearchServiceDeleteSynonymMap.json | 13 + .../examples/SearchServiceGetDataSource.json | 43 + .../examples/SearchServiceGetIndex.json | 346 +++++++ .../SearchServiceGetIndexStatistics.json | 18 + .../examples/SearchServiceGetIndexer.json | 38 + .../SearchServiceGetIndexerStatus.json | 91 ++ .../SearchServiceGetServiceStatistics.json | 54 ++ .../examples/SearchServiceGetSkillset.json | 146 +++ .../examples/SearchServiceGetSynonymMap.json | 27 + .../examples/SearchServiceIndexAnalyze.json | 39 + .../SearchServiceListDataSources.json | 47 + .../examples/SearchServiceListIndexers.json | 78 ++ .../examples/SearchServiceListIndexes.json | 317 +++++++ .../examples/SearchServiceListSkillsets.json | 150 +++ .../SearchServiceListSynonymMaps.json | 33 + .../examples/SearchServiceResetIndexer.json | 12 + .../examples/SearchServiceRunIndexer.json | 12 + 43 files changed, 4865 insertions(+) create mode 100644 specification/search/data-plane/Search/readme.md create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsGet.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsPost.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexCountDocuments.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexGetDocument.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexIndexDocuments.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsGet.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsPost.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticGet.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticPost.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsGet.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsPost.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateDataSource.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndex.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndexer.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateDataSource.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndex.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndexer.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSkillset.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSynonymMap.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSkillset.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSynonymMap.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteDataSource.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndex.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndexer.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSkillset.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSynonymMap.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetDataSource.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndex.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexStatistics.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexer.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexerStatus.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetServiceStatistics.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSkillset.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSynonymMap.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceIndexAnalyze.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListDataSources.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexers.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexes.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSkillsets.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSynonymMaps.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceResetIndexer.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceRunIndexer.json diff --git a/specification/search/data-plane/Search/readme.md b/specification/search/data-plane/Search/readme.md new file mode 100644 index 000000000000..1146440ca0fb --- /dev/null +++ b/specification/search/data-plane/Search/readme.md @@ -0,0 +1,49 @@ +# AI Search + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for AI Search. + +--- + +## Getting Started + +To build the SDK for AI Search, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information + +These are the global settings for the AI Search API. + +``` yaml +# common +openapi-type: data-plane +tag: package-2024-07-01 +``` + +### Tag: package-2024-07-01 + +These settings apply only when `--tag=package-2024-07-01` is specified on the command line. + +``` yaml $(tag) == 'package-2024-07-01' +input-file: +- stable/2024-07-01/search.json +suppressions: + - code: LroExtension + from: search.json + reason: Legacy swagger file +``` + +### Suppression +``` yaml +directive: + - suppress: INVALID_TYPE +``` diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsGet.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsGet.json new file mode 100644 index 000000000000..da2054924fcc --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsGet.json @@ -0,0 +1,40 @@ +{ + "operationId": "DocumentsOperations_AutocompleteGet", + "title": "SearchIndexAutocompleteDocumentsGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": [ + "title", + "description" + ], + "top": 10 + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsPost.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsPost.json new file mode 100644 index 000000000000..b8251df3fd83 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsPost.json @@ -0,0 +1,38 @@ +{ + "operationId": "DocumentsOperations_AutocompletePost", + "title": "SearchIndexAutocompleteDocumentsPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "autocompleteRequest": { + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": "title,description", + "top": 10 + } + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexCountDocuments.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexCountDocuments.json new file mode 100644 index 000000000000..9e860ca33e9a --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexCountDocuments.json @@ -0,0 +1,14 @@ +{ + "operationId": "DocumentsOperations_Count", + "title": "SearchIndexCountDocuments", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": 427 + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexGetDocument.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexGetDocument.json new file mode 100644 index 000000000000..4c3a27feb142 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexGetDocument.json @@ -0,0 +1,25 @@ +{ + "operationId": "DocumentsOperations_Get", + "title": "SearchIndexGetDocument", + "parameters": { + "endpoint": "https://exampleservice.search.windows.net", + "indexName": "getdocumentexample", + "key": "1", + "$select": [ + "docId", + "title", + "description" + ], + "api-version": "2024-07-01", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "docId": "1", + "title": "Nice Hotel", + "description": "Cheapest hotel in town" + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexIndexDocuments.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexIndexDocuments.json new file mode 100644 index 000000000000..15f3d7781789 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexIndexDocuments.json @@ -0,0 +1,96 @@ +{ + "operationId": "DocumentsOperations_Index", + "title": "SearchIndexIndexDocuments", + "parameters": { + "endpoint": "https://exampleservice.search.windows.net", + "indexName": "indexdocumentsexample", + "api-version": "2024-07-01", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "batch": { + "value": [ + { + "@search.action": "upload", + "docId": "1", + "title": "Fancy Stay", + "description": "Best hotel in town" + }, + { + "@search.action": "merge", + "docId": "2", + "title": "Roach Motel" + }, + { + "@search.action": "mergeOrUpload", + "docId": "3", + "title": "Econo Motel" + }, + { + "@search.action": "delete", + "docId": "4" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "2", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + }, + "207": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 201 + }, + { + "key": "2", + "status": false, + "errorMessage": "Document not found.", + "statusCode": 404 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 201 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsGet.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsGet.json new file mode 100644 index 000000000000..dbb98fecc80e --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsGet.json @@ -0,0 +1,88 @@ +{ + "operationId": "DocumentsOperations_SearchGet", + "title": "SearchIndexSearchDocumentsGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$count": true, + "facet": [ + "category,count:10,sort:count" + ], + "$filter": "rating gt 10", + "highlight": [ + "title" + ], + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "queryType": "simple", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": [ + "title", + "description" + ], + "searchMode": "any", + "$select": [ + "docId", + "title", + "description" + ], + "$skip": 100, + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.coverage": 80, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsPost.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsPost.json new file mode 100644 index 000000000000..65f518cea193 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsPost.json @@ -0,0 +1,121 @@ +{ + "operationId": "DocumentsOperations_SearchPost", + "title": "SearchIndexSearchDocumentsPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "searchRequest": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "description", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "rating desc", + "queryType": "simple", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "category,description", + "searchMode": "any", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "select": "hotelId,category,description", + "skip": 0, + "top": 10, + "vectorQueries": [ + { + "kind": "vector", + "vector": [ + 0.103, + 0.0712, + 0.0852, + 0.1547, + 0.1183 + ], + "fields": "descriptionEmbedding", + "k": 5, + "exhaustive": true, + "oversampling": 20.0, + "weight": 2.0 + } + ], + "vectorFilterMode": "preFilter" + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "@search.nextPageParameters": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "title", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "search.score() desc,rating desc", + "queryType": "simple", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "title,description", + "searchMode": "any", + "select": "docId,title,description", + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticGet.json new file mode 100644 index 000000000000..e520c69d94f5 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticGet.json @@ -0,0 +1,54 @@ +{ + "operationId": "DocumentsOperations_SearchGet", + "title": "SearchIndexSearchDocumentsSemanticGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticPost.json new file mode 100644 index 000000000000..f28437d390df --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticPost.json @@ -0,0 +1,71 @@ +{ + "operationId": "DocumentsOperations_SearchPost", + "title": "SearchIndexSearchDocumentsSemanticPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "searchRequest": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "@search.nextPageParameters": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780, + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsGet.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsGet.json new file mode 100644 index 000000000000..de0013953f7c --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsGet.json @@ -0,0 +1,49 @@ +{ + "operationId": "DocumentsOperations_SuggestGet", + "title": "SearchIndexSuggestDocumentsGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$filter": "rating gt 10", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "search": "hote", + "searchFields": [ + "title" + ], + "suggesterName": "sg", + "$select": [ + "docId", + "title", + "description" + ], + "$top": 10 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsPost.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsPost.json new file mode 100644 index 000000000000..b80b58298472 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsPost.json @@ -0,0 +1,41 @@ +{ + "operationId": "DocumentsOperations_SuggestPost", + "title": "SearchIndexSuggestDocumentsPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "suggestRequest": { + "filter": "rating gt 4.0", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "orderby": "rating desc", + "search": "hote", + "searchFields": "title", + "select": "docId,title,description", + "suggesterName": "sg", + "top": 10 + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateDataSource.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateDataSource.json new file mode 100644 index 000000000000..882fae5767e5 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateDataSource.json @@ -0,0 +1,72 @@ +{ + "operationId": "DataSourcesOperations_Create", + "title": "SearchServiceCreateDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndex.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndex.json new file mode 100644 index 000000000000..85f8fcc39e6f --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndex.json @@ -0,0 +1,702 @@ +{ + "operationId": "IndexesOperations_Create", + "title": "SearchServiceCreateIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_notstored", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": false, + "stored": false, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_forBQ", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswBQProfile" + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "nameEmbedding", + "type": "Collection(Edm.Half)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myHnswSQProfile", + "algorithm": "myHnsw", + "compression": "mySQ8" + }, + { + "name": "myHnswBQProfile", + "algorithm": "myHnsw", + "compression": "myBQ" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "m": 4, + "metric": "cosine" + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + }, + { + "name": "myBQ", + "kind": "binaryQuantization", + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile", + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding_notstored", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": false, + "stored": false, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_forBQ", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswBQProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "nameEmbedding", + "type": "Collection(Edm.Half)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "fieldName": "location", + "interpolation": "logarithmic", + "type": "distance", + "boost": 5.0, + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenFilters": [], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myHnswSQProfile", + "algorithm": "myHnsw", + "compression": "mySQ8" + }, + { + "name": "myHnswBQProfile", + "algorithm": "myHnsw", + "vectorizer": "myOpenAi", + "compression": "myBQ" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + }, + { + "name": "myBQ", + "kind": "binaryQuantization", + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + } + ] + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndexer.json new file mode 100644 index 000000000000..88c81c4060da --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndexer.json @@ -0,0 +1,60 @@ +{ + "operationId": "IndexersOperations_Create", + "title": "SearchServiceCreateIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "indexer": { + "name": "myindexer", + "description": "an indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myindexer", + "description": "an indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateDataSource.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateDataSource.json new file mode 100644 index 000000000000..5601c4b456a0 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateDataSource.json @@ -0,0 +1,97 @@ +{ + "operationId": "DataSourcesOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndex.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndex.json new file mode 100644 index 000000000000..bf9f68a28622 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndex.json @@ -0,0 +1,865 @@ +{ + "operationId": "IndexesOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "allowIndexDowntime": false, + "api-version": "2024-07-01", + "Prefer": "return=representation", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "searchable": true, + "retrievable": true + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "m": 4, + "metric": "cosine" + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5.0, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + }, + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndexer.json new file mode 100644 index 000000000000..6090c4bcaafb --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndexer.json @@ -0,0 +1,80 @@ +{ + "operationId": "IndexersOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "indexer": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSkillset.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSkillset.json new file mode 100644 index 000000000000..b510c95a8df8 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSkillset.json @@ -0,0 +1,389 @@ +{ + "operationId": "SkillsetsOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSynonymMap.json new file mode 100644 index 000000000000..cf8f6c9d07af --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSynonymMap.json @@ -0,0 +1,49 @@ +{ + "operationId": "SynonymMapsOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSkillset.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSkillset.json new file mode 100644 index 000000000000..3feeca88e25d --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSkillset.json @@ -0,0 +1,309 @@ +{ + "operationId": "SkillsetsOperations_Create", + "title": "SearchServiceCreateSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "knowledgeStore": { + "storageConnectionString": "DefaultEndpointsProtocol=https;AccountName=myStorage;AccountKey=myStorageKey;EndpointSuffix=core.windows.net", + "projections": [ + { + "tables": [ + { + "tableName": "Reviews", + "generatedKeyName": "ReviewId", + "source": "/document/Review", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Sentences", + "generatedKeyName": "SentenceId", + "source": "/document/Review/Sentences/*", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "KeyPhrases", + "generatedKeyName": "KeyPhraseId", + "source": "/document/Review/Sentences/*/KeyPhrases", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Entities", + "generatedKeyName": "EntityId", + "source": "/document/Review/Sentences/*/Entities/*", + "sourceContext": null, + "inputs": [] + } + ] + }, + { + "objects": [ + { + "storageContainer": "Reviews", + "source": "/document/Review", + "generatedKeyName": "/document/Review/Id" + } + ] + } + ] + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSynonymMap.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSynonymMap.json new file mode 100644 index 000000000000..7146356cd274 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSynonymMap.json @@ -0,0 +1,40 @@ +{ + "operationId": "SynonymMapsOperations_Create", + "title": "SearchServiceCreateSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "myApplicationSecret" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteDataSource.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteDataSource.json new file mode 100644 index 000000000000..af932181bab3 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteDataSource.json @@ -0,0 +1,13 @@ +{ + "operationId": "DataSourcesOperations_Delete", + "title": "SearchServiceDeleteDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndex.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndex.json new file mode 100644 index 000000000000..633ed9d4d6c8 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndex.json @@ -0,0 +1,13 @@ +{ + "operationId": "IndexesOperations_Delete", + "title": "SearchServiceDeleteIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndexer.json new file mode 100644 index 000000000000..404fdf7f7d04 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndexer.json @@ -0,0 +1,13 @@ +{ + "operationId": "IndexersOperations_Delete", + "title": "SearchServiceDeleteIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSkillset.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSkillset.json new file mode 100644 index 000000000000..56b8da5d8118 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSkillset.json @@ -0,0 +1,13 @@ +{ + "operationId": "SkillsetsOperations_Delete", + "title": "SearchServiceDeleteSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSynonymMap.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSynonymMap.json new file mode 100644 index 000000000000..d9e27a8e60a5 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSynonymMap.json @@ -0,0 +1,13 @@ +{ + "operationId": "SynonymMapsOperations_Delete", + "title": "SearchServiceDeleteSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetDataSource.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetDataSource.json new file mode 100644 index 000000000000..48017bfdd32e --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetDataSource.json @@ -0,0 +1,43 @@ +{ + "operationId": "DataSourcesOperations_Get", + "title": "SearchServiceGetDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndex.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndex.json new file mode 100644 index 000000000000..23d3c2e2fb78 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndex.json @@ -0,0 +1,346 @@ +{ + "operationId": "IndexesOperations_Get", + "title": "SearchServiceGetIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5.0, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexStatistics.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexStatistics.json new file mode 100644 index 000000000000..252d25544656 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexStatistics.json @@ -0,0 +1,18 @@ +{ + "operationId": "IndexesOperations_GetStatistics", + "title": "SearchServiceGetIndexStatistics", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "documentCount": 239572, + "storageSize": 72375920, + "vectorIndexSize": 123456 + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexer.json new file mode 100644 index 000000000000..532bc68f6ce6 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexer.json @@ -0,0 +1,38 @@ +{ + "operationId": "IndexersOperations_Get", + "title": "SearchServiceGetIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexerStatus.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexerStatus.json new file mode 100644 index 000000000000..8b369c8eea0c --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexerStatus.json @@ -0,0 +1,91 @@ +{ + "operationId": "IndexersOperations_GetStatus", + "title": "SearchServiceGetIndexerStatus", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "status": "running", + "lastResult": { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + "executionHistory": [ + { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + { + "status": "transientFailure", + "errorMessage": null, + "startTime": "2014-11-26T03:28:10.125Z", + "endTime": "2014-11-26T03:28:12.007Z", + "errors": [ + { + "key": "", + "errorMessage": "Document key cannot be missing or empty.", + "statusCode": 400, + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 1", + "errorMessage": "Could not read the value of column 'foo' at index '0'.", + "statusCode": 400, + "name": "DocumentExtraction.AzureBlob.MyDataSource", + "details": "The file could not be parsed.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388" + } + ], + "warnings": [ + { + "key": "document id", + "message": "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob.", + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 2", + "message": "Document was truncated to 50000 characters.", + "name": "Enrichment.LanguageDetectionSkill.#4", + "details": "The skill did something that didn't break anything, nonetheless something we didn't expect happened, so it might be worth double checking.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2099692" + } + ], + "itemsProcessed": 1, + "itemsFailed": 2, + "initialTrackingState": null, + "finalTrackingState": null + } + ], + "limits": { + "maxRunTime": "PT22H", + "maxDocumentExtractionSize": 256000000, + "maxDocumentContentCharactersToExtract": 4000000 + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetServiceStatistics.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetServiceStatistics.json new file mode 100644 index 000000000000..743a516c6f85 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetServiceStatistics.json @@ -0,0 +1,54 @@ +{ + "operationId": "GetServiceStatistics", + "title": "SearchServiceGetServiceStatistics", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "counters": { + "documentCount": { + "usage": 7093, + "quota": 10000 + }, + "indexesCount": { + "usage": 3, + "quota": 3 + }, + "indexersCount": { + "usage": 3, + "quota": 3 + }, + "dataSourcesCount": { + "usage": 1, + "quota": 3 + }, + "storageSize": { + "usage": 914529, + "quota": 52428800 + }, + "synonymMaps": { + "usage": 2, + "quota": 3 + }, + "skillsetCount": { + "usage": 1, + "quota": 3 + }, + "vectorIndexSize": { + "usage": 123456, + "quota": 26214400 + } + }, + "limits": { + "maxFieldsPerIndex": 1000, + "maxFieldNestingDepthPerIndex": 10, + "maxComplexCollectionFieldsPerIndex": 100, + "maxComplexObjectsInCollectionsPerDocument": 3000 + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSkillset.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSkillset.json new file mode 100644 index 000000000000..cee2ffba575e --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSkillset.json @@ -0,0 +1,146 @@ +{ + "operationId": "SkillsetsOperations_Get", + "title": "SearchServiceGetSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSynonymMap.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSynonymMap.json new file mode 100644 index 000000000000..b1bb6b5c71d9 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSynonymMap.json @@ -0,0 +1,27 @@ +{ + "operationId": "SynonymMapsOperations_Get", + "title": "SearchServiceGetSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceIndexAnalyze.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceIndexAnalyze.json new file mode 100644 index 000000000000..32d8385754e8 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceIndexAnalyze.json @@ -0,0 +1,39 @@ +{ + "operationId": "IndexesOperations_Analyze", + "title": "SearchServiceIndexAnalyze", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01", + "request": { + "text": "Text to analyze", + "analyzer": "standard.lucene" + } + }, + "responses": { + "200": { + "body": { + "tokens": [ + { + "token": "text", + "startOffset": 0, + "endOffset": 4, + "position": 0 + }, + { + "token": "to", + "startOffset": 5, + "endOffset": 7, + "position": 1 + }, + { + "token": "analyze", + "startOffset": 8, + "endOffset": 15, + "position": 2 + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListDataSources.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListDataSources.json new file mode 100644 index 000000000000..6a8611843e0a --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListDataSources.json @@ -0,0 +1,47 @@ +{ + "operationId": "DataSourcesOperations_List", + "title": "SearchServiceListDataSources", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexers.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexers.json new file mode 100644 index 000000000000..d853b67419ac --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexers.json @@ -0,0 +1,78 @@ +{ + "operationId": "IndexersOperations_List", + "title": "SearchServiceListIndexers", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydocdbdatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + }, + { + "name": "myotherindexer", + "description": "another cool indexer", + "dataSourceName": "myblobdatasource", + "targetIndexName": "orders", + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "batchSize": 15 + }, + "fieldMappings": [ + { + "sourceFieldName": "PersonName", + "targetFieldName": "FirstName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 0 + } + } + }, + { + "sourceFieldName": "PersonName", + "targetFieldName": "LastName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 1 + } + } + } + ], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexes.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexes.json new file mode 100644 index 000000000000..b89b350a43ca --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexes.json @@ -0,0 +1,317 @@ +{ + "operationId": "IndexesOperations_List", + "title": "SearchServiceListIndexes", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + } + }, + { + "name": "testindex", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": false, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "hidden", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": false, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [], + "defaultScoringProfile": null, + "suggesters": [], + "analyzers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": null, + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSkillsets.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSkillsets.json new file mode 100644 index 000000000000..b4bdd7cd81e5 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSkillsets.json @@ -0,0 +1,150 @@ +{ + "operationId": "SkillsetsOperations_List", + "title": "SearchServiceListSkillsets", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSynonymMaps.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSynonymMaps.json new file mode 100644 index 000000000000..53c8134271c4 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSynonymMaps.json @@ -0,0 +1,33 @@ +{ + "operationId": "SynonymMapsOperations_List", + "title": "SearchServiceListSynonymMaps", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + }, + { + "name": "myothersynonymmap", + "format": "solr", + "synonyms": "couch, sofa, chesterfield\npop, soda\ntoque, hat", + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceResetIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceResetIndexer.json new file mode 100644 index 000000000000..a9d763f69655 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceResetIndexer.json @@ -0,0 +1,12 @@ +{ + "operationId": "IndexersOperations_Reset", + "title": "SearchServiceResetIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "204": {} + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceRunIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceRunIndexer.json new file mode 100644 index 000000000000..97604abf06b3 --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceRunIndexer.json @@ -0,0 +1,12 @@ +{ + "operationId": "IndexersOperations_Run", + "title": "SearchServiceRunIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "202": {} + } +} From bd8bbc0b24d318f4be0c01e8566da7bba351ab2d Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 11:40:58 -0800 Subject: [PATCH 47/78] updates --- .../SearchIndexAutocompleteDocumentsGet.json | 40 - .../SearchIndexAutocompleteDocumentsPost.json | 38 - .../SearchIndexCountDocuments.json | 15 - .../SearchIndexGetDocument.json | 29 - .../SearchIndexIndexDocuments.json | 3808 ----------------- .../SearchIndexSearchDocumentsGet.json | 88 - .../SearchIndexSearchDocumentsPost.json | 220 - ...SearchIndexSearchDocumentsSemanticGet.json | 54 - ...earchIndexSearchDocumentsSemanticPost.json | 71 - .../SearchIndexSuggestDocumentsGet.json | 49 - .../SearchIndexSuggestDocumentsPost.json | 59 - .../SearchServiceCreateAlias.json | 25 - .../SearchServiceCreateDataSource.json | 73 - .../SearchServiceCreateIndex.json | 582 --- .../SearchServiceCreateIndexer.json | 74 - .../SearchServiceCreateOrUpdateAlias.json | 37 - ...SearchServiceCreateOrUpdateDataSource.json | 112 - .../SearchServiceCreateOrUpdateIndex.json | 904 ---- .../SearchServiceCreateOrUpdateIndexer.json | 115 - .../SearchServiceCreateOrUpdateSkillset.json | 440 -- ...SearchServiceCreateOrUpdateSynonymMap.json | 63 - .../SearchServiceCreateSkillset.json | 288 -- .../SearchServiceCreateSynonymMap.json | 42 - .../SearchServiceDeleteAlias.json | 16 - .../SearchServiceDeleteDataSource.json | 16 - .../SearchServiceDeleteIndex.json | 16 - .../SearchServiceDeleteIndexer.json | 16 - .../SearchServiceDeleteSkillset.json | 16 - .../SearchServiceDeleteSynonymMap.json | 16 - .../SearchServiceGetAlias.json | 20 - .../SearchServiceGetDataSource.json | 45 - .../SearchServiceGetIndex.json | 331 -- .../SearchServiceGetIndexStatistics.json | 19 - .../SearchServiceGetIndexer.json | 43 - .../SearchServiceGetIndexerStatus.json | 91 - .../SearchServiceGetServiceStatistics.json | 58 - .../SearchServiceGetSkillset.json | 161 - .../SearchServiceGetSynonymMap.json | 29 - .../SearchServiceIndexAnalyze.json | 40 - .../SearchServiceListAliases.json | 23 - .../SearchServiceListDataSources.json | 49 - .../SearchServiceListIndexers.json | 46 - .../SearchServiceListIndexes.json | 335 -- .../SearchServiceListSkillsets.json | 165 - .../SearchServiceListSynonymMaps.json | 33 - .../SearchServiceResetDocs.json | 21 - .../SearchServiceResetIndexer.json | 13 - .../SearchServiceResetSkills.json | 20 - .../SearchServiceRunIndexer.json | 13 - 49 files changed, 8877 deletions(-) delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateAlias.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateAlias.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteAlias.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetAlias.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListAliases.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetDocs.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetSkills.json delete mode 100644 specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json deleted file mode 100644 index 05c6837c64ea..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsGet.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "operationId": "DocumentsOperations_autocompleteGet", - "title": "SearchIndexAutocompleteDocumentsGet", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-11-01-preview", - "autocompleteMode": "oneTerm", - "search": "washington medic", - "suggesterName": "sg", - "filter": "search.in(docId,'101,102,105')", - "fuzzy": false, - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "searchFields": [ - "title", - "description" - ], - "top": 10 - }, - "responses": { - "200": { - "body": [ - { - "text": "medicaid", - "queryPlusText": "washington medicaid" - }, - { - "text": "medicare", - "queryPlusText": "washington medicare" - }, - { - "text": "medicine", - "queryPlusText": "washington medicine" - } - ] - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json deleted file mode 100644 index 3f0c0bc29a27..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexAutocompleteDocumentsPost.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "operationId": "DocumentsOperations_autocompletePost", - "title": "SearchIndexAutocompleteDocumentsPost", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "preview-test", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "autocompleteRequest": { - "search": "p", - "autocompleteMode": "oneTerm", - "filter": "ownerId ne '1'", - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "searchFields": "category, ownerId", - "suggesterName": "sg", - "top": 10 - } - }, - "responses": { - "200": { - "body": { - "@search.coverage": 100.0, - "value": [ - { - "text": "purple", - "queryPlusText": "purple" - }, - { - "text": "pink", - "queryPlusText": "pink" - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json deleted file mode 100644 index 7796fbfd60eb..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexCountDocuments.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "operationId": "DocumentsOperations_count", - "title": "SearchIndexCountDocuments", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "preview-test", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": 50 - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json deleted file mode 100644 index c60c13fa1f1b..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexGetDocument.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "operationId": "DocumentsOperations_get", - "title": "SearchIndexGetDocument", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "preview-test", - "key": "1", - "$select": [ - "id", - "description", - "name", - "category", - "ownerId" - ], - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "id": "1", - "name": "test", - "description": "test1 hello", - "category": "purple", - "ownerId": "sam" - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json deleted file mode 100644 index a2ba91dff52a..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexIndexDocuments.json +++ /dev/null @@ -1,3808 +0,0 @@ -{ - "operationId": "DocumentsOperations_index", - "title": "SearchIndexIndexDocuments", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "preview-test", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "batch": { - "value": [ - { - "@search.action": "mergeOrUpload", - "id": "0", - "name": "test", - "description": "test0 hello", - "vector1": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19 - ], - "vector1b": [ - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19 - ], - "vector2": [ - 0, - 1, - 2, - 3, - 4 - ], - "vector3": [ - 0, - 1, - 2, - 3, - 4 - ], - "vector22": [ - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29 - ], - "ownerId": "benny", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "1", - "name": "test", - "description": "test1 hello", - "vector1": [ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20 - ], - "vector1b": [ - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20 - ], - "vector2": [ - 1, - 2, - 3, - 4, - 5 - ], - "vector3": [ - 1, - 2, - 3, - 4, - 5 - ], - "vector22": [ - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "2", - "name": "test", - "description": "test2 hello", - "vector1": [ - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21 - ], - "vector1b": [ - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21 - ], - "vector2": [ - 2, - 3, - 4, - 5, - 6 - ], - "vector3": [ - 2, - 3, - 4, - 5, - 6 - ], - "vector22": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "3", - "name": "test", - "description": "test3 hello", - "vector1": [ - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22 - ], - "vector1b": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22 - ], - "vector2": [ - 3, - 4, - 5, - 6, - 7 - ], - "vector3": [ - 3, - 4, - 5, - 6, - 7 - ], - "vector22": [ - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32 - ], - "ownerId": "ryan", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "4", - "name": "test", - "description": "test4 hello", - "vector1": [ - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23 - ], - "vector1b": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23 - ], - "vector2": [ - 4, - 5, - 6, - 7, - 8 - ], - "vector3": [ - 4, - 5, - 6, - 7, - 8 - ], - "vector22": [ - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "5", - "name": "test", - "description": "test5 hello", - "vector1": [ - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24 - ], - "vector1b": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24 - ], - "vector2": [ - 5, - 6, - 7, - 8, - 9 - ], - "vector3": [ - 5, - 6, - 7, - 8, - 9 - ], - "vector22": [ - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "6", - "name": "test", - "description": "test6 hello", - "vector1": [ - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25 - ], - "vector1b": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25 - ], - "vector2": [ - 6, - 7, - 8, - 9, - 10 - ], - "vector3": [ - 6, - 7, - 8, - 9, - 10 - ], - "vector22": [ - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35 - ], - "ownerId": "ryan", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "7", - "name": "test", - "description": "test7 hello", - "vector1": [ - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26 - ], - "vector1b": [ - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26 - ], - "vector2": [ - 7, - 8, - 9, - 10, - 11 - ], - "vector3": [ - 7, - 8, - 9, - 10, - 11 - ], - "vector22": [ - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "8", - "name": "test", - "description": "test8 hello", - "vector1": [ - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27 - ], - "vector1b": [ - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27 - ], - "vector2": [ - 8, - 9, - 10, - 11, - 12 - ], - "vector3": [ - 8, - 9, - 10, - 11, - 12 - ], - "vector22": [ - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "9", - "name": "test", - "description": "test9 hello", - "vector1": [ - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28 - ], - "vector1b": [ - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28 - ], - "vector2": [ - 9, - 10, - 11, - 12, - 13 - ], - "vector3": [ - 9, - 10, - 11, - 12, - 13 - ], - "vector22": [ - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ], - "ownerId": "ryan", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "10", - "name": "test", - "description": "test10 hello", - "vector1": [ - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29 - ], - "vector1b": [ - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29 - ], - "vector2": [ - 10, - 11, - 12, - 13, - 14 - ], - "vector3": [ - 10, - 11, - 12, - 13, - 14 - ], - "vector22": [ - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ], - "ownerId": "benny", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "11", - "name": "test", - "description": "test11 hello", - "vector1": [ - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30 - ], - "vector1b": [ - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30 - ], - "vector2": [ - 11, - 12, - 13, - 14, - 15 - ], - "vector3": [ - 11, - 12, - 13, - 14, - 15 - ], - "vector22": [ - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "12", - "name": "test", - "description": "test12 hello", - "vector1": [ - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31 - ], - "vector1b": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31 - ], - "vector2": [ - 12, - 13, - 14, - 15, - 16 - ], - "vector3": [ - 12, - 13, - 14, - 15, - 16 - ], - "vector22": [ - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ], - "ownerId": "ryan", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "13", - "name": "test", - "description": "test13 hello", - "vector1": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32 - ], - "vector1b": [ - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32 - ], - "vector2": [ - 13, - 14, - 15, - 16, - 17 - ], - "vector3": [ - 13, - 14, - 15, - 16, - 17 - ], - "vector22": [ - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "14", - "name": "test", - "description": "test14 hello", - "vector1": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33 - ], - "vector1b": [ - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33 - ], - "vector2": [ - 14, - 15, - 16, - 17, - 18 - ], - "vector3": [ - 14, - 15, - 16, - 17, - 18 - ], - "vector22": [ - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "15", - "name": "test", - "description": "test15 hello", - "vector1": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34 - ], - "vector1b": [ - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34 - ], - "vector2": [ - 15, - 16, - 17, - 18, - 19 - ], - "vector3": [ - 15, - 16, - 17, - 18, - 19 - ], - "vector22": [ - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ], - "ownerId": "ryan", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "16", - "name": "test", - "description": "test16 hello", - "vector1": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35 - ], - "vector1b": [ - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35 - ], - "vector2": [ - 16, - 17, - 18, - 19, - 20 - ], - "vector3": [ - 16, - 17, - 18, - 19, - 20 - ], - "vector22": [ - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "17", - "name": "test", - "description": "test17 hello", - "vector1": [ - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36 - ], - "vector1b": [ - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36 - ], - "vector2": [ - 17, - 18, - 19, - 20, - 21 - ], - "vector3": [ - 17, - 18, - 19, - 20, - 21 - ], - "vector22": [ - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "18", - "name": "test", - "description": "test18 hello", - "vector1": [ - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37 - ], - "vector1b": [ - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37 - ], - "vector2": [ - 18, - 19, - 20, - 21, - 22 - ], - "vector3": [ - 18, - 19, - 20, - 21, - 22 - ], - "vector22": [ - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ], - "ownerId": "ryan", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "19", - "name": "test", - "description": "test19 hello", - "vector1": [ - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ], - "vector1b": [ - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ], - "vector2": [ - 19, - 20, - 21, - 22, - 23 - ], - "vector3": [ - 19, - 20, - 21, - 22, - 23 - ], - "vector22": [ - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "20", - "name": "test", - "description": "test20 hello", - "vector1": [ - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ], - "vector1b": [ - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ], - "vector2": [ - 20, - 21, - 22, - 23, - 24 - ], - "vector3": [ - 20, - 21, - 22, - 23, - 24 - ], - "vector22": [ - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49 - ], - "ownerId": "benny", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "21", - "name": "test", - "description": "test21 hello", - "vector1": [ - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ], - "vector1b": [ - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ], - "vector2": [ - 21, - 22, - 23, - 24, - 25 - ], - "vector3": [ - 21, - 22, - 23, - 24, - 25 - ], - "vector22": [ - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50 - ], - "ownerId": "ryan", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "22", - "name": "test", - "description": "test22 hello", - "vector1": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ], - "vector1b": [ - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ], - "vector2": [ - 22, - 23, - 24, - 25, - 26 - ], - "vector3": [ - 22, - 23, - 24, - 25, - 26 - ], - "vector22": [ - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "23", - "name": "test", - "description": "test23 hello", - "vector1": [ - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42 - ], - "vector1b": [ - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42 - ], - "vector2": [ - 23, - 24, - 25, - 26, - 27 - ], - "vector3": [ - 23, - 24, - 25, - 26, - 27 - ], - "vector22": [ - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52 - ], - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "24", - "name": "test", - "description": "test24 hello", - "vector1": [ - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43 - ], - "vector1b": [ - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43 - ], - "vector2": [ - 24, - 25, - 26, - 27, - 28 - ], - "vector3": [ - 24, - 25, - 26, - 27, - 28 - ], - "vector22": [ - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53 - ], - "ownerId": "ryan", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "25", - "name": "test", - "description": "test25 hello", - "vector1": [ - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ], - "vector1b": [ - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ], - "vector2": [ - 25, - 26, - 27, - 28, - 29 - ], - "vector3": [ - 25, - 26, - 27, - 28, - 29 - ], - "vector22": [ - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "26", - "name": "test", - "description": "test26 hello", - "vector1": [ - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45 - ], - "vector1b": [ - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45 - ], - "vector2": [ - 26, - 27, - 28, - 29, - 30 - ], - "vector3": [ - 26, - 27, - 28, - 29, - 30 - ], - "vector22": [ - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "27", - "name": "test", - "description": "test27 hello", - "vector1": [ - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46 - ], - "vector1b": [ - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46 - ], - "vector2": [ - 27, - 28, - 29, - 30, - 31 - ], - "vector3": [ - 27, - 28, - 29, - 30, - 31 - ], - "vector22": [ - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56 - ], - "ownerId": "ryan", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "28", - "name": "test", - "description": "test28 hello", - "vector1": [ - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ], - "vector1b": [ - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ], - "vector2": [ - 28, - 29, - 30, - 31, - 32 - ], - "vector3": [ - 28, - 29, - 30, - 31, - 32 - ], - "vector22": [ - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "29", - "name": "test", - "description": "test29 hello", - "vector1": [ - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48 - ], - "vector1b": [ - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48 - ], - "vector2": [ - 29, - 30, - 31, - 32, - 33 - ], - "vector3": [ - 29, - 30, - 31, - 32, - 33 - ], - "vector22": [ - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "30", - "name": "test", - "description": "test30 hello", - "vector1": [ - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49 - ], - "vector1b": [ - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49 - ], - "vector2": [ - 30, - 31, - 32, - 33, - 34 - ], - "vector3": [ - 30, - 31, - 32, - 33, - 34 - ], - "vector22": [ - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59 - ], - "ownerId": "benny", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "31", - "name": "test", - "description": "test31 hello", - "vector1": [ - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50 - ], - "vector1b": [ - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50 - ], - "vector2": [ - 31, - 32, - 33, - 34, - 35 - ], - "vector3": [ - 31, - 32, - 33, - 34, - 35 - ], - "vector22": [ - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "32", - "name": "test", - "description": "test32 hello", - "vector1": [ - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51 - ], - "vector1b": [ - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51 - ], - "vector2": [ - 32, - 33, - 34, - 35, - 36 - ], - "vector3": [ - 32, - 33, - 34, - 35, - 36 - ], - "vector22": [ - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "33", - "name": "test", - "description": "test33 hello", - "vector1": [ - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52 - ], - "vector1b": [ - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52 - ], - "vector2": [ - 33, - 34, - 35, - 36, - 37 - ], - "vector3": [ - 33, - 34, - 35, - 36, - 37 - ], - "vector22": [ - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62 - ], - "ownerId": "ryan", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "34", - "name": "test", - "description": "test34 hello", - "vector1": [ - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53 - ], - "vector1b": [ - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53 - ], - "vector2": [ - 34, - 35, - 36, - 37, - 38 - ], - "vector3": [ - 34, - 35, - 36, - 37, - 38 - ], - "vector22": [ - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "35", - "name": "test", - "description": "test35 hello", - "vector1": [ - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54 - ], - "vector1b": [ - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54 - ], - "vector2": [ - 35, - 36, - 37, - 38, - 39 - ], - "vector3": [ - 35, - 36, - 37, - 38, - 39 - ], - "vector22": [ - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "36", - "name": "test", - "description": "test36 hello", - "vector1": [ - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55 - ], - "vector1b": [ - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55 - ], - "vector2": [ - 36, - 37, - 38, - 39, - 40 - ], - "vector3": [ - 36, - 37, - 38, - 39, - 40 - ], - "vector22": [ - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ], - "ownerId": "ryan", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "37", - "name": "test", - "description": "test37 hello", - "vector1": [ - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56 - ], - "vector1b": [ - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56 - ], - "vector2": [ - 37, - 38, - 39, - 40, - 41 - ], - "vector3": [ - 37, - 38, - 39, - 40, - 41 - ], - "vector22": [ - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "38", - "name": "test", - "description": "test38 hello", - "vector1": [ - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57 - ], - "vector1b": [ - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57 - ], - "vector2": [ - 38, - 39, - 40, - 41, - 42 - ], - "vector3": [ - 38, - 39, - 40, - 41, - 42 - ], - "vector22": [ - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67 - ], - "ownerId": "sam", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "39", - "name": "test", - "description": "test39 hello", - "vector1": [ - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58 - ], - "vector1b": [ - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58 - ], - "vector2": [ - 39, - 40, - 41, - 42, - 43 - ], - "vector3": [ - 39, - 40, - 41, - 42, - 43 - ], - "vector22": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68 - ], - "ownerId": "ryan", - "category": "pink" - }, - { - "@search.action": "mergeOrUpload", - "id": "40", - "name": "test", - "description": "test40 hello", - "vector1": [ - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59 - ], - "vector1b": [ - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59 - ], - "vector2": [ - 40, - 41, - 42, - 43, - 44 - ], - "vector3": [ - 40, - 41, - 42, - 43, - 44 - ], - "vector22": [ - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69 - ], - "ownerId": "benny", - "category": "green" - }, - { - "@search.action": "mergeOrUpload", - "id": "41", - "name": "test", - "description": "test41 hello", - "vector1": [ - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60 - ], - "vector1b": [ - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60 - ], - "vector2": [ - 41, - 42, - 43, - 44, - 45 - ], - "vector3": [ - 41, - 42, - 43, - 44, - 45 - ], - "vector22": [ - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70 - ], - "ownerId": "sam", - "category": "green" - }, - { - "@search.action": "mergeOrUpload", - "id": "42", - "name": "test", - "description": "test42 hello", - "vector1": [ - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61 - ], - "vector1b": [ - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61 - ], - "vector2": [ - 42, - 43, - 44, - 45, - 46 - ], - "vector3": [ - 42, - 43, - 44, - 45, - 46 - ], - "vector22": [ - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71 - ], - "ownerId": "ryan", - "category": "green" - }, - { - "@search.action": "mergeOrUpload", - "id": "43", - "name": "test", - "description": "test43 hello", - "vector1": [ - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62 - ], - "vector1b": [ - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62 - ], - "vector2": [ - 43, - 44, - 45, - 46, - 47 - ], - "vector3": [ - 43, - 44, - 45, - 46, - 47 - ], - "vector22": [ - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72 - ], - "ownerId": "sam", - "category": "green" - }, - { - "@search.action": "mergeOrUpload", - "id": "44", - "name": "test", - "description": "test44 hello", - "vector1": [ - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63 - ], - "vector1b": [ - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63 - ], - "vector2": [ - 44, - 45, - 46, - 47, - 48 - ], - "vector3": [ - 44, - 45, - 46, - 47, - 48 - ], - "vector22": [ - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73 - ], - "ownerId": "sam", - "category": "green" - }, - { - "@search.action": "mergeOrUpload", - "id": "45", - "name": "test", - "description": "test45 hello", - "vector1": [ - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64 - ], - "vector1b": [ - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64 - ], - "vector2": [ - 45, - 46, - 47, - 48, - 49 - ], - "vector3": [ - 45, - 46, - 47, - 48, - 49 - ], - "vector22": [ - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74 - ], - "ownerId": "ryan", - "category": "orange" - }, - { - "@search.action": "mergeOrUpload", - "id": "46", - "name": "test", - "description": "test46 hello", - "vector1": [ - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ], - "vector1b": [ - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ], - "vector2": [ - 46, - 47, - 48, - 49, - 50 - ], - "vector3": [ - 46, - 47, - 48, - 49, - 50 - ], - "vector22": [ - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75 - ], - "ownerId": "sam", - "category": "orange" - }, - { - "@search.action": "mergeOrUpload", - "id": "47", - "name": "test", - "description": "test47 hello", - "vector1": [ - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66 - ], - "vector1b": [ - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66 - ], - "vector2": [ - 47, - 48, - 49, - 50, - 51 - ], - "vector3": [ - 47, - 48, - 49, - 50, - 51 - ], - "vector22": [ - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76 - ], - "ownerId": "sam", - "category": "orange" - }, - { - "@search.action": "mergeOrUpload", - "id": "no-vectors", - "name": "test", - "description": "no vector", - "ownerId": "sam", - "category": "purple" - }, - { - "@search.action": "mergeOrUpload", - "id": "empty-vectors", - "name": "test", - "description": "no vector", - "ownerId": "sam", - "category": "purple" - } - ] - } - }, - "responses": { - "200": { - "body": { - "value": [ - { - "key": "0", - "status": true, - "statusCode": 201 - }, - { - "key": "1", - "status": true, - "statusCode": 201 - }, - { - "key": "2", - "status": true, - "statusCode": 201 - }, - { - "key": "3", - "status": true, - "statusCode": 201 - }, - { - "key": "4", - "status": true, - "statusCode": 201 - }, - { - "key": "5", - "status": true, - "statusCode": 201 - }, - { - "key": "6", - "status": true, - "statusCode": 201 - }, - { - "key": "7", - "status": true, - "statusCode": 201 - }, - { - "key": "8", - "status": true, - "statusCode": 201 - }, - { - "key": "9", - "status": true, - "statusCode": 201 - }, - { - "key": "10", - "status": true, - "statusCode": 201 - }, - { - "key": "11", - "status": true, - "statusCode": 201 - }, - { - "key": "12", - "status": true, - "statusCode": 201 - }, - { - "key": "13", - "status": true, - "statusCode": 201 - }, - { - "key": "14", - "status": true, - "statusCode": 201 - }, - { - "key": "15", - "status": true, - "statusCode": 201 - }, - { - "key": "16", - "status": true, - "statusCode": 201 - }, - { - "key": "17", - "status": true, - "statusCode": 201 - }, - { - "key": "18", - "status": true, - "statusCode": 201 - }, - { - "key": "19", - "status": true, - "statusCode": 201 - }, - { - "key": "20", - "status": true, - "statusCode": 201 - }, - { - "key": "21", - "status": true, - "statusCode": 201 - }, - { - "key": "22", - "status": true, - "statusCode": 201 - }, - { - "key": "23", - "status": true, - "statusCode": 201 - }, - { - "key": "24", - "status": true, - "statusCode": 201 - }, - { - "key": "25", - "status": true, - "statusCode": 201 - }, - { - "key": "26", - "status": true, - "statusCode": 201 - }, - { - "key": "27", - "status": true, - "statusCode": 201 - }, - { - "key": "28", - "status": true, - "statusCode": 201 - }, - { - "key": "29", - "status": true, - "statusCode": 201 - }, - { - "key": "30", - "status": true, - "statusCode": 201 - }, - { - "key": "31", - "status": true, - "statusCode": 201 - }, - { - "key": "32", - "status": true, - "statusCode": 201 - }, - { - "key": "33", - "status": true, - "statusCode": 201 - }, - { - "key": "34", - "status": true, - "statusCode": 201 - }, - { - "key": "35", - "status": true, - "statusCode": 201 - }, - { - "key": "36", - "status": true, - "statusCode": 201 - }, - { - "key": "37", - "status": true, - "statusCode": 201 - }, - { - "key": "38", - "status": true, - "statusCode": 201 - }, - { - "key": "39", - "status": true, - "statusCode": 201 - }, - { - "key": "40", - "status": true, - "statusCode": 201 - }, - { - "key": "41", - "status": true, - "statusCode": 201 - }, - { - "key": "42", - "status": true, - "statusCode": 201 - }, - { - "key": "43", - "status": true, - "statusCode": 201 - }, - { - "key": "44", - "status": true, - "statusCode": 201 - }, - { - "key": "45", - "status": true, - "statusCode": 201 - }, - { - "key": "46", - "status": true, - "statusCode": 201 - }, - { - "key": "47", - "status": true, - "statusCode": 201 - }, - { - "key": "no-vectors", - "status": true, - "statusCode": 201 - }, - { - "key": "empty-vectors", - "status": true, - "statusCode": 201 - } - ] - } - }, - "207": { - "body": { - "value": [ - { - "key": "0", - "status": true, - "statusCode": 201 - }, - { - "key": "1", - "status": true, - "statusCode": 201 - }, - { - "key": "2", - "status": true, - "statusCode": 201 - }, - { - "key": "3", - "status": true, - "statusCode": 201 - }, - { - "key": "4", - "status": true, - "statusCode": 201 - }, - { - "key": "5", - "status": true, - "statusCode": 201 - }, - { - "key": "6", - "status": true, - "statusCode": 201 - }, - { - "key": "7", - "status": true, - "statusCode": 201 - }, - { - "key": "8", - "status": true, - "statusCode": 201 - }, - { - "key": "9", - "status": true, - "statusCode": 201 - }, - { - "key": "10", - "status": true, - "statusCode": 201 - }, - { - "key": "11", - "status": true, - "statusCode": 201 - }, - { - "key": "12", - "status": true, - "statusCode": 201 - }, - { - "key": "13", - "status": true, - "statusCode": 201 - }, - { - "key": "14", - "status": true, - "statusCode": 201 - }, - { - "key": "15", - "status": true, - "statusCode": 201 - }, - { - "key": "16", - "status": true, - "statusCode": 201 - }, - { - "key": "17", - "status": true, - "statusCode": 201 - }, - { - "key": "18", - "status": true, - "statusCode": 201 - }, - { - "key": "19", - "status": true, - "statusCode": 201 - }, - { - "key": "20", - "status": true, - "statusCode": 201 - }, - { - "key": "21", - "status": true, - "statusCode": 201 - }, - { - "key": "22", - "status": true, - "statusCode": 201 - }, - { - "key": "23", - "status": true, - "statusCode": 201 - }, - { - "key": "24", - "status": true, - "statusCode": 201 - }, - { - "key": "25", - "status": true, - "statusCode": 201 - }, - { - "key": "26", - "status": true, - "statusCode": 201 - }, - { - "key": "27", - "status": true, - "statusCode": 201 - }, - { - "key": "28", - "status": true, - "statusCode": 201 - }, - { - "key": "29", - "status": true, - "statusCode": 201 - }, - { - "key": "30", - "status": true, - "statusCode": 201 - }, - { - "key": "31", - "status": true, - "statusCode": 201 - }, - { - "key": "32", - "status": true, - "statusCode": 201 - }, - { - "key": "33", - "status": true, - "statusCode": 201 - }, - { - "key": "34", - "status": true, - "statusCode": 201 - }, - { - "key": "35", - "status": true, - "statusCode": 201 - }, - { - "key": "36", - "status": true, - "statusCode": 201 - }, - { - "key": "37", - "status": true, - "statusCode": 201 - }, - { - "key": "38", - "status": true, - "statusCode": 201 - }, - { - "key": "39", - "status": true, - "statusCode": 201 - }, - { - "key": "40", - "status": true, - "statusCode": 201 - }, - { - "key": "41", - "status": true, - "statusCode": 201 - }, - { - "key": "42", - "status": true, - "statusCode": 201 - }, - { - "key": "43", - "status": true, - "statusCode": 201 - }, - { - "key": "44", - "status": true, - "statusCode": 201 - }, - { - "key": "45", - "status": true, - "statusCode": 201 - }, - { - "key": "46", - "status": true, - "statusCode": 201 - }, - { - "key": "47", - "status": true, - "statusCode": 201 - }, - { - "key": "no-vectors", - "status": true, - "statusCode": 201 - }, - { - "key": "empty-vectors", - "status": true, - "statusCode": 201 - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json deleted file mode 100644 index cd69eabd7e45..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsGet.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "operationId": "DocumentsOperations_searchGet", - "title": "SearchIndexSearchDocumentsGet", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-11-01-preview", - "$count": true, - "facet": [ - "category,count:10,sort:count" - ], - "$filter": "rating gt 10", - "highlight": [ - "title" - ], - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "$orderby": [ - "search.score() desc", - "rating desc" - ], - "queryType": "simple", - "sessionId": "mysessionid", - "scoringStatistics": "global", - "scoringParameters": [ - "currentLocation--122.123,44.77233" - ], - "scoringProfile": "sp", - "search": "nice hotels", - "searchFields": [ - "title", - "description" - ], - "searchMode": "any", - "$select": [ - "docId", - "title", - "description" - ], - "$skip": 100, - "$top": 10 - }, - "responses": { - "200": { - "body": { - "@odata.count": 25, - "@search.coverage": 80, - "@search.facets": { - "category": [ - { - "count": 1, - "value": "Economy" - }, - { - "count": 1, - "value": "Luxury" - } - ] - }, - "value": [ - { - "@search.score": 1.50, - "@search.highlights": { - "title": [ - "Nice Hotel" - ] - }, - "description": "Cheapest hotel in town", - "docId": "1", - "title": "Nice Hotel" - }, - { - "@search.score": 0.70, - "@search.highlights": { - "title": [ - "Fancy Hotel" - ] - }, - "description": "Best hotel in town", - "docId": "2", - "title": "Fancy Hotel" - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json deleted file mode 100644 index c7659d59e5b2..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsPost.json +++ /dev/null @@ -1,220 +0,0 @@ -{ - "operationId": "DocumentsOperations_searchPost", - "title": "SearchIndexSearchDocumentsPost", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "preview-test", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "searchRequest": { - "count": true, - "facets": [ - "ownerId" - ], - "filter": "category eq 'purple' or category eq 'pink'", - "highlight": "category", - "highlightPostTag": "", - "highlightPreTag": "", - "orderby": "id desc", - "queryType": "simple", - "scoringStatistics": "global", - "sessionId": "mysessionid", - "scoringParameters": [ - "categoryTag:desiredCategoryValue" - ], - "scoringProfile": "stringFieldBoost", - "search": "purple", - "searchFields": "id,name,description,category,ownerId", - "searchMode": "any", - "select": "id,name,description,category,ownerId", - "skip": 0, - "top": 10, - "vectorQueries": [ - { - "vector": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9 - ], - "kind": "vector", - "k": 50, - "fields": "vector22, vector1b", - "oversampling": 20, - "weight": 1, - "threshold": { - "value": 0.984, - "kind": "vectorSimilarity" - }, - "filterOverride": "ownerId eq 'sam'" - } - ], - "vectorFilterMode": "preFilter", - "hybridSearch": { - "maxTextRecallSize": 100, - "countAndFacetMode": "countAllResults" - } - } - }, - "responses": { - "200": { - "body": { - "@odata.count": 27, - "@search.facets": { - "ownerId": [ - { - "count": 16, - "value": "sam" - }, - { - "count": 8, - "value": "ryan" - }, - { - "count": 3, - "value": "benny" - } - ] - }, - "value": [ - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "no-vectors", - "name": "test", - "description": "no vector", - "category": "purple", - "ownerId": "sam" - }, - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "empty-vectors", - "name": "test", - "description": "no vector", - "category": "purple", - "ownerId": "sam" - }, - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "9", - "name": "test", - "description": "test9 hello", - "category": "purple", - "ownerId": "ryan" - }, - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "8", - "name": "test", - "description": "test8 hello", - "category": "purple", - "ownerId": "sam" - }, - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "7", - "name": "test", - "description": "test7 hello", - "category": "purple", - "ownerId": "sam" - }, - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "6", - "name": "test", - "description": "test6 hello", - "category": "purple", - "ownerId": "ryan" - }, - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "5", - "name": "test", - "description": "test5 hello", - "category": "purple", - "ownerId": "sam" - }, - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "4", - "name": "test", - "description": "test4 hello", - "category": "purple", - "ownerId": "sam" - }, - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "3", - "name": "test", - "description": "test3 hello", - "category": "purple", - "ownerId": "ryan" - }, - { - "@search.score": 1.0, - "@search.highlights": { - "category": [ - "purple" - ] - }, - "id": "24", - "name": "test", - "description": "test24 hello", - "category": "purple", - "ownerId": "ryan" - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json deleted file mode 100644 index 59fade17b657..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticGet.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "operationId": "DocumentsOperations_searchGet", - "title": "SearchIndexSearchDocumentsSemanticGet", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-11-01-preview", - "$count": true, - "highlightPostTag": "", - "highlightPreTag": "", - "queryType": "semantic", - "search": "how do clouds form", - "semanticConfiguration": "my-semantic-config", - "answers": "extractive|count-3", - "captions": "extractive|highlight-true", - "semanticErrorHandling": "partial", - "semanticMaxWaitInMilliseconds": 780 - }, - "responses": { - "200": { - "body": { - "@odata.count": 25, - "@search.answers": [ - { - "key": "4123", - "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", - "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", - "score": 0.94639826 - } - ], - "value": [ - { - "@search.score": 0.5479723, - "@search.rerankerScore": 1.0321671911515296, - "@search.captions": [ - { - "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", - "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." - } - ], - "id": "4123", - "title": "Earth Atmosphere", - "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", - "locations": [ - "Pacific Northwest", - "North America", - "Vancouver" - ] - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json deleted file mode 100644 index 2fd4deb936f2..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSearchDocumentsSemanticPost.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "operationId": "DocumentsOperations_searchPost", - "title": "SearchIndexSearchDocumentsSemanticPost", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-11-01-preview", - "searchRequest": { - "count": true, - "highlightPostTag": "", - "highlightPreTag": "", - "queryType": "semantic", - "search": "how do clouds form", - "semanticConfiguration": "my-semantic-config", - "answers": "extractive|count-3", - "captions": "extractive|highlight-true", - "semanticErrorHandling": "partial", - "semanticMaxWaitInMilliseconds": 780 - } - }, - "responses": { - "200": { - "body": { - "@odata.count": 25, - "@search.answers": [ - { - "key": "4123", - "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", - "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", - "score": 0.94639826 - } - ], - "@search.nextPageParameters": { - "count": true, - "highlightPostTag": "", - "highlightPreTag": "", - "queryType": "semantic", - "search": "how do clouds form", - "semanticConfiguration": "my-semantic-config", - "answers": "extractive|count-3", - "captions": "extractive|highlight-true", - "semanticErrorHandling": "partial", - "semanticMaxWaitInMilliseconds": 780, - "skip": 2, - "top": 8 - }, - "value": [ - { - "@search.score": 0.5479723, - "@search.rerankerScore": 1.0321671911515296, - "@search.captions": [ - { - "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", - "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." - } - ], - "id": "4123", - "title": "Earth Atmosphere", - "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", - "locations": [ - "Pacific Northwest", - "North America", - "Vancouver" - ] - } - ], - "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-11-01-preview" - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json deleted file mode 100644 index be7d519e5f34..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsGet.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "operationId": "DocumentsOperations_suggestGet", - "title": "SearchIndexSuggestDocumentsGet", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-11-01-preview", - "$filter": "rating gt 10", - "fuzzy": false, - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "$orderby": [ - "search.score() desc", - "rating desc" - ], - "search": "hote", - "searchFields": [ - "title" - ], - "suggesterName": "sg", - "$select": [ - "docId", - "title", - "description" - ], - "$top": 10 - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@search.text": "Nice Hotel", - "description": "Cheapest hotel in town", - "docId": "1", - "title": "Nice Hotel" - }, - { - "@search.text": "Fancy Hotel", - "description": "Best hotel in town", - "docId": "2", - "title": "Fancy Hotel" - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json deleted file mode 100644 index 6a3f93606b55..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchIndexSuggestDocumentsPost.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "operationId": "DocumentsOperations_suggestPost", - "title": "SearchIndexSuggestDocumentsPost", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "preview-test", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "suggestRequest": { - "filter": "ownerId eq 'sam' and id lt '15'", - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "orderby": "id desc", - "search": "p", - "searchFields": "category", - "select": "id,name,category,ownerId", - "suggesterName": "sg", - "top": 10 - } - }, - "responses": { - "200": { - "body": { - "@search.coverage": 100.0, - "value": [ - { - "@search.text": "purple", - "id": "14", - "name": "test", - "category": "purple", - "ownerId": "sam" - }, - { - "@search.text": "purple", - "id": "13", - "name": "test", - "category": "purple", - "ownerId": "sam" - }, - { - "@search.text": "purple", - "id": "11", - "name": "test", - "category": "purple", - "ownerId": "sam" - }, - { - "@search.text": "purple", - "id": "1", - "name": "test", - "category": "purple", - "ownerId": "sam" - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateAlias.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateAlias.json deleted file mode 100644 index bc0e3d0410d0..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateAlias.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "operationId": "Aliases_Create", - "title": "SearchServiceCreateAlias", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "alias": { - "name": "tempalias", - "indexes": [ - "preview-test" - ] - } - }, - "responses": { - "201": { - "body": { - "name": "tempalias", - "indexes": [ - "preview-test" - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json deleted file mode 100644 index ec53dfc0dbd2..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateDataSource.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "operationId": "DataSourcesOperations_create", - "title": "SearchServiceCreateDataSource", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "dataSource": { - "name": "tempdatasource", - "description": "My Azure Blob data source.", - "type": "azureblob", - "credentials": { - "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " - }, - "container": { - "name": "doc-extraction-skillset", - "query": "E2E_Dsat" - }, - "dataChangeDetectionPolicy": { - "highWaterMarkColumnName": "metadata_storage_last_modified", - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" - }, - "dataDeletionDetectionPolicy": { - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true", - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "201": { - "body": { - "name": "tempdatasource", - "description": "My Azure Blob data source.", - "type": "azureblob", - "credentials": { - "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " - }, - "container": { - "name": "doc-extraction-skillset", - "query": "E2E_Dsat" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "metadata_storage_last_modified" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json deleted file mode 100644 index b7806567add4..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndex.json +++ /dev/null @@ -1,582 +0,0 @@ -{ - "operationId": "IndexesOperations_create", - "title": "SearchServiceCreateIndex", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "index": { - "name": "temp-preview-test", - "fields": [ - { - "name": "id", - "type": "Edm.String", - "key": true, - "sortable": true - }, - { - "name": "vector1", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 20, - "vectorSearchProfile": "config1" - }, - { - "name": "vector1b", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 10, - "vectorSearchProfile": "config2" - }, - { - "name": "vector2", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 5, - "vectorSearchProfile": "config3" - }, - { - "name": "vector3", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 5, - "vectorSearchProfile": "config3" - }, - { - "name": "vector22", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 10, - "vectorSearchProfile": "config2" - }, - { - "name": "name", - "type": "Edm.String", - "retrievable": true, - "searchable": true, - "filterable": true, - "sortable": true, - "facetable": true, - "analyzer": "en.lucene" - }, - { - "name": "description", - "type": "Edm.String", - "retrievable": true, - "searchable": true, - "filterable": true, - "sortable": true, - "facetable": true, - "analyzer": "standard.lucene" - }, - { - "name": "category", - "type": "Edm.String", - "retrievable": true, - "searchable": true, - "filterable": true, - "sortable": true, - "facetable": true, - "analyzer": "en.lucene" - }, - { - "name": "ownerId", - "type": "Edm.String", - "retrievable": true, - "searchable": true, - "filterable": true, - "sortable": true, - "facetable": true, - "analyzer": "en.lucene" - } - ], - "scoringProfiles": [ - { - "name": "stringFieldBoost", - "text": { - "weights": { - "name": 3, - "description": 1, - "category": 2, - "ownerId": 1 - } - }, - "functions": [ - { - "tag": { - "tagsParameter": "categoryTag" - }, - "type": "tag", - "fieldName": "category", - "boost": 2 - } - ] - } - ], - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "category", - "ownerId" - ] - } - ], - "analyzers": [ - { - "tokenizer": "standard_v2", - "tokenFilters": [ - "common_grams" - ], - "charFilters": [ - "html_strip" - ], - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "name": "tagsAnalyzer" - } - ], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "normalizers": [], - "semantic": {}, - "vectorSearch": { - "profiles": [ - { - "name": "config1", - "algorithm": "cosine", - "vectorizer": "openai", - "compression": "mySQ8" - }, - { - "name": "config2", - "algorithm": "euclidean", - "vectorizer": "custom-web-api", - "compression": "mySQ8" - }, - { - "name": "config3", - "algorithm": "dotProduct", - "vectorizer": "custom-web-api", - "compression": "myBQC" - } - ], - "algorithms": [ - { - "hnswParameters": { - "metric": "cosine" - }, - "name": "cosine", - "kind": "hnsw" - }, - { - "hnswParameters": { - "metric": "euclidean" - }, - "name": "euclidean", - "kind": "hnsw" - }, - { - "hnswParameters": { - "metric": "dotProduct" - }, - "name": "dotProduct", - "kind": "hnsw" - } - ], - "vectorizers": [ - { - "azureOpenAIParameters": { - "resourceUri": "https://test-sample.openai.azure.com/", - "deploymentId": "model", - "apiKey": "api-key", - "modelName": "text-embedding-3-large" - }, - "name": "openai", - "kind": "azureOpenAI" - }, - { - "customWebApiParameters": { - "uri": "https://my-custom-endpoint.org/", - "httpHeaders": { - "header1": "value1", - "header2": "value2" - }, - "httpMethod": "POST", - "timeout": "PT1M", - "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", - "authIdentity": { - "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" - } - }, - "name": "custom-web-api", - "kind": "customWebApi" - }, - { - "amlParameters": { - "uri": "https://my-custom-endpoint.org/", - "resourceId": "aml resource id", - "timeout": "PT1M", - "region": "aml region", - "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" - }, - "name": "aml", - "kind": "aml" - } - ], - "compressions": [ - { - "scalarQuantizationParameters": { - "quantizedDataType": "int8" - }, - "name": "mySQ8", - "kind": "scalarQuantization", - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10, - "rescoreStorageMethod": "preserveOriginals" - }, - "truncationDimension": 2 - }, - { - "name": "myBQC", - "kind": "binaryQuantization", - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10, - "rescoreStorageMethod": "preserveOriginals" - }, - "truncationDimension": 2 - } - ] - } - } - }, - "responses": { - "201": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "temp-preview-test", - "fields": [ - { - "name": "id", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": true, - "synonymMaps": [] - }, - { - "name": "vector1", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 20, - "vectorSearchProfile": "config1", - "synonymMaps": [] - }, - { - "name": "vector1b", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "vector2", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector3", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector22", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "name", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "standard.lucene", - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "ownerId", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "stringFieldBoost", - "functionAggregation": "sum", - "text": { - "weights": { - "name": 3.0, - "description": 1.0, - "category": 2.0, - "ownerId": 1.0 - } - }, - "functions": [ - { - "fieldName": "category", - "interpolation": "linear", - "type": "tag", - "boost": 2.0, - "tag": { - "tagsParameter": "categoryTag" - } - } - ] - } - ], - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "category", - "ownerId" - ] - } - ], - "analyzers": [ - { - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "name": "tagsAnalyzer", - "tokenizer": "standard_v2", - "tokenFilters": [ - "common_grams" - ], - "charFilters": [ - "html_strip" - ] - } - ], - "normalizers": [], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "similarity": { - "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" - }, - "semantic": { - "configurations": [] - }, - "vectorSearch": { - "algorithms": [ - { - "name": "cosine", - "kind": "hnsw", - "hnswParameters": { - "metric": "cosine", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "euclidean", - "kind": "hnsw", - "hnswParameters": { - "metric": "euclidean", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "dotProduct", - "kind": "hnsw", - "hnswParameters": { - "metric": "dotProduct", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - } - ], - "profiles": [ - { - "name": "config1", - "algorithm": "cosine", - "vectorizer": "openai", - "compression": "mySQ8" - }, - { - "name": "config2", - "algorithm": "euclidean", - "vectorizer": "custom-web-api", - "compression": "mySQ8" - }, - { - "name": "config3", - "algorithm": "dotProduct", - "vectorizer": "custom-web-api", - "compression": "myBQC" - } - ], - "vectorizers": [ - { - "name": "openai", - "kind": "azureOpenAI", - "azureOpenAIParameters": { - "resourceUri": "https://test-sample.openai.azure.com", - "deploymentId": "model", - "apiKey": "api-key", - "modelName": "text-embedding-3-large" - } - }, - { - "name": "custom-web-api", - "kind": "customWebApi", - "customWebApiParameters": { - "httpMethod": "POST", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", - "httpHeaders": { - "header1": "value1", - "header2": "value2" - }, - "authIdentity": { - "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" - } - } - }, - { - "name": "aml", - "kind": "aml", - "amlParameters": { - "resourceId": "aml resource id", - "region": "aml region", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" - } - } - ], - "compressions": [ - { - "name": "mySQ8", - "kind": "scalarQuantization", - "truncationDimension": 2, - "scalarQuantizationParameters": { - "quantizedDataType": "int8" - }, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - }, - { - "name": "myBQC", - "kind": "binaryQuantization", - "truncationDimension": 2, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - } - ] - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json deleted file mode 100644 index a04be6b45bb0..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateIndexer.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "operationId": "IndexersOperations_create", - "title": "SearchServiceCreateIndexer", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "indexer": { - "name": "myindexer", - "description": "Description of the indexer", - "dataSourceName": "mydocdbdatasource", - "skillsetName": "myskillset", - "targetIndexName": "preview-test", - "schedule": { - "interval": "P1D" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5, - "configuration": { - "parsingMode": "markdown", - "markdownParsingSubmode": "oneToMany" - } - }, - "fieldMappings": [], - "outputFieldMappings": [], - "disabled": false, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "201": { - "body": { - "name": "myindexer", - "description": "Description of the indexer", - "dataSourceName": "mydocdbdatasource", - "skillsetName": "myskillset", - "targetIndexName": "preview-test", - "disabled": false, - "schedule": { - "interval": "P1D", - "startTime": "2024-06-06T00:01:50.265Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5, - "configuration": { - "parsingMode": "markdown", - "markdownParsingSubmode": "oneToMany" - } - }, - "fieldMappings": [], - "outputFieldMappings": [], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateAlias.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateAlias.json deleted file mode 100644 index 67ec8b97cf71..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateAlias.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "operationId": "Aliases_CreateOrUpdate", - "title": "SearchServiceCreateOrUpdateAlias", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "aliasName": "myalias", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null, - "Prefer": "return=representation", - "alias": { - "name": "myalias", - "indexes": [ - "preview-test" - ] - } - }, - "responses": { - "200": { - "body": { - "name": "myalias", - "indexes": [ - "preview-test" - ] - } - }, - "201": { - "body": { - "name": "myalias", - "indexes": [ - "preview-test" - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json deleted file mode 100644 index 613864f157fe..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateDataSource.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "operationId": "DataSourcesOperations_createOrUpdate", - "title": "SearchServiceCreateOrUpdateDataSource", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "dataSourceName": "tempdatasource", - "api-version": "2024-11-01-preview", - "ignoreResetRequirements": null, - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null, - "Prefer": "return=representation", - "dataSource": { - "name": "tempdatasource", - "description": "My Azure Blob data source.", - "type": "azureblob", - "credentials": { - "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " - }, - "container": { - "name": "doc-extraction-skillset", - "query": "E2E_Dsat" - }, - "dataChangeDetectionPolicy": { - "highWaterMarkColumnName": "metadata_storage_last_modified", - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" - }, - "dataDeletionDetectionPolicy": { - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true", - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "200": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "tempdatasource", - "description": "My Azure Blob data source.", - "type": "azureblob", - "credentials": { - "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " - }, - "container": { - "name": "doc-extraction-skillset", - "query": "E2E_Dsat" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "metadata_storage_last_modified" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "201": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "tempdatasource", - "description": "My Azure Blob data source.", - "type": "azureblob", - "credentials": { - "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " - }, - "container": { - "name": "doc-extraction-skillset", - "query": "E2E_Dsat" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "metadata_storage_last_modified" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json deleted file mode 100644 index 9233f28fa94f..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndex.json +++ /dev/null @@ -1,904 +0,0 @@ -{ - "operationId": "IndexesOperations_createOrUpdate", - "title": "SearchServiceCreateOrUpdateIndex", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "temp-preview-test", - "allowIndexDowntime": null, - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null, - "Prefer": "return=representation", - "index": { - "name": "temp-preview-test", - "fields": [ - { - "name": "id", - "type": "Edm.String", - "key": true, - "sortable": true - }, - { - "name": "vector1", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 20, - "vectorSearchProfile": "config1" - }, - { - "name": "vector1b", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 10, - "vectorSearchProfile": "config2" - }, - { - "name": "vector2", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 5, - "vectorSearchProfile": "config3" - }, - { - "name": "vector3", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 5, - "vectorSearchProfile": "config3" - }, - { - "name": "vector22", - "type": "Collection(Edm.Single)", - "retrievable": true, - "searchable": true, - "dimensions": 10, - "vectorSearchProfile": "config2" - }, - { - "name": "name", - "type": "Edm.String", - "retrievable": true, - "searchable": true, - "filterable": true, - "sortable": true, - "facetable": true, - "analyzer": "en.lucene" - }, - { - "name": "description", - "type": "Edm.String", - "retrievable": true, - "searchable": true, - "filterable": true, - "sortable": true, - "facetable": true, - "analyzer": "standard.lucene" - }, - { - "name": "category", - "type": "Edm.String", - "retrievable": true, - "searchable": true, - "filterable": true, - "sortable": true, - "facetable": true, - "analyzer": "en.lucene" - }, - { - "name": "ownerId", - "type": "Edm.String", - "retrievable": true, - "searchable": true, - "filterable": true, - "sortable": true, - "facetable": true, - "analyzer": "en.lucene" - } - ], - "scoringProfiles": [ - { - "name": "stringFieldBoost", - "text": { - "weights": { - "name": 3, - "description": 1, - "category": 2, - "ownerId": 1 - } - }, - "functions": [ - { - "tag": { - "tagsParameter": "categoryTag" - }, - "type": "tag", - "fieldName": "category", - "boost": 2 - } - ] - } - ], - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "category", - "ownerId" - ] - } - ], - "analyzers": [ - { - "tokenizer": "standard_v2", - "tokenFilters": [ - "common_grams" - ], - "charFilters": [ - "html_strip" - ], - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "name": "tagsAnalyzer" - } - ], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "normalizers": [], - "semantic": {}, - "vectorSearch": { - "profiles": [ - { - "name": "config1", - "algorithm": "cosine", - "vectorizer": "openai", - "compression": "mySQ8" - }, - { - "name": "config2", - "algorithm": "euclidean", - "vectorizer": "custom-web-api", - "compression": "mySQ8" - }, - { - "name": "config3", - "algorithm": "dotProduct", - "vectorizer": "custom-web-api", - "compression": "myBQC" - } - ], - "algorithms": [ - { - "hnswParameters": { - "metric": "cosine" - }, - "name": "cosine", - "kind": "hnsw" - }, - { - "hnswParameters": { - "metric": "euclidean" - }, - "name": "euclidean", - "kind": "hnsw" - }, - { - "hnswParameters": { - "metric": "dotProduct" - }, - "name": "dotProduct", - "kind": "hnsw" - } - ], - "vectorizers": [ - { - "azureOpenAIParameters": { - "resourceUri": "https://test-sample.openai.azure.com/", - "deploymentId": "model", - "apiKey": "api-key", - "modelName": "text-embedding-3-large" - }, - "name": "openai", - "kind": "azureOpenAI" - }, - { - "customWebApiParameters": { - "uri": "https://my-custom-endpoint.org/", - "httpHeaders": { - "header1": "value1", - "header2": "value2" - }, - "httpMethod": "POST", - "timeout": "PT1M", - "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", - "authIdentity": { - "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" - } - }, - "name": "custom-web-api", - "kind": "customWebApi" - }, - { - "amlParameters": { - "uri": "https://my-custom-endpoint.org/", - "resourceId": "aml resource id", - "timeout": "PT1M", - "region": "aml region", - "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" - }, - "name": "aml", - "kind": "aml" - } - ], - "compressions": [ - { - "scalarQuantizationParameters": { - "quantizedDataType": "int8" - }, - "name": "mySQ8", - "kind": "scalarQuantization", - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10, - "rescoreStorageMethod": "preserveOriginals" - }, - "truncationDimension": 2 - }, - { - "name": "myBQC", - "kind": "binaryQuantization", - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10, - "rescoreStorageMethod": "preserveOriginals" - }, - "truncationDimension": 2 - } - ] - } - } - }, - "responses": { - "200": { - "body": { - "name": "temp-preview-test", - "fields": [ - { - "name": "id", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": true, - "synonymMaps": [] - }, - { - "name": "vector1", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 20, - "vectorSearchProfile": "config1", - "synonymMaps": [] - }, - { - "name": "vector1b", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "vector2", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector3", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector22", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "name", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "standard.lucene", - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "ownerId", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "stringFieldBoost", - "functionAggregation": "sum", - "text": { - "weights": { - "name": 3.0, - "description": 1.0, - "category": 2.0, - "ownerId": 1.0 - } - }, - "functions": [ - { - "fieldName": "category", - "interpolation": "linear", - "type": "tag", - "boost": 2.0, - "tag": { - "tagsParameter": "categoryTag" - } - } - ] - } - ], - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "category", - "ownerId" - ] - } - ], - "analyzers": [ - { - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "name": "tagsAnalyzer", - "tokenizer": "standard_v2", - "tokenFilters": [ - "common_grams" - ], - "charFilters": [ - "html_strip" - ] - } - ], - "normalizers": [], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "similarity": { - "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" - }, - "semantic": { - "configurations": [] - }, - "vectorSearch": { - "algorithms": [ - { - "name": "cosine", - "kind": "hnsw", - "hnswParameters": { - "metric": "cosine", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "euclidean", - "kind": "hnsw", - "hnswParameters": { - "metric": "euclidean", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "dotProduct", - "kind": "hnsw", - "hnswParameters": { - "metric": "dotProduct", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - } - ], - "profiles": [ - { - "name": "config1", - "algorithm": "cosine", - "vectorizer": "openai", - "compression": "mySQ8" - }, - { - "name": "config2", - "algorithm": "euclidean", - "vectorizer": "custom-web-api", - "compression": "mySQ8" - }, - { - "name": "config3", - "algorithm": "dotProduct", - "vectorizer": "custom-web-api", - "compression": "myBQC" - } - ], - "vectorizers": [ - { - "name": "openai", - "kind": "azureOpenAI", - "azureOpenAIParameters": { - "resourceUri": "https://test-sample.openai.azure.com", - "deploymentId": "model", - "apiKey": "api-key", - "modelName": "text-embedding-3-large" - } - }, - { - "name": "custom-web-api", - "kind": "customWebApi", - "customWebApiParameters": { - "httpMethod": "POST", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", - "httpHeaders": { - "header1": "value1", - "header2": "value2" - }, - "authIdentity": { - "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" - } - } - }, - { - "name": "aml", - "kind": "aml", - "amlParameters": { - "resourceId": "aml resource id", - "region": "aml region", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" - } - } - ], - "compressions": [ - { - "name": "mySQ8", - "kind": "scalarQuantization", - "truncationDimension": 2, - "scalarQuantizationParameters": { - "quantizedDataType": "int8" - }, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - }, - { - "name": "myBQC", - "kind": "binaryQuantization", - "truncationDimension": 2, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - } - ] - } - } - }, - "201": { - "body": { - "name": "temp-preview-test", - "fields": [ - { - "name": "id", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": true, - "synonymMaps": [] - }, - { - "name": "vector1", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 20, - "vectorSearchProfile": "config1", - "synonymMaps": [] - }, - { - "name": "vector1b", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "vector2", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector3", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector22", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "name", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "standard.lucene", - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "ownerId", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "stringFieldBoost", - "functionAggregation": "sum", - "text": { - "weights": { - "name": 3.0, - "description": 1.0, - "category": 2.0, - "ownerId": 1.0 - } - }, - "functions": [ - { - "fieldName": "category", - "interpolation": "linear", - "type": "tag", - "boost": 2.0, - "tag": { - "tagsParameter": "categoryTag" - } - } - ] - } - ], - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "category", - "ownerId" - ] - } - ], - "analyzers": [ - { - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "name": "tagsAnalyzer", - "tokenizer": "standard_v2", - "tokenFilters": [ - "common_grams" - ], - "charFilters": [ - "html_strip" - ] - } - ], - "normalizers": [], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "similarity": { - "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" - }, - "semantic": { - "configurations": [] - }, - "vectorSearch": { - "algorithms": [ - { - "name": "cosine", - "kind": "hnsw", - "hnswParameters": { - "metric": "cosine", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "euclidean", - "kind": "hnsw", - "hnswParameters": { - "metric": "euclidean", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "dotProduct", - "kind": "hnsw", - "hnswParameters": { - "metric": "dotProduct", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - } - ], - "profiles": [ - { - "name": "config1", - "algorithm": "cosine", - "vectorizer": "openai", - "compression": "mySQ8" - }, - { - "name": "config2", - "algorithm": "euclidean", - "vectorizer": "custom-web-api", - "compression": "mySQ8" - }, - { - "name": "config3", - "algorithm": "dotProduct", - "vectorizer": "custom-web-api", - "compression": "myBQC" - } - ], - "vectorizers": [ - { - "name": "openai", - "kind": "azureOpenAI", - "azureOpenAIParameters": { - "resourceUri": "https://test-sample.openai.azure.com", - "deploymentId": "model", - "apiKey": "api-key", - "modelName": "text-embedding-3-large" - } - }, - { - "name": "custom-web-api", - "kind": "customWebApi", - "customWebApiParameters": { - "httpMethod": "POST", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", - "httpHeaders": { - "header1": "value1", - "header2": "value2" - }, - "authIdentity": { - "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" - } - } - }, - { - "name": "aml", - "kind": "aml", - "amlParameters": { - "resourceId": "aml resource id", - "region": "aml region", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" - } - } - ], - "compressions": [ - { - "name": "mySQ8", - "kind": "scalarQuantization", - "truncationDimension": 2, - "scalarQuantizationParameters": { - "quantizedDataType": "int8" - }, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - }, - { - "name": "myBQC", - "kind": "binaryQuantization", - "truncationDimension": 2, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - } - ] - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json deleted file mode 100644 index 2091b4c25533..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateIndexer.json +++ /dev/null @@ -1,115 +0,0 @@ -{ - "operationId": "IndexersOperations_createOrUpdate", - "title": "SearchServiceCreateOrUpdateIndexer", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-11-01-preview", - "ignoreResetRequirements": null, - "disableCacheReprocessingChangeDetection": null, - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null, - "Prefer": "return=representation", - "indexer": { - "name": "myindexer", - "description": "Description of the indexer", - "dataSourceName": "mydocdbdatasource", - "skillsetName": "myskillset", - "targetIndexName": "preview-test", - "schedule": { - "interval": "P1D" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5, - "configuration": { - "parsingMode": "markdown", - "markdownParsingSubmode": "oneToOne" - } - }, - "fieldMappings": [], - "outputFieldMappings": [], - "disabled": false, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "201": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "myindexer", - "description": "Description of the indexer", - "dataSourceName": "mydocdbdatasource", - "skillsetName": "myskillset", - "targetIndexName": "preview-test", - "disabled": false, - "schedule": { - "interval": "P1D", - "startTime": "2024-06-06T00:01:50.265Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5, - "configuration": { - "parsingMode": "markdown", - "markdownParsingSubmode": "oneToOne" - } - }, - "fieldMappings": [], - "outputFieldMappings": [], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "200": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "myindexer", - "description": "Description of the indexer", - "dataSourceName": "mydocdbdatasource", - "skillsetName": "myskillset", - "targetIndexName": "preview-test", - "disabled": false, - "schedule": { - "interval": "P1D", - "startTime": "2024-06-06T00:01:50.265Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5, - "configuration": { - "parsingMode": "markdown", - "markdownParsingSubmode": "oneToOne" - } - }, - "fieldMappings": [], - "outputFieldMappings": [], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json deleted file mode 100644 index 79c4baf893d1..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSkillset.json +++ /dev/null @@ -1,440 +0,0 @@ -{ - "operationId": "SkillsetsOperations_createOrUpdate", - "title": "SearchServiceCreateOrUpdateSkillset", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "skillsetName": "tempskillset", - "api-version": "2024-11-01-preview", - "ignoreResetRequirements": null, - "disableCacheReprocessingChangeDetection": null, - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null, - "Prefer": "return=representation", - "skillset": { - "name": "tempskillset", - "description": "Skillset for extracting entities and more", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "skill2", - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "countryHint", - "source": "/document/countryHint" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "textSplitMode": "pages", - "maximumPageLength": 4000, - "unit": "azureOpenAITokens", - "azureOpenAITokenizerParameters": { - "encoderModelName": "cl100k_base", - "allowedSpecialTokens": [ - "[START]", - "[END]" - ] - }, - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "skill3", - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "skill4", - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ] - }, - { - "uri": "https://contoso.example.org/", - "httpMethod": "POST", - "timeout": "PT5S", - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "skill5", - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ] - }, - { - "outputMode": "oneToMany", - "markdownHeaderDepth": "h3", - "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", - "name": "docIntelligenceLayoutSkill", - "context": "/document", - "inputs": [ - { - "name": "file_data", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "markdown_document", - "targetName": "markdown_document" - } - ] - } - ], - "cognitiveServices": { - "key": "myKey", - "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com", - "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "200": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "tempskillset", - "description": "Skillset for extracting entities and more", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "skill2", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "countryHint", - "source": "/document/countryHint", - "inputs": [] - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "skill3", - "textSplitMode": "pages", - "maximumPageLength": 4000, - "unit": "azureOpenAITokens", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "azureOpenAITokenizerParameters": { - "encoderModelName": "cl100k_base", - "allowedSpecialTokens": [ - "[START]", - "[END]" - ] - } - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "skill4", - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "skill5", - "uri": "https://contoso.example.org/", - "httpMethod": "POST", - "timeout": "PT5S", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", - "name": "docIntelligenceLayoutSkill", - "context": "/document", - "outputMode": "oneToMany", - "markdownHeaderDepth": "h3", - "inputs": [ - { - "name": "file_data", - "source": "/document/content", - "inputs": [] - } - ], - "outputs": [ - { - "name": "markdown_document", - "targetName": "markdown_document" - } - ] - } - ], - "cognitiveServices": { - "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey", - "key": "myKey", - "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "201": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "tempskillset", - "description": "Skillset for extracting entities and more", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "skill2", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "countryHint", - "source": "/document/countryHint", - "inputs": [] - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "skill3", - "textSplitMode": "pages", - "maximumPageLength": 4000, - "unit": "azureOpenAITokens", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "azureOpenAITokenizerParameters": { - "encoderModelName": "cl100k_base", - "allowedSpecialTokens": [ - "[START]", - "[END]" - ] - } - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "skill4", - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "skill5", - "uri": "https://contoso.example.org/", - "httpMethod": "POST", - "timeout": "PT5S", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", - "name": "docIntelligenceLayoutSkill", - "context": "/document", - "outputMode": "oneToMany", - "markdownHeaderDepth": "h3", - "inputs": [ - { - "name": "file_data", - "source": "/document/content", - "inputs": [] - } - ], - "outputs": [ - { - "name": "markdown_document", - "targetName": "markdown_document" - } - ] - } - ], - "cognitiveServices": { - "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey", - "key": "myKey", - "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json deleted file mode 100644 index 08ec9c612e12..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateOrUpdateSynonymMap.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_createOrUpdate", - "title": "SearchServiceCreateOrUpdateSynonymMap", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "synonymMapName": "mysynonymmap", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null, - "Prefer": "return=representation", - "synonymMap": { - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "200": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "201": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json deleted file mode 100644 index b571da40c993..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSkillset.json +++ /dev/null @@ -1,288 +0,0 @@ -{ - "operationId": "SkillsetsOperations_create", - "title": "SearchServiceCreateSkillset", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "skillset": { - "name": "tempskillset", - "description": "Skillset for extracting entities and more", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "skill2", - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "countryHint", - "source": "/document/countryHint" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "textSplitMode": "pages", - "maximumPageLength": 4000, - "unit": "azureOpenAITokens", - "azureOpenAITokenizerParameters": { - "encoderModelName": "cl100k_base", - "allowedSpecialTokens": [ - "[START]", - "[END]" - ] - }, - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "skill3", - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "skill4", - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ] - }, - { - "uri": "https://contoso.example.org/", - "httpMethod": "POST", - "timeout": "PT5S", - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "skill5", - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ] - }, - { - "outputMode": "oneToMany", - "markdownHeaderDepth": "h3", - "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", - "name": "docIntelligenceLayoutSkill", - "context": "/document", - "inputs": [ - { - "name": "file_data", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "markdown_document", - "targetName": "markdown_document" - } - ] - } - ], - "cognitiveServices": { - "key": "myKey", - "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com", - "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "201": { - "body": { - "name": "tempskillset", - "description": "Skillset for extracting entities and more", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "skill2", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "countryHint", - "source": "/document/countryHint", - "inputs": [] - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "skill3", - "textSplitMode": "pages", - "maximumPageLength": 4000, - "unit": "azureOpenAITokens", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "azureOpenAITokenizerParameters": { - "encoderModelName": "cl100k_base", - "allowedSpecialTokens": [ - "[START]", - "[END]" - ] - } - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "skill4", - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "skill5", - "uri": "https://contoso.example.org/", - "httpMethod": "POST", - "timeout": "PT5S", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", - "name": "docIntelligenceLayoutSkill", - "context": "/document", - "outputMode": "oneToMany", - "markdownHeaderDepth": "h3", - "inputs": [ - { - "name": "file_data", - "source": "/document/content", - "inputs": [] - } - ], - "outputs": [ - { - "name": "markdown_document", - "targetName": "markdown_document" - } - ] - } - ], - "cognitiveServices": { - "@odata.type": "#Microsoft.Azure.Search.AIServicesByKey", - "key": "myKey", - "subdomainUrl": "https://mySubdomainName.cognitiveservices.azure.com" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json deleted file mode 100644 index 7e8184177292..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceCreateSynonymMap.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_create", - "title": "SearchServiceCreateSynonymMap", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "synonymMap": { - "name": "tempsynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "201": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "tempsynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteAlias.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteAlias.json deleted file mode 100644 index 889089824926..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteAlias.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "operationId": "Aliases_Delete", - "title": "SearchServiceDeleteAlias", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "aliasName": "tempalias", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json deleted file mode 100644 index ac12192f910a..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteDataSource.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "operationId": "DataSourcesOperations_delete", - "title": "SearchServiceDeleteDataSource", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "dataSourceName": "tempdatasource", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json deleted file mode 100644 index 61fa8f96a3a3..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndex.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "operationId": "IndexesOperations_delete", - "title": "SearchServiceDeleteIndex", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "temp-preview-test", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json deleted file mode 100644 index 2da2d587dc1d..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteIndexer.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "operationId": "IndexersOperations_delete", - "title": "SearchServiceDeleteIndexer", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexerName": "tempindexer", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null - }, - "responses": { - "404": {}, - "204": {} - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json deleted file mode 100644 index 67f833787eea..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSkillset.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "operationId": "SkillsetsOperations_delete", - "title": "SearchServiceDeleteSkillset", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "skillsetName": "tempskillset", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json deleted file mode 100644 index b087b8da5ff7..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceDeleteSynonymMap.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_delete", - "title": "SearchServiceDeleteSynonymMap", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "synonymMapName": "tempsynonymmap", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "If-Match": null, - "If-None-Match": null - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetAlias.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetAlias.json deleted file mode 100644 index 8bdef8764719..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetAlias.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "operationId": "Aliases_Get", - "title": "SearchServiceGetAlias", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "aliasName": "myalias", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "name": "myalias", - "indexes": [ - "preview-test" - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json deleted file mode 100644 index 950a169d8442..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetDataSource.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "operationId": "DataSourcesOperations_get", - "title": "SearchServiceGetDataSource", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "dataSourceName": "mydocdbdatasource", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "mydocdbdatasource", - "description": "My Azure Blob data source.", - "type": "azureblob", - "credentials": { - "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " - }, - "container": { - "name": "doc-extraction-skillset", - "query": "E2E_Dsat" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "metadata_storage_last_modified" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json deleted file mode 100644 index ee3b3da7c8c9..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndex.json +++ /dev/null @@ -1,331 +0,0 @@ -{ - "operationId": "IndexesOperations_get", - "title": "SearchServiceGetIndex", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "preview-test", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "preview-test", - "fields": [ - { - "name": "id", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": true, - "synonymMaps": [] - }, - { - "name": "vector1", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 20, - "vectorSearchProfile": "config1", - "synonymMaps": [] - }, - { - "name": "vector1b", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "vector2", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector3", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector22", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "name", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "standard.lucene", - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "ownerId", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "stringFieldBoost", - "functionAggregation": "sum", - "text": { - "weights": { - "name": 3.0, - "description": 1.0, - "category": 2.0, - "ownerId": 1.0 - } - }, - "functions": [ - { - "fieldName": "category", - "interpolation": "linear", - "type": "tag", - "boost": 2.0, - "tag": { - "tagsParameter": "categoryTag" - } - } - ] - } - ], - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "category", - "ownerId" - ] - } - ], - "analyzers": [ - { - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "name": "tagsAnalyzer", - "tokenizer": "standard_v2", - "tokenFilters": [ - "common_grams" - ], - "charFilters": [ - "html_strip" - ] - } - ], - "normalizers": [], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "similarity": { - "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" - }, - "semantic": { - "configurations": [] - }, - "vectorSearch": { - "algorithms": [ - { - "name": "cosine", - "kind": "hnsw", - "hnswParameters": { - "metric": "cosine", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "euclidean", - "kind": "hnsw", - "hnswParameters": { - "metric": "euclidean", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "dotProduct", - "kind": "hnsw", - "hnswParameters": { - "metric": "dotProduct", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - } - ], - "profiles": [ - { - "name": "config1", - "algorithm": "cosine", - "vectorizer": "openai", - "compression": "mySQ8" - }, - { - "name": "config2", - "algorithm": "euclidean", - "vectorizer": "custom-web-api", - "compression": "mySQ8" - }, - { - "name": "config3", - "algorithm": "dotProduct", - "vectorizer": "custom-web-api", - "compression": "myBQC" - } - ], - "vectorizers": [ - { - "name": "openai", - "kind": "azureOpenAI", - "azureOpenAIParameters": { - "resourceUri": "https://test-sample.openai.azure.com", - "deploymentId": "model", - "apiKey": "", - "modelName": "text-embedding-3-large" - } - }, - { - "name": "custom-web-api", - "kind": "customWebApi", - "customWebApiParameters": { - "httpMethod": "POST", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", - "httpHeaders": { - "header1": "value1", - "header2": "value2" - }, - "authIdentity": { - "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" - } - } - }, - { - "name": "aml", - "kind": "aml", - "amlParameters": { - "resourceId": "aml resource id", - "region": "aml region", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" - } - } - ], - "compressions": [ - { - "name": "mySQ8", - "kind": "scalarQuantization", - "truncationDimension": 2, - "scalarQuantizationParameters": { - "quantizedDataType": "int8" - }, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - }, - { - "name": "myBQC", - "kind": "binaryQuantization", - "truncationDimension": 2, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - } - ] - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json deleted file mode 100644 index 4ff1e2f1d6e1..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexStatistics.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "operationId": "IndexesOperations_getStatistics", - "title": "SearchServiceGetIndexStatistics", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "preview-test", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "documentCount": 12, - "storageSize": 123456, - "vectorIndexSize": 123456 - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json deleted file mode 100644 index 463f19d5eaae..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexer.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "operationId": "IndexersOperations_get", - "title": "SearchServiceGetIndexer", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "myindexer", - "description": "Description of the indexer", - "dataSourceName": "mydocdbdatasource", - "skillsetName": "myskillset", - "targetIndexName": "preview-test", - "disabled": false, - "schedule": { - "interval": "P1D", - "startTime": "2024-06-06T00:01:50.265Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5, - "configuration": {} - }, - "fieldMappings": [], - "outputFieldMappings": [], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json deleted file mode 100644 index 65a39aebe8da..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetIndexerStatus.json +++ /dev/null @@ -1,91 +0,0 @@ -{ - "operationId": "IndexersOperations_getStatus", - "title": "SearchServiceGetIndexerStatus", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-11-01-preview" - }, - "responses": { - "200": { - "body": { - "status": "running", - "lastResult": { - "status": "success", - "errorMessage": null, - "startTime": "2014-11-26T03:37:18.853Z", - "endTime": "2014-11-26T03:37:19.012Z", - "errors": [], - "warnings": [], - "itemsProcessed": 11, - "itemsFailed": 0, - "initialTrackingState": null, - "finalTrackingState": null - }, - "executionHistory": [ - { - "status": "success", - "errorMessage": null, - "startTime": "2014-11-26T03:37:18.853Z", - "endTime": "2014-11-26T03:37:19.012Z", - "errors": [], - "warnings": [], - "itemsProcessed": 11, - "itemsFailed": 0, - "initialTrackingState": null, - "finalTrackingState": null - }, - { - "status": "transientFailure", - "errorMessage": null, - "startTime": "2014-11-26T03:28:10.125Z", - "endTime": "2014-11-26T03:28:12.007Z", - "errors": [ - { - "key": "", - "errorMessage": "Document key cannot be missing or empty.", - "statusCode": 400, - "name": null, - "details": null, - "documentationLink": null - }, - { - "key": "document id 1", - "errorMessage": "Could not read the value of column 'foo' at index '0'.", - "statusCode": 400, - "name": "DocumentExtraction.AzureBlob.MyDataSource", - "details": "The file could not be parsed.", - "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388" - } - ], - "warnings": [ - { - "key": "document id", - "message": "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob.", - "name": null, - "details": null, - "documentationLink": null - }, - { - "key": "document id 2", - "message": "Document was truncated to 50000 characters.", - "name": "Enrichment.LanguageDetectionSkill.#4", - "details": "The skill did something that didn't break anything, nonetheless something we didn't expect happened, so it might be worth double checking.", - "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2099692" - } - ], - "itemsProcessed": 1, - "itemsFailed": 2, - "initialTrackingState": null, - "finalTrackingState": null - } - ], - "limits": { - "maxRunTime": "PT22H", - "maxDocumentExtractionSize": 256000000, - "maxDocumentContentCharactersToExtract": 4000000 - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json deleted file mode 100644 index 398720f59e41..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetServiceStatistics.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "operationId": "getServiceStatistics", - "title": "SearchServiceGetServiceStatistics", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "counters": { - "documentCount": { - "usage": 12 - }, - "indexesCount": { - "usage": 2, - "quota": 2 - }, - "indexersCount": { - "usage": 2, - "quota": 2 - }, - "dataSourcesCount": { - "usage": 2, - "quota": 2 - }, - "storageSize": { - "usage": 123456, - "quota": 10485760 - }, - "synonymMaps": { - "usage": 3, - "quota": 3 - }, - "skillsetCount": { - "usage": 2, - "quota": 2 - }, - "aliasesCount": { - "usage": 4, - "quota": 4 - }, - "vectorIndexSize": { - "usage": 123456 - } - }, - "limits": { - "maxStoragePerIndex": 10485760, - "maxFieldsPerIndex": 1000, - "maxFieldNestingDepthPerIndex": 10, - "maxComplexCollectionFieldsPerIndex": 40, - "maxComplexObjectsInCollectionsPerDocument": 3000 - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json deleted file mode 100644 index 3867b1cfeb3b..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSkillset.json +++ /dev/null @@ -1,161 +0,0 @@ -{ - "operationId": "SkillsetsOperations_get", - "title": "SearchServiceGetSkillset", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "skillsetName": "myskillset", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "myskillset", - "description": "Skillset for extracting entities and more", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "skill2", - "context": "/document", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "countryHint", - "source": "/document/countryHint", - "inputs": [] - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "skill3", - "context": "/document", - "defaultLanguageCode": "en", - "textSplitMode": "pages", - "maximumPageLength": 4000, - "pageOverlapLength": 0, - "maximumPagesToTake": 0, - "unit": "azureOpenAITokens", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "azureOpenAITokenizerParameters": { - "encoderModelName": "cl100k_base", - "allowedSpecialTokens": [ - "[START]", - "[END]" - ] - } - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "skill4", - "context": "/document/pages/*", - "defaultLanguageCode": "en", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "skill5", - "context": "/document", - "uri": "https://contoso.example.org/", - "httpMethod": "POST", - "timeout": "PT5S", - "batchSize": 1000, - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - }, - { - "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", - "name": "docIntelligenceLayoutSkill", - "context": "/document", - "outputMode": "oneToMany", - "markdownHeaderDepth": "h3", - "inputs": [ - { - "name": "file_data", - "source": "/document/content", - "inputs": [] - } - ], - "outputs": [ - { - "name": "markdown_document", - "targetName": "markdown_document" - } - ] - } - ], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json deleted file mode 100644 index 822cba37fa3f..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceGetSynonymMap.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_get", - "title": "SearchServiceGetSynonymMap", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "synonymMapName": "mysynonymmap", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "@odata.etag": "0x1234568AE7E58A1", - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json deleted file mode 100644 index 55d3daa6e7cb..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceIndexAnalyze.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "operationId": "IndexesOperations_analyze", - "title": "SearchServiceIndexAnalyze", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexName": "preview-test", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "request": { - "text": "Text to analyze", - "analyzer": "ar.lucene" - } - }, - "responses": { - "200": { - "body": { - "tokens": [ - { - "token": "text", - "startOffset": 0, - "endOffset": 4, - "position": 0 - }, - { - "token": "to", - "startOffset": 5, - "endOffset": 7, - "position": 1 - }, - { - "token": "analyze", - "startOffset": 8, - "endOffset": 15, - "position": 2 - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListAliases.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListAliases.json deleted file mode 100644 index 69c9ecb9b00c..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListAliases.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "operationId": "Aliases_List", - "title": "SearchServiceListAliases", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "myalias", - "indexes": [ - "preview-test" - ] - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json deleted file mode 100644 index 5f4dc9a5f17c..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListDataSources.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "operationId": "DataSourcesOperations_list", - "title": "SearchServiceListDataSources", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "$select": null, - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@odata.etag": "0x1234568AE7E58A1", - "name": "mydocdbdatasource", - "description": "My Azure Blob data source.", - "type": "azureblob", - "credentials": { - "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net " - }, - "container": { - "name": "doc-extraction-skillset", - "query": "E2E_Dsat" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "metadata_storage_last_modified" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json deleted file mode 100644 index b4e06e8dbd74..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexers.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "operationId": "IndexersOperations_list", - "title": "SearchServiceListIndexers", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "$select": "*", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "myindexer", - "description": "Description of the indexer", - "dataSourceName": "mydocdbdatasource", - "skillsetName": "myskillset", - "targetIndexName": "preview-test", - "disabled": false, - "schedule": { - "interval": "P1D", - "startTime": "2024-06-06T00:01:50.265Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5, - "configuration": {} - }, - "fieldMappings": [], - "outputFieldMappings": [], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json deleted file mode 100644 index d9fb57d326d7..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListIndexes.json +++ /dev/null @@ -1,335 +0,0 @@ -{ - "operationId": "IndexesOperations_list", - "title": "SearchServiceListIndexes", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "$select": null, - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@odata.etag": "0x1234568AE7E58A1", - "name": "preview-test", - "fields": [ - { - "name": "id", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": true, - "synonymMaps": [] - }, - { - "name": "vector1", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 20, - "vectorSearchProfile": "config1", - "synonymMaps": [] - }, - { - "name": "vector1b", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "vector2", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector3", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 5, - "vectorSearchProfile": "config3", - "synonymMaps": [] - }, - { - "name": "vector22", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "stored": true, - "sortable": false, - "facetable": false, - "key": false, - "dimensions": 10, - "vectorSearchProfile": "config2", - "synonymMaps": [] - }, - { - "name": "name", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "standard.lucene", - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - }, - { - "name": "ownerId", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "stored": true, - "sortable": true, - "facetable": true, - "key": false, - "analyzer": "en.lucene", - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "stringFieldBoost", - "functionAggregation": "sum", - "text": { - "weights": { - "name": 3.0, - "description": 1.0, - "category": 2.0, - "ownerId": 1.0 - } - }, - "functions": [ - { - "fieldName": "category", - "interpolation": "linear", - "type": "tag", - "boost": 2.0, - "tag": { - "tagsParameter": "categoryTag" - } - } - ] - } - ], - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "category", - "ownerId" - ] - } - ], - "analyzers": [ - { - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "name": "tagsAnalyzer", - "tokenizer": "standard_v2", - "tokenFilters": [ - "common_grams" - ], - "charFilters": [ - "html_strip" - ] - } - ], - "normalizers": [], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "similarity": { - "@odata.type": "#Microsoft.Azure.Search.BM25Similarity" - }, - "semantic": { - "configurations": [] - }, - "vectorSearch": { - "algorithms": [ - { - "name": "cosine", - "kind": "hnsw", - "hnswParameters": { - "metric": "cosine", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "euclidean", - "kind": "hnsw", - "hnswParameters": { - "metric": "euclidean", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "dotProduct", - "kind": "hnsw", - "hnswParameters": { - "metric": "dotProduct", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - } - ], - "profiles": [ - { - "name": "config1", - "algorithm": "cosine", - "vectorizer": "openai", - "compression": "mySQ8" - }, - { - "name": "config2", - "algorithm": "euclidean", - "vectorizer": "custom-web-api", - "compression": "mySQ8" - }, - { - "name": "config3", - "algorithm": "dotProduct", - "vectorizer": "custom-web-api", - "compression": "myBQC" - } - ], - "vectorizers": [ - { - "name": "openai", - "kind": "azureOpenAI", - "azureOpenAIParameters": { - "resourceUri": "https://test-sample.openai.azure.com", - "deploymentId": "model", - "apiKey": "", - "modelName": "text-embedding-3-large" - } - }, - { - "name": "custom-web-api", - "kind": "customWebApi", - "customWebApiParameters": { - "httpMethod": "POST", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "authResourceId": "api://f89d1c93-58a7-4b07-9a5b-5f89048b927b", - "httpHeaders": { - "header1": "value1", - "header2": "value2" - }, - "authIdentity": { - "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity" - } - } - }, - { - "name": "aml", - "kind": "aml", - "amlParameters": { - "resourceId": "aml resource id", - "region": "aml region", - "uri": "https://my-custom-endpoint.org/", - "timeout": "PT1M", - "modelName": "OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32" - } - } - ], - "compressions": [ - { - "name": "mySQ8", - "kind": "scalarQuantization", - "truncationDimension": 2, - "scalarQuantizationParameters": { - "quantizedDataType": "int8" - }, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - }, - { - "name": "myBQC", - "kind": "binaryQuantization", - "truncationDimension": 2, - "rescoringOptions": { - "enableRescoring": true, - "defaultOversampling": 10.0, - "rescoreStorageMethod": "preserveOriginals" - } - } - ] - } - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json deleted file mode 100644 index 7b17c3f7e1ee..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSkillsets.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "operationId": "SkillsetsOperations_list", - "title": "SearchServiceListSkillsets", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "$select": null, - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@odata.etag": "0x1234568AE7E58A1", - "name": "myskillset", - "description": "Skillset for extracting entities and more", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "skill2", - "context": "/document", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "countryHint", - "source": "/document/countryHint", - "inputs": [] - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "skill3", - "context": "/document", - "defaultLanguageCode": "en", - "textSplitMode": "pages", - "maximumPageLength": 4000, - "pageOverlapLength": 0, - "maximumPagesToTake": 0, - "unit": "azureOpenAITokens", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "azureOpenAITokenizerParameters": { - "encoderModelName": "cl100k_base", - "allowedSpecialTokens": [ - "[START]", - "[END]" - ] - } - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "skill4", - "context": "/document/pages/*", - "defaultLanguageCode": "en", - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "skill5", - "context": "/document", - "uri": "https://contoso.example.org/", - "httpMethod": "POST", - "timeout": "PT5S", - "batchSize": 1000, - "inputs": [ - { - "name": "text", - "source": "/document/content", - "inputs": [] - }, - { - "name": "languageCode", - "source": "/document/languageCode", - "inputs": [] - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - }, - { - "@odata.type": "#Microsoft.Skills.Util.DocumentIntelligenceLayoutSkill", - "name": "docIntelligenceLayoutSkill", - "context": "/document", - "outputMode": "oneToMany", - "markdownHeaderDepth": "h3", - "inputs": [ - { - "name": "file_data", - "source": "/document/content", - "inputs": [] - } - ], - "outputs": [ - { - "name": "markdown_document", - "targetName": "markdown_document" - } - ] - } - ], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json deleted file mode 100644 index e5a7fbcc3da4..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceListSynonymMaps.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_list", - "title": "SearchServiceListSynonymMaps", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "$select": null, - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@odata.etag": "0x1234568AE7E58A1", - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetDocs.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetDocs.json deleted file mode 100644 index 20a91dd39c69..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetDocs.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "operationId": "Indexers_ResetDocs", - "title": "SearchServiceResetDocs", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexerName": "myindexer", - "overwrite": true, - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "keysOrIds": { - "documentKeys": [ - "1", - "2", - "3" - ] - } - }, - "responses": { - "204": {} - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json deleted file mode 100644 index 3859f42d9417..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetIndexer.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "operationId": "IndexersOperations_reset", - "title": "SearchServiceResetIndexer", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "204": {} - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetSkills.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetSkills.json deleted file mode 100644 index eb179862b112..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceResetSkills.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "operationId": "Skillsets_ResetSkills", - "title": "SearchServiceResetSkills", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "skillsetName": "myskillset", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "skillNames": { - "skillNames": [ - "skill2", - "skill3", - "skill4" - ] - } - }, - "responses": { - "204": {} - } -} diff --git a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json b/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json deleted file mode 100644 index 6cfe03607c67..000000000000 --- a/specification/search/Azure.Search/examples/2024-11-01-preview/SearchServiceRunIndexer.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "operationId": "IndexersOperations_run", - "title": "SearchServiceRunIndexer", - "parameters": { - "endpoint": "https://previewexampleservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-11-01-preview", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "202": {} - } -} From 5dc6943de4c895065d7a30b9da1f1ca2c9c1df2b Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 13:02:54 -0800 Subject: [PATCH 48/78] update --- specification/search/Azure.Search/client.tsp | 1 + .../2024-07-01/SearchIndexAutocompleteDocumentsGet.json | 2 +- .../2024-07-01/SearchIndexAutocompleteDocumentsPost.json | 2 +- .../examples/2024-07-01/SearchIndexCountDocuments.json | 2 +- .../examples/2024-07-01/SearchIndexGetDocument.json | 2 +- .../examples/2024-07-01/SearchIndexIndexDocuments.json | 2 +- .../examples/2024-07-01/SearchIndexSearchDocumentsGet.json | 2 +- .../examples/2024-07-01/SearchIndexSearchDocumentsPost.json | 2 +- .../2024-07-01/SearchIndexSearchDocumentsSemanticGet.json | 2 +- .../2024-07-01/SearchIndexSearchDocumentsSemanticPost.json | 2 +- .../examples/2024-07-01/SearchIndexSuggestDocumentsGet.json | 2 +- .../examples/2024-07-01/SearchIndexSuggestDocumentsPost.json | 2 +- .../examples/2024-07-01/SearchServiceCreateDataSource.json | 2 +- .../examples/2024-07-01/SearchServiceCreateIndex.json | 2 +- .../examples/2024-07-01/SearchServiceCreateIndexer.json | 2 +- .../2024-07-01/SearchServiceCreateOrUpdateDataSource.json | 2 +- .../examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json | 2 +- .../examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json | 2 +- .../2024-07-01/SearchServiceCreateOrUpdateSkillset.json | 2 +- .../2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json | 2 +- .../examples/2024-07-01/SearchServiceCreateSkillset.json | 2 +- .../examples/2024-07-01/SearchServiceCreateSynonymMap.json | 2 +- .../examples/2024-07-01/SearchServiceDeleteDataSource.json | 2 +- .../examples/2024-07-01/SearchServiceDeleteIndex.json | 2 +- .../examples/2024-07-01/SearchServiceDeleteIndexer.json | 2 +- .../examples/2024-07-01/SearchServiceDeleteSkillset.json | 2 +- .../examples/2024-07-01/SearchServiceDeleteSynonymMap.json | 2 +- .../examples/2024-07-01/SearchServiceGetDataSource.json | 2 +- .../Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json | 2 +- .../examples/2024-07-01/SearchServiceGetIndexStatistics.json | 2 +- .../examples/2024-07-01/SearchServiceGetIndexer.json | 2 +- .../examples/2024-07-01/SearchServiceGetIndexerStatus.json | 2 +- .../examples/2024-07-01/SearchServiceGetServiceStatistics.json | 2 +- .../examples/2024-07-01/SearchServiceGetSkillset.json | 2 +- .../examples/2024-07-01/SearchServiceGetSynonymMap.json | 2 +- .../examples/2024-07-01/SearchServiceIndexAnalyze.json | 2 +- .../examples/2024-07-01/SearchServiceListDataSources.json | 2 +- .../examples/2024-07-01/SearchServiceListIndexers.json | 2 +- .../examples/2024-07-01/SearchServiceListIndexes.json | 2 +- .../examples/2024-07-01/SearchServiceListSkillsets.json | 2 +- .../examples/2024-07-01/SearchServiceListSynonymMaps.json | 2 +- .../examples/2024-07-01/SearchServiceResetIndexer.json | 2 +- .../examples/2024-07-01/SearchServiceRunIndexer.json | 2 +- 43 files changed, 43 insertions(+), 42 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 066aaa0cf7dd..0b73c7eb2611 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -13,6 +13,7 @@ namespace Customizations; @@usage(VectorSearchAlgorithmKind, Usage.input); @@access(VectorSearchVectorizerKind, Access.public); @@usage(VectorSearchVectorizerKind, Usage.input); +@@clientName(VectorQuery.k, "kNearestNeighbors"); @@clientName(SearchDocumentsResult.value, "results"); @@clientName(SearchRequest.count, "includeTotalResultCount"); @@clientName(SearchRequest.highlight, "highlightFields"); diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json index f8161d4669c0..da2054924fcc 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_autocompleteGet", + "operationId": "DocumentsOperations_AutocompleteGet", "title": "SearchIndexAutocompleteDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json index dbcee6f49bca..b8251df3fd83 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_autocompletePost", + "operationId": "DocumentsOperations_AutocompletePost", "title": "SearchIndexAutocompleteDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json index aad2de05dd15..9e860ca33e9a 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_count", + "operationId": "DocumentsOperations_Count", "title": "SearchIndexCountDocuments", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json index 9b29abaf6c9a..4c3a27feb142 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_get", + "operationId": "DocumentsOperations_Get", "title": "SearchIndexGetDocument", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json index 07048dd6a070..15f3d7781789 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_index", + "operationId": "DocumentsOperations_Index", "title": "SearchIndexIndexDocuments", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json index 1d67c957b066..dbb98fecc80e 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_searchGet", + "operationId": "DocumentsOperations_SearchGet", "title": "SearchIndexSearchDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json index 16ae09218b18..65f518cea193 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_searchPost", + "operationId": "DocumentsOperations_SearchPost", "title": "SearchIndexSearchDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json index 719f2961873d..e520c69d94f5 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_searchGet", + "operationId": "DocumentsOperations_SearchGet", "title": "SearchIndexSearchDocumentsSemanticGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json index f9eff1b8cc6f..f28437d390df 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_searchPost", + "operationId": "DocumentsOperations_SearchPost", "title": "SearchIndexSearchDocumentsSemanticPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json index cb9f58017944..de0013953f7c 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_suggestGet", + "operationId": "DocumentsOperations_SuggestGet", "title": "SearchIndexSuggestDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json index cf02892d791d..b80b58298472 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_suggestPost", + "operationId": "DocumentsOperations_SuggestPost", "title": "SearchIndexSuggestDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json index ffefd456a3d7..882fae5767e5 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_create", + "operationId": "DataSourcesOperations_Create", "title": "SearchServiceCreateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json index 2320cf6e0cc0..85f8fcc39e6f 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_create", + "operationId": "IndexesOperations_Create", "title": "SearchServiceCreateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json index 6efd0f9026e7..88c81c4060da 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_create", + "operationId": "IndexersOperations_Create", "title": "SearchServiceCreateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json index 22c1465ee625..5601c4b456a0 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_createOrUpdate", + "operationId": "DataSourcesOperations_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json index 5122eb5c0ffc..bf9f68a28622 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_createOrUpdate", + "operationId": "IndexesOperations_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json index 87756d0b0320..6090c4bcaafb 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_createOrUpdate", + "operationId": "IndexersOperations_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json index 278d5b021ac1..b510c95a8df8 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_createOrUpdate", + "operationId": "SkillsetsOperations_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json index 15cae3107d51..cf8f6c9d07af 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_createOrUpdate", + "operationId": "SynonymMapsOperations_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json index 4e29efaf1d45..3feeca88e25d 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_create", + "operationId": "SkillsetsOperations_Create", "title": "SearchServiceCreateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json index 08bd19411064..7146356cd274 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_create", + "operationId": "SynonymMapsOperations_Create", "title": "SearchServiceCreateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json index e3164f15539b..af932181bab3 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_delete", + "operationId": "DataSourcesOperations_Delete", "title": "SearchServiceDeleteDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json index 9cb45f7f14d3..633ed9d4d6c8 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_delete", + "operationId": "IndexesOperations_Delete", "title": "SearchServiceDeleteIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json index dd41b705631c..404fdf7f7d04 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_delete", + "operationId": "IndexersOperations_Delete", "title": "SearchServiceDeleteIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json index ef136a7c4ada..56b8da5d8118 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_delete", + "operationId": "SkillsetsOperations_Delete", "title": "SearchServiceDeleteSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json index 53a000edff96..d9e27a8e60a5 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_delete", + "operationId": "SynonymMapsOperations_Delete", "title": "SearchServiceDeleteSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json index 93251a9903ca..48017bfdd32e 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_get", + "operationId": "DataSourcesOperations_Get", "title": "SearchServiceGetDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json index 8917532b83bb..23d3c2e2fb78 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_get", + "operationId": "IndexesOperations_Get", "title": "SearchServiceGetIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json index 2b5291f9271f..252d25544656 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_getStatistics", + "operationId": "IndexesOperations_GetStatistics", "title": "SearchServiceGetIndexStatistics", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json index dbece0505a3f..532bc68f6ce6 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_get", + "operationId": "IndexersOperations_Get", "title": "SearchServiceGetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json index 5b842cb908ad..8b369c8eea0c 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_getStatus", + "operationId": "IndexersOperations_GetStatus", "title": "SearchServiceGetIndexerStatus", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json index 138f467b4cec..743a516c6f85 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetServiceStatistics.json @@ -1,5 +1,5 @@ { - "operationId": "getServiceStatistics", + "operationId": "GetServiceStatistics", "title": "SearchServiceGetServiceStatistics", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json index 4585d964cd92..cee2ffba575e 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_get", + "operationId": "SkillsetsOperations_Get", "title": "SearchServiceGetSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json index 4698cdda3e68..b1bb6b5c71d9 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_get", + "operationId": "SynonymMapsOperations_Get", "title": "SearchServiceGetSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json index 6aee476454c3..32d8385754e8 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_analyze", + "operationId": "IndexesOperations_Analyze", "title": "SearchServiceIndexAnalyze", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json index c197eec38471..6a8611843e0a 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_list", + "operationId": "DataSourcesOperations_List", "title": "SearchServiceListDataSources", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json index 0bb71df6e4bf..d853b67419ac 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_list", + "operationId": "IndexersOperations_List", "title": "SearchServiceListIndexers", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json index 04a23cc707fb..b89b350a43ca 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_list", + "operationId": "IndexesOperations_List", "title": "SearchServiceListIndexes", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json index 0d9ebb53259b..b4bdd7cd81e5 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_list", + "operationId": "SkillsetsOperations_List", "title": "SearchServiceListSkillsets", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json index e4be39cd9b7b..53c8134271c4 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_list", + "operationId": "SynonymMapsOperations_List", "title": "SearchServiceListSynonymMaps", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json index a51be4c6accf..a9d763f69655 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_reset", + "operationId": "IndexersOperations_Reset", "title": "SearchServiceResetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json index fe04b456fe79..97604abf06b3 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_run", + "operationId": "IndexersOperations_Run", "title": "SearchServiceRunIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", From 1927d85e7dda4c3896381e49066fc016b2f127d9 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 13:05:50 -0800 Subject: [PATCH 49/78] update --- .../Search/stable/2024-07-01/search.json | 206 ++++++++++++++++++ 1 file changed, 206 insertions(+) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/search.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json index c0840968bbcd..cf8ebb969292 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/search.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -78,6 +78,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListDataSources": { + "$ref": "./examples/SearchServiceListDataSources.json" + } } }, "post": { @@ -113,6 +118,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateDataSource": { + "$ref": "./examples/SearchServiceCreateDataSource.json" + } } } }, @@ -148,6 +158,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetDataSource": { + "$ref": "./examples/SearchServiceGetDataSource.json" + } } }, "put": { @@ -226,6 +241,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateDataSource": { + "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" + } } }, "delete": { @@ -275,6 +295,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteDataSource": { + "$ref": "./examples/SearchServiceDeleteDataSource.json" + } } } }, @@ -310,6 +335,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListIndexers": { + "$ref": "./examples/SearchServiceListIndexers.json" + } } }, "post": { @@ -345,6 +375,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateIndexer": { + "$ref": "./examples/SearchServiceCreateIndexer.json" + } } } }, @@ -380,6 +415,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexer": { + "$ref": "./examples/SearchServiceGetIndexer.json" + } } }, "put": { @@ -458,6 +498,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndexer": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" + } } }, "delete": { @@ -507,6 +552,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteIndexer": { + "$ref": "./examples/SearchServiceDeleteIndexer.json" + } } } }, @@ -539,6 +589,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceResetIndexer": { + "$ref": "./examples/SearchServiceResetIndexer.json" + } } } }, @@ -571,6 +626,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceRunIndexer": { + "$ref": "./examples/SearchServiceRunIndexer.json" + } } } }, @@ -606,6 +666,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexerStatus": { + "$ref": "./examples/SearchServiceGetIndexerStatus.json" + } } } }, @@ -641,6 +706,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListIndexes": { + "$ref": "./examples/SearchServiceListIndexes.json" + } } }, "post": { @@ -676,6 +746,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateIndex": { + "$ref": "./examples/SearchServiceCreateIndex.json" + } } } }, @@ -711,6 +786,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndex": { + "$ref": "./examples/SearchServiceGetIndex.json" + } } }, "put": { @@ -796,6 +876,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndex": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" + } } }, "delete": { @@ -845,6 +930,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteIndex": { + "$ref": "./examples/SearchServiceDeleteIndex.json" + } } } }, @@ -1216,6 +1306,14 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsGet": { + "$ref": "./examples/SearchIndexSearchDocumentsGet.json" + }, + "SearchIndexSearchDocumentsSemanticGet": { + "$ref": "./examples/SearchIndexSearchDocumentsSemanticGet.json" + } } } }, @@ -1252,6 +1350,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexCountDocuments": { + "$ref": "./examples/SearchIndexCountDocuments.json" + } } } }, @@ -1391,6 +1494,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsGet": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" + } } } }, @@ -1441,6 +1549,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexIndexDocuments": { + "$ref": "./examples/SearchIndexIndexDocuments.json" + } } } }, @@ -1485,6 +1598,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsPost": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" + } } } }, @@ -1529,6 +1647,14 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsPost": { + "$ref": "./examples/SearchIndexSearchDocumentsPost.json" + }, + "SearchIndexSearchDocumentsSemanticPost": { + "$ref": "./examples/SearchIndexSearchDocumentsSemanticPost.json" + } } } }, @@ -1573,6 +1699,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsPost": { + "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" + } } } }, @@ -1702,6 +1833,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsGet": { + "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" + } } } }, @@ -1756,6 +1892,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexGetDocument": { + "$ref": "./examples/SearchIndexGetDocument.json" + } } } }, @@ -1800,6 +1941,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceIndexAnalyze": { + "$ref": "./examples/SearchServiceIndexAnalyze.json" + } } } }, @@ -1835,6 +1981,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexStatistics": { + "$ref": "./examples/SearchServiceGetIndexStatistics.json" + } } } }, @@ -1863,6 +2014,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetServiceStatistics": { + "$ref": "./examples/SearchServiceGetServiceStatistics.json" + } } } }, @@ -1898,6 +2054,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListSkillsets": { + "$ref": "./examples/SearchServiceListSkillsets.json" + } } }, "post": { @@ -1933,6 +2094,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateSkillset": { + "$ref": "./examples/SearchServiceCreateSkillset.json" + } } } }, @@ -1968,6 +2134,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetSkillset": { + "$ref": "./examples/SearchServiceGetSkillset.json" + } } }, "put": { @@ -2046,6 +2217,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateSkillset": { + "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" + } } }, "delete": { @@ -2095,6 +2271,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteSkillset": { + "$ref": "./examples/SearchServiceDeleteSkillset.json" + } } } }, @@ -2130,6 +2311,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListSynonymMaps": { + "$ref": "./examples/SearchServiceListSynonymMaps.json" + } } }, "post": { @@ -2165,6 +2351,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateSynonymMap": { + "$ref": "./examples/SearchServiceCreateSynonymMap.json" + } } } }, @@ -2200,6 +2391,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetSynonymMap": { + "$ref": "./examples/SearchServiceGetSynonymMap.json" + } } }, "put": { @@ -2278,6 +2474,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateSynonymMap": { + "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" + } } }, "delete": { @@ -2327,6 +2528,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteSynonymMap": { + "$ref": "./examples/SearchServiceDeleteSynonymMap.json" + } } } } From 99589028184efbe1d10233705c48395ed05980e9 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 2 Dec 2024 13:15:05 -0800 Subject: [PATCH 50/78] update --- specification/search/Azure.Search/models-service.tsp | 3 +-- .../search/data-plane/Search/stable/2024-07-01/search.json | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 0fbd8bbf697a..24253a1cb151 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -8088,8 +8088,7 @@ model WebApiVectorizerParameters { } /** - * Specifies the AI Services Vision parameters for vectorizing a query image or - * text. + * Clears the identity property of a datasource. */ model SearchIndexerDataNoneIdentity extends SearchIndexerDataIdentity { /** diff --git a/specification/search/data-plane/Search/stable/2024-07-01/search.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json index cf8ebb969292..9de2ade68c67 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/search.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -9555,7 +9555,7 @@ }, "SearchIndexerDataNoneIdentity": { "type": "object", - "description": "Specifies the AI Services Vision parameters for vectorizing a query image or\ntext.", + "description": "Clears the identity property of a datasource.", "allOf": [ { "$ref": "#/definitions/SearchIndexerDataIdentity" From 91a09b70e9883209b8edc35813b1fc1cb3912895 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 21 Jan 2025 12:47:29 -0800 Subject: [PATCH 51/78] Update specification/search/Azure.Search/models-index.tsp Co-authored-by: catalinaperalta --- specification/search/Azure.Search/models-index.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index ddf66c12e249..1ad867fc273b 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -814,7 +814,7 @@ model SuggestRequest { * $orderby is specified, the default sort order is descending by document match * score. There can be at most 32 $orderby clauses. */ - orderby?: string; + $orderby?: string; /** * The search text to use to suggest documents. Must be at least 1 character, and From f9aca098e43ca885aa6a34d92a24a87972c1a9c6 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 21 Jan 2025 12:47:39 -0800 Subject: [PATCH 52/78] Update specification/search/Azure.Search/models-index.tsp Co-authored-by: catalinaperalta --- specification/search/Azure.Search/models-index.tsp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index 1ad867fc273b..69a7ed0bb2bc 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -394,8 +394,7 @@ model FacetResult { * results. Answer candidates are scored and the top answers are selected. */ #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" -model QueryAnswerResult { - ...Record; +model QueryAnswerResult extends Record { /** * The score value represents how relevant the answer is to the query relative to From 4af6f6ac5fec8be3ce060825d58277dec30151bd Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 21 Jan 2025 12:47:46 -0800 Subject: [PATCH 53/78] Update specification/search/Azure.Search/models-index.tsp Co-authored-by: catalinaperalta --- specification/search/Azure.Search/models-index.tsp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index 69a7ed0bb2bc..08e13b7ccbbb 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -377,8 +377,7 @@ model SearchDocumentsResult { * interval. */ #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" -model FacetResult { - ...Record; +model FacetResult extends Record { /** * The approximate count of documents falling within the bucket described by this From 9a2ed64162a85fc5f6d8e1f9b0b4cdd26a1b8170 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 21 Jan 2025 12:47:54 -0800 Subject: [PATCH 54/78] Update specification/search/Azure.Search/models-index.tsp Co-authored-by: catalinaperalta --- specification/search/Azure.Search/models-index.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index 08e13b7ccbbb..8e54734b3d12 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -481,7 +481,7 @@ model SearchRequest { * $orderby is specified, the default sort order is descending by document match * score. There can be at most 32 $orderby clauses. */ - orderby?: string; + $orderby?: string; /** * A value that specifies the syntax of the search query. The default is 'simple'. From 69a824d4c308561cfa024212c1278869d3ad2157 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 21 Jan 2025 13:38:52 -0800 Subject: [PATCH 55/78] update cspell --- cspell.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cspell.yaml b/cspell.yaml index 37c1b46e2bde..1e82461063d6 100644 --- a/cspell.yaml +++ b/cspell.yaml @@ -35,6 +35,7 @@ words: - byos - cadl - contoso + - discretizing - eastus - entra - fqdns @@ -48,6 +49,7 @@ words: - onboarded - payg - regen + - rerank - rpaas - skus - vmss From c7e32d4a47baea08993392f953e4455723f3aa62 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 21 Jan 2025 14:01:25 -0800 Subject: [PATCH 56/78] updates --- .../search/Azure.Search/models-index.tsp | 56 ++---- .../search/Azure.Search/models-service.tsp | 56 ++---- .../search/Azure.Search/models-shared.tsp | 49 +++-- .../search/Azure.Search/routes-service.tsp | 68 +++++-- .../Search/stable/2024-07-01/search.json | 190 +++++------------- 5 files changed, 159 insertions(+), 260 deletions(-) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index 8e54734b3d12..c1624446772c 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -301,7 +301,6 @@ model SearchDocumentsResult { * parameters, or if the query can't return all the requested documents in a * single response. */ - @visibility("read") @encodedName("application/json", "@odata.count") count?: int64; @@ -309,7 +308,6 @@ model SearchDocumentsResult { * A value indicating the percentage of the index that was included in the query, * or null if minimumCoverage was not specified in the request. */ - @visibility("read") @encodedName("application/json", "@search.coverage") coverage?: float64; @@ -318,7 +316,6 @@ model SearchDocumentsResult { * buckets for each faceted field; null if the query did not include any facet * expressions. */ - @visibility("read") @encodedName("application/json", "@search.facets") facets?: Record; @@ -326,24 +323,21 @@ model SearchDocumentsResult { * The answers query results for the search operation; null if the answers query * parameter was not specified or set to 'none'. */ - @visibility("read") @encodedName("application/json", "@search.answers") answers?: QueryAnswerResult[]; - @doc(""" - Continuation JSON payload returned when the query can't return all the - requested results in a single response. You can use this JSON along with - @odata.nextLink to formulate another POST Search request to get the next part - of the search response. - """) - @visibility("read") + /** + * Continuation JSON payload returned when the query can't return all the + * requested results in a single response. You can use this JSON along with + * @odata.nextLink to formulate another POST Search request to get the next part + * of the search response. + * / @encodedName("application/json", "@search.nextPageParameters") nextPageParameters?: SearchRequest; /** * The sequence of results returned by the query. */ - @visibility("read") value: SearchResult[]; /** @@ -352,21 +346,18 @@ model SearchDocumentsResult { * Search request to get the next part of the search response. Make sure to use * the same verb (GET or POST) as the request that produced this response. */ - @visibility("read") @encodedName("application/json", "@odata.nextLink") nextLink?: string; /** * Reason that a partial response was returned for a semantic ranking request. */ - @visibility("read") @encodedName("application/json", "@search.semanticPartialResponseReason") semanticPartialResponseReason?: SemanticErrorReason; /** * Type of partial response that was returned for a semantic ranking request. */ - @visibility("read") @encodedName("application/json", "@search.semanticPartialResponseType") semanticPartialResponseType?: SemanticSearchResultsType; } @@ -377,13 +368,12 @@ model SearchDocumentsResult { * interval. */ #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" -model FacetResult extends Record { +model FacetResult is Record { /** * The approximate count of documents falling within the bucket described by this * facet. */ - @visibility("read") count?: int64; } @@ -393,32 +383,28 @@ model FacetResult extends Record { * results. Answer candidates are scored and the top answers are selected. */ #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" -model QueryAnswerResult extends Record { +model QueryAnswerResult is Record { /** * The score value represents how relevant the answer is to the query relative to * other answers returned for the query. */ - @visibility("read") score?: float64; /** * The key of the document the answer was extracted from. */ - @visibility("read") key?: string; /** * The text passage extracted from the document contents as the answer. */ - @visibility("read") text?: string; /** * Same text passage as in the Text property with highlighted text phrases most * relevant to the query. */ - @visibility("read") highlights?: string; } @@ -658,7 +644,9 @@ model VectorQuery { */ weight?: float32; - @doc("Type of query.") + /** + * Type of query. + */ kind: VectorQueryKind; } @@ -673,7 +661,6 @@ model SearchResult { * The relevance score of the document compared to other documents returned by the * query. */ - @visibility("read") @encodedName("application/json", "@search.score") score: float64; @@ -682,7 +669,6 @@ model SearchResult { * Search results are sorted by the RerankerScore first and then by the Score. * RerankerScore is only returned for queries of type 'semantic'. */ - @visibility("read") @encodedName("application/json", "@search.rerankerScore") rerankerScore?: float64; @@ -691,7 +677,6 @@ model SearchResult { * organized by each applicable field; null if hit highlighting was not enabled * for the query. */ - @visibility("read") @encodedName("application/json", "@search.highlights") highlights?: Record; @@ -700,7 +685,6 @@ model SearchResult { * the search query. They are often used as document summary. Captions are only * returned for queries of type 'semantic'. */ - @visibility("read") @encodedName("application/json", "@search.captions") captions?: QueryCaptionResult[]; } @@ -718,14 +702,12 @@ model QueryCaptionResult { * A representative text passage extracted from the document most relevant to the * search query. */ - @visibility("read") text?: string; /** * Same text passage as in the Text property with highlighted phrases most * relevant to the query. */ - @visibility("read") highlights?: string; } @@ -736,14 +718,12 @@ model SuggestDocumentsResult { /** * The sequence of results returned by the query. */ - @visibility("read") value: SuggestResult[]; /** * A value indicating the percentage of the index that was included in the query, * or null if minimumCoverage was not set in the request. */ - @visibility("read") @encodedName("application/json", "@search.coverage") coverage?: float64; } @@ -759,7 +739,6 @@ model SuggestResult { /** * The text of the suggestion result. */ - @visibility("read") @encodedName("application/json", "@search.text") text: string; } @@ -882,15 +861,16 @@ model LookupDocument { * request. */ model IndexDocumentsResult { + /** + * Response containing the status of operations for all actions in the batch. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("Response containing the status of operations for all actions in the batch.") @statusCode _: 200 | 207; /** * The list of status information for each document in the indexing request. */ - @visibility("read") value: IndexingResult[]; } @@ -901,21 +881,18 @@ model IndexingResult { /** * The key of a document that was in the indexing request. */ - @visibility("read") key: string; /** * The error message explaining why the indexing operation failed for the document * identified by the key; null if indexing succeeded. */ - @visibility("read") errorMessage?: string; /** * A value indicating whether the indexing operation succeeded for the document * identified by the key. */ - @visibility("read") status: boolean; /** @@ -925,7 +902,6 @@ model IndexingResult { * conflict, 422 when the index is temporarily unavailable, or 503 for when the * service is too busy. */ - @visibility("read") statusCode: int32; } @@ -938,14 +914,12 @@ model AutocompleteResult { * autocomplete request, or null if minimumCoverage was not specified in the * request. */ - @visibility("read") @encodedName("application/json", "@search.coverage") coverage?: float64; /** * The list of returned Autocompleted items. */ - @visibility("read") value: AutocompleteItem[]; } @@ -956,13 +930,11 @@ model AutocompleteItem { /** * The completed term. */ - @visibility("read") text: string; /** * The query along with the completed term. */ - @visibility("read") queryPlusText: string; } diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 24253a1cb151..464a155b9b48 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -4891,7 +4891,6 @@ model ListDataSourcesResult { /** * The datasources in the Search service. */ - @visibility("read") value: SearchIndexerDataSource[]; } @@ -5179,7 +5178,6 @@ model ListIndexersResult { /** * The indexers in the Search service. */ - @visibility("read") value: SearchIndexer[]; } @@ -5190,25 +5188,21 @@ model SearchIndexerStatus { /** * Overall indexer status. */ - @visibility("read") status: IndexerStatus; /** * The result of the most recent or an in-progress indexer execution. */ - @visibility("read") lastResult?: IndexerExecutionResult; /** * History of the recent indexer executions, sorted in reverse chronological order. */ - @visibility("read") executionHistory: IndexerExecutionResult[]; /** * The execution limits for the indexer. */ - @visibility("read") limits: SearchIndexerLimits; } @@ -5219,37 +5213,31 @@ model IndexerExecutionResult { /** * The outcome of this indexer execution. */ - @visibility("read") status: IndexerExecutionStatus; /** * The error message indicating the top-level error, if any. */ - @visibility("read") errorMessage?: string; /** * The start time of this indexer execution. */ - @visibility("read") startTime?: utcDateTime; /** * The end time of this indexer execution, if the execution has already completed. */ - @visibility("read") endTime?: utcDateTime; /** * The item-level indexing errors. */ - @visibility("read") errors: SearchIndexerError[]; /** * The item-level indexing warnings. */ - @visibility("read") warnings: SearchIndexerWarning[]; /** @@ -5257,25 +5245,21 @@ model IndexerExecutionResult { * includes both successfully processed items and items where indexing was * attempted but failed. */ - @visibility("read") itemsProcessed: int32; /** * The number of items that failed to be indexed during this indexer execution. */ - @visibility("read") itemsFailed: int32; /** * Change tracking state with which an indexer execution started. */ - @visibility("read") initialTrackingState?: string; /** * Change tracking state with which an indexer execution finished. */ - @visibility("read") finalTrackingState?: string; } @@ -5287,13 +5271,11 @@ model SearchIndexerError { /** * The key of the item for which indexing failed. */ - @visibility("read") key?: string; /** * The message describing the error that occurred while processing the item. */ - @visibility("read") errorMessage: string; /** @@ -5302,7 +5284,6 @@ model SearchIndexerError { * for a version conflict, 422 when the index is temporarily unavailable, or 503 * for when the service is too busy. */ - @visibility("read") statusCode: int32; /** @@ -5310,21 +5291,18 @@ model SearchIndexerError { * refer to a particular skill in the attached skillset. This may not be always * available. */ - @visibility("read") name?: string; /** * Additional, verbose details about the error to assist in debugging the indexer. * This may not be always available. */ - @visibility("read") details?: string; /** * A link to a troubleshooting guide for these classes of errors. This may not be * always available. */ - @visibility("read") documentationLink?: string; } @@ -5335,13 +5313,11 @@ model SearchIndexerWarning { /** * The key of the item which generated a warning. */ - @visibility("read") key?: string; /** * The message describing the warning that occurred while processing the item. */ - @visibility("read") message: string; /** @@ -5349,21 +5325,18 @@ model SearchIndexerWarning { * refer to a particular skill in the attached skillset. This may not be always * available. */ - @visibility("read") name?: string; /** * Additional, verbose details about the warning to assist in debugging the * indexer. This may not be always available. */ - @visibility("read") details?: string; /** * A link to a troubleshooting guide for these classes of warnings. This may not * be always available. */ - @visibility("read") documentationLink?: string; } @@ -5374,21 +5347,18 @@ model SearchIndexerLimits { /** * The maximum duration that the indexer is permitted to run for one execution. */ - @visibility("read") maxRunTime?: duration; /** * The maximum size of a document, in bytes, which will be considered valid for * indexing. */ - @visibility("read") maxDocumentExtractionSize?: int64; /** * The maximum number of characters that will be extracted from a document picked * up for indexing. */ - @visibility("read") maxDocumentContentCharactersToExtract?: int64; } @@ -5719,7 +5689,6 @@ model ListSkillsetsResult { /** * The skillsets defined in the Search service. */ - @visibility("read") value: SearchIndexerSkillset[]; } @@ -5771,7 +5740,6 @@ model ListSynonymMapsResult { /** * The synonym maps in the Search service. */ - @visibility("read") value: SynonymMap[]; } @@ -6096,7 +6064,9 @@ model ScoringFunction { */ interpolation?: ScoringFunctionInterpolation; - @doc("Type of ScoringFunction.") + /** + * Type of ScoringFunction. + */ type: string; } @@ -6366,7 +6336,9 @@ model VectorSearchAlgorithmConfiguration { */ name: string; - @doc("Type of VectorSearchAlgorithmConfiguration.") + /** + * Type of VectorSearchAlgorithmConfiguration. + */ kind: VectorSearchAlgorithmKind; } @@ -6380,7 +6352,9 @@ model VectorSearchVectorizer { */ name: string; - @doc("Type of VectorSearchVectorizer.") + /** + * Type of VectorSearchVectorizer. + */ kind: VectorSearchVectorizerKind; } @@ -6413,7 +6387,9 @@ model VectorSearchCompression { */ defaultOversampling?: float64; - @doc("Type of VectorSearchCompression.") + /** + * Type of VectorSearchCompression. + */ kind: VectorSearchCompressionKind; } @@ -6426,7 +6402,6 @@ model ListIndexesResult { /** * The indexes in the Search service. */ - @visibility("read") @items value: SearchIndex[]; } @@ -6439,19 +6414,16 @@ model GetIndexStatisticsResult { /** * The number of documents in the index. */ - @visibility("read") documentCount: int64; /** * The amount of storage in bytes consumed by the index. */ - @visibility("read") storageSize: int64; /** * The amount of memory in bytes consumed by vectors in the index. */ - @visibility("read") vectorIndexSize: int64; } @@ -6508,19 +6480,16 @@ model AnalyzedTokenInfo { /** * The token returned by the analyzer. */ - @visibility("read") token: string; /** * The index of the first character of the token in the input text. */ - @visibility("read") startOffset: int32; /** * The index of the last character of the token in the input text. */ - @visibility("read") endOffset: int32; /** @@ -6529,7 +6498,6 @@ model AnalyzedTokenInfo { * Depending on the analyzer used, some tokens might have the same position, for * example if they are synonyms of each other. */ - @visibility("read") position: int32; } diff --git a/specification/search/Azure.Search/models-shared.tsp b/specification/search/Azure.Search/models-shared.tsp index a500f1050f09..5bb61d8f2202 100644 --- a/specification/search/Azure.Search/models-shared.tsp +++ b/specification/search/Azure.Search/models-shared.tsp @@ -9,57 +9,73 @@ using Azure.Core; namespace Search; alias matchingHeader = { - @doc("Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.") + /** + * Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. + */ @header("If-Match") ifMatch?: string; - @doc("Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.") + /** + * Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. + */ @header("If-None-Match") ifNoneMatch?: string; }; alias preferHeader = { - @doc("For HTTP PUT requests, instructs the service to return the created/updated resource on success.") + /** + * For HTTP PUT requests, instructs the service to return the created/updated resource on success. + */ @header("Prefer") prefer: "return=representation"; }; alias selectQuery = { - @doc(""" - Selects which top-level properties to retrieve. - Specified as a comma-separated list of JSON property names, - or '*' for all properties. The default is all properties. - """) + /** + * Selects which top-level properties to retrieve. + * Specified as a comma-separated list of JSON property names, + * or '*' for all properties. The default is all properties. + */ @query $select?: string; }; alias indexNamePath = { - @doc("The name of the index.") + /** + * The name of the index. + */ @path indexName: string; }; alias indexerNamePath = { - @doc("The name of the indexer.") + /** + * The name of the indexer. + */ @path indexerName: string; }; alias dataSourceNamePath = { - @doc("The name of the datasource.") + /** + * The name of the datasource. + */ @path dataSourceName: string; }; alias skillsetNamePath = { - @doc("The name of the skillset.") + /** + * The name of the skillset. + */ @path skillsetName: string; }; alias synonymMapNamePath = { - @doc("The name of the synonym map.") + /** + * The name of the synonym map. + */ @path synonymMapName: string; }; @@ -156,31 +172,26 @@ model ErrorDetail { /** * The error code. */ - @visibility("read") code?: string; /** * The error message. */ - @visibility("read") message?: string; /** * The error target. */ - @visibility("read") target?: string; /** * The error details. */ - @visibility("read") details?: ErrorDetail[]; /** * The error additional info. */ - @visibility("read") additionalInfo?: ErrorAdditionalInfo[]; } @@ -191,12 +202,10 @@ model ErrorAdditionalInfo { /** * The additional info type. */ - @visibility("read") type?: string; /** * The additional info. */ - @visibility("read") info?: Record; } diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index 4ee4278b5ae6..3d031af310fb 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -27,8 +27,10 @@ interface DataSourcesOperations { dataSource: SearchIndexerDataSource; }, SearchIndexerDataSource & { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "200" | "201"; } @@ -45,8 +47,10 @@ interface DataSourcesOperations { ...matchingHeader; }, { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "204" | "404"; } @@ -84,7 +88,9 @@ interface DataSourcesOperations { dataSource: SearchIndexerDataSource; }, SearchIndexerDataSource & { - @doc("A process exit code.") + /** + * A process exit code. + */ @statusCode code: "201"; } @@ -101,7 +107,9 @@ interface IndexersOperations { reset is SearchIndexerOperation< {}, { - @doc("A process exit code.") + /** + * A process exit code. + */ @statusCode code: "204"; } @@ -116,7 +124,9 @@ interface IndexersOperations { run is SearchIndexerOperation< {}, { - @doc("A process exit code.") + /** + * A process exit code. + */ @statusCode code: "202"; } @@ -141,8 +151,10 @@ interface IndexersOperations { indexer: SearchIndexer; }, SearchIndexer & { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "200" | "201"; } @@ -159,8 +171,10 @@ interface IndexersOperations { ...matchingHeader; }, { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "204" | "404"; } @@ -200,7 +214,9 @@ interface IndexersOperations { indexer: SearchIndexer; }, SearchIndexer & { - @doc("A process exit code.") + /** + * A process exit code. + */ @statusCode code: "201"; } @@ -237,8 +253,10 @@ interface SkillsetsOperations { skillset: SearchIndexerSkillset; }, SearchIndexerSkillset & { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "200" | "201"; } @@ -256,8 +274,10 @@ interface SkillsetsOperations { ...matchingHeader; }, { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "204" | "404"; } @@ -295,7 +315,9 @@ interface SkillsetsOperations { skillset: SearchIndexerSkillset; }, SearchIndexerSkillset & { - @doc("A process exit code.") + /** + * A process exit code. + */ @statusCode code: "201"; } @@ -322,8 +344,10 @@ interface SynonymMapsOperations { synonymMap: SynonymMap; }, SynonymMap & { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "200" | "201"; } @@ -340,8 +364,10 @@ interface SynonymMapsOperations { ...matchingHeader; }, { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "204" | "404"; } @@ -380,7 +406,9 @@ interface SynonymMapsOperations { synonymMap: SynonymMap; }, SynonymMap & { - @doc("A process exit code.") + /** + * A process exit code. + */ @statusCode code: "201"; } @@ -403,7 +431,9 @@ interface IndexesOperations { index: SearchIndex; }, SearchIndex & { - @doc("A process exit code.") + /** + * A process exit code. + */ @statusCode code: "201"; } @@ -448,8 +478,10 @@ interface IndexesOperations { index: SearchIndex; }, SearchIndex & { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "200" | "201"; } @@ -469,8 +501,10 @@ interface IndexesOperations { ...matchingHeader; }, { + /** + * A process exit code. + */ #suppress "@azure-tools/typespec-azure-core/no-closed-literal-union" "return status code" - @doc("A process exit code.") @statusCode code: "204" | "404"; } diff --git a/specification/search/data-plane/Search/stable/2024-07-01/search.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json index 9de2ade68c67..1cade1cff147 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/search.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -2596,26 +2596,22 @@ "properties": { "token": { "type": "string", - "description": "The token returned by the analyzer.", - "readOnly": true + "description": "The token returned by the analyzer." }, "startOffset": { "type": "integer", "format": "int32", - "description": "The index of the first character of the token in the input text.", - "readOnly": true + "description": "The index of the first character of the token in the input text." }, "endOffset": { "type": "integer", "format": "int32", - "description": "The index of the last character of the token in the input text.", - "readOnly": true + "description": "The index of the last character of the token in the input text." }, "position": { "type": "integer", "format": "int32", - "description": "The position of the token in the input text relative to other tokens. The first\ntoken in the input text has position 0, the next has position 1, and so on.\nDepending on the analyzer used, some tokens might have the same position, for\nexample if they are synonyms of each other.", - "readOnly": true + "description": "The position of the token in the input text relative to other tokens. The first\ntoken in the input text has position 0, the next has position 1, and so on.\nDepending on the analyzer used, some tokens might have the same position, for\nexample if they are synonyms of each other." } }, "required": [ @@ -2647,13 +2643,11 @@ "properties": { "text": { "type": "string", - "description": "The completed term.", - "readOnly": true + "description": "The completed term." }, "queryPlusText": { "type": "string", - "description": "The query along with the completed term.", - "readOnly": true + "description": "The query along with the completed term." } }, "required": [ @@ -2751,7 +2745,6 @@ "type": "number", "format": "double", "description": "A value indicating the percentage of the index that was considered by the\nautocomplete request, or null if minimumCoverage was not specified in the\nrequest.", - "readOnly": true, "x-ms-client-name": "coverage" }, "value": { @@ -2760,7 +2753,6 @@ "items": { "$ref": "#/definitions/AutocompleteItem" }, - "readOnly": true, "x-ms-identifiers": [] } }, @@ -4104,16 +4096,14 @@ "properties": { "type": { "type": "string", - "description": "The additional info type.", - "readOnly": true + "description": "The additional info type." }, "info": { "type": "object", "description": "The additional info.", "additionalProperties": { "type": "string" - }, - "readOnly": true + } } } }, @@ -4123,18 +4113,15 @@ "properties": { "code": { "type": "string", - "description": "The error code.", - "readOnly": true + "description": "The error code." }, "message": { "type": "string", - "description": "The error message.", - "readOnly": true + "description": "The error message." }, "target": { "type": "string", - "description": "The error target.", - "readOnly": true + "description": "The error target." }, "details": { "type": "array", @@ -4142,7 +4129,6 @@ "items": { "$ref": "#/definitions/ErrorDetail" }, - "readOnly": true, "x-ms-identifiers": [] }, "additionalInfo": { @@ -4151,7 +4137,6 @@ "items": { "$ref": "#/definitions/ErrorAdditionalInfo" }, - "readOnly": true, "x-ms-identifiers": [] } } @@ -4199,8 +4184,7 @@ "count": { "type": "integer", "format": "int64", - "description": "The approximate count of documents falling within the bucket described by this\nfacet.", - "readOnly": true + "description": "The approximate count of documents falling within the bucket described by this\nfacet." } }, "additionalProperties": {} @@ -4284,20 +4268,17 @@ "documentCount": { "type": "integer", "format": "int64", - "description": "The number of documents in the index.", - "readOnly": true + "description": "The number of documents in the index." }, "storageSize": { "type": "integer", "format": "int64", - "description": "The amount of storage in bytes consumed by the index.", - "readOnly": true + "description": "The amount of storage in bytes consumed by the index." }, "vectorIndexSize": { "type": "integer", "format": "int64", - "description": "The amount of memory in bytes consumed by vectors in the index.", - "readOnly": true + "description": "The amount of memory in bytes consumed by vectors in the index." } }, "required": [ @@ -4828,7 +4809,6 @@ "items": { "$ref": "#/definitions/IndexingResult" }, - "readOnly": true, "x-ms-identifiers": [] } }, @@ -4890,25 +4870,21 @@ "properties": { "status": { "$ref": "#/definitions/IndexerExecutionStatus", - "description": "The outcome of this indexer execution.", - "readOnly": true + "description": "The outcome of this indexer execution." }, "errorMessage": { "type": "string", - "description": "The error message indicating the top-level error, if any.", - "readOnly": true + "description": "The error message indicating the top-level error, if any." }, "startTime": { "type": "string", "format": "date-time", - "description": "The start time of this indexer execution.", - "readOnly": true + "description": "The start time of this indexer execution." }, "endTime": { "type": "string", "format": "date-time", - "description": "The end time of this indexer execution, if the execution has already completed.", - "readOnly": true + "description": "The end time of this indexer execution, if the execution has already completed." }, "errors": { "type": "array", @@ -4916,7 +4892,6 @@ "items": { "$ref": "#/definitions/SearchIndexerError" }, - "readOnly": true, "x-ms-identifiers": [] }, "warnings": { @@ -4925,30 +4900,25 @@ "items": { "$ref": "#/definitions/SearchIndexerWarning" }, - "readOnly": true, "x-ms-identifiers": [] }, "itemsProcessed": { "type": "integer", "format": "int32", - "description": "The number of items that were processed during this indexer execution. This\nincludes both successfully processed items and items where indexing was\nattempted but failed.", - "readOnly": true + "description": "The number of items that were processed during this indexer execution. This\nincludes both successfully processed items and items where indexing was\nattempted but failed." }, "itemsFailed": { "type": "integer", "format": "int32", - "description": "The number of items that failed to be indexed during this indexer execution.", - "readOnly": true + "description": "The number of items that failed to be indexed during this indexer execution." }, "initialTrackingState": { "type": "string", - "description": "Change tracking state with which an indexer execution started.", - "readOnly": true + "description": "Change tracking state with which an indexer execution started." }, "finalTrackingState": { "type": "string", - "description": "Change tracking state with which an indexer execution finished.", - "readOnly": true + "description": "Change tracking state with which an indexer execution finished." } }, "required": [ @@ -5270,24 +5240,20 @@ "properties": { "key": { "type": "string", - "description": "The key of a document that was in the indexing request.", - "readOnly": true + "description": "The key of a document that was in the indexing request." }, "errorMessage": { "type": "string", - "description": "The error message explaining why the indexing operation failed for the document\nidentified by the key; null if indexing succeeded.", - "readOnly": true + "description": "The error message explaining why the indexing operation failed for the document\nidentified by the key; null if indexing succeeded." }, "status": { "type": "boolean", - "description": "A value indicating whether the indexing operation succeeded for the document\nidentified by the key.", - "readOnly": true + "description": "A value indicating whether the indexing operation succeeded for the document\nidentified by the key." }, "statusCode": { "type": "integer", "format": "int32", - "description": "The status code of the indexing operation. Possible values include: 200 for a\nsuccessful update or delete, 201 for successful document creation, 400 for a\nmalformed input document, 404 for document not found, 409 for a version\nconflict, 422 when the index is temporarily unavailable, or 503 for when the\nservice is too busy.", - "readOnly": true + "description": "The status code of the indexing operation. Possible values include: 200 for a\nsuccessful update or delete, 201 for successful document creation, 400 for a\nmalformed input document, 404 for document not found, 409 for a version\nconflict, 422 when the index is temporarily unavailable, or 503 for when the\nservice is too busy." } }, "required": [ @@ -6341,7 +6307,6 @@ "items": { "$ref": "#/definitions/SearchIndexerDataSource" }, - "readOnly": true, "x-ms-identifiers": [] } }, @@ -6359,7 +6324,6 @@ "items": { "$ref": "#/definitions/SearchIndexer" }, - "readOnly": true, "x-ms-identifiers": [] } }, @@ -6377,7 +6341,6 @@ "items": { "$ref": "#/definitions/SearchIndex" }, - "readOnly": true, "x-ms-identifiers": [] } }, @@ -6395,7 +6358,6 @@ "items": { "$ref": "#/definitions/SearchIndexerSkillset" }, - "readOnly": true, "x-ms-identifiers": [] } }, @@ -6413,7 +6375,6 @@ "items": { "$ref": "#/definitions/SynonymMap" }, - "readOnly": true, "x-ms-identifiers": [] } }, @@ -8717,23 +8678,19 @@ "score": { "type": "number", "format": "double", - "description": "The score value represents how relevant the answer is to the query relative to\nother answers returned for the query.", - "readOnly": true + "description": "The score value represents how relevant the answer is to the query relative to\nother answers returned for the query." }, "key": { "type": "string", - "description": "The key of the document the answer was extracted from.", - "readOnly": true + "description": "The key of the document the answer was extracted from." }, "text": { "type": "string", - "description": "The text passage extracted from the document contents as the answer.", - "readOnly": true + "description": "The text passage extracted from the document contents as the answer." }, "highlights": { "type": "string", - "description": "Same text passage as in the Text property with highlighted text phrases most\nrelevant to the query.", - "readOnly": true + "description": "Same text passage as in the Text property with highlighted text phrases most\nrelevant to the query." } }, "additionalProperties": {} @@ -8768,13 +8725,11 @@ "properties": { "text": { "type": "string", - "description": "A representative text passage extracted from the document most relevant to the\nsearch query.", - "readOnly": true + "description": "A representative text passage extracted from the document most relevant to the\nsearch query." }, "highlights": { "type": "string", - "description": "Same text passage as in the Text property with highlighted phrases most\nrelevant to the query.", - "readOnly": true + "description": "Same text passage as in the Text property with highlighted phrases most\nrelevant to the query." } }, "additionalProperties": {} @@ -9106,14 +9061,12 @@ "type": "integer", "format": "int64", "description": "The total count of results found by the search operation, or null if the count\nwas not requested. If present, the count may be greater than the number of\nresults in this response. This can happen if you use the $top or $skip\nparameters, or if the query can't return all the requested documents in a\nsingle response.", - "readOnly": true, "x-ms-client-name": "count" }, "@search.coverage": { "type": "number", "format": "double", "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not specified in the request.", - "readOnly": true, "x-ms-client-name": "coverage" }, "@search.facets": { @@ -9126,7 +9079,6 @@ "type": "array", "x-ms-identifiers": [] }, - "readOnly": true, "x-ms-client-name": "facets" }, "@search.answers": { @@ -9135,41 +9087,30 @@ "items": { "$ref": "#/definitions/QueryAnswerResult" }, - "readOnly": true, "x-ms-client-name": "answers", "x-ms-identifiers": [] }, - "@search.nextPageParameters": { - "$ref": "#/definitions/SearchRequest", - "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with\n@odata.nextLink to formulate another POST Search request to get the next part\nof the search response.", - "readOnly": true, - "x-ms-client-name": "nextPageParameters" - }, "value": { "type": "array", - "description": "The sequence of results returned by the query.", + "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with", "items": { "$ref": "#/definitions/SearchResult" }, - "readOnly": true, "x-ms-identifiers": [] }, "@odata.nextLink": { "type": "string", "description": "Continuation URL returned when the query can't return all the requested results\nin a single response. You can use this URL to formulate another GET or POST\nSearch request to get the next part of the search response. Make sure to use\nthe same verb (GET or POST) as the request that produced this response.", - "readOnly": true, "x-ms-client-name": "nextLink" }, "@search.semanticPartialResponseReason": { "$ref": "#/definitions/SemanticErrorReason", "description": "Reason that a partial response was returned for a semantic ranking request.", - "readOnly": true, "x-ms-client-name": "semanticPartialResponseReason" }, "@search.semanticPartialResponseType": { "$ref": "#/definitions/SemanticSearchResultsType", "description": "Type of partial response that was returned for a semantic ranking request.", - "readOnly": true, "x-ms-client-name": "semanticPartialResponseType" } }, @@ -9685,34 +9626,28 @@ "properties": { "key": { "type": "string", - "description": "The key of the item for which indexing failed.", - "readOnly": true + "description": "The key of the item for which indexing failed." }, "errorMessage": { "type": "string", - "description": "The message describing the error that occurred while processing the item.", - "readOnly": true + "description": "The message describing the error that occurred while processing the item." }, "statusCode": { "type": "integer", "format": "int32", - "description": "The status code indicating why the indexing operation failed. Possible values\ninclude: 400 for a malformed input document, 404 for document not found, 409\nfor a version conflict, 422 when the index is temporarily unavailable, or 503\nfor when the service is too busy.", - "readOnly": true + "description": "The status code indicating why the indexing operation failed. Possible values\ninclude: 400 for a malformed input document, 404 for document not found, 409\nfor a version conflict, 422 when the index is temporarily unavailable, or 503\nfor when the service is too busy." }, "name": { "type": "string", - "description": "The name of the source at which the error originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable.", - "readOnly": true + "description": "The name of the source at which the error originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable." }, "details": { "type": "string", - "description": "Additional, verbose details about the error to assist in debugging the indexer.\nThis may not be always available.", - "readOnly": true + "description": "Additional, verbose details about the error to assist in debugging the indexer.\nThis may not be always available." }, "documentationLink": { "type": "string", - "description": "A link to a troubleshooting guide for these classes of errors. This may not be\nalways available.", - "readOnly": true + "description": "A link to a troubleshooting guide for these classes of errors. This may not be\nalways available." } }, "required": [ @@ -9938,20 +9873,17 @@ "maxRunTime": { "type": "string", "format": "duration", - "description": "The maximum duration that the indexer is permitted to run for one execution.", - "readOnly": true + "description": "The maximum duration that the indexer is permitted to run for one execution." }, "maxDocumentExtractionSize": { "type": "integer", "format": "int64", - "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing.", - "readOnly": true + "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing." }, "maxDocumentContentCharactersToExtract": { "type": "integer", "format": "int64", - "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing.", - "readOnly": true + "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing." } } }, @@ -10052,13 +9984,11 @@ "properties": { "status": { "$ref": "#/definitions/IndexerStatus", - "description": "Overall indexer status.", - "readOnly": true + "description": "Overall indexer status." }, "lastResult": { "$ref": "#/definitions/IndexerExecutionResult", - "description": "The result of the most recent or an in-progress indexer execution.", - "readOnly": true + "description": "The result of the most recent or an in-progress indexer execution." }, "executionHistory": { "type": "array", @@ -10066,13 +9996,11 @@ "items": { "$ref": "#/definitions/IndexerExecutionResult" }, - "readOnly": true, "x-ms-identifiers": [] }, "limits": { "$ref": "#/definitions/SearchIndexerLimits", - "description": "The execution limits for the indexer.", - "readOnly": true + "description": "The execution limits for the indexer." } }, "required": [ @@ -10087,28 +10015,23 @@ "properties": { "key": { "type": "string", - "description": "The key of the item which generated a warning.", - "readOnly": true + "description": "The key of the item which generated a warning." }, "message": { "type": "string", - "description": "The message describing the warning that occurred while processing the item.", - "readOnly": true + "description": "The message describing the warning that occurred while processing the item." }, "name": { "type": "string", - "description": "The name of the source at which the warning originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable.", - "readOnly": true + "description": "The name of the source at which the warning originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable." }, "details": { "type": "string", - "description": "Additional, verbose details about the warning to assist in debugging the\nindexer. This may not be always available.", - "readOnly": true + "description": "Additional, verbose details about the warning to assist in debugging the\nindexer. This may not be always available." }, "documentationLink": { "type": "string", - "description": "A link to a troubleshooting guide for these classes of warnings. This may not\nbe always available.", - "readOnly": true + "description": "A link to a troubleshooting guide for these classes of warnings. This may not\nbe always available." } }, "required": [ @@ -10175,7 +10098,7 @@ "format": "double", "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100." }, - "orderby": { + "$orderby": { "type": "string", "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." }, @@ -10303,14 +10226,12 @@ "type": "number", "format": "double", "description": "The relevance score of the document compared to other documents returned by the\nquery.", - "readOnly": true, "x-ms-client-name": "score" }, "@search.rerankerScore": { "type": "number", "format": "double", "description": "The relevance score computed by the semantic ranker for the top search results.\nSearch results are sorted by the RerankerScore first and then by the Score.\nRerankerScore is only returned for queries of type 'semantic'.", - "readOnly": true, "x-ms-client-name": "rerankerScore" }, "@search.highlights": { @@ -10322,7 +10243,6 @@ }, "type": "array" }, - "readOnly": true, "x-ms-client-name": "highlights" }, "@search.captions": { @@ -10331,7 +10251,6 @@ "items": { "$ref": "#/definitions/QueryCaptionResult" }, - "readOnly": true, "x-ms-client-name": "captions", "x-ms-identifiers": [] } @@ -11908,14 +11827,12 @@ "items": { "$ref": "#/definitions/SuggestResult" }, - "readOnly": true, "x-ms-identifiers": [] }, "@search.coverage": { "type": "number", "format": "double", "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not set in the request.", - "readOnly": true, "x-ms-client-name": "coverage" } }, @@ -11948,7 +11865,7 @@ "format": "double", "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestion query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." }, - "orderby": { + "$orderby": { "type": "string", "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." }, @@ -11986,7 +11903,6 @@ "@search.text": { "type": "string", "description": "The text of the suggestion result.", - "readOnly": true, "x-ms-client-name": "text" } }, From 0ba00f84b2ccbbbef37c36e1921295f5041c123e Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 21 Jan 2025 14:05:56 -0800 Subject: [PATCH 57/78] update --- specification/search/Azure.Search/client.tsp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 0b73c7eb2611..ac256be0f828 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -18,10 +18,10 @@ namespace Customizations; @@clientName(SearchRequest.count, "includeTotalResultCount"); @@clientName(SearchRequest.highlight, "highlightFields"); @@clientName(SearchRequest.search, "searchText"); -@@clientName(SearchRequest.orderby, "orderBy"); +@@clientName(SearchRequest.$orderby, "$orderBy"); @@clientName(SuggestDocumentsResult.value, "results"); @@clientName(SuggestRequest.fuzzy, "useFuzzyMatching"); -@@clientName(SuggestRequest.orderby, "orderBy"); +@@clientName(SuggestRequest.$orderby, "$orderBy"); @@clientName(SuggestRequest.search, "searchText"); @@clientName(IndexBatch.value, "actions"); @@clientName(IndexDocumentsResult.value, "results"); From 3eebe922a90df4f4658a39a240bcb5ac1d37ce90 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 21 Jan 2025 14:10:03 -0800 Subject: [PATCH 58/78] update --- specification/search/Azure.Search/models-index.tsp | 2 -- 1 file changed, 2 deletions(-) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index c1624446772c..9452bf7c771f 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -369,7 +369,6 @@ model SearchDocumentsResult { */ #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model FacetResult is Record { - /** * The approximate count of documents falling within the bucket described by this * facet. @@ -384,7 +383,6 @@ model FacetResult is Record { */ #suppress "@azure-tools/typespec-azure-core/bad-record-type" "model should have additionalProperties" model QueryAnswerResult is Record { - /** * The score value represents how relevant the answer is to the query relative to * other answers returned for the query. From 70af11aa3658f42d6fd3993e620e7dcda5efbca9 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 14:49:49 -0800 Subject: [PATCH 59/78] add service and index projects --- .../search/Azure.Search.Index/main.tsp | 48 + .../search/Azure.Search.Index/tspconfig.yaml | 38 + .../search/Azure.Search.Service/main.tsp | 48 + .../Azure.Search.Service/tspconfig.yaml | 38 + .../2024-11-01-preview/searchindex.json | 1996 +++ .../2024-11-01-preview/searchservice.json | 11434 ++++++++++++++++ .../Search/stable/2024-07-01/searchindex.json | 1996 +++ .../stable/2024-07-01/searchservice.json | 11434 ++++++++++++++++ 8 files changed, 27032 insertions(+) create mode 100644 specification/search/Azure.Search.Index/main.tsp create mode 100644 specification/search/Azure.Search.Index/tspconfig.yaml create mode 100644 specification/search/Azure.Search.Service/main.tsp create mode 100644 specification/search/Azure.Search.Service/tspconfig.yaml create mode 100644 specification/search/data-plane/Search/preview/2024-11-01-preview/searchindex.json create mode 100644 specification/search/data-plane/Search/preview/2024-11-01-preview/searchservice.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/searchindex.json create mode 100644 specification/search/data-plane/Search/stable/2024-07-01/searchservice.json diff --git a/specification/search/Azure.Search.Index/main.tsp b/specification/search/Azure.Search.Index/main.tsp new file mode 100644 index 000000000000..74400efd8b04 --- /dev/null +++ b/specification/search/Azure.Search.Index/main.tsp @@ -0,0 +1,48 @@ +/** + * PLEASE DO NOT REMOVE - USED FOR CONVERTER METRICS + * Generated by package: @autorest/openapi-to-typespec + * Version: 0.8.2 + * Date: 2024-07-30T18:07:11.236Z + */ +import "@typespec/rest"; +import "@typespec/http"; +import "../Azure.Search/routes-index.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using TypeSpec.Versioning; +/** + * Client that can be used to manage and query indexes and documents, as well as + * manage other resources, on a search service. + */ +@useAuth( + ApiKeyAuth | OAuth2Auth<[ + { + type: OAuth2FlowType.implicit, + authorizationUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + scopes: ["https://search.azure.com/.default"], + } + ]> +) +@service({ + title: "Azure AI Search", +}) +@versioned(Versions) +namespace Search; + +/** + * The available API versions. + */ +enum Versions { + /** + * The 2024-07-01 API version. + */ + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + v2024_07_01: "2024-07-01", + + /** + * The 2024-11-01-preview API version. + */ + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + v2024_11_01_preview: "2024-11-01-preview", +} diff --git a/specification/search/Azure.Search.Index/tspconfig.yaml b/specification/search/Azure.Search.Index/tspconfig.yaml new file mode 100644 index 000000000000..ce7a43516107 --- /dev/null +++ b/specification/search/Azure.Search.Index/tspconfig.yaml @@ -0,0 +1,38 @@ +parameters: + "service-dir": + default: "sdk/search" + "dependencies": + "additionalDirectories": [] + default: "" +emit: + - "@azure-tools/typespec-autorest" +options: + "@azure-tools/typespec-autorest": + azure-resource-provider-folder: "data-plane" + emitter-output-dir: "{project-root}/.." + output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/searchindex.json" + "@azure-tools/typespec-python": + package-dir: "azure-search-documents" + package-name: "{package-dir}" + flavor: azure + "@azure-tools/typespec-csharp": + package-dir: "Azure.Search.Documents" + namespace: "{package-dir}" + clear-output-folder: true + model-namespace: false + flavor: azure + "@azure-tools/typespec-ts": + package-dir: "azure-search-documents-rest" + generateMetadata: true + generateTest: true + flavor: azure + packageDetails: + name: "@azure-rest/azure-search-documents-rest" + description: "Azure.Search Service" + "@azure-tools/typespec-java": + package-dir: "azure-search-documents" + namespace: com.azure.search.documents + flavor: azure +linter: + extends: + - "@azure-tools/typespec-azure-rulesets/data-plane" diff --git a/specification/search/Azure.Search.Service/main.tsp b/specification/search/Azure.Search.Service/main.tsp new file mode 100644 index 000000000000..1cdae5f17bfb --- /dev/null +++ b/specification/search/Azure.Search.Service/main.tsp @@ -0,0 +1,48 @@ +/** + * PLEASE DO NOT REMOVE - USED FOR CONVERTER METRICS + * Generated by package: @autorest/openapi-to-typespec + * Version: 0.8.2 + * Date: 2024-07-30T18:07:11.236Z + */ +import "@typespec/rest"; +import "@typespec/http"; +import "../Azure.Search/routes-service.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using TypeSpec.Versioning; +/** + * Client that can be used to manage and query indexes and documents, as well as + * manage other resources, on a search service. + */ +@useAuth( + ApiKeyAuth | OAuth2Auth<[ + { + type: OAuth2FlowType.implicit, + authorizationUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + scopes: ["https://search.azure.com/.default"], + } + ]> +) +@service({ + title: "Azure AI Search", +}) +@versioned(Versions) +namespace Search; + +/** + * The available API versions. + */ +enum Versions { + /** + * The 2024-07-01 API version. + */ + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + v2024_07_01: "2024-07-01", + + /** + * The 2024-11-01-preview API version. + */ + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + v2024_11_01_preview: "2024-11-01-preview", +} diff --git a/specification/search/Azure.Search.Service/tspconfig.yaml b/specification/search/Azure.Search.Service/tspconfig.yaml new file mode 100644 index 000000000000..d4670e13ec60 --- /dev/null +++ b/specification/search/Azure.Search.Service/tspconfig.yaml @@ -0,0 +1,38 @@ +parameters: + "service-dir": + default: "sdk/search" + "dependencies": + "additionalDirectories": [] + default: "" +emit: + - "@azure-tools/typespec-autorest" +options: + "@azure-tools/typespec-autorest": + azure-resource-provider-folder: "data-plane" + emitter-output-dir: "{project-root}/.." + output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/searchservice.json" + "@azure-tools/typespec-python": + package-dir: "azure-search-documents" + package-name: "{package-dir}" + flavor: azure + "@azure-tools/typespec-csharp": + package-dir: "Azure.Search.Documents" + namespace: "{package-dir}" + clear-output-folder: true + model-namespace: false + flavor: azure + "@azure-tools/typespec-ts": + package-dir: "azure-search-documents-rest" + generateMetadata: true + generateTest: true + flavor: azure + packageDetails: + name: "@azure-rest/azure-search-documents-rest" + description: "Azure.Search Service" + "@azure-tools/typespec-java": + package-dir: "azure-search-documents" + namespace: com.azure.search.documents + flavor: azure +linter: + extends: + - "@azure-tools/typespec-azure-rulesets/data-plane" diff --git a/specification/search/data-plane/Search/preview/2024-11-01-preview/searchindex.json b/specification/search/data-plane/Search/preview/2024-11-01-preview/searchindex.json new file mode 100644 index 000000000000..aefb5c6d9812 --- /dev/null +++ b/specification/search/data-plane/Search/preview/2024-11-01-preview/searchindex.json @@ -0,0 +1,1996 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure AI Search", + "version": "2024-11-01-preview", + "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://search.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "type": "apiKey", + "name": "api-key", + "in": "header" + }, + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": { + "https://search.azure.com/.default": "" + } + } + }, + "tags": [], + "paths": { + "/indexes('{indexName}')/docs": { + "get": { + "operationId": "DocumentsOperations_SearchGet", + "description": "Searches for documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", + "required": false, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "$count", + "in": "query", + "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", + "required": false, + "type": "boolean", + "x-ms-client-name": "includeTotalResultCount" + }, + { + "name": "facet", + "in": "query", + "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "facets" + }, + { + "name": "$filter", + "in": "query", + "description": "The OData $filter expression to apply to the search query.", + "required": false, + "type": "string" + }, + { + "name": "highlight", + "in": "query", + "description": "The list of field names to use for hit highlights. Only searchable fields can\nbe used for hit highlighting.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "highlightFields" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "$orderby", + "in": "query", + "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, and desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no OrderBy is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "orderBy" + }, + { + "name": "queryType", + "in": "query", + "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax.", + "required": false, + "type": "string", + "enum": [ + "simple", + "full", + "semantic" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": true, + "values": [ + { + "name": "Simple", + "value": "simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." + }, + { + "name": "Full", + "value": "full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." + }, + { + "name": "Semantic", + "value": "semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." + } + ] + } + }, + { + "name": "scoringParameter", + "in": "query", + "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "scoringParameters" + }, + { + "name": "scoringProfile", + "in": "query", + "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results.", + "required": false, + "type": "string" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to which to scope the full-text search. When using\nfielded search (fieldName:searchExpression) in a full Lucene query, the field\nnames of each fielded search expression take precedence over any field names\nlisted in this parameter.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "searchMode", + "in": "query", + "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match.", + "required": false, + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": true, + "values": [ + { + "name": "Any", + "value": "any", + "description": "Any of the search terms must be matched in order to count the document as a\nmatch." + }, + { + "name": "All", + "value": "all", + "description": "All of the search terms must be matched in order to count the document as a\nmatch." + } + ] + } + }, + { + "name": "scoringStatistics", + "in": "query", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency.", + "required": false, + "type": "string", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": true, + "values": [ + { + "name": "Local", + "value": "local", + "description": "The scoring statistics will be calculated locally for lower latency." + }, + { + "name": "Global", + "value": "global", + "description": "The scoring statistics will be calculated globally for more consistent scoring." + } + ] + } + }, + { + "name": "sessionId", + "in": "query", + "description": "A value to be used to create a sticky session, which can help to get more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character.", + "required": false, + "type": "string" + }, + { + "name": "$select", + "in": "query", + "description": "The list of fields to retrieve. If unspecified, all fields marked as\nretrievable in the schema are included.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use $skip due to\nthis limitation, consider using $orderby on a totally-ordered key and $filter\nwith a range query instead.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$top", + "in": "query", + "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "semanticConfiguration", + "in": "query", + "description": "The name of the semantic configuration that lists which fields should be used\nfor semantic ranking, captions, highlights, and answers", + "required": false, + "type": "string" + }, + { + "name": "semanticErrorHandling", + "in": "query", + "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results (default).", + "required": false, + "type": "string", + "enum": [ + "partial", + "fail" + ], + "x-ms-enum": { + "name": "SemanticErrorMode", + "modelAsString": true, + "values": [ + { + "name": "Partial", + "value": "partial", + "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." + }, + { + "name": "Fail", + "value": "fail", + "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." + } + ] + } + }, + { + "name": "semanticMaxWaitInMilliseconds", + "in": "query", + "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 700 + }, + { + "name": "answers", + "in": "query", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", + "required": false, + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryAnswerType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return answers for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." + } + ] + } + }, + { + "name": "captions", + "in": "query", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", + "required": false, + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryCaptionType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return captions for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." + } + ] + } + }, + { + "name": "semanticQuery", + "in": "query", + "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/$count": { + "get": { + "operationId": "DocumentsOperations_Count", + "description": "Queries the number of documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "integer", + "format": "int32" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.autocomplete": { + "get": { + "operationId": "DocumentsOperations_AutocompleteGet", + "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "The incomplete term which should be auto-completed.", + "required": true, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "suggesterName", + "in": "query", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", + "required": true, + "type": "string" + }, + { + "name": "autocompleteMode", + "in": "query", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms.", + "required": false, + "type": "string", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": true, + "values": [ + { + "name": "OneTerm", + "value": "oneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." + }, + { + "name": "TwoTerms", + "value": "twoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." + }, + { + "name": "OneTermWithContext", + "value": "oneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." + } + ] + } + }, + { + "name": "$filter", + "in": "query", + "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result.", + "required": false, + "type": "string" + }, + { + "name": "fuzzy", + "in": "query", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nautocomplete queries are slower and consume more resources.", + "required": false, + "type": "boolean", + "x-ms-client-name": "useFuzzyMatching" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to consider when querying for auto-completed terms.\nTarget fields must be included in the specified suggester.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$top", + "in": "query", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.index": { + "post": { + "operationId": "DocumentsOperations_Index", + "description": "Sends a batch of document write actions to the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "batch", + "in": "body", + "description": "The batch of index actions.", + "required": true, + "schema": { + "$ref": "#/definitions/IndexBatch" + } + } + ], + "responses": { + "200": { + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "207": { + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.autocomplete": { + "post": { + "operationId": "DocumentsOperations_AutocompletePost", + "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "autocompleteRequest", + "in": "body", + "description": "The definition of the Autocomplete request.", + "required": true, + "schema": { + "$ref": "#/definitions/AutocompleteRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.search": { + "post": { + "operationId": "DocumentsOperations_SearchPost", + "description": "Searches for documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "searchRequest", + "in": "body", + "description": "The definition of the Search request.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.suggest": { + "post": { + "operationId": "DocumentsOperations_SuggestPost", + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "suggestRequest", + "in": "body", + "description": "The Suggest request.", + "required": true, + "schema": { + "$ref": "#/definitions/SuggestRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.suggest": { + "get": { + "operationId": "DocumentsOperations_SuggestGet", + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", + "required": true, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "suggesterName", + "in": "query", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData expression that filters the documents considered for suggestions.", + "required": false, + "type": "string" + }, + { + "name": "fuzzy", + "in": "query", + "description": "A value indicating whether to use fuzzy matching for the suggestions query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nsuggestions queries are slower and consume more resources.", + "required": false, + "type": "boolean", + "x-ms-client-name": "useFuzzyMatching" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestions query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "$orderby", + "in": "query", + "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, or desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no $orderby is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "orderBy" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to search for the specified search text. Target fields\nmust be included in the specified suggester.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$select", + "in": "query", + "description": "The list of fields to retrieve. If unspecified, only the key field will be\nincluded in the results.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$top", + "in": "query", + "description": "The number of suggestions to retrieve. The value must be a number between 1 and\n100. The default is 5.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs('{key}')": { + "get": { + "operationId": "DocumentsOperations_Get", + "description": "Retrieves a document from the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "key", + "in": "path", + "description": "The key of the document to retrieve.", + "required": true, + "type": "string" + }, + { + "name": "$select", + "in": "query", + "description": "List of field names to retrieve for the document; Any field not retrieved will\nbe missing from the returned document.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "selectedFields" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/LookupDocument" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AutocompleteItem": { + "type": "object", + "description": "The result of Autocomplete requests.", + "properties": { + "text": { + "type": "string", + "description": "The completed term." + }, + "queryPlusText": { + "type": "string", + "description": "The query along with the completed term." + } + }, + "required": [ + "text", + "queryPlusText" + ] + }, + "AutocompleteMode": { + "type": "string", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context in\nproducing autocomplete terms.", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": true, + "values": [ + { + "name": "OneTerm", + "value": "oneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." + }, + { + "name": "TwoTerms", + "value": "twoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." + }, + { + "name": "OneTermWithContext", + "value": "oneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." + } + ] + } + }, + "AutocompleteRequest": { + "type": "object", + "description": "Parameters for fuzzy matching, and other autocomplete query behaviors.", + "properties": { + "search": { + "type": "string", + "description": "The search text on which to base autocomplete results." + }, + "autocompleteMode": { + "$ref": "#/definitions/AutocompleteMode", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms." + }, + "filter": { + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will autocomplete terms even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy autocomplete queries are slower and consume more resources." + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to consider when querying for\nauto-completed terms. Target fields must be included in the specified\nsuggester." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ] + }, + "AutocompleteResult": { + "type": "object", + "description": "The result of Autocomplete query.", + "properties": { + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was considered by the\nautocomplete request, or null if minimumCoverage was not specified in the\nrequest.", + "x-ms-client-name": "coverage" + }, + "value": { + "type": "array", + "description": "The list of returned Autocompleted items.", + "items": { + "$ref": "#/definitions/AutocompleteItem" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ErrorAdditionalInfo": { + "type": "object", + "description": "The resource management error additional info.", + "properties": { + "type": { + "type": "string", + "description": "The additional info type." + }, + "info": { + "type": "object", + "description": "The additional info.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "The error detail.", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The error target." + }, + "details": { + "type": "array", + "description": "The error details.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-identifiers": [] + }, + "additionalInfo": { + "type": "array", + "description": "The error additional info.", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [] + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Common error response for all Azure Resource Manager APIs to return error\ndetails for failed operations. (This also follows the OData error response\nformat.).", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetail", + "description": "The error object." + } + } + }, + "FacetResult": { + "type": "object", + "description": "A single bucket of a facet query result. Reports the number of documents with a\nfield value falling within a particular range or having a particular value or\ninterval.", + "properties": { + "count": { + "type": "integer", + "format": "int64", + "description": "The approximate count of documents falling within the bucket described by this\nfacet." + } + }, + "additionalProperties": {} + }, + "IndexAction": { + "type": "object", + "description": "Represents an index action that operates on a document.", + "properties": { + "@search.action": { + "$ref": "#/definitions/IndexActionType", + "description": "The operation to perform on a document in an indexing batch.", + "x-ms-client-name": "actionType" + } + }, + "additionalProperties": {} + }, + "IndexActionType": { + "type": "string", + "description": "The operation to perform on a document in an indexing batch.", + "enum": [ + "upload", + "merge", + "mergeOrUpload", + "delete" + ], + "x-ms-enum": { + "name": "IndexActionType", + "modelAsString": true, + "values": [ + { + "name": "Upload", + "value": "upload", + "description": "Inserts the document into the index if it is new and updates it if it exists.\nAll fields are replaced in the update case." + }, + { + "name": "Merge", + "value": "merge", + "description": "Merges the specified field values with an existing document. If the document\ndoes not exist, the merge will fail. Any field you specify in a merge will\nreplace the existing field in the document. This also applies to collections of\nprimitive and complex types." + }, + { + "name": "MergeOrUpload", + "value": "mergeOrUpload", + "description": "Behaves like merge if a document with the given key already exists in the\nindex. If the document does not exist, it behaves like upload with a new\ndocument." + }, + { + "name": "Delete", + "value": "delete", + "description": "Removes the specified document from the index. Any field you specify in a\ndelete operation other than the key field will be ignored. If you want to\nremove an individual field from a document, use merge instead and set the field\nexplicitly to null." + } + ] + } + }, + "IndexBatch": { + "type": "object", + "description": "Contains a batch of document write actions to send to the index.", + "properties": { + "value": { + "type": "array", + "description": "The actions in the batch.", + "items": { + "$ref": "#/definitions/IndexAction" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "IndexDocumentsResult": { + "type": "object", + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "properties": { + "value": { + "type": "array", + "description": "The list of status information for each document in the indexing request.", + "items": { + "$ref": "#/definitions/IndexingResult" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "IndexingResult": { + "type": "object", + "description": "Status of an indexing operation for a single document.", + "properties": { + "key": { + "type": "string", + "description": "The key of a document that was in the indexing request." + }, + "errorMessage": { + "type": "string", + "description": "The error message explaining why the indexing operation failed for the document\nidentified by the key; null if indexing succeeded." + }, + "status": { + "type": "boolean", + "description": "A value indicating whether the indexing operation succeeded for the document\nidentified by the key." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code of the indexing operation. Possible values include: 200 for a\nsuccessful update or delete, 201 for successful document creation, 400 for a\nmalformed input document, 404 for document not found, 409 for a version\nconflict, 422 when the index is temporarily unavailable, or 503 for when the\nservice is too busy." + } + }, + "required": [ + "key", + "status", + "statusCode" + ] + }, + "LookupDocument": { + "type": "object", + "description": "A document retrieved via a document lookup operation.", + "additionalProperties": {} + }, + "QueryAnswerResult": { + "type": "object", + "description": "An answer is a text passage extracted from the contents of the most relevant\ndocuments that matched the query. Answers are extracted from the top search\nresults. Answer candidates are scored and the top answers are selected.", + "properties": { + "score": { + "type": "number", + "format": "double", + "description": "The score value represents how relevant the answer is to the query relative to\nother answers returned for the query." + }, + "key": { + "type": "string", + "description": "The key of the document the answer was extracted from." + }, + "text": { + "type": "string", + "description": "The text passage extracted from the document contents as the answer." + }, + "highlights": { + "type": "string", + "description": "Same text passage as in the Text property with highlighted text phrases most\nrelevant to the query." + } + }, + "additionalProperties": {} + }, + "QueryAnswerType": { + "type": "string", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryAnswerType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return answers for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." + } + ] + } + }, + "QueryCaptionResult": { + "type": "object", + "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type `semantic`.", + "properties": { + "text": { + "type": "string", + "description": "A representative text passage extracted from the document most relevant to the\nsearch query." + }, + "highlights": { + "type": "string", + "description": "Same text passage as in the Text property with highlighted phrases most\nrelevant to the query." + } + }, + "additionalProperties": {} + }, + "QueryCaptionType": { + "type": "string", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryCaptionType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return captions for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." + } + ] + } + }, + "QueryType": { + "type": "string", + "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full'\nif your query uses the Lucene query syntax.", + "enum": [ + "simple", + "full", + "semantic" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": true, + "values": [ + { + "name": "Simple", + "value": "simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." + }, + { + "name": "Full", + "value": "full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." + }, + { + "name": "Semantic", + "value": "semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." + } + ] + } + }, + "ScoringStatistics": { + "type": "string", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries.", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": true, + "values": [ + { + "name": "Local", + "value": "local", + "description": "The scoring statistics will be calculated locally for lower latency." + }, + { + "name": "Global", + "value": "global", + "description": "The scoring statistics will be calculated globally for more consistent scoring." + } + ] + } + }, + "SearchDocumentsResult": { + "type": "object", + "description": "Response containing search results from an index.", + "properties": { + "@odata.count": { + "type": "integer", + "format": "int64", + "description": "The total count of results found by the search operation, or null if the count\nwas not requested. If present, the count may be greater than the number of\nresults in this response. This can happen if you use the $top or $skip\nparameters, or if the query can't return all the requested documents in a\nsingle response.", + "x-ms-client-name": "count" + }, + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not specified in the request.", + "x-ms-client-name": "coverage" + }, + "@search.facets": { + "type": "object", + "description": "The facet query results for the search operation, organized as a collection of\nbuckets for each faceted field; null if the query did not include any facet\nexpressions.", + "additionalProperties": { + "items": { + "$ref": "#/definitions/FacetResult" + }, + "type": "array", + "x-ms-identifiers": [] + }, + "x-ms-client-name": "facets" + }, + "@search.answers": { + "type": "array", + "description": "The answers query results for the search operation; null if the answers query\nparameter was not specified or set to 'none'.", + "items": { + "$ref": "#/definitions/QueryAnswerResult" + }, + "x-ms-client-name": "answers", + "x-ms-identifiers": [] + }, + "value": { + "type": "array", + "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with", + "items": { + "$ref": "#/definitions/SearchResult" + }, + "x-ms-identifiers": [] + }, + "@odata.nextLink": { + "type": "string", + "description": "Continuation URL returned when the query can't return all the requested results\nin a single response. You can use this URL to formulate another GET or POST\nSearch request to get the next part of the search response. Make sure to use\nthe same verb (GET or POST) as the request that produced this response.", + "x-ms-client-name": "nextLink" + }, + "@search.semanticPartialResponseReason": { + "$ref": "#/definitions/SemanticErrorReason", + "description": "Reason that a partial response was returned for a semantic ranking request.", + "x-ms-client-name": "semanticPartialResponseReason" + }, + "@search.semanticPartialResponseType": { + "$ref": "#/definitions/SemanticSearchResultsType", + "description": "Type of partial response that was returned for a semantic ranking request.", + "x-ms-client-name": "semanticPartialResponseType" + } + }, + "required": [ + "value" + ] + }, + "SearchMode": { + "type": "string", + "description": "Specifies whether any or all of the search terms must be matched in order to\ncount the document as a match.", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": true, + "values": [ + { + "name": "Any", + "value": "any", + "description": "Any of the search terms must be matched in order to count the document as a\nmatch." + }, + { + "name": "All", + "value": "all", + "description": "All of the search terms must be matched in order to count the document as a\nmatch." + } + ] + } + }, + "SearchRequest": { + "type": "object", + "description": "Parameters for filtering, sorting, faceting, paging, and other search query\nbehaviors.", + "properties": { + "count": { + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation." + }, + "facets": { + "type": "array", + "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", + "items": { + "type": "string" + } + }, + "filter": { + "type": "string", + "description": "The OData $filter expression to apply to the search query." + }, + "highlight": { + "type": "string", + "description": "The comma-separated list of field names to use for hit highlights. Only\nsearchable fields can be used for hit highlighting." + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100." + }, + "$orderby": { + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." + }, + "queryType": { + "$ref": "#/definitions/QueryType", + "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax." + }, + "scoringStatistics": { + "$ref": "#/definitions/ScoringStatistics", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries." + }, + "sessionId": { + "type": "string", + "description": "A value to be used to create a sticky session, which can help getting more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character." + }, + "scoringParameters": { + "type": "array", + "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "items": { + "type": "string" + } + }, + "scoringProfile": { + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results." + }, + "search": { + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to which to scope the full-text search.\nWhen using fielded search (fieldName:searchExpression) in a full Lucene query,\nthe field names of each fielded search expression take precedence over any\nfield names listed in this parameter." + }, + "searchMode": { + "$ref": "#/definitions/SearchMode", + "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, all fields\nmarked as retrievable in the schema are included." + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use skip due to\nthis limitation, consider using orderby on a totally-ordered key and filter\nwith a range query instead." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults." + }, + "semanticConfiguration": { + "type": "string", + "description": "The name of a semantic configuration that will be used when processing\ndocuments for queries of type semantic." + }, + "semanticErrorHandling": { + "$ref": "#/definitions/SemanticErrorMode", + "description": "Allows the user to choose whether a semantic call should fail completely\n(default / current behavior), or to return partial results." + }, + "semanticMaxWaitInMilliseconds": { + "type": "integer", + "format": "int32", + "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", + "minimum": 700 + }, + "semanticQuery": { + "type": "string", + "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase." + }, + "answers": { + "$ref": "#/definitions/QueryAnswerType", + "description": "A value that specifies whether answers should be returned as part of the search\nresponse." + }, + "captions": { + "$ref": "#/definitions/QueryCaptionType", + "description": "A value that specifies whether captions should be returned as part of the\nsearch response." + }, + "vectorQueries": { + "type": "array", + "description": "The query parameters for vector and hybrid search queries.", + "items": { + "$ref": "#/definitions/VectorQuery" + }, + "x-ms-identifiers": [] + }, + "vectorFilterMode": { + "$ref": "#/definitions/VectorFilterMode", + "description": "Determines whether or not filters are applied before or after the vector search\nis performed. Default is 'preFilter' for new indexes." + } + } + }, + "SearchResult": { + "type": "object", + "description": "Contains a document found by a search query, plus associated metadata.", + "properties": { + "@search.score": { + "type": "number", + "format": "double", + "description": "The relevance score of the document compared to other documents returned by the\nquery.", + "x-ms-client-name": "score" + }, + "@search.rerankerScore": { + "type": "number", + "format": "double", + "description": "The relevance score computed by the semantic ranker for the top search results.\nSearch results are sorted by the RerankerScore first and then by the Score.\nRerankerScore is only returned for queries of type 'semantic'.", + "x-ms-client-name": "rerankerScore" + }, + "@search.highlights": { + "type": "object", + "description": "Text fragments from the document that indicate the matching search terms,\norganized by each applicable field; null if hit highlighting was not enabled\nfor the query.", + "additionalProperties": { + "items": { + "type": "string" + }, + "type": "array" + }, + "x-ms-client-name": "highlights" + }, + "@search.captions": { + "type": "array", + "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type 'semantic'.", + "items": { + "$ref": "#/definitions/QueryCaptionResult" + }, + "x-ms-client-name": "captions", + "x-ms-identifiers": [] + } + }, + "required": [ + "@search.score" + ], + "additionalProperties": {} + }, + "SemanticErrorMode": { + "type": "string", + "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results.", + "enum": [ + "partial", + "fail" + ], + "x-ms-enum": { + "name": "SemanticErrorMode", + "modelAsString": true, + "values": [ + { + "name": "Partial", + "value": "partial", + "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." + }, + { + "name": "Fail", + "value": "fail", + "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." + } + ] + } + }, + "SemanticErrorReason": { + "type": "string", + "description": "Reason that a partial response was returned for a semantic ranking request.", + "enum": [ + "maxWaitExceeded", + "capacityOverloaded", + "transient" + ], + "x-ms-enum": { + "name": "SemanticErrorReason", + "modelAsString": true, + "values": [ + { + "name": "MaxWaitExceeded", + "value": "maxWaitExceeded", + "description": "If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration\nexceeded that value. Only the base results were returned." + }, + { + "name": "CapacityOverloaded", + "value": "capacityOverloaded", + "description": "The request was throttled. Only the base results were returned." + }, + { + "name": "Transient", + "value": "transient", + "description": "At least one step of the semantic process failed." + } + ] + } + }, + "SemanticSearchResultsType": { + "type": "string", + "description": "Type of partial response that was returned for a semantic ranking request.", + "enum": [ + "baseResults", + "rerankedResults" + ], + "x-ms-enum": { + "name": "SemanticSearchResultsType", + "modelAsString": true, + "values": [ + { + "name": "BaseResults", + "value": "baseResults", + "description": "Results without any semantic enrichment or reranking." + }, + { + "name": "RerankedResults", + "value": "rerankedResults", + "description": "Results have been reranked with the reranker model and will include semantic\ncaptions. They will not include any answers, answers highlights or caption\nhighlights." + } + ] + } + }, + "SuggestDocumentsResult": { + "type": "object", + "description": "Response containing suggestion query results from an index.", + "properties": { + "value": { + "type": "array", + "description": "The sequence of results returned by the query.", + "items": { + "$ref": "#/definitions/SuggestResult" + }, + "x-ms-identifiers": [] + }, + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not set in the request.", + "x-ms-client-name": "coverage" + } + }, + "required": [ + "value" + ] + }, + "SuggestRequest": { + "type": "object", + "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query\nbehaviors.", + "properties": { + "filter": { + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestion query.\nDefault is false. When set to true, the query will find suggestions even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy suggestion searches are slower and consume more resources." + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestion query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." + }, + "$orderby": { + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." + }, + "search": { + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to search for the specified search\ntext. Target fields must be included in the specified suggester." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, only the key\nfield will be included in the results." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. This must be a value between 1 and 100.\nThe default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ] + }, + "SuggestResult": { + "type": "object", + "description": "A result containing a document found by a suggestion query, plus associated\nmetadata.", + "properties": { + "@search.text": { + "type": "string", + "description": "The text of the suggestion result.", + "x-ms-client-name": "text" + } + }, + "required": [ + "@search.text" + ], + "additionalProperties": {} + }, + "VectorFilterMode": { + "type": "string", + "description": "Determines whether or not filters are applied before or after the vector search\nis performed.", + "enum": [ + "postFilter", + "preFilter" + ], + "x-ms-enum": { + "name": "VectorFilterMode", + "modelAsString": true, + "values": [ + { + "name": "PostFilter", + "value": "postFilter", + "description": "The filter will be applied after the candidate set of vector results is\nreturned. Depending on the filter selectivity, this can result in fewer results\nthan requested by the parameter 'k'." + }, + { + "name": "PreFilter", + "value": "preFilter", + "description": "The filter will be applied before the search query." + } + ] + } + }, + "VectorQuery": { + "type": "object", + "description": "The query parameters for vector and hybrid search queries.", + "properties": { + "k": { + "type": "integer", + "format": "int32", + "description": "Number of nearest neighbors to return as top hits." + }, + "fields": { + "type": "string", + "description": "Vector Fields of type Collection(Edm.Single) to be included in the vector\nsearched." + }, + "exhaustive": { + "type": "boolean", + "description": "When true, triggers an exhaustive k-nearest neighbor search across all vectors\nwithin the vector index. Useful for scenarios where exact matches are critical,\nsuch as determining ground truth values." + }, + "oversampling": { + "type": "number", + "format": "double", + "description": "Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling'\nparameter configured in the index definition. It can be set only when 'rerankWithOriginalVectors'\nis true. This parameter is only permitted when a\ncompression method is used on the underlying vector field." + }, + "weight": { + "type": "number", + "format": "float", + "description": "Relative weight of the vector query when compared to other vector query and/or\nthe text query within the same search request. This value is used when\ncombining the results of multiple ranking lists produced by the different\nvector queries and/or the results retrieved through the text query. The higher\nthe weight, the higher the documents that matched that query will be in the\nfinal ranking. Default is 1.0 and the value needs to be a positive number\nlarger than zero." + }, + "kind": { + "$ref": "#/definitions/VectorQueryKind", + "description": "Type of query." + } + }, + "discriminator": "kind", + "required": [ + "kind" + ] + }, + "VectorQueryKind": { + "type": "string", + "description": "The kind of vector query being performed.", + "enum": [ + "vector", + "text" + ], + "x-ms-enum": { + "name": "VectorQueryKind", + "modelAsString": true, + "values": [ + { + "name": "Vector", + "value": "vector", + "description": "Vector query where a raw vector value is provided." + }, + { + "name": "Text", + "value": "text", + "description": "Vector query where a text value that needs to be vectorized is provided." + } + ] + } + }, + "VectorizableTextQuery": { + "type": "object", + "description": "The query parameters to use for vector search when a text value that needs to\nbe vectorized is provided.", + "properties": { + "text": { + "type": "string", + "description": "The text to be vectorized to perform a vector search query." + } + }, + "required": [ + "text" + ], + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "x-ms-discriminator-value": "text" + }, + "VectorizedQuery": { + "type": "object", + "description": "The query parameters to use for vector search when a raw vector value is\nprovided.", + "properties": { + "vector": { + "type": "array", + "description": "The vector representation of a search query.", + "items": { + "type": "number", + "format": "float" + } + } + }, + "required": [ + "vector" + ], + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "x-ms-discriminator-value": "vector" + } + }, + "parameters": { + "Azure.Core.ClientRequestIdHeader": { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "x-ms-client-name": "clientRequestId" + }, + "Azure.Core.Foundations.ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "x-ms-client-name": "apiVersion" + } + } +} diff --git a/specification/search/data-plane/Search/preview/2024-11-01-preview/searchservice.json b/specification/search/data-plane/Search/preview/2024-11-01-preview/searchservice.json new file mode 100644 index 000000000000..dec76f97deaa --- /dev/null +++ b/specification/search/data-plane/Search/preview/2024-11-01-preview/searchservice.json @@ -0,0 +1,11434 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure AI Search", + "version": "2024-11-01-preview", + "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://search.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "type": "apiKey", + "name": "api-key", + "in": "header" + }, + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": { + "https://search.azure.com/.default": "" + } + } + }, + "tags": [], + "paths": { + "/datasources": { + "get": { + "operationId": "DataSourcesOperations_List", + "description": "Lists all datasources available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListDataSourcesResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "DataSourcesOperations_Create", + "description": "Creates a new datasource.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSource", + "in": "body", + "description": "The definition of the datasource to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/datasources('{dataSourceName}')": { + "get": { + "operationId": "DataSourcesOperations_Get", + "description": "Retrieves a datasource definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "DataSourcesOperations_CreateOrUpdate", + "description": "Creates a new datasource or updates a datasource if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + }, + { + "name": "dataSource", + "in": "body", + "description": "The definition of the datasource to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "DataSourcesOperations_Delete", + "description": "Deletes a datasource.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers": { + "get": { + "operationId": "IndexersOperations_List", + "description": "Lists all indexers available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListIndexersResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "IndexersOperations_Create", + "description": "Creates a new indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexer", + "in": "body", + "description": "The definition of the indexer to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')": { + "get": { + "operationId": "IndexersOperations_Get", + "description": "Retrieves an indexer definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "IndexersOperations_CreateOrUpdate", + "description": "Creates a new indexer or updates an indexer if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + }, + { + "name": "indexer", + "in": "body", + "description": "The definition of the indexer to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "IndexersOperations_Delete", + "description": "Deletes an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.reset": { + "post": { + "operationId": "IndexersOperations_Reset", + "description": "Resets the change tracking state associated with an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.run": { + "post": { + "operationId": "IndexersOperations_Run", + "description": "Runs an indexer on-demand.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.status": { + "get": { + "operationId": "IndexersOperations_GetStatus", + "description": "Returns the current status and execution history of an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerStatus" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes": { + "get": { + "operationId": "IndexesOperations_List", + "description": "Lists all indexes available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListIndexesResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "IndexesOperations_Create", + "description": "Creates a new search index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "index", + "in": "body", + "description": "The definition of the index to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndex" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')": { + "get": { + "operationId": "IndexesOperations_Get", + "description": "Retrieves an index definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "IndexesOperations_CreateOrUpdate", + "description": "Creates a new search index or updates an index if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "allowIndexDowntime", + "in": "query", + "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to\nan index by taking the index offline for at least a few seconds. This\ntemporarily causes indexing and query requests to fail. Performance and write\navailability of the index can be impaired for several minutes after the index\nis updated, or longer for very large indexes.", + "required": false, + "type": "boolean" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "index", + "in": "body", + "description": "The definition of the index to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndex" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "IndexesOperations_Delete", + "description": "Deletes a search index and all the documents it contains. This operation is\npermanent, with no recovery option. Make sure you have a master copy of your\nindex definition, data ingestion code, and a backup of the primary data source\nin case you need to re-build the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/search.analyze": { + "post": { + "operationId": "IndexesOperations_Analyze", + "description": "Shows how an analyzer breaks text into tokens.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "The text and analyzer or analysis components to test.", + "required": true, + "schema": { + "$ref": "#/definitions/AnalyzeRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AnalyzeResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/search.stats": { + "get": { + "operationId": "IndexesOperations_GetStatistics", + "description": "Returns statistics for the given index, including a document count and storage\nusage.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/GetIndexStatisticsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/servicestats": { + "get": { + "operationId": "GetServiceStatistics", + "description": "Gets service level statistics for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchServiceStatistics" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/skillsets": { + "get": { + "operationId": "SkillsetsOperations_List", + "description": "List all skillsets in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListSkillsetsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "SkillsetsOperations_Create", + "description": "Creates a new skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillset", + "in": "body", + "description": "The skillset containing one or more skills to create in a search service.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/skillsets('{skillsetName}')": { + "get": { + "operationId": "SkillsetsOperations_Get", + "description": "Retrieves a skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "SkillsetsOperations_CreateOrUpdate", + "description": "Creates a new skillset in a search service or updates the skillset if it\nalready exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + }, + { + "name": "skillset", + "in": "body", + "description": "The skillset containing one or more skills to create or update in a search\nservice.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "SkillsetsOperations_Delete", + "description": "Deletes a skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/synonymmaps": { + "get": { + "operationId": "SynonymMapsOperations_List", + "description": "Lists all synonym maps available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListSynonymMapsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "SynonymMapsOperations_Create", + "description": "Creates a new synonym map.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMap", + "in": "body", + "description": "The definition of the synonym map to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/synonymmaps('{synonymMapName}')": { + "get": { + "operationId": "SynonymMapsOperations_Get", + "description": "Retrieves a synonym map definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "SynonymMapsOperations_CreateOrUpdate", + "description": "Creates a new synonym map or updates a synonym map if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + }, + { + "name": "synonymMap", + "in": "body", + "description": "The definition of the synonym map to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "SynonymMapsOperations_Delete", + "description": "Deletes a synonym map.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AnalyzeRequest": { + "type": "object", + "description": "Specifies some text and analysis components used to break that text into tokens.", + "properties": { + "text": { + "type": "string", + "description": "The text to break into tokens." + }, + "analyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer to use to break the given text. If this parameter is\nnot specified, you must specify a tokenizer instead. The tokenizer and analyzer\nparameters are mutually exclusive." + }, + "tokenizer": { + "$ref": "#/definitions/LexicalTokenizerName", + "description": "The name of the tokenizer to use to break the given text. If this parameter is\nnot specified, you must specify an analyzer instead. The tokenizer and analyzer\nparameters are mutually exclusive." + }, + "tokenFilters": { + "type": "array", + "description": "An optional list of token filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", + "items": { + "$ref": "#/definitions/TokenFilterName" + } + }, + "charFilters": { + "type": "array", + "description": "An optional list of character filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", + "items": { + "$ref": "#/definitions/CharFilterName" + } + } + }, + "required": [ + "text" + ] + }, + "AnalyzeResult": { + "type": "object", + "description": "The result of testing an analyzer on text.", + "properties": { + "tokens": { + "type": "array", + "description": "The list of tokens returned by the analyzer specified in the request.", + "items": { + "$ref": "#/definitions/AnalyzedTokenInfo" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "tokens" + ] + }, + "AnalyzedTokenInfo": { + "type": "object", + "description": "Information about a token returned by an analyzer.", + "properties": { + "token": { + "type": "string", + "description": "The token returned by the analyzer." + }, + "startOffset": { + "type": "integer", + "format": "int32", + "description": "The index of the first character of the token in the input text." + }, + "endOffset": { + "type": "integer", + "format": "int32", + "description": "The index of the last character of the token in the input text." + }, + "position": { + "type": "integer", + "format": "int32", + "description": "The position of the token in the input text relative to other tokens. The first\ntoken in the input text has position 0, the next has position 1, and so on.\nDepending on the analyzer used, some tokens might have the same position, for\nexample if they are synonyms of each other." + } + }, + "required": [ + "token", + "startOffset", + "endOffset", + "position" + ] + }, + "AsciiFoldingTokenFilter": { + "type": "object", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether the original token will be kept. Default is false." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" + }, + "AzureActiveDirectoryApplicationCredentials": { + "type": "object", + "description": "Credentials of a registered application created for your search service, used\nfor authenticated access to the encryption keys stored in Azure Key Vault.", + "properties": { + "applicationId": { + "type": "string", + "description": "An AAD Application ID that was granted the required access permissions to the\nAzure Key Vault that is to be used when encrypting your data at rest. The\nApplication ID should not be confused with the Object ID for your AAD\nApplication." + }, + "applicationSecret": { + "type": "string", + "description": "The authentication key of the specified AAD application." + } + }, + "required": [ + "applicationId" + ] + }, + "AzureOpenAIEmbeddingSkill": { + "type": "object", + "description": "Allows you to generate a vector embedding for a given text input using the\nAzure OpenAI resource.", + "properties": { + "resourceUri": { + "type": "string", + "format": "uri", + "description": "The resource URI of the Azure OpenAI resource." + }, + "deploymentId": { + "type": "string", + "description": "ID of the Azure OpenAI model deployment on the designated resource." + }, + "apiKey": { + "type": "string", + "description": "API key of the designated Azure OpenAI resource." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections." + }, + "modelName": { + "$ref": "#/definitions/AzureOpenAIModelName", + "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." + }, + "dimensions": { + "type": "integer", + "format": "int32", + "description": "The number of dimensions the resulting output embeddings should have. Only\nsupported in text-embedding-3 and later models." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" + }, + "AzureOpenAIModelName": { + "type": "string", + "description": "The Azure Open AI model name that will be called.", + "enum": [ + "text-embedding-ada-002", + "text-embedding-3-large", + "text-embedding-3-small" + ], + "x-ms-enum": { + "name": "AzureOpenAIModelName", + "modelAsString": true, + "values": [ + { + "name": "TextEmbeddingAda002", + "value": "text-embedding-ada-002", + "description": "TextEmbeddingAda002 model." + }, + { + "name": "TextEmbedding3Large", + "value": "text-embedding-3-large", + "description": "TextEmbedding3Large model." + }, + { + "name": "TextEmbedding3Small", + "value": "text-embedding-3-small", + "description": "TextEmbedding3Small model." + } + ] + } + }, + "AzureOpenAIVectorizer": { + "type": "object", + "description": "Specifies the Azure OpenAI resource used to vectorize a query string.", + "properties": { + "azureOpenAIParameters": { + "$ref": "#/definitions/AzureOpenAIVectorizerParameters", + "description": "Contains the parameters specific to Azure OpenAI embedding vectorization." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "x-ms-discriminator-value": "azureOpenAI" + }, + "AzureOpenAIVectorizerParameters": { + "type": "object", + "description": "Specifies the parameters for connecting to the Azure OpenAI resource.", + "properties": { + "resourceUri": { + "type": "string", + "format": "uri", + "description": "The resource URI of the Azure OpenAI resource." + }, + "deploymentId": { + "type": "string", + "description": "ID of the Azure OpenAI model deployment on the designated resource." + }, + "apiKey": { + "type": "string", + "description": "API key of the designated Azure OpenAI resource." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections." + }, + "modelName": { + "$ref": "#/definitions/AzureOpenAIModelName", + "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." + } + } + }, + "BM25SimilarityAlgorithm": { + "type": "object", + "description": "Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a\nTF-IDF-like algorithm that includes length normalization (controlled by the 'b'\nparameter) as well as term frequency saturation (controlled by the 'k1'\nparameter).", + "properties": { + "k1": { + "type": "number", + "format": "double", + "description": "This property controls the scaling function between the term frequency of each\nmatching terms and the final relevance score of a document-query pair. By\ndefault, a value of 1.2 is used. A value of 0.0 means the score does not scale\nwith an increase in term frequency." + }, + "b": { + "type": "number", + "format": "double", + "description": "This property controls how the length of a document affects the relevance\nscore. By default, a value of 0.75 is used. A value of 0.0 means no length\nnormalization is applied, while a value of 1.0 means the score is fully\nnormalized by the length of the document." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SimilarityAlgorithm" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.BM25Similarity" + }, + "BinaryQuantizationCompression": { + "type": "object", + "description": "Contains configuration options specific to the binary quantization compression\nmethod used during indexing and querying.", + "allOf": [ + { + "$ref": "#/definitions/VectorSearchCompression" + } + ], + "x-ms-discriminator-value": "binaryQuantization" + }, + "BlobIndexerDataToExtract": { + "type": "string", + "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", + "enum": [ + "storageMetadata", + "allMetadata", + "contentAndMetadata" + ], + "x-ms-enum": { + "name": "BlobIndexerDataToExtract", + "modelAsString": true, + "values": [ + { + "name": "StorageMetadata", + "value": "storageMetadata", + "description": "Indexes just the standard blob properties and user-specified metadata." + }, + { + "name": "AllMetadata", + "value": "allMetadata", + "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." + }, + { + "name": "ContentAndMetadata", + "value": "contentAndMetadata", + "description": "Extracts all metadata and textual content from each blob." + } + ] + } + }, + "BlobIndexerImageAction": { + "type": "string", + "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", + "enum": [ + "none", + "generateNormalizedImages", + "generateNormalizedImagePerPage" + ], + "x-ms-enum": { + "name": "BlobIndexerImageAction", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Ignores embedded images or image files in the data set. This is the default." + }, + { + "name": "GenerateNormalizedImages", + "value": "generateNormalizedImages", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." + }, + { + "name": "GenerateNormalizedImagePerPage", + "value": "generateNormalizedImagePerPage", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." + } + ] + } + }, + "BlobIndexerPDFTextRotationAlgorithm": { + "type": "string", + "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", + "enum": [ + "none", + "detectAngles" + ], + "x-ms-enum": { + "name": "BlobIndexerPDFTextRotationAlgorithm", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Leverages normal text extraction. This is the default." + }, + { + "name": "DetectAngles", + "value": "detectAngles", + "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." + } + ] + } + }, + "BlobIndexerParsingMode": { + "type": "string", + "description": "Represents the parsing mode for indexing from an Azure blob data source.", + "enum": [ + "default", + "text", + "delimitedText", + "json", + "jsonArray", + "jsonLines" + ], + "x-ms-enum": { + "name": "BlobIndexerParsingMode", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "default", + "description": "Set to default for normal file processing." + }, + { + "name": "Text", + "value": "text", + "description": "Set to text to improve indexing performance on plain text files in blob storage." + }, + { + "name": "DelimitedText", + "value": "delimitedText", + "description": "Set to delimitedText when blobs are plain CSV files." + }, + { + "name": "Json", + "value": "json", + "description": "Set to json to extract structured content from JSON files." + }, + { + "name": "JsonArray", + "value": "jsonArray", + "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." + }, + { + "name": "JsonLines", + "value": "jsonLines", + "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." + } + ] + } + }, + "CharFilter": { + "type": "object", + "description": "Base type for character filters.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the char filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "name" + ] + }, + "CharFilterName": { + "type": "string", + "description": "Defines the names of all character filters supported by the search engine.", + "enum": [ + "html_strip" + ], + "x-ms-enum": { + "name": "CharFilterName", + "modelAsString": true, + "values": [ + { + "name": "HtmlStrip", + "value": "html_strip", + "description": "A character filter that attempts to strip out HTML constructs. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" + } + ] + } + }, + "CjkBigramTokenFilter": { + "type": "object", + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. This\ntoken filter is implemented using Apache Lucene.", + "properties": { + "ignoreScripts": { + "type": "array", + "description": "The scripts to ignore.", + "items": { + "$ref": "#/definitions/CjkBigramTokenFilterScripts" + } + }, + "outputUnigrams": { + "type": "boolean", + "description": "A value indicating whether to output both unigrams and bigrams (if true), or\njust bigrams (if false). Default is false." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter" + }, + "CjkBigramTokenFilterScripts": { + "type": "string", + "description": "Scripts that can be ignored by CjkBigramTokenFilter.", + "enum": [ + "han", + "hiragana", + "katakana", + "hangul" + ], + "x-ms-enum": { + "name": "CjkBigramTokenFilterScripts", + "modelAsString": true, + "values": [ + { + "name": "Han", + "value": "han", + "description": "Ignore Han script when forming bigrams of CJK terms." + }, + { + "name": "Hiragana", + "value": "hiragana", + "description": "Ignore Hiragana script when forming bigrams of CJK terms." + }, + { + "name": "Katakana", + "value": "katakana", + "description": "Ignore Katakana script when forming bigrams of CJK terms." + }, + { + "name": "Hangul", + "value": "hangul", + "description": "Ignore Hangul script when forming bigrams of CJK terms." + } + ] + } + }, + "ClassicSimilarityAlgorithm": { + "type": "object", + "description": "Legacy similarity algorithm which uses the Lucene TFIDFSimilarity\nimplementation of TF-IDF. This variation of TF-IDF introduces static document\nlength normalization as well as coordinating factors that penalize documents\nthat only partially match the searched queries.", + "allOf": [ + { + "$ref": "#/definitions/SimilarityAlgorithm" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "ClassicTokenizer": { + "type": "object", + "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. This tokenizer is implemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer" + }, + "CognitiveServicesAccount": { + "type": "object", + "description": "Base type for describing any Azure AI service resource attached to a skillset.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "description": { + "type": "string", + "description": "Description of the Azure AI service resource attached to a skillset." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "CognitiveServicesAccountKey": { + "type": "object", + "description": "The multi-region account key of an Azure AI service resource that's attached to\na skillset.", + "properties": { + "key": { + "type": "string", + "description": "The key used to provision the Azure AI service resource attached to a skillset." + } + }, + "required": [ + "key" + ], + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" + }, + "CommonGramTokenFilter": { + "type": "object", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "commonWords": { + "type": "array", + "description": "The set of common words.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." + }, + "queryMode": { + "type": "boolean", + "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false." + } + }, + "required": [ + "commonWords" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" + }, + "ConditionalSkill": { + "type": "object", + "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill" + }, + "CorsOptions": { + "type": "object", + "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index.", + "properties": { + "allowedOrigins": { + "type": "array", + "description": "The list of origins from which JavaScript code will be granted access to your\nindex. Can contain a list of hosts of the form\n{protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow\nall origins (not recommended).", + "items": { + "type": "string" + } + }, + "maxAgeInSeconds": { + "type": "integer", + "format": "int64", + "description": "The duration for which browsers should cache CORS preflight responses. Defaults\nto 5 minutes." + } + }, + "required": [ + "allowedOrigins" + ] + }, + "CustomAnalyzer": { + "type": "object", + "description": "Allows you to take control over the process of converting text into\nindexable/searchable tokens. It's a user-defined configuration consisting of a\nsingle predefined tokenizer and one or more filters. The tokenizer is\nresponsible for breaking text into tokens, and the filters for modifying tokens\nemitted by the tokenizer.", + "properties": { + "tokenizer": { + "$ref": "#/definitions/LexicalTokenizerName", + "description": "The name of the tokenizer to use to divide continuous text into a sequence of\ntokens, such as breaking a sentence into words." + }, + "tokenFilters": { + "type": "array", + "description": "A list of token filters used to filter out or modify the tokens generated by a\ntokenizer. For example, you can specify a lowercase filter that converts all\ncharacters to lowercase. The filters are run in the order in which they are\nlisted.", + "items": { + "$ref": "#/definitions/TokenFilterName" + } + }, + "charFilters": { + "type": "array", + "description": "A list of character filters used to prepare input text before it is processed\nby the tokenizer. For instance, they can replace certain characters or symbols.\nThe filters are run in the order in which they are listed.", + "items": { + "$ref": "#/definitions/CharFilterName" + } + } + }, + "required": [ + "tokenizer" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer" + }, + "CustomEntity": { + "type": "object", + "description": "An object that contains information about the matches that were found, and\nrelated metadata.", + "properties": { + "name": { + "type": "string", + "description": "The top-level entity descriptor. Matches in the skill output will be grouped by\nthis name, and it should represent the \"normalized\" form of the text being\nfound." + }, + "description": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "type": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "subtype": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "id": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "caseSensitive": { + "type": "boolean", + "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to character casing. Sample case insensitive matches\nof \"Microsoft\" could be: microsoft, microSoft, MICROSOFT." + }, + "accentSensitive": { + "type": "boolean", + "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to accent." + }, + "fuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent\ncharacters that would still constitute a match with the entity name. The\nsmallest possible fuzziness for any given match is returned. For instance, if\nthe edit distance is set to 3, \"Windows10\" would still match \"Windows\",\n\"Windows10\" and \"Windows 7\". When case sensitivity is set to false, case\ndifferences do NOT count towards fuzziness tolerance, but otherwise do." + }, + "defaultCaseSensitive": { + "type": "boolean", + "description": "Changes the default case sensitivity value for this entity. It be used to\nchange the default value of all aliases caseSensitive values." + }, + "defaultAccentSensitive": { + "type": "boolean", + "description": "Changes the default accent sensitivity value for this entity. It be used to\nchange the default value of all aliases accentSensitive values." + }, + "defaultFuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Changes the default fuzzy edit distance value for this entity. It can be used\nto change the default value of all aliases fuzzyEditDistance values." + }, + "aliases": { + "type": "array", + "description": "An array of complex objects that can be used to specify alternative spellings\nor synonyms to the root entity name.", + "items": { + "$ref": "#/definitions/CustomEntityAlias" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name" + ] + }, + "CustomEntityAlias": { + "type": "object", + "description": "A complex object that can be used to specify alternative spellings or synonyms\nto the root entity name.", + "properties": { + "text": { + "type": "string", + "description": "The text of the alias." + }, + "caseSensitive": { + "type": "boolean", + "description": "Determine if the alias is case sensitive." + }, + "accentSensitive": { + "type": "boolean", + "description": "Determine if the alias is accent sensitive." + }, + "fuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Determine the fuzzy edit distance of the alias." + } + }, + "required": [ + "text" + ] + }, + "CustomEntityLookupSkill": { + "type": "object", + "description": "A skill looks for text from a custom, user-defined list of words and phrases.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/CustomEntityLookupSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "entitiesDefinitionUri": { + "type": "string", + "description": "Path to a JSON or CSV file containing all the target text to match against.\nThis entity definition is read at the beginning of an indexer run. Any updates\nto this file during an indexer run will not take effect until subsequent runs.\nThis config must be accessible over HTTPS." + }, + "inlineEntitiesDefinition": { + "type": "array", + "description": "The inline CustomEntity definition.", + "items": { + "$ref": "#/definitions/CustomEntity" + } + }, + "globalDefaultCaseSensitive": { + "type": "boolean", + "description": "A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity,\nthis value will be the default value." + }, + "globalDefaultAccentSensitive": { + "type": "boolean", + "description": "A global flag for AccentSensitive. If AccentSensitive is not set in\nCustomEntity, this value will be the default value." + }, + "globalDefaultFuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in\nCustomEntity, this value will be the default value." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.CustomEntityLookupSkill" + }, + "CustomEntityLookupSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by CustomEntityLookupSkill.", + "enum": [ + "da", + "de", + "en", + "es", + "fi", + "fr", + "it", + "ko", + "pt" + ], + "x-ms-enum": { + "name": "CustomEntityLookupSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + } + ] + } + }, + "DataChangeDetectionPolicy": { + "type": "object", + "description": "Base type for data change detection policies.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "DataDeletionDetectionPolicy": { + "type": "object", + "description": "Base type for data deletion detection policies.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "DataSourceCredentials": { + "type": "object", + "description": "Represents credentials that can be used to connect to a datasource.", + "properties": { + "connectionString": { + "type": "string", + "description": "The connection string for the datasource. Set to `` (with brackets)\nif you don't want the connection string updated. Set to `` if you\nwant to remove the connection string value from the datasource." + } + } + }, + "DefaultCognitiveServicesAccount": { + "type": "object", + "description": "An empty object that represents the default Azure AI service resource for a\nskillset.", + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices" + }, + "DictionaryDecompounderTokenFilter": { + "type": "object", + "description": "Decomposes compound words found in many Germanic languages. This token filter\nis implemented using Apache Lucene.", + "properties": { + "wordList": { + "type": "array", + "description": "The list of words to match against.", + "items": { + "type": "string" + } + }, + "minWordSize": { + "type": "integer", + "format": "int32", + "description": "The minimum word size. Only words longer than this get processed. Default is 5.\nMaximum is 300.", + "default": 5, + "maximum": 300 + }, + "minSubwordSize": { + "type": "integer", + "format": "int32", + "description": "The minimum subword size. Only subwords longer than this are outputted. Default\nis 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "maxSubwordSize": { + "type": "integer", + "format": "int32", + "description": "The maximum subword size. Only subwords shorter than this are outputted.\nDefault is 15. Maximum is 300.", + "default": 15, + "maximum": 300 + }, + "onlyLongestMatch": { + "type": "boolean", + "description": "A value indicating whether to add only the longest matching subword to the\noutput. Default is false." + } + }, + "required": [ + "wordList" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" + }, + "DistanceScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on distance from a geographic\nlocation.", + "properties": { + "distance": { + "$ref": "#/definitions/DistanceScoringParameters", + "description": "Parameter values for the distance scoring function." + } + }, + "required": [ + "distance" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "distance" + }, + "DistanceScoringParameters": { + "type": "object", + "description": "Provides parameter values to a distance scoring function.", + "properties": { + "referencePointParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the reference\nlocation." + }, + "boostingDistance": { + "type": "number", + "format": "double", + "description": "The distance in kilometers from the reference location where the boosting range\nends." + } + }, + "required": [ + "referencePointParameter", + "boostingDistance" + ] + }, + "DocumentExtractionSkill": { + "type": "object", + "description": "A skill that extracts content from a file within the enrichment pipeline.", + "properties": { + "parsingMode": { + "type": "string", + "description": "The parsingMode for the skill. Will be set to 'default' if not defined." + }, + "dataToExtract": { + "type": "string", + "description": "The type of data to be extracted for the skill. Will be set to\n'contentAndMetadata' if not defined." + }, + "configuration": { + "type": "object", + "description": "A dictionary of configurations for the skill.", + "additionalProperties": {} + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.DocumentExtractionSkill" + }, + "EdgeNGramTokenFilter": { + "type": "object", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", + "default": 1 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2.", + "default": 2 + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter" + }, + "EdgeNGramTokenFilterSide": { + "type": "string", + "description": "Specifies which side of the input an n-gram should be generated from.", + "enum": [ + "front", + "back" + ], + "x-ms-enum": { + "name": "EdgeNGramTokenFilterSide", + "modelAsString": true, + "values": [ + { + "name": "Front", + "value": "front", + "description": "Specifies that the n-gram should be generated from the front of the input." + }, + { + "name": "Back", + "value": "back", + "description": "Specifies that the n-gram should be generated from the back of the input." + } + ] + } + }, + "EdgeNGramTokenFilterV2": { + "type": "object", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" + }, + "EdgeNGramTokenizer": { + "type": "object", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). This\ntokenizer is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "tokenChars": { + "type": "array", + "description": "Character classes to keep in the tokens.", + "items": { + "$ref": "#/definitions/TokenCharacterKind" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer" + }, + "ElisionTokenFilter": { + "type": "object", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). This token filter is implemented using Apache Lucene.", + "properties": { + "articles": { + "type": "array", + "description": "The set of articles to remove.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter" + }, + "EntityCategory": { + "type": "string", + "description": "A string indicating what entity categories to return.", + "enum": [ + "location", + "organization", + "person", + "quantity", + "datetime", + "url", + "email" + ], + "x-ms-enum": { + "name": "EntityCategory", + "modelAsString": true, + "values": [ + { + "name": "Location", + "value": "location", + "description": "Entities describing a physical location." + }, + { + "name": "Organization", + "value": "organization", + "description": "Entities describing an organization." + }, + { + "name": "Person", + "value": "person", + "description": "Entities describing a person." + }, + { + "name": "Quantity", + "value": "quantity", + "description": "Entities describing a quantity." + }, + { + "name": "Datetime", + "value": "datetime", + "description": "Entities describing a date and time." + }, + { + "name": "Url", + "value": "url", + "description": "Entities describing a URL." + }, + { + "name": "Email", + "value": "email", + "description": "Entities describing an email address." + } + ] + } + }, + "EntityLinkingSkill": { + "type": "object", + "description": "Using the Text Analytics API, extracts linked entities from text.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityLinkingSkill" + }, + "EntityRecognitionSkill": { + "type": "object", + "description": "This skill is deprecated. Use the V3.EntityRecognitionSkill instead.", + "properties": { + "categories": { + "type": "array", + "description": "A list of entity categories that should be extracted.", + "items": { + "$ref": "#/definitions/EntityCategory" + } + }, + "defaultLanguageCode": { + "$ref": "#/definitions/EntityRecognitionSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "includeTypelessEntities": { + "type": "boolean", + "description": "Determines whether or not to include entities which are well known but don't\nconform to a pre-defined type. If this configuration is not set (default), set\nto null or set to false, entities which don't conform to one of the pre-defined\ntypes will not be surfaced." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill" + }, + "EntityRecognitionSkillLanguage": { + "type": "string", + "description": "Deprecated. The language codes supported for input text by\nEntityRecognitionSkill.", + "enum": [ + "ar", + "cs", + "zh-Hans", + "zh-Hant", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "EntityRecognitionSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + } + ] + } + }, + "EntityRecognitionSkillV3": { + "type": "object", + "description": "Using the Text Analytics API, extracts entities of different types from text.", + "properties": { + "categories": { + "type": "array", + "description": "A list of entity categories that should be extracted.", + "items": { + "type": "string" + } + }, + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics API. It will\ndefault to the latest available when not specified. We recommend you do not\nspecify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" + }, + "ErrorAdditionalInfo": { + "type": "object", + "description": "The resource management error additional info.", + "properties": { + "type": { + "type": "string", + "description": "The additional info type." + }, + "info": { + "type": "object", + "description": "The additional info.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "The error detail.", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The error target." + }, + "details": { + "type": "array", + "description": "The error details.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-identifiers": [] + }, + "additionalInfo": { + "type": "array", + "description": "The error additional info.", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [] + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Common error response for all Azure Resource Manager APIs to return error\ndetails for failed operations. (This also follows the OData error response\nformat.).", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetail", + "description": "The error object." + } + } + }, + "ExhaustiveKnnAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the exhaustive KNN algorithm used\nduring querying, which will perform brute-force search across the entire vector\nindex.", + "properties": { + "exhaustiveKnnParameters": { + "$ref": "#/definitions/ExhaustiveKnnParameters", + "description": "Contains the parameters specific to exhaustive KNN algorithm." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + } + ], + "x-ms-discriminator-value": "exhaustiveKnn" + }, + "ExhaustiveKnnParameters": { + "type": "object", + "description": "Contains the parameters specific to exhaustive KNN algorithm.", + "properties": { + "metric": { + "$ref": "#/definitions/VectorSearchAlgorithmMetric", + "description": "The similarity metric to use for vector comparisons." + } + } + }, + "FieldMapping": { + "type": "object", + "description": "Defines a mapping between a field in a data source and a target field in an\nindex.", + "properties": { + "sourceFieldName": { + "type": "string", + "description": "The name of the field in the data source." + }, + "targetFieldName": { + "type": "string", + "description": "The name of the target field in the index. Same as the source field name by\ndefault." + }, + "mappingFunction": { + "$ref": "#/definitions/FieldMappingFunction", + "description": "A function to apply to each source field value before indexing." + } + }, + "required": [ + "sourceFieldName" + ] + }, + "FieldMappingFunction": { + "type": "object", + "description": "Represents a function that transforms a value from a data source before\nindexing.", + "properties": { + "name": { + "type": "string", + "description": "The name of the field mapping function." + }, + "parameters": { + "type": "object", + "description": "A dictionary of parameter name/value pairs to pass to the function. Each value\nmust be of a primitive type.", + "additionalProperties": {} + } + }, + "required": [ + "name" + ] + }, + "FreshnessScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on the value of a date-time field.", + "properties": { + "freshness": { + "$ref": "#/definitions/FreshnessScoringParameters", + "description": "Parameter values for the freshness scoring function." + } + }, + "required": [ + "freshness" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "freshness" + }, + "FreshnessScoringParameters": { + "type": "object", + "description": "Provides parameter values to a freshness scoring function.", + "properties": { + "boostingDuration": { + "type": "string", + "format": "duration", + "description": "The expiration period after which boosting will stop for a particular document." + } + }, + "required": [ + "boostingDuration" + ] + }, + "GetIndexStatisticsResult": { + "type": "object", + "description": "Statistics for a given index. Statistics are collected periodically and are not\nguaranteed to always be up-to-date.", + "properties": { + "documentCount": { + "type": "integer", + "format": "int64", + "description": "The number of documents in the index." + }, + "storageSize": { + "type": "integer", + "format": "int64", + "description": "The amount of storage in bytes consumed by the index." + }, + "vectorIndexSize": { + "type": "integer", + "format": "int64", + "description": "The amount of memory in bytes consumed by vectors in the index." + } + }, + "required": [ + "documentCount", + "storageSize", + "vectorIndexSize" + ] + }, + "HighWaterMarkChangeDetectionPolicy": { + "type": "object", + "description": "Defines a data change detection policy that captures changes based on the value\nof a high water mark column.", + "properties": { + "highWaterMarkColumnName": { + "type": "string", + "description": "The name of the high water mark column." + } + }, + "required": [ + "highWaterMarkColumnName" + ], + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" + }, + "HnswAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the HNSW approximate nearest\nneighbors algorithm used during indexing and querying. The HNSW algorithm\noffers a tunable trade-off between search speed and accuracy.", + "properties": { + "hnswParameters": { + "$ref": "#/definitions/HnswParameters", + "description": "Contains the parameters specific to HNSW algorithm." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + } + ], + "x-ms-discriminator-value": "hnsw" + }, + "HnswParameters": { + "type": "object", + "description": "Contains the parameters specific to the HNSW algorithm.", + "properties": { + "m": { + "type": "integer", + "format": "int32", + "description": "The number of bi-directional links created for every new element during\nconstruction. Increasing this parameter value may improve recall and reduce\nretrieval times for datasets with high intrinsic dimensionality at the expense\nof increased memory consumption and longer indexing time.", + "default": 4, + "minimum": 4, + "maximum": 10 + }, + "efConstruction": { + "type": "integer", + "format": "int32", + "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring index time. Increasing this parameter may improve index quality, at the\nexpense of increased indexing time. At a certain point, increasing this\nparameter leads to diminishing returns.", + "default": 400, + "minimum": 100, + "maximum": 1000 + }, + "efSearch": { + "type": "integer", + "format": "int32", + "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring search time. Increasing this parameter may improve search results, at\nthe expense of slower search. At a certain point, increasing this parameter\nleads to diminishing returns.", + "default": 500, + "minimum": 100, + "maximum": 1000 + }, + "metric": { + "$ref": "#/definitions/VectorSearchAlgorithmMetric", + "description": "The similarity metric to use for vector comparisons." + } + } + }, + "ImageAnalysisSkill": { + "type": "object", + "description": "A skill that analyzes image files. It extracts a rich set of visual features\nbased on the image content.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/ImageAnalysisSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "visualFeatures": { + "type": "array", + "description": "A list of visual features.", + "items": { + "$ref": "#/definitions/VisualFeature" + } + }, + "details": { + "type": "array", + "description": "A string indicating which domain-specific details to return.", + "items": { + "$ref": "#/definitions/ImageDetail" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill" + }, + "ImageAnalysisSkillLanguage": { + "type": "string", + "description": "The language codes supported for input by ImageAnalysisSkill.", + "enum": [ + "ar", + "az", + "bg", + "bs", + "ca", + "cs", + "cy", + "da", + "de", + "el", + "en", + "es", + "et", + "eu", + "fi", + "fr", + "ga", + "gl", + "he", + "hi", + "hr", + "hu", + "id", + "it", + "ja", + "kk", + "ko", + "lt", + "lv", + "mk", + "ms", + "nb", + "nl", + "pl", + "prs", + "pt-BR", + "pt", + "pt-PT", + "ro", + "ru", + "sk", + "sl", + "sr-Cyrl", + "sr-Latn", + "sv", + "th", + "tr", + "uk", + "vi", + "zh", + "zh-Hans", + "zh-Hant" + ], + "x-ms-enum": { + "name": "ImageAnalysisSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "az", + "value": "az", + "description": "Azerbaijani" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian Latin" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "eu", + "value": "eu", + "description": "Basque" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "gl", + "value": "gl", + "description": "Galician" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "kk", + "value": "kk", + "description": "Kazakh" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "mk", + "value": "mk", + "description": "Macedonian" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay Malaysia" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian (Bokmal)" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "prs", + "value": "prs", + "description": "Dari" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese-Brazil" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese-Portugal" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese-Portugal" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian - Cyrillic RS" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian - Latin RS" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "th", + "value": "th", + "description": "Thai" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "uk", + "value": "uk", + "description": "Ukrainian" + }, + { + "name": "vi", + "value": "vi", + "description": "Vietnamese" + }, + { + "name": "zh", + "value": "zh", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + } + ] + } + }, + "ImageDetail": { + "type": "string", + "description": "A string indicating which domain-specific details to return.", + "enum": [ + "celebrities", + "landmarks" + ], + "x-ms-enum": { + "name": "ImageDetail", + "modelAsString": true, + "values": [ + { + "name": "Celebrities", + "value": "celebrities", + "description": "Details recognized as celebrities." + }, + { + "name": "Landmarks", + "value": "landmarks", + "description": "Details recognized as landmarks." + } + ] + } + }, + "IndexProjectionMode": { + "type": "string", + "description": "Defines behavior of the index projections in relation to the rest of the\nindexer.", + "enum": [ + "skipIndexingParentDocuments", + "includeIndexingParentDocuments" + ], + "x-ms-enum": { + "name": "IndexProjectionMode", + "modelAsString": true, + "values": [ + { + "name": "SkipIndexingParentDocuments", + "value": "skipIndexingParentDocuments", + "description": "The source document will be skipped from writing into the indexer's target\nindex." + }, + { + "name": "IncludeIndexingParentDocuments", + "value": "includeIndexingParentDocuments", + "description": "The source document will be written into the indexer's target index. This is\nthe default pattern." + } + ] + } + }, + "IndexerExecutionEnvironment": { + "type": "string", + "description": "Specifies the environment in which the indexer should execute.", + "enum": [ + "standard", + "private" + ], + "x-ms-enum": { + "name": "IndexerExecutionEnvironment", + "modelAsString": true, + "values": [ + { + "name": "standard", + "value": "standard", + "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." + }, + { + "name": "private", + "value": "private", + "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." + } + ] + } + }, + "IndexerExecutionResult": { + "type": "object", + "description": "Represents the result of an individual indexer execution.", + "properties": { + "status": { + "$ref": "#/definitions/IndexerExecutionStatus", + "description": "The outcome of this indexer execution." + }, + "errorMessage": { + "type": "string", + "description": "The error message indicating the top-level error, if any." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of this indexer execution." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of this indexer execution, if the execution has already completed." + }, + "errors": { + "type": "array", + "description": "The item-level indexing errors.", + "items": { + "$ref": "#/definitions/SearchIndexerError" + }, + "x-ms-identifiers": [] + }, + "warnings": { + "type": "array", + "description": "The item-level indexing warnings.", + "items": { + "$ref": "#/definitions/SearchIndexerWarning" + }, + "x-ms-identifiers": [] + }, + "itemsProcessed": { + "type": "integer", + "format": "int32", + "description": "The number of items that were processed during this indexer execution. This\nincludes both successfully processed items and items where indexing was\nattempted but failed." + }, + "itemsFailed": { + "type": "integer", + "format": "int32", + "description": "The number of items that failed to be indexed during this indexer execution." + }, + "initialTrackingState": { + "type": "string", + "description": "Change tracking state with which an indexer execution started." + }, + "finalTrackingState": { + "type": "string", + "description": "Change tracking state with which an indexer execution finished." + } + }, + "required": [ + "status", + "errors", + "warnings", + "itemsProcessed", + "itemsFailed" + ] + }, + "IndexerExecutionStatus": { + "type": "string", + "description": "Represents the status of an individual indexer execution.", + "enum": [ + "transientFailure", + "success", + "inProgress", + "reset" + ], + "x-ms-enum": { + "name": "IndexerExecutionStatus", + "modelAsString": true, + "values": [ + { + "name": "TransientFailure", + "value": "transientFailure", + "description": "An indexer invocation has failed, but the failure may be transient. Indexer\ninvocations will continue per schedule." + }, + { + "name": "Success", + "value": "success", + "description": "Indexer execution completed successfully." + }, + { + "name": "InProgress", + "value": "inProgress", + "description": "Indexer execution is in progress." + }, + { + "name": "Reset", + "value": "reset", + "description": "Indexer has been reset." + } + ] + } + }, + "IndexerStatus": { + "type": "string", + "description": "Represents the overall indexer status.", + "enum": [ + "unknown", + "error", + "running" + ], + "x-ms-enum": { + "name": "IndexerStatus", + "modelAsString": true, + "values": [ + { + "name": "Unknown", + "value": "unknown", + "description": "Indicates that the indexer is in an unknown state." + }, + { + "name": "Error", + "value": "error", + "description": "Indicates that the indexer experienced an error that cannot be corrected\nwithout human intervention." + }, + { + "name": "Running", + "value": "running", + "description": "Indicates that the indexer is running normally." + } + ] + } + }, + "IndexingParameters": { + "type": "object", + "description": "Represents parameters for indexer execution.", + "properties": { + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The number of items that are read from the data source and indexed as a single\nbatch in order to improve performance. The default depends on the data source\ntype." + }, + "maxFailedItems": { + "type": "integer", + "format": "int32", + "description": "The maximum number of items that can fail indexing for indexer execution to\nstill be considered successful. -1 means no limit. Default is 0." + }, + "maxFailedItemsPerBatch": { + "type": "integer", + "format": "int32", + "description": "The maximum number of items in a single batch that can fail indexing for the\nbatch to still be considered successful. -1 means no limit. Default is 0." + }, + "configuration": { + "$ref": "#/definitions/IndexingParametersConfiguration", + "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type." + } + } + }, + "IndexingParametersConfiguration": { + "type": "object", + "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type.", + "properties": { + "parsingMode": { + "type": "string", + "description": "Represents the parsing mode for indexing from an Azure blob data source.", + "default": "default", + "enum": [ + "default", + "text", + "delimitedText", + "json", + "jsonArray", + "jsonLines" + ], + "x-ms-enum": { + "name": "BlobIndexerParsingMode", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "default", + "description": "Set to default for normal file processing." + }, + { + "name": "Text", + "value": "text", + "description": "Set to text to improve indexing performance on plain text files in blob storage." + }, + { + "name": "DelimitedText", + "value": "delimitedText", + "description": "Set to delimitedText when blobs are plain CSV files." + }, + { + "name": "Json", + "value": "json", + "description": "Set to json to extract structured content from JSON files." + }, + { + "name": "JsonArray", + "value": "jsonArray", + "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." + }, + { + "name": "JsonLines", + "value": "jsonLines", + "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." + } + ] + } + }, + "excludedFileNameExtensions": { + "type": "string", + "description": "Comma-delimited list of filename extensions to ignore when processing from\nAzure blob storage. For example, you could exclude \".png, .mp4\" to skip over\nthose files during indexing." + }, + "indexedFileNameExtensions": { + "type": "string", + "description": "Comma-delimited list of filename extensions to select when processing from\nAzure blob storage. For example, you could focus indexing on specific\napplication files \".docx, .pptx, .msg\" to specifically include those file\ntypes." + }, + "failOnUnsupportedContentType": { + "type": "boolean", + "description": "For Azure blobs, set to false if you want to continue indexing when an\nunsupported content type is encountered, and you don't know all the content\ntypes (file extensions) in advance." + }, + "failOnUnprocessableDocument": { + "type": "boolean", + "description": "For Azure blobs, set to false if you want to continue indexing if a document\nfails indexing." + }, + "indexStorageMetadataOnlyForOversizedDocuments": { + "type": "boolean", + "description": "For Azure blobs, set this property to true to still index storage metadata for\nblob content that is too large to process. Oversized blobs are treated as\nerrors by default. For limits on blob size, see\nhttps://learn.microsoft.com/azure/search/search-limits-quotas-capacity." + }, + "delimitedTextHeaders": { + "type": "string", + "description": "For CSV blobs, specifies a comma-delimited list of column headers, useful for\nmapping source fields to destination fields in an index." + }, + "delimitedTextDelimiter": { + "type": "string", + "description": "For CSV blobs, specifies the end-of-line single-character delimiter for CSV\nfiles where each line starts a new document (for example, \"|\")." + }, + "firstLineContainsHeaders": { + "type": "boolean", + "description": "For CSV blobs, indicates that the first (non-blank) line of each blob contains\nheaders.", + "default": true + }, + "documentRoot": { + "type": "string", + "description": "For JSON arrays, given a structured or semi-structured document, you can\nspecify a path to the array using this property." + }, + "dataToExtract": { + "type": "string", + "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", + "default": "contentAndMetadata", + "enum": [ + "storageMetadata", + "allMetadata", + "contentAndMetadata" + ], + "x-ms-enum": { + "name": "BlobIndexerDataToExtract", + "modelAsString": true, + "values": [ + { + "name": "StorageMetadata", + "value": "storageMetadata", + "description": "Indexes just the standard blob properties and user-specified metadata." + }, + { + "name": "AllMetadata", + "value": "allMetadata", + "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." + }, + { + "name": "ContentAndMetadata", + "value": "contentAndMetadata", + "description": "Extracts all metadata and textual content from each blob." + } + ] + } + }, + "imageAction": { + "type": "string", + "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", + "default": "none", + "enum": [ + "none", + "generateNormalizedImages", + "generateNormalizedImagePerPage" + ], + "x-ms-enum": { + "name": "BlobIndexerImageAction", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Ignores embedded images or image files in the data set. This is the default." + }, + { + "name": "GenerateNormalizedImages", + "value": "generateNormalizedImages", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." + }, + { + "name": "GenerateNormalizedImagePerPage", + "value": "generateNormalizedImagePerPage", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." + } + ] + } + }, + "allowSkillsetToReadFileData": { + "type": "boolean", + "description": "If true, will create a path //document//file_data that is an object\nrepresenting the original file data downloaded from your blob data source.\nThis allows you to pass the original file data to a custom skill for processing\nwithin the enrichment pipeline, or to the Document Extraction skill." + }, + "pdfTextRotationAlgorithm": { + "type": "string", + "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", + "default": "none", + "enum": [ + "none", + "detectAngles" + ], + "x-ms-enum": { + "name": "BlobIndexerPDFTextRotationAlgorithm", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Leverages normal text extraction. This is the default." + }, + { + "name": "DetectAngles", + "value": "detectAngles", + "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." + } + ] + } + }, + "executionEnvironment": { + "type": "string", + "description": "Specifies the environment in which the indexer should execute.", + "default": "standard", + "enum": [ + "standard", + "private" + ], + "x-ms-enum": { + "name": "IndexerExecutionEnvironment", + "modelAsString": true, + "values": [ + { + "name": "standard", + "value": "standard", + "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." + }, + { + "name": "private", + "value": "private", + "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." + } + ] + } + }, + "queryTimeout": { + "type": "string", + "description": "Increases the timeout beyond the 5-minute default for Azure SQL database data\nsources, specified in the format \"hh:mm:ss\".", + "default": "00:05:00" + } + }, + "additionalProperties": {} + }, + "IndexingSchedule": { + "type": "object", + "description": "Represents a schedule for indexer execution.", + "properties": { + "interval": { + "type": "string", + "format": "duration", + "description": "The interval of time between indexer executions." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time when an indexer should start running." + } + }, + "required": [ + "interval" + ] + }, + "InputFieldMappingEntry": { + "type": "object", + "description": "Input field mapping for a skill.", + "properties": { + "name": { + "type": "string", + "description": "The name of the input." + }, + "source": { + "type": "string", + "description": "The source of the input." + }, + "sourceContext": { + "type": "string", + "description": "The source context used for selecting recursive inputs." + }, + "inputs": { + "type": "array", + "description": "The recursive inputs used when creating a complex type.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name" + ] + }, + "KeepTokenFilter": { + "type": "object", + "description": "A token filter that only keeps tokens with text contained in a specified list\nof words. This token filter is implemented using Apache Lucene.", + "properties": { + "keepWords": { + "type": "array", + "description": "The list of words to keep.", + "items": { + "type": "string" + } + }, + "keepWordsCase": { + "type": "boolean", + "description": "A value indicating whether to lower case all words first. Default is false." + } + }, + "required": [ + "keepWords" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter" + }, + "KeyPhraseExtractionSkill": { + "type": "object", + "description": "A skill that uses text analytics for key phrase extraction.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "maxKeyPhraseCount": { + "type": "integer", + "format": "int32", + "description": "A number indicating how many key phrases to return. If absent, all identified\nkey phrases will be returned." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" + }, + "KeyPhraseExtractionSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by KeyPhraseExtractionSkill.", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv" + ], + "x-ms-enum": { + "name": "KeyPhraseExtractionSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + } + ] + } + }, + "KeywordMarkerTokenFilter": { + "type": "object", + "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", + "properties": { + "keywords": { + "type": "array", + "description": "A list of words to mark as keywords.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." + } + }, + "required": [ + "keywords" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" + }, + "KeywordTokenizer": { + "type": "object", + "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "bufferSize": { + "type": "integer", + "format": "int32", + "description": "The read buffer size in bytes. Default is 256.", + "default": 256 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer" + }, + "KeywordTokenizerV2": { + "type": "object", + "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 256. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 256, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2" + }, + "LanguageDetectionSkill": { + "type": "object", + "description": "A skill that detects the language of input text and reports a single language\ncode for every document submitted on the request. The language code is paired\nwith a score indicating the confidence of the analysis.", + "properties": { + "defaultCountryHint": { + "type": "string", + "description": "A country code to use as a hint to the language detection model if it cannot\ndisambiguate the language." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill" + }, + "LengthTokenFilter": { + "type": "object", + "description": "Removes words that are too long or too short. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "min": { + "type": "integer", + "format": "int32", + "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less\nthan the value of max.", + "maximum": 300 + }, + "max": { + "type": "integer", + "format": "int32", + "description": "The maximum length in characters. Default and maximum is 300.", + "default": 300, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter" + }, + "LexicalAnalyzer": { + "type": "object", + "description": "Base type for analyzers.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "name" + ] + }, + "LexicalAnalyzerName": { + "type": "string", + "description": "Defines the names of all text analyzers supported by the search engine.", + "enum": [ + "ar.microsoft", + "ar.lucene", + "hy.lucene", + "bn.microsoft", + "eu.lucene", + "bg.microsoft", + "bg.lucene", + "ca.microsoft", + "ca.lucene", + "zh-Hans.microsoft", + "zh-Hans.lucene", + "zh-Hant.microsoft", + "zh-Hant.lucene", + "hr.microsoft", + "cs.microsoft", + "cs.lucene", + "da.microsoft", + "da.lucene", + "nl.microsoft", + "nl.lucene", + "en.microsoft", + "en.lucene", + "et.microsoft", + "fi.microsoft", + "fi.lucene", + "fr.microsoft", + "fr.lucene", + "gl.lucene", + "de.microsoft", + "de.lucene", + "el.microsoft", + "el.lucene", + "gu.microsoft", + "he.microsoft", + "hi.microsoft", + "hi.lucene", + "hu.microsoft", + "hu.lucene", + "is.microsoft", + "id.microsoft", + "id.lucene", + "ga.lucene", + "it.microsoft", + "it.lucene", + "ja.microsoft", + "ja.lucene", + "kn.microsoft", + "ko.microsoft", + "ko.lucene", + "lv.microsoft", + "lv.lucene", + "lt.microsoft", + "ml.microsoft", + "ms.microsoft", + "mr.microsoft", + "nb.microsoft", + "no.lucene", + "fa.lucene", + "pl.microsoft", + "pl.lucene", + "pt-BR.microsoft", + "pt-BR.lucene", + "pt-PT.microsoft", + "pt-PT.lucene", + "pa.microsoft", + "ro.microsoft", + "ro.lucene", + "ru.microsoft", + "ru.lucene", + "sr-cyrillic.microsoft", + "sr-latin.microsoft", + "sk.microsoft", + "sl.microsoft", + "es.microsoft", + "es.lucene", + "sv.microsoft", + "sv.lucene", + "ta.microsoft", + "te.microsoft", + "th.microsoft", + "th.lucene", + "tr.microsoft", + "tr.lucene", + "uk.microsoft", + "ur.microsoft", + "vi.microsoft", + "standard.lucene", + "standardasciifolding.lucene", + "keyword", + "pattern", + "simple", + "stop", + "whitespace" + ], + "x-ms-enum": { + "name": "LexicalAnalyzerName", + "modelAsString": true, + "values": [ + { + "name": "ArMicrosoft", + "value": "ar.microsoft", + "description": "Microsoft analyzer for Arabic." + }, + { + "name": "ArLucene", + "value": "ar.lucene", + "description": "Lucene analyzer for Arabic." + }, + { + "name": "HyLucene", + "value": "hy.lucene", + "description": "Lucene analyzer for Armenian." + }, + { + "name": "BnMicrosoft", + "value": "bn.microsoft", + "description": "Microsoft analyzer for Bangla." + }, + { + "name": "EuLucene", + "value": "eu.lucene", + "description": "Lucene analyzer for Basque." + }, + { + "name": "BgMicrosoft", + "value": "bg.microsoft", + "description": "Microsoft analyzer for Bulgarian." + }, + { + "name": "BgLucene", + "value": "bg.lucene", + "description": "Lucene analyzer for Bulgarian." + }, + { + "name": "CaMicrosoft", + "value": "ca.microsoft", + "description": "Microsoft analyzer for Catalan." + }, + { + "name": "CaLucene", + "value": "ca.lucene", + "description": "Lucene analyzer for Catalan." + }, + { + "name": "ZhHansMicrosoft", + "value": "zh-Hans.microsoft", + "description": "Microsoft analyzer for Chinese (Simplified)." + }, + { + "name": "ZhHansLucene", + "value": "zh-Hans.lucene", + "description": "Lucene analyzer for Chinese (Simplified)." + }, + { + "name": "ZhHantMicrosoft", + "value": "zh-Hant.microsoft", + "description": "Microsoft analyzer for Chinese (Traditional)." + }, + { + "name": "ZhHantLucene", + "value": "zh-Hant.lucene", + "description": "Lucene analyzer for Chinese (Traditional)." + }, + { + "name": "HrMicrosoft", + "value": "hr.microsoft", + "description": "Microsoft analyzer for Croatian." + }, + { + "name": "CsMicrosoft", + "value": "cs.microsoft", + "description": "Microsoft analyzer for Czech." + }, + { + "name": "CsLucene", + "value": "cs.lucene", + "description": "Lucene analyzer for Czech." + }, + { + "name": "DaMicrosoft", + "value": "da.microsoft", + "description": "Microsoft analyzer for Danish." + }, + { + "name": "DaLucene", + "value": "da.lucene", + "description": "Lucene analyzer for Danish." + }, + { + "name": "NlMicrosoft", + "value": "nl.microsoft", + "description": "Microsoft analyzer for Dutch." + }, + { + "name": "NlLucene", + "value": "nl.lucene", + "description": "Lucene analyzer for Dutch." + }, + { + "name": "EnMicrosoft", + "value": "en.microsoft", + "description": "Microsoft analyzer for English." + }, + { + "name": "EnLucene", + "value": "en.lucene", + "description": "Lucene analyzer for English." + }, + { + "name": "EtMicrosoft", + "value": "et.microsoft", + "description": "Microsoft analyzer for Estonian." + }, + { + "name": "FiMicrosoft", + "value": "fi.microsoft", + "description": "Microsoft analyzer for Finnish." + }, + { + "name": "FiLucene", + "value": "fi.lucene", + "description": "Lucene analyzer for Finnish." + }, + { + "name": "FrMicrosoft", + "value": "fr.microsoft", + "description": "Microsoft analyzer for French." + }, + { + "name": "FrLucene", + "value": "fr.lucene", + "description": "Lucene analyzer for French." + }, + { + "name": "GlLucene", + "value": "gl.lucene", + "description": "Lucene analyzer for Galician." + }, + { + "name": "DeMicrosoft", + "value": "de.microsoft", + "description": "Microsoft analyzer for German." + }, + { + "name": "DeLucene", + "value": "de.lucene", + "description": "Lucene analyzer for German." + }, + { + "name": "ElMicrosoft", + "value": "el.microsoft", + "description": "Microsoft analyzer for Greek." + }, + { + "name": "ElLucene", + "value": "el.lucene", + "description": "Lucene analyzer for Greek." + }, + { + "name": "GuMicrosoft", + "value": "gu.microsoft", + "description": "Microsoft analyzer for Gujarati." + }, + { + "name": "HeMicrosoft", + "value": "he.microsoft", + "description": "Microsoft analyzer for Hebrew." + }, + { + "name": "HiMicrosoft", + "value": "hi.microsoft", + "description": "Microsoft analyzer for Hindi." + }, + { + "name": "HiLucene", + "value": "hi.lucene", + "description": "Lucene analyzer for Hindi." + }, + { + "name": "HuMicrosoft", + "value": "hu.microsoft", + "description": "Microsoft analyzer for Hungarian." + }, + { + "name": "HuLucene", + "value": "hu.lucene", + "description": "Lucene analyzer for Hungarian." + }, + { + "name": "IsMicrosoft", + "value": "is.microsoft", + "description": "Microsoft analyzer for Icelandic." + }, + { + "name": "IdMicrosoft", + "value": "id.microsoft", + "description": "Microsoft analyzer for Indonesian (Bahasa)." + }, + { + "name": "IdLucene", + "value": "id.lucene", + "description": "Lucene analyzer for Indonesian." + }, + { + "name": "GaLucene", + "value": "ga.lucene", + "description": "Lucene analyzer for Irish." + }, + { + "name": "ItMicrosoft", + "value": "it.microsoft", + "description": "Microsoft analyzer for Italian." + }, + { + "name": "ItLucene", + "value": "it.lucene", + "description": "Lucene analyzer for Italian." + }, + { + "name": "JaMicrosoft", + "value": "ja.microsoft", + "description": "Microsoft analyzer for Japanese." + }, + { + "name": "JaLucene", + "value": "ja.lucene", + "description": "Lucene analyzer for Japanese." + }, + { + "name": "KnMicrosoft", + "value": "kn.microsoft", + "description": "Microsoft analyzer for Kannada." + }, + { + "name": "KoMicrosoft", + "value": "ko.microsoft", + "description": "Microsoft analyzer for Korean." + }, + { + "name": "KoLucene", + "value": "ko.lucene", + "description": "Lucene analyzer for Korean." + }, + { + "name": "LvMicrosoft", + "value": "lv.microsoft", + "description": "Microsoft analyzer for Latvian." + }, + { + "name": "LvLucene", + "value": "lv.lucene", + "description": "Lucene analyzer for Latvian." + }, + { + "name": "LtMicrosoft", + "value": "lt.microsoft", + "description": "Microsoft analyzer for Lithuanian." + }, + { + "name": "MlMicrosoft", + "value": "ml.microsoft", + "description": "Microsoft analyzer for Malayalam." + }, + { + "name": "MsMicrosoft", + "value": "ms.microsoft", + "description": "Microsoft analyzer for Malay (Latin)." + }, + { + "name": "MrMicrosoft", + "value": "mr.microsoft", + "description": "Microsoft analyzer for Marathi." + }, + { + "name": "NbMicrosoft", + "value": "nb.microsoft", + "description": "Microsoft analyzer for Norwegian (Bokmål)." + }, + { + "name": "NoLucene", + "value": "no.lucene", + "description": "Lucene analyzer for Norwegian." + }, + { + "name": "FaLucene", + "value": "fa.lucene", + "description": "Lucene analyzer for Persian." + }, + { + "name": "PlMicrosoft", + "value": "pl.microsoft", + "description": "Microsoft analyzer for Polish." + }, + { + "name": "PlLucene", + "value": "pl.lucene", + "description": "Lucene analyzer for Polish." + }, + { + "name": "PtBrMicrosoft", + "value": "pt-BR.microsoft", + "description": "Microsoft analyzer for Portuguese (Brazil)." + }, + { + "name": "PtBrLucene", + "value": "pt-BR.lucene", + "description": "Lucene analyzer for Portuguese (Brazil)." + }, + { + "name": "PtPtMicrosoft", + "value": "pt-PT.microsoft", + "description": "Microsoft analyzer for Portuguese (Portugal)." + }, + { + "name": "PtPtLucene", + "value": "pt-PT.lucene", + "description": "Lucene analyzer for Portuguese (Portugal)." + }, + { + "name": "PaMicrosoft", + "value": "pa.microsoft", + "description": "Microsoft analyzer for Punjabi." + }, + { + "name": "RoMicrosoft", + "value": "ro.microsoft", + "description": "Microsoft analyzer for Romanian." + }, + { + "name": "RoLucene", + "value": "ro.lucene", + "description": "Lucene analyzer for Romanian." + }, + { + "name": "RuMicrosoft", + "value": "ru.microsoft", + "description": "Microsoft analyzer for Russian." + }, + { + "name": "RuLucene", + "value": "ru.lucene", + "description": "Lucene analyzer for Russian." + }, + { + "name": "SrCyrillicMicrosoft", + "value": "sr-cyrillic.microsoft", + "description": "Microsoft analyzer for Serbian (Cyrillic)." + }, + { + "name": "SrLatinMicrosoft", + "value": "sr-latin.microsoft", + "description": "Microsoft analyzer for Serbian (Latin)." + }, + { + "name": "SkMicrosoft", + "value": "sk.microsoft", + "description": "Microsoft analyzer for Slovak." + }, + { + "name": "SlMicrosoft", + "value": "sl.microsoft", + "description": "Microsoft analyzer for Slovenian." + }, + { + "name": "EsMicrosoft", + "value": "es.microsoft", + "description": "Microsoft analyzer for Spanish." + }, + { + "name": "EsLucene", + "value": "es.lucene", + "description": "Lucene analyzer for Spanish." + }, + { + "name": "SvMicrosoft", + "value": "sv.microsoft", + "description": "Microsoft analyzer for Swedish." + }, + { + "name": "SvLucene", + "value": "sv.lucene", + "description": "Lucene analyzer for Swedish." + }, + { + "name": "TaMicrosoft", + "value": "ta.microsoft", + "description": "Microsoft analyzer for Tamil." + }, + { + "name": "TeMicrosoft", + "value": "te.microsoft", + "description": "Microsoft analyzer for Telugu." + }, + { + "name": "ThMicrosoft", + "value": "th.microsoft", + "description": "Microsoft analyzer for Thai." + }, + { + "name": "ThLucene", + "value": "th.lucene", + "description": "Lucene analyzer for Thai." + }, + { + "name": "TrMicrosoft", + "value": "tr.microsoft", + "description": "Microsoft analyzer for Turkish." + }, + { + "name": "TrLucene", + "value": "tr.lucene", + "description": "Lucene analyzer for Turkish." + }, + { + "name": "UkMicrosoft", + "value": "uk.microsoft", + "description": "Microsoft analyzer for Ukrainian." + }, + { + "name": "UrMicrosoft", + "value": "ur.microsoft", + "description": "Microsoft analyzer for Urdu." + }, + { + "name": "ViMicrosoft", + "value": "vi.microsoft", + "description": "Microsoft analyzer for Vietnamese." + }, + { + "name": "StandardLucene", + "value": "standard.lucene", + "description": "Standard Lucene analyzer." + }, + { + "name": "StandardAsciiFoldingLucene", + "value": "standardasciifolding.lucene", + "description": "Standard ASCII Folding Lucene analyzer. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers" + }, + { + "name": "Keyword", + "value": "keyword", + "description": "Treats the entire content of a field as a single token. This is useful for data\nlike zip codes, ids, and some product names. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html" + }, + { + "name": "Pattern", + "value": "pattern", + "description": "Flexibly separates text into terms via a regular expression pattern. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" + }, + { + "name": "Simple", + "value": "simple", + "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html" + }, + { + "name": "Stop", + "value": "stop", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "An analyzer that uses the whitespace tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html" + } + ] + } + }, + "LexicalTokenizer": { + "type": "object", + "description": "Base type for tokenizers.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "name" + ] + }, + "LexicalTokenizerName": { + "type": "string", + "description": "Defines the names of all tokenizers supported by the search engine.", + "enum": [ + "classic", + "edgeNGram", + "keyword_v2", + "letter", + "lowercase", + "microsoft_language_tokenizer", + "microsoft_language_stemming_tokenizer", + "nGram", + "path_hierarchy_v2", + "pattern", + "standard_v2", + "uax_url_email", + "whitespace" + ], + "x-ms-enum": { + "name": "LexicalTokenizerName", + "modelAsString": true, + "values": [ + { + "name": "Classic", + "value": "classic", + "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + }, + { + "name": "EdgeNGram", + "value": "edgeNGram", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + }, + { + "name": "Keyword", + "value": "keyword_v2", + "description": "Emits the entire input as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + { + "name": "Letter", + "value": "letter", + "description": "Divides text at non-letters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" + }, + { + "name": "Lowercase", + "value": "lowercase", + "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" + }, + { + "name": "MicrosoftLanguageTokenizer", + "value": "microsoft_language_tokenizer", + "description": "Divides text using language-specific rules." + }, + { + "name": "MicrosoftLanguageStemmingTokenizer", + "value": "microsoft_language_stemming_tokenizer", + "description": "Divides text using language-specific rules and reduces words to their base\nforms." + }, + { + "name": "NGram", + "value": "nGram", + "description": "Tokenizes the input into n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + }, + { + "name": "PathHierarchy", + "value": "path_hierarchy_v2", + "description": "Tokenizer for path-like hierarchies. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + }, + { + "name": "Pattern", + "value": "pattern", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + }, + { + "name": "Standard", + "value": "standard_v2", + "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter\nand stop filter. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + { + "name": "UaxUrlEmail", + "value": "uax_url_email", + "description": "Tokenizes urls and emails as one token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "Divides text at whitespace. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" + } + ] + } + }, + "LimitTokenFilter": { + "type": "object", + "description": "Limits the number of tokens while indexing. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "maxTokenCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of tokens to produce. Default is 1.", + "default": 1 + }, + "consumeAllTokens": { + "type": "boolean", + "description": "A value indicating whether all tokens from the input must be consumed even if\nmaxTokenCount is reached. Default is false." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter" + }, + "ListDataSourcesResult": { + "type": "object", + "description": "Response from a List Datasources request. If successful, it includes the full\ndefinitions of all datasources.", + "properties": { + "value": { + "type": "array", + "description": "The datasources in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerDataSource" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListIndexersResult": { + "type": "object", + "description": "Response from a List Indexers request. If successful, it includes the full\ndefinitions of all indexers.", + "properties": { + "value": { + "type": "array", + "description": "The indexers in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexer" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListIndexesResult": { + "type": "object", + "description": "Response from a List Indexes request. If successful, it includes the full\ndefinitions of all indexes.", + "properties": { + "value": { + "type": "array", + "description": "The indexes in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndex" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListSkillsetsResult": { + "type": "object", + "description": "Response from a list skillset request. If successful, it includes the full\ndefinitions of all skillsets.", + "properties": { + "value": { + "type": "array", + "description": "The skillsets defined in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerSkillset" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListSynonymMapsResult": { + "type": "object", + "description": "Response from a List SynonymMaps request. If successful, it includes the full\ndefinitions of all synonym maps.", + "properties": { + "value": { + "type": "array", + "description": "The synonym maps in the Search service.", + "items": { + "$ref": "#/definitions/SynonymMap" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "LuceneStandardAnalyzer": { + "type": "object", + "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase\nfilter and stop filter.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer" + }, + "LuceneStandardTokenizer": { + "type": "object", + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split.", + "default": 255 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer" + }, + "LuceneStandardTokenizerV2": { + "type": "object", + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2" + }, + "MagnitudeScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on the magnitude of a numeric field.", + "properties": { + "magnitude": { + "$ref": "#/definitions/MagnitudeScoringParameters", + "description": "Parameter values for the magnitude scoring function." + } + }, + "required": [ + "magnitude" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "magnitude" + }, + "MagnitudeScoringParameters": { + "type": "object", + "description": "Provides parameter values to a magnitude scoring function.", + "properties": { + "boostingRangeStart": { + "type": "number", + "format": "double", + "description": "The field value at which boosting starts." + }, + "boostingRangeEnd": { + "type": "number", + "format": "double", + "description": "The field value at which boosting ends." + }, + "constantBoostBeyondRange": { + "type": "boolean", + "description": "A value indicating whether to apply a constant boost for field values beyond\nthe range end value; default is false." + } + }, + "required": [ + "boostingRangeStart", + "boostingRangeEnd" + ] + }, + "MappingCharFilter": { + "type": "object", + "description": "A character filter that applies mappings defined with the mappings option.\nMatching is greedy (longest pattern matching at a given point wins).\nReplacement is allowed to be the empty string. This character filter is\nimplemented using Apache Lucene.", + "properties": { + "mappings": { + "type": "array", + "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the\ncharacter \"a\" will be replaced with character \"b\").", + "items": { + "type": "string" + } + } + }, + "required": [ + "mappings" + ], + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter" + }, + "MergeSkill": { + "type": "object", + "description": "A skill for merging two or more strings into a single unified string, with an\noptional user-defined delimiter separating each component part.", + "properties": { + "insertPreTag": { + "type": "string", + "description": "The tag indicates the start of the merged text. By default, the tag is an empty\nspace.", + "default": " " + }, + "insertPostTag": { + "type": "string", + "description": "The tag indicates the end of the merged text. By default, the tag is an empty\nspace.", + "default": " " + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill" + }, + "MicrosoftLanguageStemmingTokenizer": { + "type": "object", + "description": "Divides text using language-specific rules and reduces words to their base\nforms.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", + "default": 255, + "maximum": 300 + }, + "isSearchTokenizer": { + "type": "boolean", + "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" + }, + "MicrosoftLanguageTokenizer": { + "type": "object", + "description": "Divides text using language-specific rules.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", + "default": 255, + "maximum": 300 + }, + "isSearchTokenizer": { + "type": "boolean", + "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" + }, + "MicrosoftStemmingTokenizerLanguage": { + "type": "string", + "description": "Lists the languages supported by the Microsoft language stemming tokenizer.", + "enum": [ + "arabic", + "bangla", + "bulgarian", + "catalan", + "croatian", + "czech", + "danish", + "dutch", + "english", + "estonian", + "finnish", + "french", + "german", + "greek", + "gujarati", + "hebrew", + "hindi", + "hungarian", + "icelandic", + "indonesian", + "italian", + "kannada", + "latvian", + "lithuanian", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovak", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "turkish", + "ukrainian", + "urdu" + ], + "x-ms-enum": { + "name": "MicrosoftStemmingTokenizerLanguage", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the Microsoft stemming tokenizer for Arabic." + }, + { + "name": "Bangla", + "value": "bangla", + "description": "Selects the Microsoft stemming tokenizer for Bangla." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Microsoft stemming tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Microsoft stemming tokenizer for Catalan." + }, + { + "name": "Croatian", + "value": "croatian", + "description": "Selects the Microsoft stemming tokenizer for Croatian." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Microsoft stemming tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Microsoft stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Microsoft stemming tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Microsoft stemming tokenizer for English." + }, + { + "name": "Estonian", + "value": "estonian", + "description": "Selects the Microsoft stemming tokenizer for Estonian." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Microsoft stemming tokenizer for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Microsoft stemming tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Microsoft stemming tokenizer for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Microsoft stemming tokenizer for Greek." + }, + { + "name": "Gujarati", + "value": "gujarati", + "description": "Selects the Microsoft stemming tokenizer for Gujarati." + }, + { + "name": "Hebrew", + "value": "hebrew", + "description": "Selects the Microsoft stemming tokenizer for Hebrew." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Microsoft stemming tokenizer for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Microsoft stemming tokenizer for Hungarian." + }, + { + "name": "Icelandic", + "value": "icelandic", + "description": "Selects the Microsoft stemming tokenizer for Icelandic." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Microsoft stemming tokenizer for Indonesian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Microsoft stemming tokenizer for Italian." + }, + { + "name": "Kannada", + "value": "kannada", + "description": "Selects the Microsoft stemming tokenizer for Kannada." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the Microsoft stemming tokenizer for Latvian." + }, + { + "name": "Lithuanian", + "value": "lithuanian", + "description": "Selects the Microsoft stemming tokenizer for Lithuanian." + }, + { + "name": "Malay", + "value": "malay", + "description": "Selects the Microsoft stemming tokenizer for Malay." + }, + { + "name": "Malayalam", + "value": "malayalam", + "description": "Selects the Microsoft stemming tokenizer for Malayalam." + }, + { + "name": "Marathi", + "value": "marathi", + "description": "Selects the Microsoft stemming tokenizer for Marathi." + }, + { + "name": "NorwegianBokmaal", + "value": "norwegianBokmaal", + "description": "Selects the Microsoft stemming tokenizer for Norwegian (Bokmål)." + }, + { + "name": "Polish", + "value": "polish", + "description": "Selects the Microsoft stemming tokenizer for Polish." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Microsoft stemming tokenizer for Portuguese." + }, + { + "name": "PortugueseBrazilian", + "value": "portugueseBrazilian", + "description": "Selects the Microsoft stemming tokenizer for Portuguese (Brazil)." + }, + { + "name": "Punjabi", + "value": "punjabi", + "description": "Selects the Microsoft stemming tokenizer for Punjabi." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Microsoft stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Microsoft stemming tokenizer for Russian." + }, + { + "name": "SerbianCyrillic", + "value": "serbianCyrillic", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Cyrillic)." + }, + { + "name": "SerbianLatin", + "value": "serbianLatin", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Latin)." + }, + { + "name": "Slovak", + "value": "slovak", + "description": "Selects the Microsoft stemming tokenizer for Slovak." + }, + { + "name": "Slovenian", + "value": "slovenian", + "description": "Selects the Microsoft stemming tokenizer for Slovenian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Microsoft stemming tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Microsoft stemming tokenizer for Swedish." + }, + { + "name": "Tamil", + "value": "tamil", + "description": "Selects the Microsoft stemming tokenizer for Tamil." + }, + { + "name": "Telugu", + "value": "telugu", + "description": "Selects the Microsoft stemming tokenizer for Telugu." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Microsoft stemming tokenizer for Turkish." + }, + { + "name": "Ukrainian", + "value": "ukrainian", + "description": "Selects the Microsoft stemming tokenizer for Ukrainian." + }, + { + "name": "Urdu", + "value": "urdu", + "description": "Selects the Microsoft stemming tokenizer for Urdu." + } + ] + } + }, + "MicrosoftTokenizerLanguage": { + "type": "string", + "description": "Lists the languages supported by the Microsoft language tokenizer.", + "enum": [ + "bangla", + "bulgarian", + "catalan", + "chineseSimplified", + "chineseTraditional", + "croatian", + "czech", + "danish", + "dutch", + "english", + "french", + "german", + "greek", + "gujarati", + "hindi", + "icelandic", + "indonesian", + "italian", + "japanese", + "kannada", + "korean", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "thai", + "ukrainian", + "urdu", + "vietnamese" + ], + "x-ms-enum": { + "name": "MicrosoftTokenizerLanguage", + "modelAsString": true, + "values": [ + { + "name": "Bangla", + "value": "bangla", + "description": "Selects the Microsoft tokenizer for Bangla." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Microsoft tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Microsoft tokenizer for Catalan." + }, + { + "name": "ChineseSimplified", + "value": "chineseSimplified", + "description": "Selects the Microsoft tokenizer for Chinese (Simplified)." + }, + { + "name": "ChineseTraditional", + "value": "chineseTraditional", + "description": "Selects the Microsoft tokenizer for Chinese (Traditional)." + }, + { + "name": "Croatian", + "value": "croatian", + "description": "Selects the Microsoft tokenizer for Croatian." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Microsoft tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Microsoft tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Microsoft tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Microsoft tokenizer for English." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Microsoft tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Microsoft tokenizer for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Microsoft tokenizer for Greek." + }, + { + "name": "Gujarati", + "value": "gujarati", + "description": "Selects the Microsoft tokenizer for Gujarati." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Microsoft tokenizer for Hindi." + }, + { + "name": "Icelandic", + "value": "icelandic", + "description": "Selects the Microsoft tokenizer for Icelandic." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Microsoft tokenizer for Indonesian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Microsoft tokenizer for Italian." + }, + { + "name": "Japanese", + "value": "japanese", + "description": "Selects the Microsoft tokenizer for Japanese." + }, + { + "name": "Kannada", + "value": "kannada", + "description": "Selects the Microsoft tokenizer for Kannada." + }, + { + "name": "Korean", + "value": "korean", + "description": "Selects the Microsoft tokenizer for Korean." + }, + { + "name": "Malay", + "value": "malay", + "description": "Selects the Microsoft tokenizer for Malay." + }, + { + "name": "Malayalam", + "value": "malayalam", + "description": "Selects the Microsoft tokenizer for Malayalam." + }, + { + "name": "Marathi", + "value": "marathi", + "description": "Selects the Microsoft tokenizer for Marathi." + }, + { + "name": "NorwegianBokmaal", + "value": "norwegianBokmaal", + "description": "Selects the Microsoft tokenizer for Norwegian (Bokmål)." + }, + { + "name": "Polish", + "value": "polish", + "description": "Selects the Microsoft tokenizer for Polish." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Microsoft tokenizer for Portuguese." + }, + { + "name": "PortugueseBrazilian", + "value": "portugueseBrazilian", + "description": "Selects the Microsoft tokenizer for Portuguese (Brazil)." + }, + { + "name": "Punjabi", + "value": "punjabi", + "description": "Selects the Microsoft tokenizer for Punjabi." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Microsoft tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Microsoft tokenizer for Russian." + }, + { + "name": "SerbianCyrillic", + "value": "serbianCyrillic", + "description": "Selects the Microsoft tokenizer for Serbian (Cyrillic)." + }, + { + "name": "SerbianLatin", + "value": "serbianLatin", + "description": "Selects the Microsoft tokenizer for Serbian (Latin)." + }, + { + "name": "Slovenian", + "value": "slovenian", + "description": "Selects the Microsoft tokenizer for Slovenian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Microsoft tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Microsoft tokenizer for Swedish." + }, + { + "name": "Tamil", + "value": "tamil", + "description": "Selects the Microsoft tokenizer for Tamil." + }, + { + "name": "Telugu", + "value": "telugu", + "description": "Selects the Microsoft tokenizer for Telugu." + }, + { + "name": "Thai", + "value": "thai", + "description": "Selects the Microsoft tokenizer for Thai." + }, + { + "name": "Ukrainian", + "value": "ukrainian", + "description": "Selects the Microsoft tokenizer for Ukrainian." + }, + { + "name": "Urdu", + "value": "urdu", + "description": "Selects the Microsoft tokenizer for Urdu." + }, + { + "name": "Vietnamese", + "value": "vietnamese", + "description": "Selects the Microsoft tokenizer for Vietnamese." + } + ] + } + }, + "NGramTokenFilter": { + "type": "object", + "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", + "default": 1 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2.", + "default": 2 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter" + }, + "NGramTokenFilterV2": { + "type": "object", + "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2" + }, + "NGramTokenizer": { + "type": "object", + "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "tokenChars": { + "type": "array", + "description": "Character classes to keep in the tokens.", + "items": { + "$ref": "#/definitions/TokenCharacterKind" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer" + }, + "OcrLineEnding": { + "type": "string", + "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\".", + "enum": [ + "space", + "carriageReturn", + "lineFeed", + "carriageReturnLineFeed" + ], + "x-ms-enum": { + "name": "OcrLineEnding", + "modelAsString": true, + "values": [ + { + "name": "Space", + "value": "space", + "description": "Lines are separated by a single space character." + }, + { + "name": "CarriageReturn", + "value": "carriageReturn", + "description": "Lines are separated by a carriage return ('\\r') character." + }, + { + "name": "LineFeed", + "value": "lineFeed", + "description": "Lines are separated by a single line feed ('\\n') character." + }, + { + "name": "CarriageReturnLineFeed", + "value": "carriageReturnLineFeed", + "description": "Lines are separated by a carriage return and a line feed ('\\r\\n') character." + } + ] + } + }, + "OcrSkill": { + "type": "object", + "description": "A skill that extracts text from image files.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/OcrSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "detectOrientation": { + "type": "boolean", + "description": "A value indicating to turn orientation detection on or not. Default is false." + }, + "lineEnding": { + "$ref": "#/definitions/OcrLineEnding", + "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\"." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill" + }, + "OcrSkillLanguage": { + "type": "string", + "description": "The language codes supported for input by OcrSkill.", + "enum": [ + "af", + "sq", + "anp", + "ar", + "ast", + "awa", + "az", + "bfy", + "eu", + "be", + "be-cyrl", + "be-latn", + "bho", + "bi", + "brx", + "bs", + "bra", + "br", + "bg", + "bns", + "bua", + "ca", + "ceb", + "rab", + "ch", + "hne", + "zh-Hans", + "zh-Hant", + "kw", + "co", + "crh", + "hr", + "cs", + "da", + "prs", + "dhi", + "doi", + "nl", + "en", + "myv", + "et", + "fo", + "fj", + "fil", + "fi", + "fr", + "fur", + "gag", + "gl", + "de", + "gil", + "gon", + "el", + "kl", + "gvr", + "ht", + "hlb", + "hni", + "bgc", + "haw", + "hi", + "mww", + "hoc", + "hu", + "is", + "smn", + "id", + "ia", + "iu", + "ga", + "it", + "ja", + "Jns", + "jv", + "kea", + "kac", + "xnr", + "krc", + "kaa-cyrl", + "kaa", + "csb", + "kk-cyrl", + "kk-latn", + "klr", + "kha", + "quc", + "ko", + "kfq", + "kpy", + "kos", + "kum", + "ku-arab", + "ku-latn", + "kru", + "ky", + "lkt", + "la", + "lt", + "dsb", + "smj", + "lb", + "bfz", + "ms", + "mt", + "kmj", + "gv", + "mi", + "mr", + "mn", + "cnr-cyrl", + "cnr-latn", + "nap", + "ne", + "niu", + "nog", + "sme", + "nb", + "no", + "oc", + "os", + "ps", + "fa", + "pl", + "pt", + "pa", + "ksh", + "ro", + "rm", + "ru", + "sck", + "sm", + "sa", + "sat", + "sco", + "gd", + "sr", + "sr-Cyrl", + "sr-Latn", + "xsr", + "srx", + "sms", + "sk", + "sl", + "so", + "sma", + "es", + "sw", + "sv", + "tg", + "tt", + "tet", + "thf", + "to", + "tr", + "tk", + "tyv", + "hsb", + "ur", + "ug", + "uz-arab", + "uz-cyrl", + "uz", + "vo", + "wae", + "cy", + "fy", + "yua", + "za", + "zu", + "unk" + ], + "x-ms-enum": { + "name": "OcrSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "af", + "value": "af", + "description": "Afrikaans" + }, + { + "name": "sq", + "value": "sq", + "description": "Albanian" + }, + { + "name": "anp", + "value": "anp", + "description": "Angika (Devanagiri)" + }, + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "ast", + "value": "ast", + "description": "Asturian" + }, + { + "name": "awa", + "value": "awa", + "description": "Awadhi-Hindi (Devanagiri)" + }, + { + "name": "az", + "value": "az", + "description": "Azerbaijani (Latin)" + }, + { + "name": "bfy", + "value": "bfy", + "description": "Bagheli" + }, + { + "name": "eu", + "value": "eu", + "description": "Basque" + }, + { + "name": "be", + "value": "be", + "description": "Belarusian (Cyrillic and Latin)" + }, + { + "name": "be-cyrl", + "value": "be-cyrl", + "description": "Belarusian (Cyrillic)" + }, + { + "name": "be-latn", + "value": "be-latn", + "description": "Belarusian (Latin)" + }, + { + "name": "bho", + "value": "bho", + "description": "Bhojpuri-Hindi (Devanagiri)" + }, + { + "name": "bi", + "value": "bi", + "description": "Bislama" + }, + { + "name": "brx", + "value": "brx", + "description": "Bodo (Devanagiri)" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian Latin" + }, + { + "name": "bra", + "value": "bra", + "description": "Brajbha" + }, + { + "name": "br", + "value": "br", + "description": "Breton" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "bns", + "value": "bns", + "description": "Bundeli" + }, + { + "name": "bua", + "value": "bua", + "description": "Buryat (Cyrillic)" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "ceb", + "value": "ceb", + "description": "Cebuano" + }, + { + "name": "rab", + "value": "rab", + "description": "Chamling" + }, + { + "name": "ch", + "value": "ch", + "description": "Chamorro" + }, + { + "name": "hne", + "value": "hne", + "description": "Chhattisgarhi (Devanagiri)" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "name": "kw", + "value": "kw", + "description": "Cornish" + }, + { + "name": "co", + "value": "co", + "description": "Corsican" + }, + { + "name": "crh", + "value": "crh", + "description": "Crimean Tatar (Latin)" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "prs", + "value": "prs", + "description": "Dari" + }, + { + "name": "dhi", + "value": "dhi", + "description": "Dhimal (Devanagiri)" + }, + { + "name": "doi", + "value": "doi", + "description": "Dogri (Devanagiri)" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "myv", + "value": "myv", + "description": "Erzya (Cyrillic)" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fo", + "value": "fo", + "description": "Faroese" + }, + { + "name": "fj", + "value": "fj", + "description": "Fijian" + }, + { + "name": "fil", + "value": "fil", + "description": "Filipino" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "fur", + "value": "fur", + "description": "Frulian" + }, + { + "name": "gag", + "value": "gag", + "description": "Gagauz (Latin)" + }, + { + "name": "gl", + "value": "gl", + "description": "Galician" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "gil", + "value": "gil", + "description": "Gilbertese" + }, + { + "name": "gon", + "value": "gon", + "description": "Gondi (Devanagiri)" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "kl", + "value": "kl", + "description": "Greenlandic" + }, + { + "name": "gvr", + "value": "gvr", + "description": "Gurung (Devanagiri)" + }, + { + "name": "ht", + "value": "ht", + "description": "Haitian Creole" + }, + { + "name": "hlb", + "value": "hlb", + "description": "Halbi (Devanagiri)" + }, + { + "name": "hni", + "value": "hni", + "description": "Hani" + }, + { + "name": "bgc", + "value": "bgc", + "description": "Haryanvi" + }, + { + "name": "haw", + "value": "haw", + "description": "Hawaiian" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "mww", + "value": "mww", + "description": "Hmong Daw (Latin)" + }, + { + "name": "hoc", + "value": "hoc", + "description": "Ho (Devanagiri)" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "smn", + "value": "smn", + "description": "Inari Sami" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "ia", + "value": "ia", + "description": "Interlingua" + }, + { + "name": "iu", + "value": "iu", + "description": "Inuktitut (Latin)" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "Jns", + "value": "Jns", + "description": "Jaunsari (Devanagiri)" + }, + { + "name": "jv", + "value": "jv", + "description": "Javanese" + }, + { + "name": "kea", + "value": "kea", + "description": "Kabuverdianu" + }, + { + "name": "kac", + "value": "kac", + "description": "Kachin (Latin)" + }, + { + "name": "xnr", + "value": "xnr", + "description": "Kangri (Devanagiri)" + }, + { + "name": "krc", + "value": "krc", + "description": "Karachay-Balkar" + }, + { + "name": "kaa-cyrl", + "value": "kaa-cyrl", + "description": "Kara-Kalpak (Cyrillic)" + }, + { + "name": "kaa", + "value": "kaa", + "description": "Kara-Kalpak (Latin)" + }, + { + "name": "csb", + "value": "csb", + "description": "Kashubian" + }, + { + "name": "kk-cyrl", + "value": "kk-cyrl", + "description": "Kazakh (Cyrillic)" + }, + { + "name": "kk-latn", + "value": "kk-latn", + "description": "Kazakh (Latin)" + }, + { + "name": "klr", + "value": "klr", + "description": "Khaling" + }, + { + "name": "kha", + "value": "kha", + "description": "Khasi" + }, + { + "name": "quc", + "value": "quc", + "description": "K'iche'" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "kfq", + "value": "kfq", + "description": "Korku" + }, + { + "name": "kpy", + "value": "kpy", + "description": "Koryak" + }, + { + "name": "kos", + "value": "kos", + "description": "Kosraean" + }, + { + "name": "kum", + "value": "kum", + "description": "Kumyk (Cyrillic)" + }, + { + "name": "ku-arab", + "value": "ku-arab", + "description": "Kurdish (Arabic)" + }, + { + "name": "ku-latn", + "value": "ku-latn", + "description": "Kurdish (Latin)" + }, + { + "name": "kru", + "value": "kru", + "description": "Kurukh (Devanagiri)" + }, + { + "name": "ky", + "value": "ky", + "description": "Kyrgyz (Cyrillic)" + }, + { + "name": "lkt", + "value": "lkt", + "description": "Lakota" + }, + { + "name": "la", + "value": "la", + "description": "Latin" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "dsb", + "value": "dsb", + "description": "Lower Sorbian" + }, + { + "name": "smj", + "value": "smj", + "description": "Lule Sami" + }, + { + "name": "lb", + "value": "lb", + "description": "Luxembourgish" + }, + { + "name": "bfz", + "value": "bfz", + "description": "Mahasu Pahari (Devanagiri)" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay (Latin)" + }, + { + "name": "mt", + "value": "mt", + "description": "Maltese" + }, + { + "name": "kmj", + "value": "kmj", + "description": "Malto (Devanagiri)" + }, + { + "name": "gv", + "value": "gv", + "description": "Manx" + }, + { + "name": "mi", + "value": "mi", + "description": "Maori" + }, + { + "name": "mr", + "value": "mr", + "description": "Marathi" + }, + { + "name": "mn", + "value": "mn", + "description": "Mongolian (Cyrillic)" + }, + { + "name": "cnr-cyrl", + "value": "cnr-cyrl", + "description": "Montenegrin (Cyrillic)" + }, + { + "name": "cnr-latn", + "value": "cnr-latn", + "description": "Montenegrin (Latin)" + }, + { + "name": "nap", + "value": "nap", + "description": "Neapolitan" + }, + { + "name": "ne", + "value": "ne", + "description": "Nepali" + }, + { + "name": "niu", + "value": "niu", + "description": "Niuean" + }, + { + "name": "nog", + "value": "nog", + "description": "Nogay" + }, + { + "name": "sme", + "value": "sme", + "description": "Northern Sami (Latin)" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian" + }, + { + "name": "oc", + "value": "oc", + "description": "Occitan" + }, + { + "name": "os", + "value": "os", + "description": "Ossetic" + }, + { + "name": "ps", + "value": "ps", + "description": "Pashto" + }, + { + "name": "fa", + "value": "fa", + "description": "Persian" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + }, + { + "name": "pa", + "value": "pa", + "description": "Punjabi (Arabic)" + }, + { + "name": "ksh", + "value": "ksh", + "description": "Ripuarian" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "rm", + "value": "rm", + "description": "Romansh" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sck", + "value": "sck", + "description": "Sadri (Devanagiri)" + }, + { + "name": "sm", + "value": "sm", + "description": "Samoan (Latin)" + }, + { + "name": "sa", + "value": "sa", + "description": "Sanskrit (Devanagiri)" + }, + { + "name": "sat", + "value": "sat", + "description": "Santali (Devanagiri)" + }, + { + "name": "sco", + "value": "sco", + "description": "Scots" + }, + { + "name": "gd", + "value": "gd", + "description": "Scottish Gaelic" + }, + { + "name": "sr", + "value": "sr", + "description": "Serbian (Latin)" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "name": "xsr", + "value": "xsr", + "description": "Sherpa (Devanagiri)" + }, + { + "name": "srx", + "value": "srx", + "description": "Sirmauri (Devanagiri)" + }, + { + "name": "sms", + "value": "sms", + "description": "Skolt Sami" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "so", + "value": "so", + "description": "Somali (Arabic)" + }, + { + "name": "sma", + "value": "sma", + "description": "Southern Sami" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sw", + "value": "sw", + "description": "Swahili (Latin)" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tg", + "value": "tg", + "description": "Tajik (Cyrillic)" + }, + { + "name": "tt", + "value": "tt", + "description": "Tatar (Latin)" + }, + { + "name": "tet", + "value": "tet", + "description": "Tetum" + }, + { + "name": "thf", + "value": "thf", + "description": "Thangmi" + }, + { + "name": "to", + "value": "to", + "description": "Tongan" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "tk", + "value": "tk", + "description": "Turkmen (Latin)" + }, + { + "name": "tyv", + "value": "tyv", + "description": "Tuvan" + }, + { + "name": "hsb", + "value": "hsb", + "description": "Upper Sorbian" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "ug", + "value": "ug", + "description": "Uyghur (Arabic)" + }, + { + "name": "uz-arab", + "value": "uz-arab", + "description": "Uzbek (Arabic)" + }, + { + "name": "uz-cyrl", + "value": "uz-cyrl", + "description": "Uzbek (Cyrillic)" + }, + { + "name": "uz", + "value": "uz", + "description": "Uzbek (Latin)" + }, + { + "name": "vo", + "value": "vo", + "description": "Volapük" + }, + { + "name": "wae", + "value": "wae", + "description": "Walser" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "fy", + "value": "fy", + "description": "Western Frisian" + }, + { + "name": "yua", + "value": "yua", + "description": "Yucatec Maya" + }, + { + "name": "za", + "value": "za", + "description": "Zhuang" + }, + { + "name": "zu", + "value": "zu", + "description": "Zulu" + }, + { + "name": "unk", + "value": "unk", + "description": "Unknown (All)" + } + ] + } + }, + "OutputFieldMappingEntry": { + "type": "object", + "description": "Output field mapping for a skill.", + "properties": { + "name": { + "type": "string", + "description": "The name of the output defined by the skill." + }, + "targetName": { + "type": "string", + "description": "The target name of the output. It is optional and default to name." + } + }, + "required": [ + "name" + ] + }, + "PIIDetectionSkill": { + "type": "object", + "description": "Using the Text Analytics API, extracts personal information from an input text\nand gives you the option of masking it.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "maskingMode": { + "$ref": "#/definitions/PIIDetectionSkillMaskingMode", + "description": "A parameter that provides various ways to mask the personal information\ndetected in the input text. Default is 'none'." + }, + "maskingCharacter": { + "type": "string", + "description": "The character used to mask the text if the maskingMode parameter is set to\nreplace. Default is '*'.", + "maxLength": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "piiCategories": { + "type": "array", + "description": "A list of PII entity categories that should be extracted and masked.", + "items": { + "type": "string" + } + }, + "domain": { + "type": "string", + "description": "If specified, will set the PII domain to include only a subset of the entity\ncategories. Possible values include: 'phi', 'none'. Default is 'none'." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.PIIDetectionSkill" + }, + "PIIDetectionSkillMaskingMode": { + "type": "string", + "description": "A string indicating what maskingMode to use to mask the personal information\ndetected in the input text.", + "enum": [ + "none", + "replace" + ], + "x-ms-enum": { + "name": "PIIDetectionSkillMaskingMode", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "No masking occurs and the maskedText output will not be returned." + }, + { + "name": "Replace", + "value": "replace", + "description": "Replaces the detected entities with the character given in the maskingCharacter\nparameter. The character will be repeated to the length of the detected entity\nso that the offsets will correctly correspond to both the input text as well as\nthe output maskedText." + } + ] + } + }, + "PathHierarchyTokenizerV2": { + "type": "object", + "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache\nLucene.", + "properties": { + "delimiter": { + "type": "string", + "description": "The delimiter character to use. Default is \"/\".", + "default": "/" + }, + "replacement": { + "type": "string", + "description": "A value that, if set, replaces the delimiter character. Default is \"/\".", + "default": "/" + }, + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default and maximum is 300.", + "default": 300, + "maximum": 300 + }, + "reverse": { + "type": "boolean", + "description": "A value indicating whether to generate tokens in reverse order. Default is\nfalse." + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of initial tokens to skip. Default is 0." + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" + }, + "PatternAnalyzer": { + "type": "object", + "description": "Flexibly separates text into terms via a regular expression pattern. This\nanalyzer is implemented using Apache Lucene.", + "properties": { + "lowercase": { + "type": "boolean", + "description": "A value indicating whether terms should be lower-cased. Default is true.", + "default": true + }, + "pattern": { + "type": "string", + "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", + "default": "\\W+" + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer" + }, + "PatternCaptureTokenFilter": { + "type": "object", + "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one\nor more patterns. This token filter is implemented using Apache Lucene.", + "properties": { + "patterns": { + "type": "array", + "description": "A list of patterns to match against each token.", + "items": { + "type": "string" + } + }, + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether to return the original token even if one of the\npatterns matches. Default is true.", + "default": true + } + }, + "required": [ + "patterns" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter" + }, + "PatternReplaceCharFilter": { + "type": "object", + "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This character filter is implemented using\nApache Lucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter" + }, + "PatternReplaceTokenFilter": { + "type": "object", + "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This token filter is implemented using Apache\nLucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter" + }, + "PatternTokenizer": { + "type": "object", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This\ntokenizer is implemented using Apache Lucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", + "default": "\\W+" + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "group": { + "type": "integer", + "format": "int32", + "description": "The zero-based ordinal of the matching group in the regular expression pattern\nto extract into tokens. Use -1 if you want to use the entire pattern to split\nthe input into tokens, irrespective of matching groups. Default is -1.", + "default": -1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer" + }, + "PhoneticEncoder": { + "type": "string", + "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter.", + "enum": [ + "metaphone", + "doubleMetaphone", + "soundex", + "refinedSoundex", + "caverphone1", + "caverphone2", + "cologne", + "nysiis", + "koelnerPhonetik", + "haasePhonetik", + "beiderMorse" + ], + "x-ms-enum": { + "name": "PhoneticEncoder", + "modelAsString": true, + "values": [ + { + "name": "Metaphone", + "value": "metaphone", + "description": "Encodes a token into a Metaphone value." + }, + { + "name": "DoubleMetaphone", + "value": "doubleMetaphone", + "description": "Encodes a token into a double metaphone value." + }, + { + "name": "Soundex", + "value": "soundex", + "description": "Encodes a token into a Soundex value." + }, + { + "name": "RefinedSoundex", + "value": "refinedSoundex", + "description": "Encodes a token into a Refined Soundex value." + }, + { + "name": "Caverphone1", + "value": "caverphone1", + "description": "Encodes a token into a Caverphone 1.0 value." + }, + { + "name": "Caverphone2", + "value": "caverphone2", + "description": "Encodes a token into a Caverphone 2.0 value." + }, + { + "name": "Cologne", + "value": "cologne", + "description": "Encodes a token into a Cologne Phonetic value." + }, + { + "name": "Nysiis", + "value": "nysiis", + "description": "Encodes a token into a NYSIIS value." + }, + { + "name": "KoelnerPhonetik", + "value": "koelnerPhonetik", + "description": "Encodes a token using the Kölner Phonetik algorithm." + }, + { + "name": "HaasePhonetik", + "value": "haasePhonetik", + "description": "Encodes a token using the Haase refinement of the Kölner Phonetik algorithm." + }, + { + "name": "BeiderMorse", + "value": "beiderMorse", + "description": "Encodes a token into a Beider-Morse value." + } + ] + } + }, + "PhoneticTokenFilter": { + "type": "object", + "description": "Create tokens for phonetic matches. This token filter is implemented using\nApache Lucene.", + "properties": { + "encoder": { + "$ref": "#/definitions/PhoneticEncoder", + "description": "The phonetic encoder to use. Default is \"metaphone\"." + }, + "replace": { + "type": "boolean", + "description": "A value indicating whether encoded tokens should replace original tokens. If\nfalse, encoded tokens are added as synonyms. Default is true.", + "default": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter" + }, + "RegexFlags": { + "type": "string", + "description": "Defines flags that can be combined to control how regular expressions are used\nin the pattern analyzer and pattern tokenizer.", + "enum": [ + "CANON_EQ", + "CASE_INSENSITIVE", + "COMMENTS", + "DOTALL", + "LITERAL", + "MULTILINE", + "UNICODE_CASE", + "UNIX_LINES" + ], + "x-ms-enum": { + "name": "RegexFlags", + "modelAsString": true, + "values": [ + { + "name": "CanonEq", + "value": "CANON_EQ", + "description": "Enables canonical equivalence." + }, + { + "name": "CaseInsensitive", + "value": "CASE_INSENSITIVE", + "description": "Enables case-insensitive matching." + }, + { + "name": "Comments", + "value": "COMMENTS", + "description": "Permits whitespace and comments in the pattern." + }, + { + "name": "DotAll", + "value": "DOTALL", + "description": "Enables dotall mode." + }, + { + "name": "Literal", + "value": "LITERAL", + "description": "Enables literal parsing of the pattern." + }, + { + "name": "Multiline", + "value": "MULTILINE", + "description": "Enables multiline mode." + }, + { + "name": "UnicodeCase", + "value": "UNICODE_CASE", + "description": "Enables Unicode-aware case folding." + }, + { + "name": "UnixLines", + "value": "UNIX_LINES", + "description": "Enables Unix lines mode." + } + ] + } + }, + "ResourceCounter": { + "type": "object", + "description": "Represents a resource's usage and quota.", + "properties": { + "usage": { + "type": "integer", + "format": "int64", + "description": "The resource usage amount." + }, + "quota": { + "type": "integer", + "format": "int64", + "description": "The resource amount quota." + } + }, + "required": [ + "usage" + ] + }, + "ScalarQuantizationCompression": { + "type": "object", + "description": "Contains configuration options specific to the scalar quantization compression\nmethod used during indexing and querying.", + "properties": { + "scalarQuantizationParameters": { + "$ref": "#/definitions/ScalarQuantizationParameters", + "description": "Contains the parameters specific to Scalar Quantization." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchCompression" + } + ], + "x-ms-discriminator-value": "scalarQuantization" + }, + "ScalarQuantizationParameters": { + "type": "object", + "description": "Contains the parameters specific to Scalar Quantization.", + "properties": { + "quantizedDataType": { + "$ref": "#/definitions/VectorSearchCompressionTarget", + "description": "The quantized data type of compressed vector values." + } + } + }, + "ScoringFunction": { + "type": "object", + "description": "Base type for functions that can modify document scores during ranking.", + "properties": { + "fieldName": { + "type": "string", + "description": "The name of the field used as input to the scoring function." + }, + "boost": { + "type": "number", + "format": "double", + "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." + }, + "interpolation": { + "$ref": "#/definitions/ScoringFunctionInterpolation", + "description": "A value indicating how boosting will be interpolated across document scores;\ndefaults to \"Linear\"." + }, + "type": { + "type": "string", + "description": "Type of ScoringFunction." + } + }, + "discriminator": "type", + "required": [ + "fieldName", + "boost", + "type" + ] + }, + "ScoringFunctionAggregation": { + "type": "string", + "description": "Defines the aggregation function used to combine the results of all the scoring\nfunctions in a scoring profile.", + "enum": [ + "sum", + "average", + "minimum", + "maximum", + "firstMatching" + ], + "x-ms-enum": { + "name": "ScoringFunctionAggregation", + "modelAsString": true, + "values": [ + { + "name": "Sum", + "value": "sum", + "description": "Boost scores by the sum of all scoring function results." + }, + { + "name": "Average", + "value": "average", + "description": "Boost scores by the average of all scoring function results." + }, + { + "name": "Minimum", + "value": "minimum", + "description": "Boost scores by the minimum of all scoring function results." + }, + { + "name": "Maximum", + "value": "maximum", + "description": "Boost scores by the maximum of all scoring function results." + }, + { + "name": "FirstMatching", + "value": "firstMatching", + "description": "Boost scores using the first applicable scoring function in the scoring profile." + } + ] + } + }, + "ScoringFunctionInterpolation": { + "type": "string", + "description": "Defines the function used to interpolate score boosting across a range of\ndocuments.", + "enum": [ + "linear", + "constant", + "quadratic", + "logarithmic" + ], + "x-ms-enum": { + "name": "ScoringFunctionInterpolation", + "modelAsString": true, + "values": [ + { + "name": "Linear", + "value": "linear", + "description": "Boosts scores by a linearly decreasing amount. This is the default\ninterpolation for scoring functions." + }, + { + "name": "Constant", + "value": "constant", + "description": "Boosts scores by a constant factor." + }, + { + "name": "Quadratic", + "value": "quadratic", + "description": "Boosts scores by an amount that decreases quadratically. Boosts decrease slowly\nfor higher scores, and more quickly as the scores decrease. This interpolation\noption is not allowed in tag scoring functions." + }, + { + "name": "Logarithmic", + "value": "logarithmic", + "description": "Boosts scores by an amount that decreases logarithmically. Boosts decrease\nquickly for higher scores, and more slowly as the scores decrease. This\ninterpolation option is not allowed in tag scoring functions." + } + ] + } + }, + "ScoringProfile": { + "type": "object", + "description": "Defines parameters for a search index that influence scoring in search queries.", + "properties": { + "name": { + "type": "string", + "description": "The name of the scoring profile." + }, + "text": { + "$ref": "#/definitions/TextWeights", + "description": "Parameters that boost scoring based on text matches in certain index fields." + }, + "functions": { + "type": "array", + "description": "The collection of functions that influence the scoring of documents.", + "items": { + "$ref": "#/definitions/ScoringFunction" + }, + "x-ms-identifiers": [] + }, + "functionAggregation": { + "$ref": "#/definitions/ScoringFunctionAggregation", + "description": "A value indicating how the results of individual scoring functions should be\ncombined. Defaults to \"Sum\". Ignored if there are no scoring functions." + } + }, + "required": [ + "name" + ] + }, + "SearchField": { + "type": "object", + "description": "Represents a field in an index definition, which describes the name, data type,\nand search behavior of a field.", + "properties": { + "name": { + "type": "string", + "description": "The name of the field, which must be unique within the fields collection of the\nindex or parent field." + }, + "type": { + "$ref": "#/definitions/SearchFieldDataType", + "description": "The data type of the field." + }, + "key": { + "type": "boolean", + "description": "A value indicating whether the field uniquely identifies documents in the\nindex. Exactly one top-level field in each index must be chosen as the key\nfield and it must be of type Edm.String. Key fields can be used to look up\ndocuments directly and update or delete specific documents. Default is false\nfor simple fields and null for complex fields." + }, + "retrievable": { + "type": "boolean", + "description": "A value indicating whether the field can be returned in a search result. You\ncan disable this option if you want to use a field (for example, margin) as a\nfilter, sorting, or scoring mechanism but do not want the field to be visible\nto the end user. This property must be true for key fields, and it must be null\nfor complex fields. This property can be changed on existing fields. Enabling\nthis property does not cause any increase in index storage requirements.\nDefault is true for simple fields, false for vector fields, and null for\ncomplex fields." + }, + "stored": { + "type": "boolean", + "description": "An immutable value indicating whether the field will be persisted separately on\ndisk to be returned in a search result. You can disable this option if you\ndon't plan to return the field contents in a search response to save on storage\noverhead. This can only be set during index creation and only for vector\nfields. This property cannot be changed for existing fields or set as false for\nnew fields. If this property is set as false, the property 'retrievable' must\nalso be set to false. This property must be true or unset for key fields, for\nnew fields, and for non-vector fields, and it must be null for complex fields.\nDisabling this property will reduce index storage requirements. The default is\ntrue for vector fields." + }, + "searchable": { + "type": "boolean", + "description": "A value indicating whether the field is full-text searchable. This means it\nwill undergo analysis such as word-breaking during indexing. If you set a\nsearchable field to a value like \"sunny day\", internally it will be split into\nthe individual tokens \"sunny\" and \"day\". This enables full-text searches for\nthese terms. Fields of type Edm.String or Collection(Edm.String) are searchable\nby default. This property must be false for simple fields of other non-string\ndata types, and it must be null for complex fields. Note: searchable fields\nconsume extra space in your index to accommodate additional tokenized versions\nof the field value for full-text searches. If you want to save space in your\nindex and you don't need a field to be included in searches, set searchable to\nfalse." + }, + "filterable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $filter\nqueries. filterable differs from searchable in how strings are handled. Fields\nof type Edm.String or Collection(Edm.String) that are filterable do not undergo\nword-breaking, so comparisons are for exact matches only. For example, if you\nset such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches,\nbut $filter=f eq 'sunny day' will. This property must be null for complex\nfields. Default is true for simple fields and null for complex fields." + }, + "sortable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $orderby\nexpressions. By default, the search engine sorts results by score, but in many\nexperiences users will want to sort by fields in the documents. A simple field\ncan be sortable only if it is single-valued (it has a single value in the scope\nof the parent document). Simple collection fields cannot be sortable, since\nthey are multi-valued. Simple sub-fields of complex collections are also\nmulti-valued, and therefore cannot be sortable. This is true whether it's an\nimmediate parent field, or an ancestor field, that's the complex collection.\nComplex fields cannot be sortable and the sortable property must be null for\nsuch fields. The default for sortable is true for single-valued simple fields,\nfalse for multi-valued simple fields, and null for complex fields." + }, + "facetable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in facet\nqueries. Typically used in a presentation of search results that includes hit\ncount by category (for example, search for digital cameras and see hits by\nbrand, by megapixels, by price, and so on). This property must be null for\ncomplex fields. Fields of type Edm.GeographyPoint or\nCollection(Edm.GeographyPoint) cannot be facetable. Default is true for all\nother simple fields." + }, + "analyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer to use for the field. This option can be used only\nwith searchable fields and it can't be set together with either searchAnalyzer\nor indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the\nfield. Must be null for complex fields." + }, + "searchAnalyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at search time for the field. This option can be\nused only with searchable fields. It must be set together with indexAnalyzer\nand it cannot be set together with the analyzer option. This property cannot be\nset to the name of a language analyzer; use the analyzer property instead if\nyou need a language analyzer. This analyzer can be updated on an existing\nfield. Must be null for complex fields." + }, + "indexAnalyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at indexing time for the field. This option can\nbe used only with searchable fields. It must be set together with\nsearchAnalyzer and it cannot be set together with the analyzer option. This\nproperty cannot be set to the name of a language analyzer; use the analyzer\nproperty instead if you need a language analyzer. Once the analyzer is chosen,\nit cannot be changed for the field. Must be null for complex fields." + }, + "dimensions": { + "type": "integer", + "format": "int32", + "description": "The dimensionality of the vector field.", + "minimum": 2, + "maximum": 2048 + }, + "vectorSearchProfile": { + "type": "string", + "description": "The name of the vector search profile that specifies the algorithm and\nvectorizer to use when searching the vector field." + }, + "vectorEncoding": { + "$ref": "#/definitions/VectorEncodingFormat", + "description": "The encoding format to interpret the field contents." + }, + "synonymMaps": { + "type": "array", + "description": "A list of the names of synonym maps to associate with this field. This option\ncan be used only with searchable fields. Currently only one synonym map per\nfield is supported. Assigning a synonym map to a field ensures that query terms\ntargeting that field are expanded at query-time using the rules in the synonym\nmap. This attribute can be changed on existing fields. Must be null or an empty\ncollection for complex fields.", + "items": { + "type": "string" + } + }, + "fields": { + "type": "array", + "description": "A list of sub-fields if this is a field of type Edm.ComplexType or\nCollection(Edm.ComplexType). Must be null or empty for simple fields.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name", + "type" + ] + }, + "SearchFieldDataType": { + "type": "string", + "description": "Defines the data type of a field in a search index.", + "enum": [ + "Edm.String", + "Edm.Int32", + "Edm.Int64", + "Edm.Double", + "Edm.Boolean", + "Edm.DateTimeOffset", + "Edm.GeographyPoint", + "Edm.ComplexType", + "Edm.Single", + "Edm.Half", + "Edm.Int16", + "Edm.SByte", + "Edm.Byte" + ], + "x-ms-enum": { + "name": "SearchFieldDataType", + "modelAsString": true, + "values": [ + { + "name": "String", + "value": "Edm.String", + "description": "Indicates that a field contains a string." + }, + { + "name": "Int32", + "value": "Edm.Int32", + "description": "Indicates that a field contains a 32-bit signed integer." + }, + { + "name": "Int64", + "value": "Edm.Int64", + "description": "Indicates that a field contains a 64-bit signed integer." + }, + { + "name": "Double", + "value": "Edm.Double", + "description": "Indicates that a field contains an IEEE double-precision floating point number." + }, + { + "name": "Boolean", + "value": "Edm.Boolean", + "description": "Indicates that a field contains a Boolean value (true or false)." + }, + { + "name": "DateTimeOffset", + "value": "Edm.DateTimeOffset", + "description": "Indicates that a field contains a date/time value, including timezone\ninformation." + }, + { + "name": "GeographyPoint", + "value": "Edm.GeographyPoint", + "description": "Indicates that a field contains a geo-location in terms of longitude and\nlatitude." + }, + { + "name": "Complex", + "value": "Edm.ComplexType", + "description": "Indicates that a field contains one or more complex objects that in turn have\nsub-fields of other types." + }, + { + "name": "Single", + "value": "Edm.Single", + "description": "Indicates that a field contains a single-precision floating point number. This\nis only valid when used with Collection(Edm.Single)." + }, + { + "name": "Half", + "value": "Edm.Half", + "description": "Indicates that a field contains a half-precision floating point number. This is\nonly valid when used with Collection(Edm.Half)." + }, + { + "name": "Int16", + "value": "Edm.Int16", + "description": "Indicates that a field contains a 16-bit signed integer. This is only valid\nwhen used with Collection(Edm.Int16)." + }, + { + "name": "SByte", + "value": "Edm.SByte", + "description": "Indicates that a field contains a 8-bit signed integer. This is only valid when\nused with Collection(Edm.SByte)." + }, + { + "name": "Byte", + "value": "Edm.Byte", + "description": "Indicates that a field contains a 8-bit unsigned integer. This is only valid\nwhen used with Collection(Edm.Byte)." + } + ] + } + }, + "SearchIndex": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities." + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "name", + "fields" + ] + }, + "SearchIndexer": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerDataContainer": { + "type": "object", + "description": "Represents information about the entity (such as Azure SQL table or CosmosDB\ncollection) that will be indexed.", + "properties": { + "name": { + "type": "string", + "description": "The name of the table or view (for Azure SQL data source) or collection (for\nCosmosDB data source) that will be indexed." + }, + "query": { + "type": "string", + "description": "A query that is applied to this data container. The syntax and meaning of this\nparameter is datasource-specific. Not supported by Azure SQL datasources." + } + }, + "required": [ + "name" + ] + }, + "SearchIndexerDataIdentity": { + "type": "object", + "description": "Abstract base type for data identities.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of identity." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "SearchIndexerDataNoneIdentity": { + "type": "object", + "description": "Clears the identity property of a datasource.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerDataIdentity" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataNoneIdentity" + }, + "SearchIndexerDataSource": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceType": { + "type": "string", + "description": "Defines the type of a datasource.", + "enum": [ + "azuresql", + "cosmosdb", + "azureblob", + "azuretable", + "mysql", + "adlsgen2" + ], + "x-ms-enum": { + "name": "SearchIndexerDataSourceType", + "modelAsString": true, + "values": [ + { + "name": "AzureSql", + "value": "azuresql", + "description": "Indicates an Azure SQL datasource." + }, + { + "name": "CosmosDb", + "value": "cosmosdb", + "description": "Indicates a CosmosDB datasource." + }, + { + "name": "AzureBlob", + "value": "azureblob", + "description": "Indicates an Azure Blob datasource." + }, + { + "name": "AzureTable", + "value": "azuretable", + "description": "Indicates an Azure Table datasource." + }, + { + "name": "MySql", + "value": "mysql", + "description": "Indicates a MySql datasource." + }, + { + "name": "AdlsGen2", + "value": "adlsgen2", + "description": "Indicates an ADLS Gen2 datasource." + } + ] + } + }, + "SearchIndexerDataUserAssignedIdentity": { + "type": "object", + "description": "Specifies the identity for a datasource to use.", + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The fully qualified Azure resource Id of a user assigned managed identity\ntypically in the form\n\"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\"\nthat should have been assigned to the search service." + } + }, + "required": [ + "userAssignedIdentity" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerDataIdentity" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataUserAssignedIdentity" + }, + "SearchIndexerError": { + "type": "object", + "description": "Represents an item- or document-level indexing error.", + "properties": { + "key": { + "type": "string", + "description": "The key of the item for which indexing failed." + }, + "errorMessage": { + "type": "string", + "description": "The message describing the error that occurred while processing the item." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code indicating why the indexing operation failed. Possible values\ninclude: 400 for a malformed input document, 404 for document not found, 409\nfor a version conflict, 422 when the index is temporarily unavailable, or 503\nfor when the service is too busy." + }, + "name": { + "type": "string", + "description": "The name of the source at which the error originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable." + }, + "details": { + "type": "string", + "description": "Additional, verbose details about the error to assist in debugging the indexer.\nThis may not be always available." + }, + "documentationLink": { + "type": "string", + "description": "A link to a troubleshooting guide for these classes of errors. This may not be\nalways available." + } + }, + "required": [ + "errorMessage", + "statusCode" + ] + }, + "SearchIndexerIndexProjection": { + "type": "object", + "description": "Definition of additional projections to secondary search indexes.", + "properties": { + "selectors": { + "type": "array", + "description": "A list of projections to be performed to secondary search indexes.", + "items": { + "$ref": "#/definitions/SearchIndexerIndexProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "parameters": { + "$ref": "#/definitions/SearchIndexerIndexProjectionsParameters", + "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type." + } + }, + "required": [ + "selectors" + ] + }, + "SearchIndexerIndexProjectionSelector": { + "type": "object", + "description": "Description for what data to store in the designated search index.", + "properties": { + "targetIndexName": { + "type": "string", + "description": "Name of the search index to project to. Must have a key field with the 'keyword' analyzer set." + }, + "parentKeyFieldName": { + "type": "string", + "description": "Name of the field in the search index to map the parent document's key value\nto. Must be a string field that is filterable and not the key field." + }, + "sourceContext": { + "type": "string", + "description": "Source context for the projections. Represents the cardinality at which the\ndocument will be split into multiple sub documents." + }, + "mappings": { + "type": "array", + "description": "Mappings for the projection, or which source should be mapped to which field in\nthe target index.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "targetIndexName", + "parentKeyFieldName", + "sourceContext", + "mappings" + ] + }, + "SearchIndexerIndexProjectionsParameters": { + "type": "object", + "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type.", + "properties": { + "projectionMode": { + "$ref": "#/definitions/IndexProjectionMode", + "description": "Defines behavior of the index projections in relation to the rest of the\nindexer." + } + }, + "additionalProperties": {} + }, + "SearchIndexerKnowledgeStore": { + "type": "object", + "description": "Definition of additional projections to azure blob, table, or files, of\nenriched data.", + "properties": { + "storageConnectionString": { + "type": "string", + "description": "The connection string to the storage account projections will be stored in." + }, + "projections": { + "type": "array", + "description": "A list of additional projections to perform during indexing.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjection" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "storageConnectionString", + "projections" + ] + }, + "SearchIndexerKnowledgeStoreBlobProjectionSelector": { + "type": "object", + "description": "Abstract class to share properties between concrete selectors.", + "properties": { + "storageContainer": { + "type": "string", + "description": "Blob container to store projections in." + } + }, + "required": [ + "storageContainer" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreFileProjectionSelector": { + "type": "object", + "description": "Projection definition for what data to store in Azure Files.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreObjectProjectionSelector": { + "type": "object", + "description": "Projection definition for what data to store in Azure Blob.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreParameters": { + "type": "object", + "description": "A dictionary of knowledge store-specific configuration properties. Each name is\nthe name of a specific property. Each value must be of a primitive type.", + "properties": { + "synthesizeGeneratedKeyName": { + "type": "boolean", + "description": "Whether or not projections should synthesize a generated key name if one isn't\nalready present." + } + }, + "additionalProperties": {} + }, + "SearchIndexerKnowledgeStoreProjection": { + "type": "object", + "description": "Container object for various projection selectors.", + "properties": { + "tables": { + "type": "array", + "description": "Projections to Azure Table storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreTableProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "objects": { + "type": "array", + "description": "Projections to Azure Blob storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreObjectProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "files": { + "type": "array", + "description": "Projections to Azure File storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreFileProjectionSelector" + }, + "x-ms-identifiers": [] + } + } + }, + "SearchIndexerKnowledgeStoreProjectionSelector": { + "type": "object", + "description": "Abstract class to share properties between concrete selectors.", + "properties": { + "referenceKeyName": { + "type": "string", + "description": "Name of reference key to different projection." + }, + "generatedKeyName": { + "type": "string", + "description": "Name of generated key to store projection under." + }, + "source": { + "type": "string", + "description": "Source data to project." + }, + "sourceContext": { + "type": "string", + "description": "Source context for complex projections." + }, + "inputs": { + "type": "array", + "description": "Nested inputs for complex projections.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + } + }, + "SearchIndexerKnowledgeStoreTableProjectionSelector": { + "type": "object", + "description": "Description for what data to store in Azure Tables.", + "properties": { + "tableName": { + "type": "string", + "description": "Name of the Azure table to store projected data in." + } + }, + "required": [ + "tableName" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ] + }, + "SearchIndexerLimits": { + "type": "object", + "description": "Represents the limits that can be applied to an indexer.", + "properties": { + "maxRunTime": { + "type": "string", + "format": "duration", + "description": "The maximum duration that the indexer is permitted to run for one execution." + }, + "maxDocumentExtractionSize": { + "type": "integer", + "format": "int64", + "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing." + }, + "maxDocumentContentCharactersToExtract": { + "type": "integer", + "format": "int64", + "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing." + } + } + }, + "SearchIndexerSkill": { + "type": "object", + "description": "Base type for skills.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the skill which uniquely identifies it within the skillset. A skill\nwith no name defined will be given a default name of its 1-based index in the\nskills array, prefixed with the character '#'." + }, + "description": { + "type": "string", + "description": "The description of the skill which describes the inputs, outputs, and usage of\nthe skill." + }, + "context": { + "type": "string", + "description": "Represents the level at which operations take place, such as the document root\nor document content (for example, /document or /document/content). The default\nis /document." + }, + "inputs": { + "type": "array", + "description": "Inputs of the skills could be a column in the source data set, or the output of\nan upstream skill.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + }, + "outputs": { + "type": "array", + "description": "The output of a skill is either a field in a search index, or a value that can\nbe consumed as an input by another skill.", + "items": { + "$ref": "#/definitions/OutputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "inputs", + "outputs" + ] + }, + "SearchIndexerSkillset": { + "type": "object", + "description": "A list of skills.", + "properties": { + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills." + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es)." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "name", + "skills" + ] + }, + "SearchIndexerStatus": { + "type": "object", + "description": "Represents the current status and execution history of an indexer.", + "properties": { + "status": { + "$ref": "#/definitions/IndexerStatus", + "description": "Overall indexer status." + }, + "lastResult": { + "$ref": "#/definitions/IndexerExecutionResult", + "description": "The result of the most recent or an in-progress indexer execution." + }, + "executionHistory": { + "type": "array", + "description": "History of the recent indexer executions, sorted in reverse chronological order.", + "items": { + "$ref": "#/definitions/IndexerExecutionResult" + }, + "x-ms-identifiers": [] + }, + "limits": { + "$ref": "#/definitions/SearchIndexerLimits", + "description": "The execution limits for the indexer." + } + }, + "required": [ + "status", + "executionHistory", + "limits" + ] + }, + "SearchIndexerWarning": { + "type": "object", + "description": "Represents an item-level warning.", + "properties": { + "key": { + "type": "string", + "description": "The key of the item which generated a warning." + }, + "message": { + "type": "string", + "description": "The message describing the warning that occurred while processing the item." + }, + "name": { + "type": "string", + "description": "The name of the source at which the warning originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable." + }, + "details": { + "type": "string", + "description": "Additional, verbose details about the warning to assist in debugging the\nindexer. This may not be always available." + }, + "documentationLink": { + "type": "string", + "description": "A link to a troubleshooting guide for these classes of warnings. This may not\nbe always available." + } + }, + "required": [ + "message" + ] + }, + "SearchResourceEncryptionKey": { + "type": "object", + "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and\nmanage can be used to encrypt or decrypt data-at-rest, such as indexes and\nsynonym maps.", + "properties": { + "keyVaultKeyName": { + "type": "string", + "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest." + }, + "keyVaultKeyVersion": { + "type": "string", + "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest." + }, + "keyVaultUri": { + "type": "string", + "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains\nthe key to be used to encrypt your data at rest. An example URI might be\n`https://my-keyvault-name.vault.azure.net`." + }, + "accessCredentials": { + "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", + "description": "Optional Azure Active Directory credentials used for accessing your Azure Key\nVault. Not required if using managed identity instead." + } + }, + "required": [ + "keyVaultKeyName", + "keyVaultKeyVersion", + "keyVaultUri" + ] + }, + "SearchServiceCounters": { + "type": "object", + "description": "Represents service-level resource counters and quotas.", + "properties": { + "documentCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of documents across all indexes in the service." + }, + "indexesCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexes." + }, + "indexersCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexers." + }, + "dataSourcesCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of data sources." + }, + "storageSize": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total size of used storage in bytes." + }, + "synonymMaps": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of synonym maps." + }, + "skillsetCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of skillsets." + }, + "vectorIndexSize": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total memory consumption of all vector indexes within the service, in bytes." + } + }, + "required": [ + "documentCount", + "indexesCount", + "indexersCount", + "dataSourcesCount", + "storageSize", + "synonymMaps", + "skillsetCount", + "vectorIndexSize" + ] + }, + "SearchServiceLimits": { + "type": "object", + "description": "Represents various service level limits.", + "properties": { + "maxFieldsPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum allowed fields per index." + }, + "maxFieldNestingDepthPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum depth which you can nest sub-fields in an index, including the\ntop-level complex field. For example, a/b/c has a nesting depth of 3." + }, + "maxComplexCollectionFieldsPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an\nindex." + }, + "maxComplexObjectsInCollectionsPerDocument": { + "type": "integer", + "format": "int32", + "description": "The maximum number of objects in complex collections allowed per document." + }, + "maxStoragePerIndex": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of storage in bytes allowed per index." + } + } + }, + "SearchServiceStatistics": { + "type": "object", + "description": "Response from a get service statistics request. If successful, it includes\nservice level counters and limits.", + "properties": { + "counters": { + "$ref": "#/definitions/SearchServiceCounters", + "description": "Service level resource counters." + }, + "limits": { + "$ref": "#/definitions/SearchServiceLimits", + "description": "Service level general limits." + } + }, + "required": [ + "counters", + "limits" + ] + }, + "SearchSuggester": { + "type": "object", + "description": "Defines how the Suggest API should apply to a group of fields in the index.", + "properties": { + "name": { + "type": "string", + "description": "The name of the suggester." + }, + "searchMode": { + "type": "string", + "description": "A value indicating the capabilities of the suggester.", + "enum": [ + "analyzingInfixMatching" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "sourceFields": { + "type": "array", + "description": "The list of field names to which the suggester applies. Each field must be\nsearchable.", + "items": { + "type": "string" + } + } + }, + "required": [ + "name", + "searchMode", + "sourceFields" + ] + }, + "SemanticConfiguration": { + "type": "object", + "description": "Defines a specific configuration to be used in the context of semantic\ncapabilities.", + "properties": { + "name": { + "type": "string", + "description": "The name of the semantic configuration." + }, + "prioritizedFields": { + "$ref": "#/definitions/SemanticPrioritizedFields", + "description": "Describes the title, content, and keyword fields to be used for semantic\nranking, captions, highlights, and answers. At least one of the three sub\nproperties (titleField, prioritizedKeywordsFields and prioritizedContentFields)\nneed to be set." + } + }, + "required": [ + "name", + "prioritizedFields" + ] + }, + "SemanticField": { + "type": "object", + "description": "A field that is used as part of the semantic configuration.", + "properties": { + "fieldName": { + "type": "string", + "description": "File name" + } + }, + "required": [ + "fieldName" + ] + }, + "SemanticPrioritizedFields": { + "type": "object", + "description": "Describes the title, content, and keywords fields to be used for semantic\nranking, captions, highlights, and answers.", + "properties": { + "titleField": { + "$ref": "#/definitions/SemanticField", + "description": "Defines the title field to be used for semantic ranking, captions, highlights,\nand answers. If you don't have a title field in your index, leave this blank." + }, + "prioritizedContentFields": { + "type": "array", + "description": "Defines the content fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain text in natural language form. The order of the fields in the array\nrepresents their priority. Fields with lower priority may get truncated if the\ncontent is long.", + "items": { + "$ref": "#/definitions/SemanticField" + }, + "x-ms-identifiers": [] + }, + "prioritizedKeywordsFields": { + "type": "array", + "description": "Defines the keyword fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain a list of keywords. The order of the fields in the array represents\ntheir priority. Fields with lower priority may get truncated if the content is\nlong.", + "items": { + "$ref": "#/definitions/SemanticField" + }, + "x-ms-identifiers": [] + } + } + }, + "SemanticSearch": { + "type": "object", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "properties": { + "defaultConfiguration": { + "type": "string", + "description": "Allows you to set the name of a default semantic configuration in your index,\nmaking it optional to pass it on as a query parameter every time." + }, + "configurations": { + "type": "array", + "description": "The semantic configurations for the index.", + "items": { + "$ref": "#/definitions/SemanticConfiguration" + }, + "x-ms-identifiers": [] + } + } + }, + "SentimentSkill": { + "type": "object", + "description": "This skill is deprecated. Use the V3.SentimentSkill instead.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SentimentSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill" + }, + "SentimentSkillLanguage": { + "type": "string", + "description": "Deprecated. The language codes supported for input text by SentimentSkill.", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "it", + "no", + "pl", + "pt-PT", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "SentimentSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + } + ] + } + }, + "SentimentSkillV3": { + "type": "object", + "description": "Using the Text Analytics API, evaluates unstructured text and for each record,\nprovides sentiment labels (such as \"negative\", \"neutral\" and \"positive\") based\non the highest confidence score found by the service at a sentence and\ndocument-level.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "includeOpinionMining": { + "type": "boolean", + "description": "If set to true, the skill output will include information from Text Analytics\nfor opinion mining, namely targets (nouns or verbs) and their associated\nassessment (adjective) in the text. Default is false." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.SentimentSkill" + }, + "ShaperSkill": { + "type": "object", + "description": "A skill for reshaping the outputs. It creates a complex type to support\ncomposite fields (also known as multipart fields).", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill" + }, + "ShingleTokenFilter": { + "type": "object", + "description": "Creates combinations of tokens as a single token. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "maxShingleSize": { + "type": "integer", + "format": "int32", + "description": "The maximum shingle size. Default and minimum value is 2.", + "default": 2, + "minimum": 2 + }, + "minShingleSize": { + "type": "integer", + "format": "int32", + "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the\nvalue of maxShingleSize.", + "default": 2, + "minimum": 2 + }, + "outputUnigrams": { + "type": "boolean", + "description": "A value indicating whether the output stream will contain the input tokens\n(unigrams) as well as shingles. Default is true.", + "default": true + }, + "outputUnigramsIfNoShingles": { + "type": "boolean", + "description": "A value indicating whether to output unigrams for those times when no shingles\nare available. This property takes precedence when outputUnigrams is set to\nfalse. Default is false." + }, + "tokenSeparator": { + "type": "string", + "description": "The string to use when joining adjacent tokens to form a shingle. Default is a\nsingle space (\" \").", + "default": " " + }, + "filterToken": { + "type": "string", + "description": "The string to insert for each position at which there is no token. Default is\nan underscore (\"_\").", + "default": "_" + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter" + }, + "SimilarityAlgorithm": { + "type": "object", + "description": "Base type for similarity algorithms. Similarity algorithms are used to\ncalculate scores that tie queries to documents. The higher the score, the more\nrelevant the document is to that specific query. Those scores are used to rank\nthe search results.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "SnowballTokenFilter": { + "type": "object", + "description": "A filter that stems words using a Snowball-generated stemmer. This token filter\nis implemented using Apache Lucene.", + "properties": { + "language": { + "$ref": "#/definitions/SnowballTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter" + }, + "SnowballTokenFilterLanguage": { + "type": "string", + "description": "The language to use for a Snowball token filter.", + "enum": [ + "armenian", + "basque", + "catalan", + "danish", + "dutch", + "english", + "finnish", + "french", + "german", + "german2", + "hungarian", + "italian", + "kp", + "lovins", + "norwegian", + "porter", + "portuguese", + "romanian", + "russian", + "spanish", + "swedish", + "turkish" + ], + "x-ms-enum": { + "name": "SnowballTokenFilterLanguage", + "modelAsString": true, + "values": [ + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the Lucene Snowball stemming tokenizer for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the Lucene Snowball stemming tokenizer for Basque." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Lucene Snowball stemming tokenizer for Catalan." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Lucene Snowball stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Lucene Snowball stemming tokenizer for English." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Lucene Snowball stemming tokenizer for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Lucene Snowball stemming tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Lucene Snowball stemming tokenizer for German." + }, + { + "name": "German2", + "value": "german2", + "description": "Selects the Lucene Snowball stemming tokenizer that uses the German variant\nalgorithm." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Lucene Snowball stemming tokenizer for Hungarian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Lucene Snowball stemming tokenizer for Italian." + }, + { + "name": "Kp", + "value": "kp", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch that uses the\nKraaij-Pohlmann stemming algorithm." + }, + { + "name": "Lovins", + "value": "lovins", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins\nstemming algorithm." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the Lucene Snowball stemming tokenizer for Norwegian." + }, + { + "name": "Porter", + "value": "porter", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Porter\nstemming algorithm." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Lucene Snowball stemming tokenizer for Portuguese." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Lucene Snowball stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Lucene Snowball stemming tokenizer for Russian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Lucene Snowball stemming tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Lucene Snowball stemming tokenizer for Swedish." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Lucene Snowball stemming tokenizer for Turkish." + } + ] + } + }, + "SoftDeleteColumnDeletionDetectionPolicy": { + "type": "object", + "description": "Defines a data deletion detection policy that implements a soft-deletion\nstrategy. It determines whether an item should be deleted based on the value of\na designated 'soft delete' column.", + "properties": { + "softDeleteColumnName": { + "type": "string", + "description": "The name of the column to use for soft-deletion detection." + }, + "softDeleteMarkerValue": { + "type": "string", + "description": "The marker value that identifies an item as deleted." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataDeletionDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" + }, + "SplitSkill": { + "type": "object", + "description": "A skill to split a string into chunks of text.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SplitSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "textSplitMode": { + "$ref": "#/definitions/TextSplitMode", + "description": "A value indicating which split mode to perform." + }, + "maximumPageLength": { + "type": "integer", + "format": "int32", + "description": "The desired maximum page length. Default is 10000." + }, + "pageOverlapLength": { + "type": "integer", + "format": "int32", + "description": "Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk\nwill start with this number of characters/tokens from the end of the nth chunk." + }, + "maximumPagesToTake": { + "type": "integer", + "format": "int32", + "description": "Only applicable when textSplitMode is set to 'pages'. If specified, the\nSplitSkill will discontinue splitting after processing the first\n'maximumPagesToTake' pages, in order to improve performance when only a few\ninitial pages are needed from each document." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill" + }, + "SplitSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by SplitSkill.", + "enum": [ + "am", + "bs", + "cs", + "da", + "de", + "en", + "es", + "et", + "fi", + "fr", + "he", + "hi", + "hr", + "hu", + "id", + "is", + "it", + "ja", + "ko", + "lv", + "nb", + "nl", + "pl", + "pt", + "pt-br", + "ru", + "sk", + "sl", + "sr", + "sv", + "tr", + "ur", + "zh" + ], + "x-ms-enum": { + "name": "SplitSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "am", + "value": "am", + "description": "Amharic" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-br", + "value": "pt-br", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "sr", + "value": "sr", + "description": "Serbian" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "zh", + "value": "zh", + "description": "Chinese (Simplified)" + } + ] + } + }, + "SqlIntegratedChangeTrackingPolicy": { + "type": "object", + "description": "Defines a data change detection policy that captures changes using the\nIntegrated Change Tracking feature of Azure SQL Database.", + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" + }, + "StemmerOverrideTokenFilter": { + "type": "object", + "description": "Provides the ability to override other stemming filters with custom\ndictionary-based stemming. Any dictionary-stemmed terms will be marked as\nkeywords so that they will not be stemmed with stemmers down the chain. Must be\nplaced before any stemming filters. This token filter is implemented using\nApache Lucene.", + "properties": { + "rules": { + "type": "array", + "description": "A list of stemming rules in the following format: \"word => stem\", for example:\n\"ran => run\".", + "items": { + "type": "string" + } + } + }, + "required": [ + "rules" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" + }, + "StemmerTokenFilter": { + "type": "object", + "description": "Language specific stemming filter. This token filter is implemented using\nApache Lucene.", + "properties": { + "language": { + "$ref": "#/definitions/StemmerTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter" + }, + "StemmerTokenFilterLanguage": { + "type": "string", + "description": "The language to use for a stemmer token filter.", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "dutchKp", + "english", + "lightEnglish", + "minimalEnglish", + "possessiveEnglish", + "porter2", + "lovins", + "finnish", + "lightFinnish", + "french", + "lightFrench", + "minimalFrench", + "galician", + "minimalGalician", + "german", + "german2", + "lightGerman", + "minimalGerman", + "greek", + "hindi", + "hungarian", + "lightHungarian", + "indonesian", + "irish", + "italian", + "lightItalian", + "sorani", + "latvian", + "norwegian", + "lightNorwegian", + "minimalNorwegian", + "lightNynorsk", + "minimalNynorsk", + "portuguese", + "lightPortuguese", + "minimalPortuguese", + "portugueseRslp", + "romanian", + "russian", + "lightRussian", + "spanish", + "lightSpanish", + "swedish", + "lightSwedish", + "turkish" + ], + "x-ms-enum": { + "name": "StemmerTokenFilterLanguage", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the Lucene stemming tokenizer for Arabic." + }, + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the Lucene stemming tokenizer for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the Lucene stemming tokenizer for Basque." + }, + { + "name": "Brazilian", + "value": "brazilian", + "description": "Selects the Lucene stemming tokenizer for Portuguese (Brazil)." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Lucene stemming tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Lucene stemming tokenizer for Catalan." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Lucene stemming tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Lucene stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Lucene stemming tokenizer for Dutch." + }, + { + "name": "DutchKp", + "value": "dutchKp", + "description": "Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann\nstemming algorithm." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Lucene stemming tokenizer for English." + }, + { + "name": "LightEnglish", + "value": "lightEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does light stemming." + }, + { + "name": "MinimalEnglish", + "value": "minimalEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does minimal stemming." + }, + { + "name": "PossessiveEnglish", + "value": "possessiveEnglish", + "description": "Selects the Lucene stemming tokenizer for English that removes trailing\npossessives from words." + }, + { + "name": "Porter2", + "value": "porter2", + "description": "Selects the Lucene stemming tokenizer for English that uses the Porter2\nstemming algorithm." + }, + { + "name": "Lovins", + "value": "lovins", + "description": "Selects the Lucene stemming tokenizer for English that uses the Lovins stemming\nalgorithm." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Lucene stemming tokenizer for Finnish." + }, + { + "name": "LightFinnish", + "value": "lightFinnish", + "description": "Selects the Lucene stemming tokenizer for Finnish that does light stemming." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Lucene stemming tokenizer for French." + }, + { + "name": "LightFrench", + "value": "lightFrench", + "description": "Selects the Lucene stemming tokenizer for French that does light stemming." + }, + { + "name": "MinimalFrench", + "value": "minimalFrench", + "description": "Selects the Lucene stemming tokenizer for French that does minimal stemming." + }, + { + "name": "Galician", + "value": "galician", + "description": "Selects the Lucene stemming tokenizer for Galician." + }, + { + "name": "MinimalGalician", + "value": "minimalGalician", + "description": "Selects the Lucene stemming tokenizer for Galician that does minimal stemming." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Lucene stemming tokenizer for German." + }, + { + "name": "German2", + "value": "german2", + "description": "Selects the Lucene stemming tokenizer that uses the German variant algorithm." + }, + { + "name": "LightGerman", + "value": "lightGerman", + "description": "Selects the Lucene stemming tokenizer for German that does light stemming." + }, + { + "name": "MinimalGerman", + "value": "minimalGerman", + "description": "Selects the Lucene stemming tokenizer for German that does minimal stemming." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Lucene stemming tokenizer for Greek." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Lucene stemming tokenizer for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian." + }, + { + "name": "LightHungarian", + "value": "lightHungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian that does light stemming." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Lucene stemming tokenizer for Indonesian." + }, + { + "name": "Irish", + "value": "irish", + "description": "Selects the Lucene stemming tokenizer for Irish." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Lucene stemming tokenizer for Italian." + }, + { + "name": "LightItalian", + "value": "lightItalian", + "description": "Selects the Lucene stemming tokenizer for Italian that does light stemming." + }, + { + "name": "Sorani", + "value": "sorani", + "description": "Selects the Lucene stemming tokenizer for Sorani." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the Lucene stemming tokenizer for Latvian." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål)." + }, + { + "name": "LightNorwegian", + "value": "lightNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light\nstemming." + }, + { + "name": "MinimalNorwegian", + "value": "minimalNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal\nstemming." + }, + { + "name": "LightNynorsk", + "value": "lightNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light\nstemming." + }, + { + "name": "MinimalNynorsk", + "value": "minimalNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal\nstemming." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese." + }, + { + "name": "LightPortuguese", + "value": "lightPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does light stemming." + }, + { + "name": "MinimalPortuguese", + "value": "minimalPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming." + }, + { + "name": "PortugueseRslp", + "value": "portugueseRslp", + "description": "Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP\nstemming algorithm." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Lucene stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Lucene stemming tokenizer for Russian." + }, + { + "name": "LightRussian", + "value": "lightRussian", + "description": "Selects the Lucene stemming tokenizer for Russian that does light stemming." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Lucene stemming tokenizer for Spanish." + }, + { + "name": "LightSpanish", + "value": "lightSpanish", + "description": "Selects the Lucene stemming tokenizer for Spanish that does light stemming." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Lucene stemming tokenizer for Swedish." + }, + { + "name": "LightSwedish", + "value": "lightSwedish", + "description": "Selects the Lucene stemming tokenizer for Swedish that does light stemming." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Lucene stemming tokenizer for Turkish." + } + ] + } + }, + "StopAnalyzer": { + "type": "object", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nThis analyzer is implemented using Apache Lucene.", + "properties": { + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer" + }, + "StopwordsList": { + "type": "string", + "description": "Identifies a predefined list of language-specific stopwords.", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "english", + "finnish", + "french", + "galician", + "german", + "greek", + "hindi", + "hungarian", + "indonesian", + "irish", + "italian", + "latvian", + "norwegian", + "persian", + "portuguese", + "romanian", + "russian", + "sorani", + "spanish", + "swedish", + "thai", + "turkish" + ], + "x-ms-enum": { + "name": "StopwordsList", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the stopword list for Arabic." + }, + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the stopword list for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the stopword list for Basque." + }, + { + "name": "Brazilian", + "value": "brazilian", + "description": "Selects the stopword list for Portuguese (Brazil)." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the stopword list for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the stopword list for Catalan." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the stopword list for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the stopword list for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the stopword list for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the stopword list for English." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the stopword list for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the stopword list for French." + }, + { + "name": "Galician", + "value": "galician", + "description": "Selects the stopword list for Galician." + }, + { + "name": "German", + "value": "german", + "description": "Selects the stopword list for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the stopword list for Greek." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the stopword list for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the stopword list for Hungarian." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the stopword list for Indonesian." + }, + { + "name": "Irish", + "value": "irish", + "description": "Selects the stopword list for Irish." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the stopword list for Italian." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the stopword list for Latvian." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the stopword list for Norwegian." + }, + { + "name": "Persian", + "value": "persian", + "description": "Selects the stopword list for Persian." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the stopword list for Portuguese." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the stopword list for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the stopword list for Russian." + }, + { + "name": "Sorani", + "value": "sorani", + "description": "Selects the stopword list for Sorani." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the stopword list for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the stopword list for Swedish." + }, + { + "name": "Thai", + "value": "thai", + "description": "Selects the stopword list for Thai." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the stopword list for Turkish." + } + ] + } + }, + "StopwordsTokenFilter": { + "type": "object", + "description": "Removes stop words from a token stream. This token filter is implemented using\nApache Lucene.", + "properties": { + "stopwords": { + "type": "array", + "description": "The list of stopwords. This property and the stopwords list property cannot\nboth be set.", + "items": { + "type": "string" + } + }, + "stopwordsList": { + "$ref": "#/definitions/StopwordsList", + "description": "A predefined list of stopwords to use. This property and the stopwords property\ncannot both be set. Default is English." + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." + }, + "removeTrailing": { + "type": "boolean", + "description": "A value indicating whether to ignore the last search term if it's a stop word.\nDefault is true.", + "default": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter" + }, + "SynonymMap": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "name", + "format", + "synonyms" + ] + }, + "SynonymTokenFilter": { + "type": "object", + "description": "Matches single or multi-word synonyms in a token stream. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "synonyms": { + "type": "array", + "description": "A list of synonyms in following one of two formats: 1. incredible,\nunbelievable, fabulous => amazing - all terms on the left side of => symbol\nwill be replaced with all terms on its right side; 2. incredible, unbelievable,\nfabulous, amazing - comma separated list of equivalent words. Set the expand\noption to change how this list is interpreted.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to case-fold input for matching. Default is false." + }, + "expand": { + "type": "boolean", + "description": "A value indicating whether all words in the list of synonyms (if => notation is\nnot used) will map to one another. If true, all words in the list of synonyms\n(if => notation is not used) will map to one another. The following list:\nincredible, unbelievable, fabulous, amazing is equivalent to: incredible,\nunbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing.\nIf false, the following list: incredible, unbelievable, fabulous, amazing will\nbe equivalent to: incredible, unbelievable, fabulous, amazing => incredible.\nDefault is true.", + "default": true + } + }, + "required": [ + "synonyms" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter" + }, + "TagScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores of documents with string values matching\na given list of tags.", + "properties": { + "tag": { + "$ref": "#/definitions/TagScoringParameters", + "description": "Parameter values for the tag scoring function." + } + }, + "required": [ + "tag" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "tag" + }, + "TagScoringParameters": { + "type": "object", + "description": "Provides parameter values to a tag scoring function.", + "properties": { + "tagsParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the list of tags\nto compare against the target field." + } + }, + "required": [ + "tagsParameter" + ] + }, + "TextSplitMode": { + "type": "string", + "description": "A value indicating which split mode to perform.", + "enum": [ + "pages", + "sentences" + ], + "x-ms-enum": { + "name": "TextSplitMode", + "modelAsString": true, + "values": [ + { + "name": "Pages", + "value": "pages", + "description": "Split the text into individual pages." + }, + { + "name": "Sentences", + "value": "sentences", + "description": "Split the text into individual sentences." + } + ] + } + }, + "TextTranslationSkill": { + "type": "object", + "description": "A skill to translate text from one language to another.", + "properties": { + "defaultToLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents into for documents that don't specify\nthe to language explicitly." + }, + "defaultFromLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from for documents that don't specify\nthe from language explicitly." + }, + "suggestedFrom": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from when neither the fromLanguageCode\ninput nor the defaultFromLanguageCode parameter are provided, and the automatic\nlanguage detection is unsuccessful. Default is `en`." + } + }, + "required": [ + "defaultToLanguageCode" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill" + }, + "TextTranslationSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by TextTranslationSkill.", + "enum": [ + "af", + "ar", + "bn", + "bs", + "bg", + "yue", + "ca", + "zh-Hans", + "zh-Hant", + "hr", + "cs", + "da", + "nl", + "en", + "et", + "fj", + "fil", + "fi", + "fr", + "de", + "el", + "ht", + "he", + "hi", + "mww", + "hu", + "is", + "id", + "it", + "ja", + "sw", + "tlh", + "tlh-Latn", + "tlh-Piqd", + "ko", + "lv", + "lt", + "mg", + "ms", + "mt", + "nb", + "fa", + "pl", + "pt", + "pt-br", + "pt-PT", + "otq", + "ro", + "ru", + "sm", + "sr-Cyrl", + "sr-Latn", + "sk", + "sl", + "es", + "sv", + "ty", + "ta", + "te", + "th", + "to", + "tr", + "uk", + "ur", + "vi", + "cy", + "yua", + "ga", + "kn", + "mi", + "ml", + "pa" + ], + "x-ms-enum": { + "name": "TextTranslationSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "af", + "value": "af", + "description": "Afrikaans" + }, + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "bn", + "value": "bn", + "description": "Bangla" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian (Latin)" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "yue", + "value": "yue", + "description": "Cantonese (Traditional)" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fj", + "value": "fj", + "description": "Fijian" + }, + { + "name": "fil", + "value": "fil", + "description": "Filipino" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "ht", + "value": "ht", + "description": "Haitian Creole" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "mww", + "value": "mww", + "description": "Hmong Daw" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "sw", + "value": "sw", + "description": "Kiswahili" + }, + { + "name": "tlh", + "value": "tlh", + "description": "Klingon" + }, + { + "name": "tlh-Latn", + "value": "tlh-Latn", + "description": "Klingon (Latin script)" + }, + { + "name": "tlh-Piqd", + "value": "tlh-Piqd", + "description": "Klingon (Klingon script)" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "mg", + "value": "mg", + "description": "Malagasy" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay" + }, + { + "name": "mt", + "value": "mt", + "description": "Maltese" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "fa", + "value": "fa", + "description": "Persian" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + }, + { + "name": "pt-br", + "value": "pt-br", + "description": "Portuguese (Brazil)" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "otq", + "value": "otq", + "description": "Queretaro Otomi" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sm", + "value": "sm", + "description": "Samoan" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "ty", + "value": "ty", + "description": "Tahitian" + }, + { + "name": "ta", + "value": "ta", + "description": "Tamil" + }, + { + "name": "te", + "value": "te", + "description": "Telugu" + }, + { + "name": "th", + "value": "th", + "description": "Thai" + }, + { + "name": "to", + "value": "to", + "description": "Tongan" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "uk", + "value": "uk", + "description": "Ukrainian" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "vi", + "value": "vi", + "description": "Vietnamese" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "yua", + "value": "yua", + "description": "Yucatec Maya" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "kn", + "value": "kn", + "description": "Kannada" + }, + { + "name": "mi", + "value": "mi", + "description": "Maori" + }, + { + "name": "ml", + "value": "ml", + "description": "Malayalam" + }, + { + "name": "pa", + "value": "pa", + "description": "Punjabi" + } + ] + } + }, + "TextWeights": { + "type": "object", + "description": "Defines weights on index fields for which matches should boost scoring in\nsearch queries.", + "properties": { + "weights": { + "type": "object", + "description": "The dictionary of per-field weights to boost document scoring. The keys are\nfield names and the values are the weights for each field.", + "additionalProperties": { + "format": "double", + "type": "number" + } + } + }, + "required": [ + "weights" + ] + }, + "TokenCharacterKind": { + "type": "string", + "description": "Represents classes of characters on which a token filter can operate.", + "enum": [ + "letter", + "digit", + "whitespace", + "punctuation", + "symbol" + ], + "x-ms-enum": { + "name": "TokenCharacterKind", + "modelAsString": true, + "values": [ + { + "name": "Letter", + "value": "letter", + "description": "Keeps letters in tokens." + }, + { + "name": "Digit", + "value": "digit", + "description": "Keeps digits in tokens." + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "Keeps whitespace in tokens." + }, + { + "name": "Punctuation", + "value": "punctuation", + "description": "Keeps punctuation in tokens." + }, + { + "name": "Symbol", + "value": "symbol", + "description": "Keeps symbols in tokens." + } + ] + } + }, + "TokenFilter": { + "type": "object", + "description": "Base type for token filters.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the token filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "name" + ] + }, + "TokenFilterName": { + "type": "string", + "description": "Defines the names of all token filters supported by the search engine.", + "enum": [ + "arabic_normalization", + "apostrophe", + "asciifolding", + "cjk_bigram", + "cjk_width", + "classic", + "common_grams", + "edgeNGram_v2", + "elision", + "german_normalization", + "hindi_normalization", + "indic_normalization", + "keyword_repeat", + "kstem", + "length", + "limit", + "lowercase", + "nGram_v2", + "persian_normalization", + "phonetic", + "porter_stem", + "reverse", + "scandinavian_normalization", + "scandinavian_folding", + "shingle", + "snowball", + "sorani_normalization", + "stemmer", + "stopwords", + "trim", + "truncate", + "unique", + "uppercase", + "word_delimiter" + ], + "x-ms-enum": { + "name": "TokenFilterName", + "modelAsString": true, + "values": [ + { + "name": "ArabicNormalization", + "value": "arabic_normalization", + "description": "A token filter that applies the Arabic normalizer to normalize the orthography.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" + }, + { + "name": "Apostrophe", + "value": "apostrophe", + "description": "Strips all characters after an apostrophe (including the apostrophe itself).\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" + }, + { + "name": "AsciiFolding", + "value": "asciifolding", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + }, + { + "name": "CjkBigram", + "value": "cjk_bigram", + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + }, + { + "name": "CjkWidth", + "value": "cjk_width", + "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the\nequivalent basic Latin, and half-width Katakana variants into the equivalent\nKana. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" + }, + { + "name": "Classic", + "value": "classic", + "description": "Removes English possessives, and dots from acronyms. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" + }, + { + "name": "CommonGram", + "value": "common_grams", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + }, + { + "name": "EdgeNGram", + "value": "edgeNGram_v2", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + { + "name": "Elision", + "value": "elision", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + }, + { + "name": "GermanNormalization", + "value": "german_normalization", + "description": "Normalizes German characters according to the heuristics of the German2\nsnowball algorithm. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" + }, + { + "name": "HindiNormalization", + "value": "hindi_normalization", + "description": "Normalizes text in Hindi to remove some differences in spelling variations. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" + }, + { + "name": "IndicNormalization", + "value": "indic_normalization", + "description": "Normalizes the Unicode representation of text in Indian languages. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" + }, + { + "name": "KeywordRepeat", + "value": "keyword_repeat", + "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" + }, + { + "name": "KStem", + "value": "kstem", + "description": "A high-performance kstem filter for English. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" + }, + { + "name": "Length", + "value": "length", + "description": "Removes words that are too long or too short. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + }, + { + "name": "Limit", + "value": "limit", + "description": "Limits the number of tokens while indexing. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + }, + { + "name": "Lowercase", + "value": "lowercase", + "description": "Normalizes token text to lower case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html" + }, + { + "name": "NGram", + "value": "nGram_v2", + "description": "Generates n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + { + "name": "PersianNormalization", + "value": "persian_normalization", + "description": "Applies normalization for Persian. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" + }, + { + "name": "Phonetic", + "value": "phonetic", + "description": "Create tokens for phonetic matches. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + }, + { + "name": "PorterStem", + "value": "porter_stem", + "description": "Uses the Porter stemming algorithm to transform the token stream. See\nhttp://tartarus.org/~martin/PorterStemmer" + }, + { + "name": "Reverse", + "value": "reverse", + "description": "Reverses the token string. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" + }, + { + "name": "ScandinavianNormalization", + "value": "scandinavian_normalization", + "description": "Normalizes use of the interchangeable Scandinavian characters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" + }, + { + "name": "ScandinavianFoldingNormalization", + "value": "scandinavian_folding", + "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also\ndiscriminates against use of double vowels aa, ae, ao, oe and oo, leaving just\nthe first one. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" + }, + { + "name": "Shingle", + "value": "shingle", + "description": "Creates combinations of tokens as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + }, + { + "name": "Snowball", + "value": "snowball", + "description": "A filter that stems words using a Snowball-generated stemmer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + }, + { + "name": "SoraniNormalization", + "value": "sorani_normalization", + "description": "Normalizes the Unicode representation of Sorani text. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" + }, + { + "name": "Stemmer", + "value": "stemmer", + "description": "Language specific stemming filter. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + }, + { + "name": "Stopwords", + "value": "stopwords", + "description": "Removes stop words from a token stream. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + }, + { + "name": "Trim", + "value": "trim", + "description": "Trims leading and trailing whitespace from tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" + }, + { + "name": "Truncate", + "value": "truncate", + "description": "Truncates the terms to a specific length. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + }, + { + "name": "Unique", + "value": "unique", + "description": "Filters out tokens with same text as the previous token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + }, + { + "name": "Uppercase", + "value": "uppercase", + "description": "Normalizes token text to upper case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" + }, + { + "name": "WordDelimiter", + "value": "word_delimiter", + "description": "Splits words into subwords and performs optional transformations on subword\ngroups." + } + ] + } + }, + "TruncateTokenFilter": { + "type": "object", + "description": "Truncates the terms to a specific length. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "length": { + "type": "integer", + "format": "int32", + "description": "The length at which terms will be truncated. Default and maximum is 300.", + "default": 300, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter" + }, + "UaxUrlEmailTokenizer": { + "type": "object", + "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" + }, + "UniqueTokenFilter": { + "type": "object", + "description": "Filters out tokens with same text as the previous token. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "onlyOnSamePosition": { + "type": "boolean", + "description": "A value indicating whether to remove duplicates only at the same position.\nDefault is false." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter" + }, + "VectorEncodingFormat": { + "type": "string", + "description": "The encoding format for interpreting vector field contents.", + "enum": [ + "packedBit" + ], + "x-ms-enum": { + "name": "VectorEncodingFormat", + "modelAsString": true, + "values": [ + { + "name": "PackedBit", + "value": "packedBit", + "description": "Encoding format representing bits packed into a wider data type." + } + ] + } + }, + "VectorSearch": { + "type": "object", + "description": "Contains configuration options related to vector search.", + "properties": { + "profiles": { + "type": "array", + "description": "Defines combinations of configurations to use with vector search.", + "items": { + "$ref": "#/definitions/VectorSearchProfile" + }, + "x-ms-identifiers": [] + }, + "algorithms": { + "type": "array", + "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", + "items": { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + }, + "x-ms-identifiers": [] + }, + "vectorizers": { + "type": "array", + "description": "Contains configuration options on how to vectorize text vector queries.", + "items": { + "$ref": "#/definitions/VectorSearchVectorizer" + }, + "x-ms-identifiers": [] + }, + "compressions": { + "type": "array", + "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", + "items": { + "$ref": "#/definitions/VectorSearchCompression" + }, + "x-ms-identifiers": [] + } + } + }, + "VectorSearchAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular configuration." + }, + "kind": { + "$ref": "#/definitions/VectorSearchAlgorithmKind", + "description": "Type of VectorSearchAlgorithmConfiguration." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchAlgorithmKind": { + "type": "string", + "description": "The algorithm used for indexing and querying.", + "enum": [ + "hnsw", + "exhaustiveKnn" + ], + "x-ms-enum": { + "name": "VectorSearchAlgorithmKind", + "modelAsString": true, + "values": [ + { + "name": "Hnsw", + "value": "hnsw", + "description": "HNSW (Hierarchical Navigable Small World), a type of approximate nearest\nneighbors algorithm." + }, + { + "name": "ExhaustiveKnn", + "value": "exhaustiveKnn", + "description": "Exhaustive KNN algorithm which will perform brute-force search." + } + ] + } + }, + "VectorSearchAlgorithmMetric": { + "type": "string", + "description": "The similarity metric to use for vector comparisons. It is recommended to\nchoose the same similarity metric as the embedding model was trained on.", + "enum": [ + "cosine", + "euclidean", + "dotProduct", + "hamming" + ], + "x-ms-enum": { + "name": "VectorSearchAlgorithmMetric", + "modelAsString": true, + "values": [ + { + "name": "Cosine", + "value": "cosine", + "description": "Measures the angle between vectors to quantify their similarity, disregarding\nmagnitude. The smaller the angle, the closer the similarity." + }, + { + "name": "Euclidean", + "value": "euclidean", + "description": "Computes the straight-line distance between vectors in a multi-dimensional\nspace. The smaller the distance, the closer the similarity." + }, + { + "name": "DotProduct", + "value": "dotProduct", + "description": "Calculates the sum of element-wise products to gauge alignment and magnitude\nsimilarity. The larger and more positive, the closer the similarity." + }, + { + "name": "Hamming", + "value": "hamming", + "description": "Only applicable to bit-packed binary data types. Determines dissimilarity by\ncounting differing positions in binary vectors. The fewer differences, the\ncloser the similarity." + } + ] + } + }, + "VectorSearchCompression": { + "type": "object", + "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular configuration." + }, + "rerankWithOriginalVectors": { + "type": "boolean", + "description": "If set to true, once the ordered set of results calculated using compressed\nvectors are obtained, they will be reranked again by recalculating the\nfull-precision similarity scores. This will improve recall at the expense of\nlatency.", + "default": true + }, + "defaultOversampling": { + "type": "number", + "format": "double", + "description": "Default oversampling factor. Oversampling will internally request more\ndocuments (specified by this multiplier) in the initial search. This increases\nthe set of results that will be reranked using recomputed similarity scores\nfrom full-precision vectors. Minimum value is 1, meaning no oversampling (1x).\nThis parameter can only be set when rerankWithOriginalVectors is true. Higher\nvalues improve recall at the expense of latency." + }, + "kind": { + "$ref": "#/definitions/VectorSearchCompressionKind", + "description": "Type of VectorSearchCompression." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchCompressionKind": { + "type": "string", + "description": "The compression method used for indexing and querying.", + "enum": [ + "scalarQuantization", + "binaryQuantization" + ], + "x-ms-enum": { + "name": "VectorSearchCompressionKind", + "modelAsString": true, + "values": [ + { + "name": "ScalarQuantization", + "value": "scalarQuantization", + "description": "Scalar Quantization, a type of compression method. In scalar quantization, the\noriginal vectors values are compressed to a narrower type by discretizing and\nrepresenting each component of a vector using a reduced set of quantized\nvalues, thereby reducing the overall data size." + }, + { + "name": "BinaryQuantization", + "value": "binaryQuantization", + "description": "Binary Quantization, a type of compression method. In binary quantization, the\noriginal vectors values are compressed to the narrower binary type by discretizing\nand representing each component of a vector using binary values,\nthereby reducing the overall data size." + } + ] + } + }, + "VectorSearchCompressionTarget": { + "type": "string", + "description": "The quantized data type of compressed vector values.", + "enum": [ + "int8" + ], + "x-ms-enum": { + "name": "VectorSearchCompressionTarget", + "modelAsString": true, + "values": [ + { + "name": "Int8", + "value": "int8", + "description": "8-bit signed integer." + } + ] + } + }, + "VectorSearchProfile": { + "type": "object", + "description": "Defines a combination of configurations to use with vector search.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular vector search profile." + }, + "algorithm": { + "type": "string", + "description": "The name of the vector search algorithm configuration that specifies the\nalgorithm and optional parameters." + }, + "vectorizer": { + "type": "string", + "description": "The name of the vectorization being configured for use with vector search." + }, + "compression": { + "type": "string", + "description": "The name of the compression method configuration that specifies the compression\nmethod and optional parameters." + } + }, + "required": [ + "name", + "algorithm" + ] + }, + "VectorSearchVectorizer": { + "type": "object", + "description": "Specifies the vectorization method to be used during query time.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular vectorization method." + }, + "kind": { + "$ref": "#/definitions/VectorSearchVectorizerKind", + "description": "Type of VectorSearchVectorizer." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchVectorizerKind": { + "type": "string", + "description": "The vectorization method to be used during query time.", + "enum": [ + "azureOpenAI", + "customWebApi" + ], + "x-ms-enum": { + "name": "VectorSearchVectorizerKind", + "modelAsString": true, + "values": [ + { + "name": "AzureOpenAI", + "value": "azureOpenAI", + "description": "Generate embeddings using an Azure OpenAI resource at query time." + }, + { + "name": "CustomWebApi", + "value": "customWebApi", + "description": "Generate embeddings using a custom web endpoint at query time." + } + ] + } + }, + "VisualFeature": { + "type": "string", + "description": "The strings indicating what visual feature types to return.", + "enum": [ + "adult", + "brands", + "categories", + "description", + "faces", + "objects", + "tags" + ], + "x-ms-enum": { + "name": "VisualFeature", + "modelAsString": true, + "values": [ + { + "name": "Adult", + "value": "adult", + "description": "Visual features recognized as adult persons." + }, + { + "name": "Brands", + "value": "brands", + "description": "Visual features recognized as commercial brands." + }, + { + "name": "Categories", + "value": "categories", + "description": "Categories." + }, + { + "name": "Description", + "value": "description", + "description": "Description." + }, + { + "name": "Faces", + "value": "faces", + "description": "Visual features recognized as people faces." + }, + { + "name": "Objects", + "value": "objects", + "description": "Visual features recognized as objects." + }, + { + "name": "Tags", + "value": "tags", + "description": "Tags." + } + ] + } + }, + "WebApiSkill": { + "type": "object", + "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by\nhaving it call your custom code.", + "properties": { + "uri": { + "type": "string", + "description": "The url for the Web API." + }, + "httpHeaders": { + "type": "object", + "description": "The headers required to make the http request.", + "additionalProperties": { + "type": "string" + } + }, + "httpMethod": { + "type": "string", + "description": "The method for the http request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The desired batch size which indicates number of documents." + }, + "degreeOfParallelism": { + "type": "integer", + "format": "int32", + "description": "If set, the number of parallel calls that can be made to the Web API." + }, + "authResourceId": { + "type": "string", + "description": "Applies to custom skills that connect to external code in an Azure function or\nsome other application that provides the transformations. This value should be\nthe application ID created for the function or app when it was registered with\nAzure Active Directory. When specified, the custom skill connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." + } + }, + "required": [ + "uri" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill" + }, + "WebApiVectorizer": { + "type": "object", + "description": "Specifies a user-defined vectorizer for generating the vector embedding of a\nquery string. Integration of an external vectorizer is achieved using the\ncustom Web API interface of a skillset.", + "properties": { + "customWebApiParameters": { + "$ref": "#/definitions/WebApiVectorizerParameters", + "description": "Specifies the properties of the user-defined vectorizer." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "x-ms-discriminator-value": "customWebApi" + }, + "WebApiVectorizerParameters": { + "type": "object", + "description": "Specifies the properties for connecting to a user-defined vectorizer.", + "properties": { + "uri": { + "type": "string", + "format": "uri", + "description": "The URI of the Web API providing the vectorizer." + }, + "httpHeaders": { + "type": "object", + "description": "The headers required to make the HTTP request.", + "additionalProperties": { + "type": "string" + } + }, + "httpMethod": { + "type": "string", + "description": "The method for the HTTP request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "authResourceId": { + "type": "string", + "description": "Applies to custom endpoints that connect to external code in an Azure function\nor some other application that provides the transformations. This value should\nbe the application ID created for the function or app when it was registered\nwith Azure Active Directory. When specified, the vectorization connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." + } + } + }, + "WordDelimiterTokenFilter": { + "type": "object", + "description": "Splits words into subwords and performs optional transformations on subword\ngroups. This token filter is implemented using Apache Lucene.", + "properties": { + "generateWordParts": { + "type": "boolean", + "description": "A value indicating whether to generate part words. If set, causes parts of\nwords to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\".\nDefault is true.", + "default": true + }, + "generateNumberParts": { + "type": "boolean", + "description": "A value indicating whether to generate number subwords. Default is true.", + "default": true + }, + "catenateWords": { + "type": "boolean", + "description": "A value indicating whether maximum runs of word parts will be catenated. For\nexample, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default\nis false." + }, + "catenateNumbers": { + "type": "boolean", + "description": "A value indicating whether maximum runs of number parts will be catenated. For\nexample, if this is set to true, \"1-2\" becomes \"12\". Default is false." + }, + "catenateAll": { + "type": "boolean", + "description": "A value indicating whether all subword parts will be catenated. For example, if\nthis is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." + }, + "splitOnCaseChange": { + "type": "boolean", + "description": "A value indicating whether to split words on caseChange. For example, if this\nis set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true.", + "default": true + }, + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether original words will be preserved and added to the\nsubword list. Default is false." + }, + "splitOnNumerics": { + "type": "boolean", + "description": "A value indicating whether to split on numbers. For example, if this is set to\ntrue, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true.", + "default": true + }, + "stemEnglishPossessive": { + "type": "boolean", + "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is\ntrue.", + "default": true + }, + "protectedWords": { + "type": "array", + "description": "A list of tokens to protect from being delimited.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter" + } + }, + "parameters": { + "Azure.Core.ClientRequestIdHeader": { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "x-ms-client-name": "clientRequestId" + }, + "Azure.Core.Foundations.ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "x-ms-client-name": "apiVersion" + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json new file mode 100644 index 000000000000..40483bf4d79a --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json @@ -0,0 +1,1996 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure AI Search", + "version": "2024-07-01", + "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://search.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "type": "apiKey", + "name": "api-key", + "in": "header" + }, + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": { + "https://search.azure.com/.default": "" + } + } + }, + "tags": [], + "paths": { + "/indexes('{indexName}')/docs": { + "get": { + "operationId": "DocumentsOperations_SearchGet", + "description": "Searches for documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", + "required": false, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "$count", + "in": "query", + "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", + "required": false, + "type": "boolean", + "x-ms-client-name": "includeTotalResultCount" + }, + { + "name": "facet", + "in": "query", + "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "facets" + }, + { + "name": "$filter", + "in": "query", + "description": "The OData $filter expression to apply to the search query.", + "required": false, + "type": "string" + }, + { + "name": "highlight", + "in": "query", + "description": "The list of field names to use for hit highlights. Only searchable fields can\nbe used for hit highlighting.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "highlightFields" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "$orderby", + "in": "query", + "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, and desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no OrderBy is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "orderBy" + }, + { + "name": "queryType", + "in": "query", + "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax.", + "required": false, + "type": "string", + "enum": [ + "simple", + "full", + "semantic" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": true, + "values": [ + { + "name": "Simple", + "value": "simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." + }, + { + "name": "Full", + "value": "full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." + }, + { + "name": "Semantic", + "value": "semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." + } + ] + } + }, + { + "name": "scoringParameter", + "in": "query", + "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "scoringParameters" + }, + { + "name": "scoringProfile", + "in": "query", + "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results.", + "required": false, + "type": "string" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to which to scope the full-text search. When using\nfielded search (fieldName:searchExpression) in a full Lucene query, the field\nnames of each fielded search expression take precedence over any field names\nlisted in this parameter.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "searchMode", + "in": "query", + "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match.", + "required": false, + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": true, + "values": [ + { + "name": "Any", + "value": "any", + "description": "Any of the search terms must be matched in order to count the document as a\nmatch." + }, + { + "name": "All", + "value": "all", + "description": "All of the search terms must be matched in order to count the document as a\nmatch." + } + ] + } + }, + { + "name": "scoringStatistics", + "in": "query", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency.", + "required": false, + "type": "string", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": true, + "values": [ + { + "name": "Local", + "value": "local", + "description": "The scoring statistics will be calculated locally for lower latency." + }, + { + "name": "Global", + "value": "global", + "description": "The scoring statistics will be calculated globally for more consistent scoring." + } + ] + } + }, + { + "name": "sessionId", + "in": "query", + "description": "A value to be used to create a sticky session, which can help to get more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character.", + "required": false, + "type": "string" + }, + { + "name": "$select", + "in": "query", + "description": "The list of fields to retrieve. If unspecified, all fields marked as\nretrievable in the schema are included.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use $skip due to\nthis limitation, consider using $orderby on a totally-ordered key and $filter\nwith a range query instead.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$top", + "in": "query", + "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "semanticConfiguration", + "in": "query", + "description": "The name of the semantic configuration that lists which fields should be used\nfor semantic ranking, captions, highlights, and answers", + "required": false, + "type": "string" + }, + { + "name": "semanticErrorHandling", + "in": "query", + "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results (default).", + "required": false, + "type": "string", + "enum": [ + "partial", + "fail" + ], + "x-ms-enum": { + "name": "SemanticErrorMode", + "modelAsString": true, + "values": [ + { + "name": "Partial", + "value": "partial", + "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." + }, + { + "name": "Fail", + "value": "fail", + "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." + } + ] + } + }, + { + "name": "semanticMaxWaitInMilliseconds", + "in": "query", + "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 700 + }, + { + "name": "answers", + "in": "query", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", + "required": false, + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryAnswerType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return answers for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." + } + ] + } + }, + { + "name": "captions", + "in": "query", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", + "required": false, + "type": "string", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryCaptionType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return captions for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." + } + ] + } + }, + { + "name": "semanticQuery", + "in": "query", + "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/$count": { + "get": { + "operationId": "DocumentsOperations_Count", + "description": "Queries the number of documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "integer", + "format": "int32" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.autocomplete": { + "get": { + "operationId": "DocumentsOperations_AutocompleteGet", + "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "The incomplete term which should be auto-completed.", + "required": true, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "suggesterName", + "in": "query", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", + "required": true, + "type": "string" + }, + { + "name": "autocompleteMode", + "in": "query", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms.", + "required": false, + "type": "string", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": true, + "values": [ + { + "name": "OneTerm", + "value": "oneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." + }, + { + "name": "TwoTerms", + "value": "twoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." + }, + { + "name": "OneTermWithContext", + "value": "oneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." + } + ] + } + }, + { + "name": "$filter", + "in": "query", + "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result.", + "required": false, + "type": "string" + }, + { + "name": "fuzzy", + "in": "query", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nautocomplete queries are slower and consume more resources.", + "required": false, + "type": "boolean", + "x-ms-client-name": "useFuzzyMatching" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to consider when querying for auto-completed terms.\nTarget fields must be included in the specified suggester.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$top", + "in": "query", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.index": { + "post": { + "operationId": "DocumentsOperations_Index", + "description": "Sends a batch of document write actions to the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "batch", + "in": "body", + "description": "The batch of index actions.", + "required": true, + "schema": { + "$ref": "#/definitions/IndexBatch" + } + } + ], + "responses": { + "200": { + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "207": { + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.autocomplete": { + "post": { + "operationId": "DocumentsOperations_AutocompletePost", + "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "autocompleteRequest", + "in": "body", + "description": "The definition of the Autocomplete request.", + "required": true, + "schema": { + "$ref": "#/definitions/AutocompleteRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.search": { + "post": { + "operationId": "DocumentsOperations_SearchPost", + "description": "Searches for documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "searchRequest", + "in": "body", + "description": "The definition of the Search request.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.post.suggest": { + "post": { + "operationId": "DocumentsOperations_SuggestPost", + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "suggestRequest", + "in": "body", + "description": "The Suggest request.", + "required": true, + "schema": { + "$ref": "#/definitions/SuggestRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs/search.suggest": { + "get": { + "operationId": "DocumentsOperations_SuggestGet", + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", + "required": true, + "type": "string", + "x-ms-client-name": "searchText" + }, + { + "name": "suggesterName", + "in": "query", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData expression that filters the documents considered for suggestions.", + "required": false, + "type": "string" + }, + { + "name": "fuzzy", + "in": "query", + "description": "A value indicating whether to use fuzzy matching for the suggestions query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nsuggestions queries are slower and consume more resources.", + "required": false, + "type": "boolean", + "x-ms-client-name": "useFuzzyMatching" + }, + { + "name": "highlightPostTag", + "in": "query", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled.", + "required": false, + "type": "string" + }, + { + "name": "highlightPreTag", + "in": "query", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled.", + "required": false, + "type": "string" + }, + { + "name": "minimumCoverage", + "in": "query", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestions query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", + "required": false, + "type": "number", + "format": "double" + }, + { + "name": "$orderby", + "in": "query", + "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, or desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no $orderby is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "orderBy" + }, + { + "name": "searchFields", + "in": "query", + "description": "The list of field names to search for the specified search text. Target fields\nmust be included in the specified suggester.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$select", + "in": "query", + "description": "The list of fields to retrieve. If unspecified, only the key field will be\nincluded in the results.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv" + }, + { + "name": "$top", + "in": "query", + "description": "The number of suggestions to retrieve. The value must be a number between 1 and\n100. The default is 5.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/docs('{key}')": { + "get": { + "operationId": "DocumentsOperations_Get", + "description": "Retrieves a document from the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "key", + "in": "path", + "description": "The key of the document to retrieve.", + "required": true, + "type": "string" + }, + { + "name": "$select", + "in": "query", + "description": "List of field names to retrieve for the document; Any field not retrieved will\nbe missing from the returned document.", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-client-name": "selectedFields" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/LookupDocument" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AutocompleteItem": { + "type": "object", + "description": "The result of Autocomplete requests.", + "properties": { + "text": { + "type": "string", + "description": "The completed term." + }, + "queryPlusText": { + "type": "string", + "description": "The query along with the completed term." + } + }, + "required": [ + "text", + "queryPlusText" + ] + }, + "AutocompleteMode": { + "type": "string", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context in\nproducing autocomplete terms.", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": true, + "values": [ + { + "name": "OneTerm", + "value": "oneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." + }, + { + "name": "TwoTerms", + "value": "twoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." + }, + { + "name": "OneTermWithContext", + "value": "oneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." + } + ] + } + }, + "AutocompleteRequest": { + "type": "object", + "description": "Parameters for fuzzy matching, and other autocomplete query behaviors.", + "properties": { + "search": { + "type": "string", + "description": "The search text on which to base autocomplete results." + }, + "autocompleteMode": { + "$ref": "#/definitions/AutocompleteMode", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms." + }, + "filter": { + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will autocomplete terms even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy autocomplete queries are slower and consume more resources." + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to consider when querying for\nauto-completed terms. Target fields must be included in the specified\nsuggester." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ] + }, + "AutocompleteResult": { + "type": "object", + "description": "The result of Autocomplete query.", + "properties": { + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was considered by the\nautocomplete request, or null if minimumCoverage was not specified in the\nrequest.", + "x-ms-client-name": "coverage" + }, + "value": { + "type": "array", + "description": "The list of returned Autocompleted items.", + "items": { + "$ref": "#/definitions/AutocompleteItem" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ErrorAdditionalInfo": { + "type": "object", + "description": "The resource management error additional info.", + "properties": { + "type": { + "type": "string", + "description": "The additional info type." + }, + "info": { + "type": "object", + "description": "The additional info.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "The error detail.", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The error target." + }, + "details": { + "type": "array", + "description": "The error details.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-identifiers": [] + }, + "additionalInfo": { + "type": "array", + "description": "The error additional info.", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [] + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Common error response for all Azure Resource Manager APIs to return error\ndetails for failed operations. (This also follows the OData error response\nformat.).", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetail", + "description": "The error object." + } + } + }, + "FacetResult": { + "type": "object", + "description": "A single bucket of a facet query result. Reports the number of documents with a\nfield value falling within a particular range or having a particular value or\ninterval.", + "properties": { + "count": { + "type": "integer", + "format": "int64", + "description": "The approximate count of documents falling within the bucket described by this\nfacet." + } + }, + "additionalProperties": {} + }, + "IndexAction": { + "type": "object", + "description": "Represents an index action that operates on a document.", + "properties": { + "@search.action": { + "$ref": "#/definitions/IndexActionType", + "description": "The operation to perform on a document in an indexing batch.", + "x-ms-client-name": "actionType" + } + }, + "additionalProperties": {} + }, + "IndexActionType": { + "type": "string", + "description": "The operation to perform on a document in an indexing batch.", + "enum": [ + "upload", + "merge", + "mergeOrUpload", + "delete" + ], + "x-ms-enum": { + "name": "IndexActionType", + "modelAsString": true, + "values": [ + { + "name": "Upload", + "value": "upload", + "description": "Inserts the document into the index if it is new and updates it if it exists.\nAll fields are replaced in the update case." + }, + { + "name": "Merge", + "value": "merge", + "description": "Merges the specified field values with an existing document. If the document\ndoes not exist, the merge will fail. Any field you specify in a merge will\nreplace the existing field in the document. This also applies to collections of\nprimitive and complex types." + }, + { + "name": "MergeOrUpload", + "value": "mergeOrUpload", + "description": "Behaves like merge if a document with the given key already exists in the\nindex. If the document does not exist, it behaves like upload with a new\ndocument." + }, + { + "name": "Delete", + "value": "delete", + "description": "Removes the specified document from the index. Any field you specify in a\ndelete operation other than the key field will be ignored. If you want to\nremove an individual field from a document, use merge instead and set the field\nexplicitly to null." + } + ] + } + }, + "IndexBatch": { + "type": "object", + "description": "Contains a batch of document write actions to send to the index.", + "properties": { + "value": { + "type": "array", + "description": "The actions in the batch.", + "items": { + "$ref": "#/definitions/IndexAction" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "IndexDocumentsResult": { + "type": "object", + "description": "Response containing the status of operations for all documents in the indexing\nrequest.", + "properties": { + "value": { + "type": "array", + "description": "The list of status information for each document in the indexing request.", + "items": { + "$ref": "#/definitions/IndexingResult" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "IndexingResult": { + "type": "object", + "description": "Status of an indexing operation for a single document.", + "properties": { + "key": { + "type": "string", + "description": "The key of a document that was in the indexing request." + }, + "errorMessage": { + "type": "string", + "description": "The error message explaining why the indexing operation failed for the document\nidentified by the key; null if indexing succeeded." + }, + "status": { + "type": "boolean", + "description": "A value indicating whether the indexing operation succeeded for the document\nidentified by the key." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code of the indexing operation. Possible values include: 200 for a\nsuccessful update or delete, 201 for successful document creation, 400 for a\nmalformed input document, 404 for document not found, 409 for a version\nconflict, 422 when the index is temporarily unavailable, or 503 for when the\nservice is too busy." + } + }, + "required": [ + "key", + "status", + "statusCode" + ] + }, + "LookupDocument": { + "type": "object", + "description": "A document retrieved via a document lookup operation.", + "additionalProperties": {} + }, + "QueryAnswerResult": { + "type": "object", + "description": "An answer is a text passage extracted from the contents of the most relevant\ndocuments that matched the query. Answers are extracted from the top search\nresults. Answer candidates are scored and the top answers are selected.", + "properties": { + "score": { + "type": "number", + "format": "double", + "description": "The score value represents how relevant the answer is to the query relative to\nother answers returned for the query." + }, + "key": { + "type": "string", + "description": "The key of the document the answer was extracted from." + }, + "text": { + "type": "string", + "description": "The text passage extracted from the document contents as the answer." + }, + "highlights": { + "type": "string", + "description": "Same text passage as in the Text property with highlighted text phrases most\nrelevant to the query." + } + }, + "additionalProperties": {} + }, + "QueryAnswerType": { + "type": "string", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryAnswerType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return answers for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." + } + ] + } + }, + "QueryCaptionResult": { + "type": "object", + "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type `semantic`.", + "properties": { + "text": { + "type": "string", + "description": "A representative text passage extracted from the document most relevant to the\nsearch query." + }, + "highlights": { + "type": "string", + "description": "Same text passage as in the Text property with highlighted phrases most\nrelevant to the query." + } + }, + "additionalProperties": {} + }, + "QueryCaptionType": { + "type": "string", + "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", + "enum": [ + "none", + "extractive" + ], + "x-ms-enum": { + "name": "QueryCaptionType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Do not return captions for the query." + }, + { + "name": "Extractive", + "value": "extractive", + "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." + } + ] + } + }, + "QueryType": { + "type": "string", + "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full'\nif your query uses the Lucene query syntax.", + "enum": [ + "simple", + "full", + "semantic" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": true, + "values": [ + { + "name": "Simple", + "value": "simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." + }, + { + "name": "Full", + "value": "full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." + }, + { + "name": "Semantic", + "value": "semantic", + "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." + } + ] + } + }, + "ScoringStatistics": { + "type": "string", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries.", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": true, + "values": [ + { + "name": "Local", + "value": "local", + "description": "The scoring statistics will be calculated locally for lower latency." + }, + { + "name": "Global", + "value": "global", + "description": "The scoring statistics will be calculated globally for more consistent scoring." + } + ] + } + }, + "SearchDocumentsResult": { + "type": "object", + "description": "Response containing search results from an index.", + "properties": { + "@odata.count": { + "type": "integer", + "format": "int64", + "description": "The total count of results found by the search operation, or null if the count\nwas not requested. If present, the count may be greater than the number of\nresults in this response. This can happen if you use the $top or $skip\nparameters, or if the query can't return all the requested documents in a\nsingle response.", + "x-ms-client-name": "count" + }, + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not specified in the request.", + "x-ms-client-name": "coverage" + }, + "@search.facets": { + "type": "object", + "description": "The facet query results for the search operation, organized as a collection of\nbuckets for each faceted field; null if the query did not include any facet\nexpressions.", + "additionalProperties": { + "items": { + "$ref": "#/definitions/FacetResult" + }, + "type": "array", + "x-ms-identifiers": [] + }, + "x-ms-client-name": "facets" + }, + "@search.answers": { + "type": "array", + "description": "The answers query results for the search operation; null if the answers query\nparameter was not specified or set to 'none'.", + "items": { + "$ref": "#/definitions/QueryAnswerResult" + }, + "x-ms-client-name": "answers", + "x-ms-identifiers": [] + }, + "value": { + "type": "array", + "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with", + "items": { + "$ref": "#/definitions/SearchResult" + }, + "x-ms-identifiers": [] + }, + "@odata.nextLink": { + "type": "string", + "description": "Continuation URL returned when the query can't return all the requested results\nin a single response. You can use this URL to formulate another GET or POST\nSearch request to get the next part of the search response. Make sure to use\nthe same verb (GET or POST) as the request that produced this response.", + "x-ms-client-name": "nextLink" + }, + "@search.semanticPartialResponseReason": { + "$ref": "#/definitions/SemanticErrorReason", + "description": "Reason that a partial response was returned for a semantic ranking request.", + "x-ms-client-name": "semanticPartialResponseReason" + }, + "@search.semanticPartialResponseType": { + "$ref": "#/definitions/SemanticSearchResultsType", + "description": "Type of partial response that was returned for a semantic ranking request.", + "x-ms-client-name": "semanticPartialResponseType" + } + }, + "required": [ + "value" + ] + }, + "SearchMode": { + "type": "string", + "description": "Specifies whether any or all of the search terms must be matched in order to\ncount the document as a match.", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": true, + "values": [ + { + "name": "Any", + "value": "any", + "description": "Any of the search terms must be matched in order to count the document as a\nmatch." + }, + { + "name": "All", + "value": "all", + "description": "All of the search terms must be matched in order to count the document as a\nmatch." + } + ] + } + }, + "SearchRequest": { + "type": "object", + "description": "Parameters for filtering, sorting, faceting, paging, and other search query\nbehaviors.", + "properties": { + "count": { + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation." + }, + "facets": { + "type": "array", + "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", + "items": { + "type": "string" + } + }, + "filter": { + "type": "string", + "description": "The OData $filter expression to apply to the search query." + }, + "highlight": { + "type": "string", + "description": "The comma-separated list of field names to use for hit highlights. Only\nsearchable fields can be used for hit highlighting." + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100." + }, + "$orderby": { + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." + }, + "queryType": { + "$ref": "#/definitions/QueryType", + "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax." + }, + "scoringStatistics": { + "$ref": "#/definitions/ScoringStatistics", + "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries." + }, + "sessionId": { + "type": "string", + "description": "A value to be used to create a sticky session, which can help getting more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character." + }, + "scoringParameters": { + "type": "array", + "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "items": { + "type": "string" + } + }, + "scoringProfile": { + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results." + }, + "search": { + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to which to scope the full-text search.\nWhen using fielded search (fieldName:searchExpression) in a full Lucene query,\nthe field names of each fielded search expression take precedence over any\nfield names listed in this parameter." + }, + "searchMode": { + "$ref": "#/definitions/SearchMode", + "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, all fields\nmarked as retrievable in the schema are included." + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use skip due to\nthis limitation, consider using orderby on a totally-ordered key and filter\nwith a range query instead." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults." + }, + "semanticConfiguration": { + "type": "string", + "description": "The name of a semantic configuration that will be used when processing\ndocuments for queries of type semantic." + }, + "semanticErrorHandling": { + "$ref": "#/definitions/SemanticErrorMode", + "description": "Allows the user to choose whether a semantic call should fail completely\n(default / current behavior), or to return partial results." + }, + "semanticMaxWaitInMilliseconds": { + "type": "integer", + "format": "int32", + "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", + "minimum": 700 + }, + "semanticQuery": { + "type": "string", + "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase." + }, + "answers": { + "$ref": "#/definitions/QueryAnswerType", + "description": "A value that specifies whether answers should be returned as part of the search\nresponse." + }, + "captions": { + "$ref": "#/definitions/QueryCaptionType", + "description": "A value that specifies whether captions should be returned as part of the\nsearch response." + }, + "vectorQueries": { + "type": "array", + "description": "The query parameters for vector and hybrid search queries.", + "items": { + "$ref": "#/definitions/VectorQuery" + }, + "x-ms-identifiers": [] + }, + "vectorFilterMode": { + "$ref": "#/definitions/VectorFilterMode", + "description": "Determines whether or not filters are applied before or after the vector search\nis performed. Default is 'preFilter' for new indexes." + } + } + }, + "SearchResult": { + "type": "object", + "description": "Contains a document found by a search query, plus associated metadata.", + "properties": { + "@search.score": { + "type": "number", + "format": "double", + "description": "The relevance score of the document compared to other documents returned by the\nquery.", + "x-ms-client-name": "score" + }, + "@search.rerankerScore": { + "type": "number", + "format": "double", + "description": "The relevance score computed by the semantic ranker for the top search results.\nSearch results are sorted by the RerankerScore first and then by the Score.\nRerankerScore is only returned for queries of type 'semantic'.", + "x-ms-client-name": "rerankerScore" + }, + "@search.highlights": { + "type": "object", + "description": "Text fragments from the document that indicate the matching search terms,\norganized by each applicable field; null if hit highlighting was not enabled\nfor the query.", + "additionalProperties": { + "items": { + "type": "string" + }, + "type": "array" + }, + "x-ms-client-name": "highlights" + }, + "@search.captions": { + "type": "array", + "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type 'semantic'.", + "items": { + "$ref": "#/definitions/QueryCaptionResult" + }, + "x-ms-client-name": "captions", + "x-ms-identifiers": [] + } + }, + "required": [ + "@search.score" + ], + "additionalProperties": {} + }, + "SemanticErrorMode": { + "type": "string", + "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results.", + "enum": [ + "partial", + "fail" + ], + "x-ms-enum": { + "name": "SemanticErrorMode", + "modelAsString": true, + "values": [ + { + "name": "Partial", + "value": "partial", + "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." + }, + { + "name": "Fail", + "value": "fail", + "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." + } + ] + } + }, + "SemanticErrorReason": { + "type": "string", + "description": "Reason that a partial response was returned for a semantic ranking request.", + "enum": [ + "maxWaitExceeded", + "capacityOverloaded", + "transient" + ], + "x-ms-enum": { + "name": "SemanticErrorReason", + "modelAsString": true, + "values": [ + { + "name": "MaxWaitExceeded", + "value": "maxWaitExceeded", + "description": "If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration\nexceeded that value. Only the base results were returned." + }, + { + "name": "CapacityOverloaded", + "value": "capacityOverloaded", + "description": "The request was throttled. Only the base results were returned." + }, + { + "name": "Transient", + "value": "transient", + "description": "At least one step of the semantic process failed." + } + ] + } + }, + "SemanticSearchResultsType": { + "type": "string", + "description": "Type of partial response that was returned for a semantic ranking request.", + "enum": [ + "baseResults", + "rerankedResults" + ], + "x-ms-enum": { + "name": "SemanticSearchResultsType", + "modelAsString": true, + "values": [ + { + "name": "BaseResults", + "value": "baseResults", + "description": "Results without any semantic enrichment or reranking." + }, + { + "name": "RerankedResults", + "value": "rerankedResults", + "description": "Results have been reranked with the reranker model and will include semantic\ncaptions. They will not include any answers, answers highlights or caption\nhighlights." + } + ] + } + }, + "SuggestDocumentsResult": { + "type": "object", + "description": "Response containing suggestion query results from an index.", + "properties": { + "value": { + "type": "array", + "description": "The sequence of results returned by the query.", + "items": { + "$ref": "#/definitions/SuggestResult" + }, + "x-ms-identifiers": [] + }, + "@search.coverage": { + "type": "number", + "format": "double", + "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not set in the request.", + "x-ms-client-name": "coverage" + } + }, + "required": [ + "value" + ] + }, + "SuggestRequest": { + "type": "object", + "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query\nbehaviors.", + "properties": { + "filter": { + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestion query.\nDefault is false. When set to true, the query will find suggestions even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy suggestion searches are slower and consume more resources." + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestion query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." + }, + "$orderby": { + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." + }, + "search": { + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to search for the specified search\ntext. Target fields must be included in the specified suggester." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, only the key\nfield will be included in the results." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. This must be a value between 1 and 100.\nThe default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ] + }, + "SuggestResult": { + "type": "object", + "description": "A result containing a document found by a suggestion query, plus associated\nmetadata.", + "properties": { + "@search.text": { + "type": "string", + "description": "The text of the suggestion result.", + "x-ms-client-name": "text" + } + }, + "required": [ + "@search.text" + ], + "additionalProperties": {} + }, + "VectorFilterMode": { + "type": "string", + "description": "Determines whether or not filters are applied before or after the vector search\nis performed.", + "enum": [ + "postFilter", + "preFilter" + ], + "x-ms-enum": { + "name": "VectorFilterMode", + "modelAsString": true, + "values": [ + { + "name": "PostFilter", + "value": "postFilter", + "description": "The filter will be applied after the candidate set of vector results is\nreturned. Depending on the filter selectivity, this can result in fewer results\nthan requested by the parameter 'k'." + }, + { + "name": "PreFilter", + "value": "preFilter", + "description": "The filter will be applied before the search query." + } + ] + } + }, + "VectorQuery": { + "type": "object", + "description": "The query parameters for vector and hybrid search queries.", + "properties": { + "k": { + "type": "integer", + "format": "int32", + "description": "Number of nearest neighbors to return as top hits." + }, + "fields": { + "type": "string", + "description": "Vector Fields of type Collection(Edm.Single) to be included in the vector\nsearched." + }, + "exhaustive": { + "type": "boolean", + "description": "When true, triggers an exhaustive k-nearest neighbor search across all vectors\nwithin the vector index. Useful for scenarios where exact matches are critical,\nsuch as determining ground truth values." + }, + "oversampling": { + "type": "number", + "format": "double", + "description": "Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling'\nparameter configured in the index definition. It can be set only when 'rerankWithOriginalVectors'\nis true. This parameter is only permitted when a\ncompression method is used on the underlying vector field." + }, + "weight": { + "type": "number", + "format": "float", + "description": "Relative weight of the vector query when compared to other vector query and/or\nthe text query within the same search request. This value is used when\ncombining the results of multiple ranking lists produced by the different\nvector queries and/or the results retrieved through the text query. The higher\nthe weight, the higher the documents that matched that query will be in the\nfinal ranking. Default is 1.0 and the value needs to be a positive number\nlarger than zero." + }, + "kind": { + "$ref": "#/definitions/VectorQueryKind", + "description": "Type of query." + } + }, + "discriminator": "kind", + "required": [ + "kind" + ] + }, + "VectorQueryKind": { + "type": "string", + "description": "The kind of vector query being performed.", + "enum": [ + "vector", + "text" + ], + "x-ms-enum": { + "name": "VectorQueryKind", + "modelAsString": true, + "values": [ + { + "name": "Vector", + "value": "vector", + "description": "Vector query where a raw vector value is provided." + }, + { + "name": "Text", + "value": "text", + "description": "Vector query where a text value that needs to be vectorized is provided." + } + ] + } + }, + "VectorizableTextQuery": { + "type": "object", + "description": "The query parameters to use for vector search when a text value that needs to\nbe vectorized is provided.", + "properties": { + "text": { + "type": "string", + "description": "The text to be vectorized to perform a vector search query." + } + }, + "required": [ + "text" + ], + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "x-ms-discriminator-value": "text" + }, + "VectorizedQuery": { + "type": "object", + "description": "The query parameters to use for vector search when a raw vector value is\nprovided.", + "properties": { + "vector": { + "type": "array", + "description": "The vector representation of a search query.", + "items": { + "type": "number", + "format": "float" + } + } + }, + "required": [ + "vector" + ], + "allOf": [ + { + "$ref": "#/definitions/VectorQuery" + } + ], + "x-ms-discriminator-value": "vector" + } + }, + "parameters": { + "Azure.Core.ClientRequestIdHeader": { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "x-ms-client-name": "clientRequestId" + }, + "Azure.Core.Foundations.ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "x-ms-client-name": "apiVersion" + } + } +} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json new file mode 100644 index 000000000000..eba39d0e5fdd --- /dev/null +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json @@ -0,0 +1,11434 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure AI Search", + "version": "2024-07-01", + "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://search.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "type": "apiKey", + "name": "api-key", + "in": "header" + }, + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": { + "https://search.azure.com/.default": "" + } + } + }, + "tags": [], + "paths": { + "/datasources": { + "get": { + "operationId": "DataSourcesOperations_List", + "description": "Lists all datasources available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListDataSourcesResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "DataSourcesOperations_Create", + "description": "Creates a new datasource.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSource", + "in": "body", + "description": "The definition of the datasource to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/datasources('{dataSourceName}')": { + "get": { + "operationId": "DataSourcesOperations_Get", + "description": "Retrieves a datasource definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "DataSourcesOperations_CreateOrUpdate", + "description": "Creates a new datasource or updates a datasource if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + }, + { + "name": "dataSource", + "in": "body", + "description": "The definition of the datasource to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexerDataSource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "DataSourcesOperations_Delete", + "description": "Deletes a datasource.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "dataSourceName", + "in": "path", + "description": "The name of the datasource.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers": { + "get": { + "operationId": "IndexersOperations_List", + "description": "Lists all indexers available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListIndexersResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "IndexersOperations_Create", + "description": "Creates a new indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexer", + "in": "body", + "description": "The definition of the indexer to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')": { + "get": { + "operationId": "IndexersOperations_Get", + "description": "Retrieves an indexer definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "IndexersOperations_CreateOrUpdate", + "description": "Creates a new indexer or updates an indexer if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + }, + { + "name": "indexer", + "in": "body", + "description": "The definition of the indexer to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexer" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "IndexersOperations_Delete", + "description": "Deletes an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.reset": { + "post": { + "operationId": "IndexersOperations_Reset", + "description": "Resets the change tracking state associated with an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.run": { + "post": { + "operationId": "IndexersOperations_Run", + "description": "Runs an indexer on-demand.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexers('{indexerName}')/search.status": { + "get": { + "operationId": "IndexersOperations_GetStatus", + "description": "Returns the current status and execution history of an indexer.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexerName", + "in": "path", + "description": "The name of the indexer.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerStatus" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes": { + "get": { + "operationId": "IndexesOperations_List", + "description": "Lists all indexes available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListIndexesResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "IndexesOperations_Create", + "description": "Creates a new search index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "index", + "in": "body", + "description": "The definition of the index to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndex" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')": { + "get": { + "operationId": "IndexesOperations_Get", + "description": "Retrieves an index definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "IndexesOperations_CreateOrUpdate", + "description": "Creates a new search index or updates an index if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "allowIndexDowntime", + "in": "query", + "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to\nan index by taking the index offline for at least a few seconds. This\ntemporarily causes indexing and query requests to fail. Performance and write\navailability of the index can be impaired for several minutes after the index\nis updated, or longer for very large indexes.", + "required": false, + "type": "boolean" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "index", + "in": "body", + "description": "The definition of the index to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndex" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndex" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "IndexesOperations_Delete", + "description": "Deletes a search index and all the documents it contains. This operation is\npermanent, with no recovery option. Make sure you have a master copy of your\nindex definition, data ingestion code, and a backup of the primary data source\nin case you need to re-build the index.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/search.analyze": { + "post": { + "operationId": "IndexesOperations_Analyze", + "description": "Shows how an analyzer breaks text into tokens.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + }, + { + "name": "request", + "in": "body", + "description": "The text and analyzer or analysis components to test.", + "required": true, + "schema": { + "$ref": "#/definitions/AnalyzeRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AnalyzeResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/indexes('{indexName}')/search.stats": { + "get": { + "operationId": "IndexesOperations_GetStatistics", + "description": "Returns statistics for the given index, including a document count and storage\nusage.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "indexName", + "in": "path", + "description": "The name of the index.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/GetIndexStatisticsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/servicestats": { + "get": { + "operationId": "GetServiceStatistics", + "description": "Gets service level statistics for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchServiceStatistics" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/skillsets": { + "get": { + "operationId": "SkillsetsOperations_List", + "description": "List all skillsets in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListSkillsetsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "SkillsetsOperations_Create", + "description": "Creates a new skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillset", + "in": "body", + "description": "The skillset containing one or more skills to create in a search service.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/skillsets('{skillsetName}')": { + "get": { + "operationId": "SkillsetsOperations_Get", + "description": "Retrieves a skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "SkillsetsOperations_CreateOrUpdate", + "description": "Creates a new skillset in a search service or updates the skillset if it\nalready exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + }, + { + "name": "skillset", + "in": "body", + "description": "The skillset containing one or more skills to create or update in a search\nservice.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SearchIndexerSkillset" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "SkillsetsOperations_Delete", + "description": "Deletes a skillset in a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "skillsetName", + "in": "path", + "description": "The name of the skillset.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/synonymmaps": { + "get": { + "operationId": "SynonymMapsOperations_List", + "description": "Lists all synonym maps available for a search service.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "$select", + "in": "query", + "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListSynonymMapsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "post": { + "operationId": "SynonymMapsOperations_Create", + "description": "Creates a new synonym map.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMap", + "in": "body", + "description": "The definition of the synonym map to create.", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/synonymmaps('{synonymMapName}')": { + "get": { + "operationId": "SynonymMapsOperations_Get", + "description": "Retrieves a synonym map definition.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "operationId": "SynonymMapsOperations_CreateOrUpdate", + "description": "Creates a new synonym map or updates a synonym map if it already exists.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "Prefer", + "in": "header", + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "prefer" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + }, + { + "name": "synonymMap", + "in": "body", + "description": "The definition of the synonym map to create or update.", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "operationId": "SynonymMapsOperations_Delete", + "description": "Deletes a synonym map.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "synonymMapName", + "in": "path", + "description": "The name of the synonym map.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. " + }, + "404": { + "description": "The server cannot find the requested resource." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AnalyzeRequest": { + "type": "object", + "description": "Specifies some text and analysis components used to break that text into tokens.", + "properties": { + "text": { + "type": "string", + "description": "The text to break into tokens." + }, + "analyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer to use to break the given text. If this parameter is\nnot specified, you must specify a tokenizer instead. The tokenizer and analyzer\nparameters are mutually exclusive." + }, + "tokenizer": { + "$ref": "#/definitions/LexicalTokenizerName", + "description": "The name of the tokenizer to use to break the given text. If this parameter is\nnot specified, you must specify an analyzer instead. The tokenizer and analyzer\nparameters are mutually exclusive." + }, + "tokenFilters": { + "type": "array", + "description": "An optional list of token filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", + "items": { + "$ref": "#/definitions/TokenFilterName" + } + }, + "charFilters": { + "type": "array", + "description": "An optional list of character filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", + "items": { + "$ref": "#/definitions/CharFilterName" + } + } + }, + "required": [ + "text" + ] + }, + "AnalyzeResult": { + "type": "object", + "description": "The result of testing an analyzer on text.", + "properties": { + "tokens": { + "type": "array", + "description": "The list of tokens returned by the analyzer specified in the request.", + "items": { + "$ref": "#/definitions/AnalyzedTokenInfo" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "tokens" + ] + }, + "AnalyzedTokenInfo": { + "type": "object", + "description": "Information about a token returned by an analyzer.", + "properties": { + "token": { + "type": "string", + "description": "The token returned by the analyzer." + }, + "startOffset": { + "type": "integer", + "format": "int32", + "description": "The index of the first character of the token in the input text." + }, + "endOffset": { + "type": "integer", + "format": "int32", + "description": "The index of the last character of the token in the input text." + }, + "position": { + "type": "integer", + "format": "int32", + "description": "The position of the token in the input text relative to other tokens. The first\ntoken in the input text has position 0, the next has position 1, and so on.\nDepending on the analyzer used, some tokens might have the same position, for\nexample if they are synonyms of each other." + } + }, + "required": [ + "token", + "startOffset", + "endOffset", + "position" + ] + }, + "AsciiFoldingTokenFilter": { + "type": "object", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether the original token will be kept. Default is false." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" + }, + "AzureActiveDirectoryApplicationCredentials": { + "type": "object", + "description": "Credentials of a registered application created for your search service, used\nfor authenticated access to the encryption keys stored in Azure Key Vault.", + "properties": { + "applicationId": { + "type": "string", + "description": "An AAD Application ID that was granted the required access permissions to the\nAzure Key Vault that is to be used when encrypting your data at rest. The\nApplication ID should not be confused with the Object ID for your AAD\nApplication." + }, + "applicationSecret": { + "type": "string", + "description": "The authentication key of the specified AAD application." + } + }, + "required": [ + "applicationId" + ] + }, + "AzureOpenAIEmbeddingSkill": { + "type": "object", + "description": "Allows you to generate a vector embedding for a given text input using the\nAzure OpenAI resource.", + "properties": { + "resourceUri": { + "type": "string", + "format": "uri", + "description": "The resource URI of the Azure OpenAI resource." + }, + "deploymentId": { + "type": "string", + "description": "ID of the Azure OpenAI model deployment on the designated resource." + }, + "apiKey": { + "type": "string", + "description": "API key of the designated Azure OpenAI resource." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections." + }, + "modelName": { + "$ref": "#/definitions/AzureOpenAIModelName", + "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." + }, + "dimensions": { + "type": "integer", + "format": "int32", + "description": "The number of dimensions the resulting output embeddings should have. Only\nsupported in text-embedding-3 and later models." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" + }, + "AzureOpenAIModelName": { + "type": "string", + "description": "The Azure Open AI model name that will be called.", + "enum": [ + "text-embedding-ada-002", + "text-embedding-3-large", + "text-embedding-3-small" + ], + "x-ms-enum": { + "name": "AzureOpenAIModelName", + "modelAsString": true, + "values": [ + { + "name": "TextEmbeddingAda002", + "value": "text-embedding-ada-002", + "description": "TextEmbeddingAda002 model." + }, + { + "name": "TextEmbedding3Large", + "value": "text-embedding-3-large", + "description": "TextEmbedding3Large model." + }, + { + "name": "TextEmbedding3Small", + "value": "text-embedding-3-small", + "description": "TextEmbedding3Small model." + } + ] + } + }, + "AzureOpenAIVectorizer": { + "type": "object", + "description": "Specifies the Azure OpenAI resource used to vectorize a query string.", + "properties": { + "azureOpenAIParameters": { + "$ref": "#/definitions/AzureOpenAIVectorizerParameters", + "description": "Contains the parameters specific to Azure OpenAI embedding vectorization." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "x-ms-discriminator-value": "azureOpenAI" + }, + "AzureOpenAIVectorizerParameters": { + "type": "object", + "description": "Specifies the parameters for connecting to the Azure OpenAI resource.", + "properties": { + "resourceUri": { + "type": "string", + "format": "uri", + "description": "The resource URI of the Azure OpenAI resource." + }, + "deploymentId": { + "type": "string", + "description": "ID of the Azure OpenAI model deployment on the designated resource." + }, + "apiKey": { + "type": "string", + "description": "API key of the designated Azure OpenAI resource." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections." + }, + "modelName": { + "$ref": "#/definitions/AzureOpenAIModelName", + "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." + } + } + }, + "BM25SimilarityAlgorithm": { + "type": "object", + "description": "Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a\nTF-IDF-like algorithm that includes length normalization (controlled by the 'b'\nparameter) as well as term frequency saturation (controlled by the 'k1'\nparameter).", + "properties": { + "k1": { + "type": "number", + "format": "double", + "description": "This property controls the scaling function between the term frequency of each\nmatching terms and the final relevance score of a document-query pair. By\ndefault, a value of 1.2 is used. A value of 0.0 means the score does not scale\nwith an increase in term frequency." + }, + "b": { + "type": "number", + "format": "double", + "description": "This property controls how the length of a document affects the relevance\nscore. By default, a value of 0.75 is used. A value of 0.0 means no length\nnormalization is applied, while a value of 1.0 means the score is fully\nnormalized by the length of the document." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SimilarityAlgorithm" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.BM25Similarity" + }, + "BinaryQuantizationCompression": { + "type": "object", + "description": "Contains configuration options specific to the binary quantization compression\nmethod used during indexing and querying.", + "allOf": [ + { + "$ref": "#/definitions/VectorSearchCompression" + } + ], + "x-ms-discriminator-value": "binaryQuantization" + }, + "BlobIndexerDataToExtract": { + "type": "string", + "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", + "enum": [ + "storageMetadata", + "allMetadata", + "contentAndMetadata" + ], + "x-ms-enum": { + "name": "BlobIndexerDataToExtract", + "modelAsString": true, + "values": [ + { + "name": "StorageMetadata", + "value": "storageMetadata", + "description": "Indexes just the standard blob properties and user-specified metadata." + }, + { + "name": "AllMetadata", + "value": "allMetadata", + "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." + }, + { + "name": "ContentAndMetadata", + "value": "contentAndMetadata", + "description": "Extracts all metadata and textual content from each blob." + } + ] + } + }, + "BlobIndexerImageAction": { + "type": "string", + "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", + "enum": [ + "none", + "generateNormalizedImages", + "generateNormalizedImagePerPage" + ], + "x-ms-enum": { + "name": "BlobIndexerImageAction", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Ignores embedded images or image files in the data set. This is the default." + }, + { + "name": "GenerateNormalizedImages", + "value": "generateNormalizedImages", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." + }, + { + "name": "GenerateNormalizedImagePerPage", + "value": "generateNormalizedImagePerPage", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." + } + ] + } + }, + "BlobIndexerPDFTextRotationAlgorithm": { + "type": "string", + "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", + "enum": [ + "none", + "detectAngles" + ], + "x-ms-enum": { + "name": "BlobIndexerPDFTextRotationAlgorithm", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Leverages normal text extraction. This is the default." + }, + { + "name": "DetectAngles", + "value": "detectAngles", + "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." + } + ] + } + }, + "BlobIndexerParsingMode": { + "type": "string", + "description": "Represents the parsing mode for indexing from an Azure blob data source.", + "enum": [ + "default", + "text", + "delimitedText", + "json", + "jsonArray", + "jsonLines" + ], + "x-ms-enum": { + "name": "BlobIndexerParsingMode", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "default", + "description": "Set to default for normal file processing." + }, + { + "name": "Text", + "value": "text", + "description": "Set to text to improve indexing performance on plain text files in blob storage." + }, + { + "name": "DelimitedText", + "value": "delimitedText", + "description": "Set to delimitedText when blobs are plain CSV files." + }, + { + "name": "Json", + "value": "json", + "description": "Set to json to extract structured content from JSON files." + }, + { + "name": "JsonArray", + "value": "jsonArray", + "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." + }, + { + "name": "JsonLines", + "value": "jsonLines", + "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." + } + ] + } + }, + "CharFilter": { + "type": "object", + "description": "Base type for character filters.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the char filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "name" + ] + }, + "CharFilterName": { + "type": "string", + "description": "Defines the names of all character filters supported by the search engine.", + "enum": [ + "html_strip" + ], + "x-ms-enum": { + "name": "CharFilterName", + "modelAsString": true, + "values": [ + { + "name": "HtmlStrip", + "value": "html_strip", + "description": "A character filter that attempts to strip out HTML constructs. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" + } + ] + } + }, + "CjkBigramTokenFilter": { + "type": "object", + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. This\ntoken filter is implemented using Apache Lucene.", + "properties": { + "ignoreScripts": { + "type": "array", + "description": "The scripts to ignore.", + "items": { + "$ref": "#/definitions/CjkBigramTokenFilterScripts" + } + }, + "outputUnigrams": { + "type": "boolean", + "description": "A value indicating whether to output both unigrams and bigrams (if true), or\njust bigrams (if false). Default is false." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter" + }, + "CjkBigramTokenFilterScripts": { + "type": "string", + "description": "Scripts that can be ignored by CjkBigramTokenFilter.", + "enum": [ + "han", + "hiragana", + "katakana", + "hangul" + ], + "x-ms-enum": { + "name": "CjkBigramTokenFilterScripts", + "modelAsString": true, + "values": [ + { + "name": "Han", + "value": "han", + "description": "Ignore Han script when forming bigrams of CJK terms." + }, + { + "name": "Hiragana", + "value": "hiragana", + "description": "Ignore Hiragana script when forming bigrams of CJK terms." + }, + { + "name": "Katakana", + "value": "katakana", + "description": "Ignore Katakana script when forming bigrams of CJK terms." + }, + { + "name": "Hangul", + "value": "hangul", + "description": "Ignore Hangul script when forming bigrams of CJK terms." + } + ] + } + }, + "ClassicSimilarityAlgorithm": { + "type": "object", + "description": "Legacy similarity algorithm which uses the Lucene TFIDFSimilarity\nimplementation of TF-IDF. This variation of TF-IDF introduces static document\nlength normalization as well as coordinating factors that penalize documents\nthat only partially match the searched queries.", + "allOf": [ + { + "$ref": "#/definitions/SimilarityAlgorithm" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "ClassicTokenizer": { + "type": "object", + "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. This tokenizer is implemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer" + }, + "CognitiveServicesAccount": { + "type": "object", + "description": "Base type for describing any Azure AI service resource attached to a skillset.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "description": { + "type": "string", + "description": "Description of the Azure AI service resource attached to a skillset." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "CognitiveServicesAccountKey": { + "type": "object", + "description": "The multi-region account key of an Azure AI service resource that's attached to\na skillset.", + "properties": { + "key": { + "type": "string", + "description": "The key used to provision the Azure AI service resource attached to a skillset." + } + }, + "required": [ + "key" + ], + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" + }, + "CommonGramTokenFilter": { + "type": "object", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "commonWords": { + "type": "array", + "description": "The set of common words.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." + }, + "queryMode": { + "type": "boolean", + "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false." + } + }, + "required": [ + "commonWords" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" + }, + "ConditionalSkill": { + "type": "object", + "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill" + }, + "CorsOptions": { + "type": "object", + "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index.", + "properties": { + "allowedOrigins": { + "type": "array", + "description": "The list of origins from which JavaScript code will be granted access to your\nindex. Can contain a list of hosts of the form\n{protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow\nall origins (not recommended).", + "items": { + "type": "string" + } + }, + "maxAgeInSeconds": { + "type": "integer", + "format": "int64", + "description": "The duration for which browsers should cache CORS preflight responses. Defaults\nto 5 minutes." + } + }, + "required": [ + "allowedOrigins" + ] + }, + "CustomAnalyzer": { + "type": "object", + "description": "Allows you to take control over the process of converting text into\nindexable/searchable tokens. It's a user-defined configuration consisting of a\nsingle predefined tokenizer and one or more filters. The tokenizer is\nresponsible for breaking text into tokens, and the filters for modifying tokens\nemitted by the tokenizer.", + "properties": { + "tokenizer": { + "$ref": "#/definitions/LexicalTokenizerName", + "description": "The name of the tokenizer to use to divide continuous text into a sequence of\ntokens, such as breaking a sentence into words." + }, + "tokenFilters": { + "type": "array", + "description": "A list of token filters used to filter out or modify the tokens generated by a\ntokenizer. For example, you can specify a lowercase filter that converts all\ncharacters to lowercase. The filters are run in the order in which they are\nlisted.", + "items": { + "$ref": "#/definitions/TokenFilterName" + } + }, + "charFilters": { + "type": "array", + "description": "A list of character filters used to prepare input text before it is processed\nby the tokenizer. For instance, they can replace certain characters or symbols.\nThe filters are run in the order in which they are listed.", + "items": { + "$ref": "#/definitions/CharFilterName" + } + } + }, + "required": [ + "tokenizer" + ], + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer" + }, + "CustomEntity": { + "type": "object", + "description": "An object that contains information about the matches that were found, and\nrelated metadata.", + "properties": { + "name": { + "type": "string", + "description": "The top-level entity descriptor. Matches in the skill output will be grouped by\nthis name, and it should represent the \"normalized\" form of the text being\nfound." + }, + "description": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "type": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "subtype": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "id": { + "type": "string", + "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." + }, + "caseSensitive": { + "type": "boolean", + "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to character casing. Sample case insensitive matches\nof \"Microsoft\" could be: microsoft, microSoft, MICROSOFT." + }, + "accentSensitive": { + "type": "boolean", + "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to accent." + }, + "fuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent\ncharacters that would still constitute a match with the entity name. The\nsmallest possible fuzziness for any given match is returned. For instance, if\nthe edit distance is set to 3, \"Windows10\" would still match \"Windows\",\n\"Windows10\" and \"Windows 7\". When case sensitivity is set to false, case\ndifferences do NOT count towards fuzziness tolerance, but otherwise do." + }, + "defaultCaseSensitive": { + "type": "boolean", + "description": "Changes the default case sensitivity value for this entity. It be used to\nchange the default value of all aliases caseSensitive values." + }, + "defaultAccentSensitive": { + "type": "boolean", + "description": "Changes the default accent sensitivity value for this entity. It be used to\nchange the default value of all aliases accentSensitive values." + }, + "defaultFuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Changes the default fuzzy edit distance value for this entity. It can be used\nto change the default value of all aliases fuzzyEditDistance values." + }, + "aliases": { + "type": "array", + "description": "An array of complex objects that can be used to specify alternative spellings\nor synonyms to the root entity name.", + "items": { + "$ref": "#/definitions/CustomEntityAlias" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name" + ] + }, + "CustomEntityAlias": { + "type": "object", + "description": "A complex object that can be used to specify alternative spellings or synonyms\nto the root entity name.", + "properties": { + "text": { + "type": "string", + "description": "The text of the alias." + }, + "caseSensitive": { + "type": "boolean", + "description": "Determine if the alias is case sensitive." + }, + "accentSensitive": { + "type": "boolean", + "description": "Determine if the alias is accent sensitive." + }, + "fuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "Determine the fuzzy edit distance of the alias." + } + }, + "required": [ + "text" + ] + }, + "CustomEntityLookupSkill": { + "type": "object", + "description": "A skill looks for text from a custom, user-defined list of words and phrases.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/CustomEntityLookupSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "entitiesDefinitionUri": { + "type": "string", + "description": "Path to a JSON or CSV file containing all the target text to match against.\nThis entity definition is read at the beginning of an indexer run. Any updates\nto this file during an indexer run will not take effect until subsequent runs.\nThis config must be accessible over HTTPS." + }, + "inlineEntitiesDefinition": { + "type": "array", + "description": "The inline CustomEntity definition.", + "items": { + "$ref": "#/definitions/CustomEntity" + } + }, + "globalDefaultCaseSensitive": { + "type": "boolean", + "description": "A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity,\nthis value will be the default value." + }, + "globalDefaultAccentSensitive": { + "type": "boolean", + "description": "A global flag for AccentSensitive. If AccentSensitive is not set in\nCustomEntity, this value will be the default value." + }, + "globalDefaultFuzzyEditDistance": { + "type": "integer", + "format": "int32", + "description": "A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in\nCustomEntity, this value will be the default value." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.CustomEntityLookupSkill" + }, + "CustomEntityLookupSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by CustomEntityLookupSkill.", + "enum": [ + "da", + "de", + "en", + "es", + "fi", + "fr", + "it", + "ko", + "pt" + ], + "x-ms-enum": { + "name": "CustomEntityLookupSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + } + ] + } + }, + "DataChangeDetectionPolicy": { + "type": "object", + "description": "Base type for data change detection policies.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "DataDeletionDetectionPolicy": { + "type": "object", + "description": "Base type for data deletion detection policies.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "DataSourceCredentials": { + "type": "object", + "description": "Represents credentials that can be used to connect to a datasource.", + "properties": { + "connectionString": { + "type": "string", + "description": "The connection string for the datasource. Set to `` (with brackets)\nif you don't want the connection string updated. Set to `` if you\nwant to remove the connection string value from the datasource." + } + } + }, + "DefaultCognitiveServicesAccount": { + "type": "object", + "description": "An empty object that represents the default Azure AI service resource for a\nskillset.", + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices" + }, + "DictionaryDecompounderTokenFilter": { + "type": "object", + "description": "Decomposes compound words found in many Germanic languages. This token filter\nis implemented using Apache Lucene.", + "properties": { + "wordList": { + "type": "array", + "description": "The list of words to match against.", + "items": { + "type": "string" + } + }, + "minWordSize": { + "type": "integer", + "format": "int32", + "description": "The minimum word size. Only words longer than this get processed. Default is 5.\nMaximum is 300.", + "default": 5, + "maximum": 300 + }, + "minSubwordSize": { + "type": "integer", + "format": "int32", + "description": "The minimum subword size. Only subwords longer than this are outputted. Default\nis 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "maxSubwordSize": { + "type": "integer", + "format": "int32", + "description": "The maximum subword size. Only subwords shorter than this are outputted.\nDefault is 15. Maximum is 300.", + "default": 15, + "maximum": 300 + }, + "onlyLongestMatch": { + "type": "boolean", + "description": "A value indicating whether to add only the longest matching subword to the\noutput. Default is false." + } + }, + "required": [ + "wordList" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" + }, + "DistanceScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on distance from a geographic\nlocation.", + "properties": { + "distance": { + "$ref": "#/definitions/DistanceScoringParameters", + "description": "Parameter values for the distance scoring function." + } + }, + "required": [ + "distance" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "distance" + }, + "DistanceScoringParameters": { + "type": "object", + "description": "Provides parameter values to a distance scoring function.", + "properties": { + "referencePointParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the reference\nlocation." + }, + "boostingDistance": { + "type": "number", + "format": "double", + "description": "The distance in kilometers from the reference location where the boosting range\nends." + } + }, + "required": [ + "referencePointParameter", + "boostingDistance" + ] + }, + "DocumentExtractionSkill": { + "type": "object", + "description": "A skill that extracts content from a file within the enrichment pipeline.", + "properties": { + "parsingMode": { + "type": "string", + "description": "The parsingMode for the skill. Will be set to 'default' if not defined." + }, + "dataToExtract": { + "type": "string", + "description": "The type of data to be extracted for the skill. Will be set to\n'contentAndMetadata' if not defined." + }, + "configuration": { + "type": "object", + "description": "A dictionary of configurations for the skill.", + "additionalProperties": {} + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.DocumentExtractionSkill" + }, + "EdgeNGramTokenFilter": { + "type": "object", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", + "default": 1 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2.", + "default": 2 + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter" + }, + "EdgeNGramTokenFilterSide": { + "type": "string", + "description": "Specifies which side of the input an n-gram should be generated from.", + "enum": [ + "front", + "back" + ], + "x-ms-enum": { + "name": "EdgeNGramTokenFilterSide", + "modelAsString": true, + "values": [ + { + "name": "Front", + "value": "front", + "description": "Specifies that the n-gram should be generated from the front of the input." + }, + { + "name": "Back", + "value": "back", + "description": "Specifies that the n-gram should be generated from the back of the input." + } + ] + } + }, + "EdgeNGramTokenFilterV2": { + "type": "object", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" + }, + "EdgeNGramTokenizer": { + "type": "object", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). This\ntokenizer is implemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "tokenChars": { + "type": "array", + "description": "Character classes to keep in the tokens.", + "items": { + "$ref": "#/definitions/TokenCharacterKind" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer" + }, + "ElisionTokenFilter": { + "type": "object", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). This token filter is implemented using Apache Lucene.", + "properties": { + "articles": { + "type": "array", + "description": "The set of articles to remove.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter" + }, + "EntityCategory": { + "type": "string", + "description": "A string indicating what entity categories to return.", + "enum": [ + "location", + "organization", + "person", + "quantity", + "datetime", + "url", + "email" + ], + "x-ms-enum": { + "name": "EntityCategory", + "modelAsString": true, + "values": [ + { + "name": "Location", + "value": "location", + "description": "Entities describing a physical location." + }, + { + "name": "Organization", + "value": "organization", + "description": "Entities describing an organization." + }, + { + "name": "Person", + "value": "person", + "description": "Entities describing a person." + }, + { + "name": "Quantity", + "value": "quantity", + "description": "Entities describing a quantity." + }, + { + "name": "Datetime", + "value": "datetime", + "description": "Entities describing a date and time." + }, + { + "name": "Url", + "value": "url", + "description": "Entities describing a URL." + }, + { + "name": "Email", + "value": "email", + "description": "Entities describing an email address." + } + ] + } + }, + "EntityLinkingSkill": { + "type": "object", + "description": "Using the Text Analytics API, extracts linked entities from text.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityLinkingSkill" + }, + "EntityRecognitionSkill": { + "type": "object", + "description": "This skill is deprecated. Use the V3.EntityRecognitionSkill instead.", + "properties": { + "categories": { + "type": "array", + "description": "A list of entity categories that should be extracted.", + "items": { + "$ref": "#/definitions/EntityCategory" + } + }, + "defaultLanguageCode": { + "$ref": "#/definitions/EntityRecognitionSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "includeTypelessEntities": { + "type": "boolean", + "description": "Determines whether or not to include entities which are well known but don't\nconform to a pre-defined type. If this configuration is not set (default), set\nto null or set to false, entities which don't conform to one of the pre-defined\ntypes will not be surfaced." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill" + }, + "EntityRecognitionSkillLanguage": { + "type": "string", + "description": "Deprecated. The language codes supported for input text by\nEntityRecognitionSkill.", + "enum": [ + "ar", + "cs", + "zh-Hans", + "zh-Hant", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "EntityRecognitionSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + } + ] + } + }, + "EntityRecognitionSkillV3": { + "type": "object", + "description": "Using the Text Analytics API, extracts entities of different types from text.", + "properties": { + "categories": { + "type": "array", + "description": "A list of entity categories that should be extracted.", + "items": { + "type": "string" + } + }, + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics API. It will\ndefault to the latest available when not specified. We recommend you do not\nspecify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" + }, + "ErrorAdditionalInfo": { + "type": "object", + "description": "The resource management error additional info.", + "properties": { + "type": { + "type": "string", + "description": "The additional info type." + }, + "info": { + "type": "object", + "description": "The additional info.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "The error detail.", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The error target." + }, + "details": { + "type": "array", + "description": "The error details.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-identifiers": [] + }, + "additionalInfo": { + "type": "array", + "description": "The error additional info.", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [] + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Common error response for all Azure Resource Manager APIs to return error\ndetails for failed operations. (This also follows the OData error response\nformat.).", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetail", + "description": "The error object." + } + } + }, + "ExhaustiveKnnAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the exhaustive KNN algorithm used\nduring querying, which will perform brute-force search across the entire vector\nindex.", + "properties": { + "exhaustiveKnnParameters": { + "$ref": "#/definitions/ExhaustiveKnnParameters", + "description": "Contains the parameters specific to exhaustive KNN algorithm." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + } + ], + "x-ms-discriminator-value": "exhaustiveKnn" + }, + "ExhaustiveKnnParameters": { + "type": "object", + "description": "Contains the parameters specific to exhaustive KNN algorithm.", + "properties": { + "metric": { + "$ref": "#/definitions/VectorSearchAlgorithmMetric", + "description": "The similarity metric to use for vector comparisons." + } + } + }, + "FieldMapping": { + "type": "object", + "description": "Defines a mapping between a field in a data source and a target field in an\nindex.", + "properties": { + "sourceFieldName": { + "type": "string", + "description": "The name of the field in the data source." + }, + "targetFieldName": { + "type": "string", + "description": "The name of the target field in the index. Same as the source field name by\ndefault." + }, + "mappingFunction": { + "$ref": "#/definitions/FieldMappingFunction", + "description": "A function to apply to each source field value before indexing." + } + }, + "required": [ + "sourceFieldName" + ] + }, + "FieldMappingFunction": { + "type": "object", + "description": "Represents a function that transforms a value from a data source before\nindexing.", + "properties": { + "name": { + "type": "string", + "description": "The name of the field mapping function." + }, + "parameters": { + "type": "object", + "description": "A dictionary of parameter name/value pairs to pass to the function. Each value\nmust be of a primitive type.", + "additionalProperties": {} + } + }, + "required": [ + "name" + ] + }, + "FreshnessScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on the value of a date-time field.", + "properties": { + "freshness": { + "$ref": "#/definitions/FreshnessScoringParameters", + "description": "Parameter values for the freshness scoring function." + } + }, + "required": [ + "freshness" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "freshness" + }, + "FreshnessScoringParameters": { + "type": "object", + "description": "Provides parameter values to a freshness scoring function.", + "properties": { + "boostingDuration": { + "type": "string", + "format": "duration", + "description": "The expiration period after which boosting will stop for a particular document." + } + }, + "required": [ + "boostingDuration" + ] + }, + "GetIndexStatisticsResult": { + "type": "object", + "description": "Statistics for a given index. Statistics are collected periodically and are not\nguaranteed to always be up-to-date.", + "properties": { + "documentCount": { + "type": "integer", + "format": "int64", + "description": "The number of documents in the index." + }, + "storageSize": { + "type": "integer", + "format": "int64", + "description": "The amount of storage in bytes consumed by the index." + }, + "vectorIndexSize": { + "type": "integer", + "format": "int64", + "description": "The amount of memory in bytes consumed by vectors in the index." + } + }, + "required": [ + "documentCount", + "storageSize", + "vectorIndexSize" + ] + }, + "HighWaterMarkChangeDetectionPolicy": { + "type": "object", + "description": "Defines a data change detection policy that captures changes based on the value\nof a high water mark column.", + "properties": { + "highWaterMarkColumnName": { + "type": "string", + "description": "The name of the high water mark column." + } + }, + "required": [ + "highWaterMarkColumnName" + ], + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" + }, + "HnswAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the HNSW approximate nearest\nneighbors algorithm used during indexing and querying. The HNSW algorithm\noffers a tunable trade-off between search speed and accuracy.", + "properties": { + "hnswParameters": { + "$ref": "#/definitions/HnswParameters", + "description": "Contains the parameters specific to HNSW algorithm." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + } + ], + "x-ms-discriminator-value": "hnsw" + }, + "HnswParameters": { + "type": "object", + "description": "Contains the parameters specific to the HNSW algorithm.", + "properties": { + "m": { + "type": "integer", + "format": "int32", + "description": "The number of bi-directional links created for every new element during\nconstruction. Increasing this parameter value may improve recall and reduce\nretrieval times for datasets with high intrinsic dimensionality at the expense\nof increased memory consumption and longer indexing time.", + "default": 4, + "minimum": 4, + "maximum": 10 + }, + "efConstruction": { + "type": "integer", + "format": "int32", + "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring index time. Increasing this parameter may improve index quality, at the\nexpense of increased indexing time. At a certain point, increasing this\nparameter leads to diminishing returns.", + "default": 400, + "minimum": 100, + "maximum": 1000 + }, + "efSearch": { + "type": "integer", + "format": "int32", + "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring search time. Increasing this parameter may improve search results, at\nthe expense of slower search. At a certain point, increasing this parameter\nleads to diminishing returns.", + "default": 500, + "minimum": 100, + "maximum": 1000 + }, + "metric": { + "$ref": "#/definitions/VectorSearchAlgorithmMetric", + "description": "The similarity metric to use for vector comparisons." + } + } + }, + "ImageAnalysisSkill": { + "type": "object", + "description": "A skill that analyzes image files. It extracts a rich set of visual features\nbased on the image content.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/ImageAnalysisSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "visualFeatures": { + "type": "array", + "description": "A list of visual features.", + "items": { + "$ref": "#/definitions/VisualFeature" + } + }, + "details": { + "type": "array", + "description": "A string indicating which domain-specific details to return.", + "items": { + "$ref": "#/definitions/ImageDetail" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill" + }, + "ImageAnalysisSkillLanguage": { + "type": "string", + "description": "The language codes supported for input by ImageAnalysisSkill.", + "enum": [ + "ar", + "az", + "bg", + "bs", + "ca", + "cs", + "cy", + "da", + "de", + "el", + "en", + "es", + "et", + "eu", + "fi", + "fr", + "ga", + "gl", + "he", + "hi", + "hr", + "hu", + "id", + "it", + "ja", + "kk", + "ko", + "lt", + "lv", + "mk", + "ms", + "nb", + "nl", + "pl", + "prs", + "pt-BR", + "pt", + "pt-PT", + "ro", + "ru", + "sk", + "sl", + "sr-Cyrl", + "sr-Latn", + "sv", + "th", + "tr", + "uk", + "vi", + "zh", + "zh-Hans", + "zh-Hant" + ], + "x-ms-enum": { + "name": "ImageAnalysisSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "az", + "value": "az", + "description": "Azerbaijani" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian Latin" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "eu", + "value": "eu", + "description": "Basque" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "gl", + "value": "gl", + "description": "Galician" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "kk", + "value": "kk", + "description": "Kazakh" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "mk", + "value": "mk", + "description": "Macedonian" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay Malaysia" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian (Bokmal)" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "prs", + "value": "prs", + "description": "Dari" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese-Brazil" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese-Portugal" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese-Portugal" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian - Cyrillic RS" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian - Latin RS" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "th", + "value": "th", + "description": "Thai" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "uk", + "value": "uk", + "description": "Ukrainian" + }, + { + "name": "vi", + "value": "vi", + "description": "Vietnamese" + }, + { + "name": "zh", + "value": "zh", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + } + ] + } + }, + "ImageDetail": { + "type": "string", + "description": "A string indicating which domain-specific details to return.", + "enum": [ + "celebrities", + "landmarks" + ], + "x-ms-enum": { + "name": "ImageDetail", + "modelAsString": true, + "values": [ + { + "name": "Celebrities", + "value": "celebrities", + "description": "Details recognized as celebrities." + }, + { + "name": "Landmarks", + "value": "landmarks", + "description": "Details recognized as landmarks." + } + ] + } + }, + "IndexProjectionMode": { + "type": "string", + "description": "Defines behavior of the index projections in relation to the rest of the\nindexer.", + "enum": [ + "skipIndexingParentDocuments", + "includeIndexingParentDocuments" + ], + "x-ms-enum": { + "name": "IndexProjectionMode", + "modelAsString": true, + "values": [ + { + "name": "SkipIndexingParentDocuments", + "value": "skipIndexingParentDocuments", + "description": "The source document will be skipped from writing into the indexer's target\nindex." + }, + { + "name": "IncludeIndexingParentDocuments", + "value": "includeIndexingParentDocuments", + "description": "The source document will be written into the indexer's target index. This is\nthe default pattern." + } + ] + } + }, + "IndexerExecutionEnvironment": { + "type": "string", + "description": "Specifies the environment in which the indexer should execute.", + "enum": [ + "standard", + "private" + ], + "x-ms-enum": { + "name": "IndexerExecutionEnvironment", + "modelAsString": true, + "values": [ + { + "name": "standard", + "value": "standard", + "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." + }, + { + "name": "private", + "value": "private", + "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." + } + ] + } + }, + "IndexerExecutionResult": { + "type": "object", + "description": "Represents the result of an individual indexer execution.", + "properties": { + "status": { + "$ref": "#/definitions/IndexerExecutionStatus", + "description": "The outcome of this indexer execution." + }, + "errorMessage": { + "type": "string", + "description": "The error message indicating the top-level error, if any." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of this indexer execution." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of this indexer execution, if the execution has already completed." + }, + "errors": { + "type": "array", + "description": "The item-level indexing errors.", + "items": { + "$ref": "#/definitions/SearchIndexerError" + }, + "x-ms-identifiers": [] + }, + "warnings": { + "type": "array", + "description": "The item-level indexing warnings.", + "items": { + "$ref": "#/definitions/SearchIndexerWarning" + }, + "x-ms-identifiers": [] + }, + "itemsProcessed": { + "type": "integer", + "format": "int32", + "description": "The number of items that were processed during this indexer execution. This\nincludes both successfully processed items and items where indexing was\nattempted but failed." + }, + "itemsFailed": { + "type": "integer", + "format": "int32", + "description": "The number of items that failed to be indexed during this indexer execution." + }, + "initialTrackingState": { + "type": "string", + "description": "Change tracking state with which an indexer execution started." + }, + "finalTrackingState": { + "type": "string", + "description": "Change tracking state with which an indexer execution finished." + } + }, + "required": [ + "status", + "errors", + "warnings", + "itemsProcessed", + "itemsFailed" + ] + }, + "IndexerExecutionStatus": { + "type": "string", + "description": "Represents the status of an individual indexer execution.", + "enum": [ + "transientFailure", + "success", + "inProgress", + "reset" + ], + "x-ms-enum": { + "name": "IndexerExecutionStatus", + "modelAsString": true, + "values": [ + { + "name": "TransientFailure", + "value": "transientFailure", + "description": "An indexer invocation has failed, but the failure may be transient. Indexer\ninvocations will continue per schedule." + }, + { + "name": "Success", + "value": "success", + "description": "Indexer execution completed successfully." + }, + { + "name": "InProgress", + "value": "inProgress", + "description": "Indexer execution is in progress." + }, + { + "name": "Reset", + "value": "reset", + "description": "Indexer has been reset." + } + ] + } + }, + "IndexerStatus": { + "type": "string", + "description": "Represents the overall indexer status.", + "enum": [ + "unknown", + "error", + "running" + ], + "x-ms-enum": { + "name": "IndexerStatus", + "modelAsString": true, + "values": [ + { + "name": "Unknown", + "value": "unknown", + "description": "Indicates that the indexer is in an unknown state." + }, + { + "name": "Error", + "value": "error", + "description": "Indicates that the indexer experienced an error that cannot be corrected\nwithout human intervention." + }, + { + "name": "Running", + "value": "running", + "description": "Indicates that the indexer is running normally." + } + ] + } + }, + "IndexingParameters": { + "type": "object", + "description": "Represents parameters for indexer execution.", + "properties": { + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The number of items that are read from the data source and indexed as a single\nbatch in order to improve performance. The default depends on the data source\ntype." + }, + "maxFailedItems": { + "type": "integer", + "format": "int32", + "description": "The maximum number of items that can fail indexing for indexer execution to\nstill be considered successful. -1 means no limit. Default is 0." + }, + "maxFailedItemsPerBatch": { + "type": "integer", + "format": "int32", + "description": "The maximum number of items in a single batch that can fail indexing for the\nbatch to still be considered successful. -1 means no limit. Default is 0." + }, + "configuration": { + "$ref": "#/definitions/IndexingParametersConfiguration", + "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type." + } + } + }, + "IndexingParametersConfiguration": { + "type": "object", + "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type.", + "properties": { + "parsingMode": { + "type": "string", + "description": "Represents the parsing mode for indexing from an Azure blob data source.", + "default": "default", + "enum": [ + "default", + "text", + "delimitedText", + "json", + "jsonArray", + "jsonLines" + ], + "x-ms-enum": { + "name": "BlobIndexerParsingMode", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "default", + "description": "Set to default for normal file processing." + }, + { + "name": "Text", + "value": "text", + "description": "Set to text to improve indexing performance on plain text files in blob storage." + }, + { + "name": "DelimitedText", + "value": "delimitedText", + "description": "Set to delimitedText when blobs are plain CSV files." + }, + { + "name": "Json", + "value": "json", + "description": "Set to json to extract structured content from JSON files." + }, + { + "name": "JsonArray", + "value": "jsonArray", + "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." + }, + { + "name": "JsonLines", + "value": "jsonLines", + "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." + } + ] + } + }, + "excludedFileNameExtensions": { + "type": "string", + "description": "Comma-delimited list of filename extensions to ignore when processing from\nAzure blob storage. For example, you could exclude \".png, .mp4\" to skip over\nthose files during indexing." + }, + "indexedFileNameExtensions": { + "type": "string", + "description": "Comma-delimited list of filename extensions to select when processing from\nAzure blob storage. For example, you could focus indexing on specific\napplication files \".docx, .pptx, .msg\" to specifically include those file\ntypes." + }, + "failOnUnsupportedContentType": { + "type": "boolean", + "description": "For Azure blobs, set to false if you want to continue indexing when an\nunsupported content type is encountered, and you don't know all the content\ntypes (file extensions) in advance." + }, + "failOnUnprocessableDocument": { + "type": "boolean", + "description": "For Azure blobs, set to false if you want to continue indexing if a document\nfails indexing." + }, + "indexStorageMetadataOnlyForOversizedDocuments": { + "type": "boolean", + "description": "For Azure blobs, set this property to true to still index storage metadata for\nblob content that is too large to process. Oversized blobs are treated as\nerrors by default. For limits on blob size, see\nhttps://learn.microsoft.com/azure/search/search-limits-quotas-capacity." + }, + "delimitedTextHeaders": { + "type": "string", + "description": "For CSV blobs, specifies a comma-delimited list of column headers, useful for\nmapping source fields to destination fields in an index." + }, + "delimitedTextDelimiter": { + "type": "string", + "description": "For CSV blobs, specifies the end-of-line single-character delimiter for CSV\nfiles where each line starts a new document (for example, \"|\")." + }, + "firstLineContainsHeaders": { + "type": "boolean", + "description": "For CSV blobs, indicates that the first (non-blank) line of each blob contains\nheaders.", + "default": true + }, + "documentRoot": { + "type": "string", + "description": "For JSON arrays, given a structured or semi-structured document, you can\nspecify a path to the array using this property." + }, + "dataToExtract": { + "type": "string", + "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", + "default": "contentAndMetadata", + "enum": [ + "storageMetadata", + "allMetadata", + "contentAndMetadata" + ], + "x-ms-enum": { + "name": "BlobIndexerDataToExtract", + "modelAsString": true, + "values": [ + { + "name": "StorageMetadata", + "value": "storageMetadata", + "description": "Indexes just the standard blob properties and user-specified metadata." + }, + { + "name": "AllMetadata", + "value": "allMetadata", + "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." + }, + { + "name": "ContentAndMetadata", + "value": "contentAndMetadata", + "description": "Extracts all metadata and textual content from each blob." + } + ] + } + }, + "imageAction": { + "type": "string", + "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", + "default": "none", + "enum": [ + "none", + "generateNormalizedImages", + "generateNormalizedImagePerPage" + ], + "x-ms-enum": { + "name": "BlobIndexerImageAction", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Ignores embedded images or image files in the data set. This is the default." + }, + { + "name": "GenerateNormalizedImages", + "value": "generateNormalizedImages", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." + }, + { + "name": "GenerateNormalizedImagePerPage", + "value": "generateNormalizedImagePerPage", + "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." + } + ] + } + }, + "allowSkillsetToReadFileData": { + "type": "boolean", + "description": "If true, will create a path //document//file_data that is an object\nrepresenting the original file data downloaded from your blob data source.\nThis allows you to pass the original file data to a custom skill for processing\nwithin the enrichment pipeline, or to the Document Extraction skill." + }, + "pdfTextRotationAlgorithm": { + "type": "string", + "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", + "default": "none", + "enum": [ + "none", + "detectAngles" + ], + "x-ms-enum": { + "name": "BlobIndexerPDFTextRotationAlgorithm", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "Leverages normal text extraction. This is the default." + }, + { + "name": "DetectAngles", + "value": "detectAngles", + "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." + } + ] + } + }, + "executionEnvironment": { + "type": "string", + "description": "Specifies the environment in which the indexer should execute.", + "default": "standard", + "enum": [ + "standard", + "private" + ], + "x-ms-enum": { + "name": "IndexerExecutionEnvironment", + "modelAsString": true, + "values": [ + { + "name": "standard", + "value": "standard", + "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." + }, + { + "name": "private", + "value": "private", + "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." + } + ] + } + }, + "queryTimeout": { + "type": "string", + "description": "Increases the timeout beyond the 5-minute default for Azure SQL database data\nsources, specified in the format \"hh:mm:ss\".", + "default": "00:05:00" + } + }, + "additionalProperties": {} + }, + "IndexingSchedule": { + "type": "object", + "description": "Represents a schedule for indexer execution.", + "properties": { + "interval": { + "type": "string", + "format": "duration", + "description": "The interval of time between indexer executions." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time when an indexer should start running." + } + }, + "required": [ + "interval" + ] + }, + "InputFieldMappingEntry": { + "type": "object", + "description": "Input field mapping for a skill.", + "properties": { + "name": { + "type": "string", + "description": "The name of the input." + }, + "source": { + "type": "string", + "description": "The source of the input." + }, + "sourceContext": { + "type": "string", + "description": "The source context used for selecting recursive inputs." + }, + "inputs": { + "type": "array", + "description": "The recursive inputs used when creating a complex type.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name" + ] + }, + "KeepTokenFilter": { + "type": "object", + "description": "A token filter that only keeps tokens with text contained in a specified list\nof words. This token filter is implemented using Apache Lucene.", + "properties": { + "keepWords": { + "type": "array", + "description": "The list of words to keep.", + "items": { + "type": "string" + } + }, + "keepWordsCase": { + "type": "boolean", + "description": "A value indicating whether to lower case all words first. Default is false." + } + }, + "required": [ + "keepWords" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter" + }, + "KeyPhraseExtractionSkill": { + "type": "object", + "description": "A skill that uses text analytics for key phrase extraction.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "maxKeyPhraseCount": { + "type": "integer", + "format": "int32", + "description": "A number indicating how many key phrases to return. If absent, all identified\nkey phrases will be returned." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" + }, + "KeyPhraseExtractionSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by KeyPhraseExtractionSkill.", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv" + ], + "x-ms-enum": { + "name": "KeyPhraseExtractionSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-BR", + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + } + ] + } + }, + "KeywordMarkerTokenFilter": { + "type": "object", + "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", + "properties": { + "keywords": { + "type": "array", + "description": "A list of words to mark as keywords.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." + } + }, + "required": [ + "keywords" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" + }, + "KeywordTokenizer": { + "type": "object", + "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "bufferSize": { + "type": "integer", + "format": "int32", + "description": "The read buffer size in bytes. Default is 256.", + "default": 256 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer" + }, + "KeywordTokenizerV2": { + "type": "object", + "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 256. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 256, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2" + }, + "LanguageDetectionSkill": { + "type": "object", + "description": "A skill that detects the language of input text and reports a single language\ncode for every document submitted on the request. The language code is paired\nwith a score indicating the confidence of the analysis.", + "properties": { + "defaultCountryHint": { + "type": "string", + "description": "A country code to use as a hint to the language detection model if it cannot\ndisambiguate the language." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill" + }, + "LengthTokenFilter": { + "type": "object", + "description": "Removes words that are too long or too short. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "min": { + "type": "integer", + "format": "int32", + "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less\nthan the value of max.", + "maximum": 300 + }, + "max": { + "type": "integer", + "format": "int32", + "description": "The maximum length in characters. Default and maximum is 300.", + "default": 300, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter" + }, + "LexicalAnalyzer": { + "type": "object", + "description": "Base type for analyzers.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "name" + ] + }, + "LexicalAnalyzerName": { + "type": "string", + "description": "Defines the names of all text analyzers supported by the search engine.", + "enum": [ + "ar.microsoft", + "ar.lucene", + "hy.lucene", + "bn.microsoft", + "eu.lucene", + "bg.microsoft", + "bg.lucene", + "ca.microsoft", + "ca.lucene", + "zh-Hans.microsoft", + "zh-Hans.lucene", + "zh-Hant.microsoft", + "zh-Hant.lucene", + "hr.microsoft", + "cs.microsoft", + "cs.lucene", + "da.microsoft", + "da.lucene", + "nl.microsoft", + "nl.lucene", + "en.microsoft", + "en.lucene", + "et.microsoft", + "fi.microsoft", + "fi.lucene", + "fr.microsoft", + "fr.lucene", + "gl.lucene", + "de.microsoft", + "de.lucene", + "el.microsoft", + "el.lucene", + "gu.microsoft", + "he.microsoft", + "hi.microsoft", + "hi.lucene", + "hu.microsoft", + "hu.lucene", + "is.microsoft", + "id.microsoft", + "id.lucene", + "ga.lucene", + "it.microsoft", + "it.lucene", + "ja.microsoft", + "ja.lucene", + "kn.microsoft", + "ko.microsoft", + "ko.lucene", + "lv.microsoft", + "lv.lucene", + "lt.microsoft", + "ml.microsoft", + "ms.microsoft", + "mr.microsoft", + "nb.microsoft", + "no.lucene", + "fa.lucene", + "pl.microsoft", + "pl.lucene", + "pt-BR.microsoft", + "pt-BR.lucene", + "pt-PT.microsoft", + "pt-PT.lucene", + "pa.microsoft", + "ro.microsoft", + "ro.lucene", + "ru.microsoft", + "ru.lucene", + "sr-cyrillic.microsoft", + "sr-latin.microsoft", + "sk.microsoft", + "sl.microsoft", + "es.microsoft", + "es.lucene", + "sv.microsoft", + "sv.lucene", + "ta.microsoft", + "te.microsoft", + "th.microsoft", + "th.lucene", + "tr.microsoft", + "tr.lucene", + "uk.microsoft", + "ur.microsoft", + "vi.microsoft", + "standard.lucene", + "standardasciifolding.lucene", + "keyword", + "pattern", + "simple", + "stop", + "whitespace" + ], + "x-ms-enum": { + "name": "LexicalAnalyzerName", + "modelAsString": true, + "values": [ + { + "name": "ArMicrosoft", + "value": "ar.microsoft", + "description": "Microsoft analyzer for Arabic." + }, + { + "name": "ArLucene", + "value": "ar.lucene", + "description": "Lucene analyzer for Arabic." + }, + { + "name": "HyLucene", + "value": "hy.lucene", + "description": "Lucene analyzer for Armenian." + }, + { + "name": "BnMicrosoft", + "value": "bn.microsoft", + "description": "Microsoft analyzer for Bangla." + }, + { + "name": "EuLucene", + "value": "eu.lucene", + "description": "Lucene analyzer for Basque." + }, + { + "name": "BgMicrosoft", + "value": "bg.microsoft", + "description": "Microsoft analyzer for Bulgarian." + }, + { + "name": "BgLucene", + "value": "bg.lucene", + "description": "Lucene analyzer for Bulgarian." + }, + { + "name": "CaMicrosoft", + "value": "ca.microsoft", + "description": "Microsoft analyzer for Catalan." + }, + { + "name": "CaLucene", + "value": "ca.lucene", + "description": "Lucene analyzer for Catalan." + }, + { + "name": "ZhHansMicrosoft", + "value": "zh-Hans.microsoft", + "description": "Microsoft analyzer for Chinese (Simplified)." + }, + { + "name": "ZhHansLucene", + "value": "zh-Hans.lucene", + "description": "Lucene analyzer for Chinese (Simplified)." + }, + { + "name": "ZhHantMicrosoft", + "value": "zh-Hant.microsoft", + "description": "Microsoft analyzer for Chinese (Traditional)." + }, + { + "name": "ZhHantLucene", + "value": "zh-Hant.lucene", + "description": "Lucene analyzer for Chinese (Traditional)." + }, + { + "name": "HrMicrosoft", + "value": "hr.microsoft", + "description": "Microsoft analyzer for Croatian." + }, + { + "name": "CsMicrosoft", + "value": "cs.microsoft", + "description": "Microsoft analyzer for Czech." + }, + { + "name": "CsLucene", + "value": "cs.lucene", + "description": "Lucene analyzer for Czech." + }, + { + "name": "DaMicrosoft", + "value": "da.microsoft", + "description": "Microsoft analyzer for Danish." + }, + { + "name": "DaLucene", + "value": "da.lucene", + "description": "Lucene analyzer for Danish." + }, + { + "name": "NlMicrosoft", + "value": "nl.microsoft", + "description": "Microsoft analyzer for Dutch." + }, + { + "name": "NlLucene", + "value": "nl.lucene", + "description": "Lucene analyzer for Dutch." + }, + { + "name": "EnMicrosoft", + "value": "en.microsoft", + "description": "Microsoft analyzer for English." + }, + { + "name": "EnLucene", + "value": "en.lucene", + "description": "Lucene analyzer for English." + }, + { + "name": "EtMicrosoft", + "value": "et.microsoft", + "description": "Microsoft analyzer for Estonian." + }, + { + "name": "FiMicrosoft", + "value": "fi.microsoft", + "description": "Microsoft analyzer for Finnish." + }, + { + "name": "FiLucene", + "value": "fi.lucene", + "description": "Lucene analyzer for Finnish." + }, + { + "name": "FrMicrosoft", + "value": "fr.microsoft", + "description": "Microsoft analyzer for French." + }, + { + "name": "FrLucene", + "value": "fr.lucene", + "description": "Lucene analyzer for French." + }, + { + "name": "GlLucene", + "value": "gl.lucene", + "description": "Lucene analyzer for Galician." + }, + { + "name": "DeMicrosoft", + "value": "de.microsoft", + "description": "Microsoft analyzer for German." + }, + { + "name": "DeLucene", + "value": "de.lucene", + "description": "Lucene analyzer for German." + }, + { + "name": "ElMicrosoft", + "value": "el.microsoft", + "description": "Microsoft analyzer for Greek." + }, + { + "name": "ElLucene", + "value": "el.lucene", + "description": "Lucene analyzer for Greek." + }, + { + "name": "GuMicrosoft", + "value": "gu.microsoft", + "description": "Microsoft analyzer for Gujarati." + }, + { + "name": "HeMicrosoft", + "value": "he.microsoft", + "description": "Microsoft analyzer for Hebrew." + }, + { + "name": "HiMicrosoft", + "value": "hi.microsoft", + "description": "Microsoft analyzer for Hindi." + }, + { + "name": "HiLucene", + "value": "hi.lucene", + "description": "Lucene analyzer for Hindi." + }, + { + "name": "HuMicrosoft", + "value": "hu.microsoft", + "description": "Microsoft analyzer for Hungarian." + }, + { + "name": "HuLucene", + "value": "hu.lucene", + "description": "Lucene analyzer for Hungarian." + }, + { + "name": "IsMicrosoft", + "value": "is.microsoft", + "description": "Microsoft analyzer for Icelandic." + }, + { + "name": "IdMicrosoft", + "value": "id.microsoft", + "description": "Microsoft analyzer for Indonesian (Bahasa)." + }, + { + "name": "IdLucene", + "value": "id.lucene", + "description": "Lucene analyzer for Indonesian." + }, + { + "name": "GaLucene", + "value": "ga.lucene", + "description": "Lucene analyzer for Irish." + }, + { + "name": "ItMicrosoft", + "value": "it.microsoft", + "description": "Microsoft analyzer for Italian." + }, + { + "name": "ItLucene", + "value": "it.lucene", + "description": "Lucene analyzer for Italian." + }, + { + "name": "JaMicrosoft", + "value": "ja.microsoft", + "description": "Microsoft analyzer for Japanese." + }, + { + "name": "JaLucene", + "value": "ja.lucene", + "description": "Lucene analyzer for Japanese." + }, + { + "name": "KnMicrosoft", + "value": "kn.microsoft", + "description": "Microsoft analyzer for Kannada." + }, + { + "name": "KoMicrosoft", + "value": "ko.microsoft", + "description": "Microsoft analyzer for Korean." + }, + { + "name": "KoLucene", + "value": "ko.lucene", + "description": "Lucene analyzer for Korean." + }, + { + "name": "LvMicrosoft", + "value": "lv.microsoft", + "description": "Microsoft analyzer for Latvian." + }, + { + "name": "LvLucene", + "value": "lv.lucene", + "description": "Lucene analyzer for Latvian." + }, + { + "name": "LtMicrosoft", + "value": "lt.microsoft", + "description": "Microsoft analyzer for Lithuanian." + }, + { + "name": "MlMicrosoft", + "value": "ml.microsoft", + "description": "Microsoft analyzer for Malayalam." + }, + { + "name": "MsMicrosoft", + "value": "ms.microsoft", + "description": "Microsoft analyzer for Malay (Latin)." + }, + { + "name": "MrMicrosoft", + "value": "mr.microsoft", + "description": "Microsoft analyzer for Marathi." + }, + { + "name": "NbMicrosoft", + "value": "nb.microsoft", + "description": "Microsoft analyzer for Norwegian (Bokmål)." + }, + { + "name": "NoLucene", + "value": "no.lucene", + "description": "Lucene analyzer for Norwegian." + }, + { + "name": "FaLucene", + "value": "fa.lucene", + "description": "Lucene analyzer for Persian." + }, + { + "name": "PlMicrosoft", + "value": "pl.microsoft", + "description": "Microsoft analyzer for Polish." + }, + { + "name": "PlLucene", + "value": "pl.lucene", + "description": "Lucene analyzer for Polish." + }, + { + "name": "PtBrMicrosoft", + "value": "pt-BR.microsoft", + "description": "Microsoft analyzer for Portuguese (Brazil)." + }, + { + "name": "PtBrLucene", + "value": "pt-BR.lucene", + "description": "Lucene analyzer for Portuguese (Brazil)." + }, + { + "name": "PtPtMicrosoft", + "value": "pt-PT.microsoft", + "description": "Microsoft analyzer for Portuguese (Portugal)." + }, + { + "name": "PtPtLucene", + "value": "pt-PT.lucene", + "description": "Lucene analyzer for Portuguese (Portugal)." + }, + { + "name": "PaMicrosoft", + "value": "pa.microsoft", + "description": "Microsoft analyzer for Punjabi." + }, + { + "name": "RoMicrosoft", + "value": "ro.microsoft", + "description": "Microsoft analyzer for Romanian." + }, + { + "name": "RoLucene", + "value": "ro.lucene", + "description": "Lucene analyzer for Romanian." + }, + { + "name": "RuMicrosoft", + "value": "ru.microsoft", + "description": "Microsoft analyzer for Russian." + }, + { + "name": "RuLucene", + "value": "ru.lucene", + "description": "Lucene analyzer for Russian." + }, + { + "name": "SrCyrillicMicrosoft", + "value": "sr-cyrillic.microsoft", + "description": "Microsoft analyzer for Serbian (Cyrillic)." + }, + { + "name": "SrLatinMicrosoft", + "value": "sr-latin.microsoft", + "description": "Microsoft analyzer for Serbian (Latin)." + }, + { + "name": "SkMicrosoft", + "value": "sk.microsoft", + "description": "Microsoft analyzer for Slovak." + }, + { + "name": "SlMicrosoft", + "value": "sl.microsoft", + "description": "Microsoft analyzer for Slovenian." + }, + { + "name": "EsMicrosoft", + "value": "es.microsoft", + "description": "Microsoft analyzer for Spanish." + }, + { + "name": "EsLucene", + "value": "es.lucene", + "description": "Lucene analyzer for Spanish." + }, + { + "name": "SvMicrosoft", + "value": "sv.microsoft", + "description": "Microsoft analyzer for Swedish." + }, + { + "name": "SvLucene", + "value": "sv.lucene", + "description": "Lucene analyzer for Swedish." + }, + { + "name": "TaMicrosoft", + "value": "ta.microsoft", + "description": "Microsoft analyzer for Tamil." + }, + { + "name": "TeMicrosoft", + "value": "te.microsoft", + "description": "Microsoft analyzer for Telugu." + }, + { + "name": "ThMicrosoft", + "value": "th.microsoft", + "description": "Microsoft analyzer for Thai." + }, + { + "name": "ThLucene", + "value": "th.lucene", + "description": "Lucene analyzer for Thai." + }, + { + "name": "TrMicrosoft", + "value": "tr.microsoft", + "description": "Microsoft analyzer for Turkish." + }, + { + "name": "TrLucene", + "value": "tr.lucene", + "description": "Lucene analyzer for Turkish." + }, + { + "name": "UkMicrosoft", + "value": "uk.microsoft", + "description": "Microsoft analyzer for Ukrainian." + }, + { + "name": "UrMicrosoft", + "value": "ur.microsoft", + "description": "Microsoft analyzer for Urdu." + }, + { + "name": "ViMicrosoft", + "value": "vi.microsoft", + "description": "Microsoft analyzer for Vietnamese." + }, + { + "name": "StandardLucene", + "value": "standard.lucene", + "description": "Standard Lucene analyzer." + }, + { + "name": "StandardAsciiFoldingLucene", + "value": "standardasciifolding.lucene", + "description": "Standard ASCII Folding Lucene analyzer. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers" + }, + { + "name": "Keyword", + "value": "keyword", + "description": "Treats the entire content of a field as a single token. This is useful for data\nlike zip codes, ids, and some product names. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html" + }, + { + "name": "Pattern", + "value": "pattern", + "description": "Flexibly separates text into terms via a regular expression pattern. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" + }, + { + "name": "Simple", + "value": "simple", + "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html" + }, + { + "name": "Stop", + "value": "stop", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "An analyzer that uses the whitespace tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html" + } + ] + } + }, + "LexicalTokenizer": { + "type": "object", + "description": "Base type for tokenizers.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "name" + ] + }, + "LexicalTokenizerName": { + "type": "string", + "description": "Defines the names of all tokenizers supported by the search engine.", + "enum": [ + "classic", + "edgeNGram", + "keyword_v2", + "letter", + "lowercase", + "microsoft_language_tokenizer", + "microsoft_language_stemming_tokenizer", + "nGram", + "path_hierarchy_v2", + "pattern", + "standard_v2", + "uax_url_email", + "whitespace" + ], + "x-ms-enum": { + "name": "LexicalTokenizerName", + "modelAsString": true, + "values": [ + { + "name": "Classic", + "value": "classic", + "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + }, + { + "name": "EdgeNGram", + "value": "edgeNGram", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + }, + { + "name": "Keyword", + "value": "keyword_v2", + "description": "Emits the entire input as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + { + "name": "Letter", + "value": "letter", + "description": "Divides text at non-letters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" + }, + { + "name": "Lowercase", + "value": "lowercase", + "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" + }, + { + "name": "MicrosoftLanguageTokenizer", + "value": "microsoft_language_tokenizer", + "description": "Divides text using language-specific rules." + }, + { + "name": "MicrosoftLanguageStemmingTokenizer", + "value": "microsoft_language_stemming_tokenizer", + "description": "Divides text using language-specific rules and reduces words to their base\nforms." + }, + { + "name": "NGram", + "value": "nGram", + "description": "Tokenizes the input into n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + }, + { + "name": "PathHierarchy", + "value": "path_hierarchy_v2", + "description": "Tokenizer for path-like hierarchies. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + }, + { + "name": "Pattern", + "value": "pattern", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + }, + { + "name": "Standard", + "value": "standard_v2", + "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter\nand stop filter. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + { + "name": "UaxUrlEmail", + "value": "uax_url_email", + "description": "Tokenizes urls and emails as one token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "Divides text at whitespace. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" + } + ] + } + }, + "LimitTokenFilter": { + "type": "object", + "description": "Limits the number of tokens while indexing. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "maxTokenCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of tokens to produce. Default is 1.", + "default": 1 + }, + "consumeAllTokens": { + "type": "boolean", + "description": "A value indicating whether all tokens from the input must be consumed even if\nmaxTokenCount is reached. Default is false." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter" + }, + "ListDataSourcesResult": { + "type": "object", + "description": "Response from a List Datasources request. If successful, it includes the full\ndefinitions of all datasources.", + "properties": { + "value": { + "type": "array", + "description": "The datasources in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerDataSource" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListIndexersResult": { + "type": "object", + "description": "Response from a List Indexers request. If successful, it includes the full\ndefinitions of all indexers.", + "properties": { + "value": { + "type": "array", + "description": "The indexers in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexer" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListIndexesResult": { + "type": "object", + "description": "Response from a List Indexes request. If successful, it includes the full\ndefinitions of all indexes.", + "properties": { + "value": { + "type": "array", + "description": "The indexes in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndex" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListSkillsetsResult": { + "type": "object", + "description": "Response from a list skillset request. If successful, it includes the full\ndefinitions of all skillsets.", + "properties": { + "value": { + "type": "array", + "description": "The skillsets defined in the Search service.", + "items": { + "$ref": "#/definitions/SearchIndexerSkillset" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "ListSynonymMapsResult": { + "type": "object", + "description": "Response from a List SynonymMaps request. If successful, it includes the full\ndefinitions of all synonym maps.", + "properties": { + "value": { + "type": "array", + "description": "The synonym maps in the Search service.", + "items": { + "$ref": "#/definitions/SynonymMap" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "LuceneStandardAnalyzer": { + "type": "object", + "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase\nfilter and stop filter.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + }, + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer" + }, + "LuceneStandardTokenizer": { + "type": "object", + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split.", + "default": 255 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer" + }, + "LuceneStandardTokenizerV2": { + "type": "object", + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2" + }, + "MagnitudeScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores based on the magnitude of a numeric field.", + "properties": { + "magnitude": { + "$ref": "#/definitions/MagnitudeScoringParameters", + "description": "Parameter values for the magnitude scoring function." + } + }, + "required": [ + "magnitude" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "magnitude" + }, + "MagnitudeScoringParameters": { + "type": "object", + "description": "Provides parameter values to a magnitude scoring function.", + "properties": { + "boostingRangeStart": { + "type": "number", + "format": "double", + "description": "The field value at which boosting starts." + }, + "boostingRangeEnd": { + "type": "number", + "format": "double", + "description": "The field value at which boosting ends." + }, + "constantBoostBeyondRange": { + "type": "boolean", + "description": "A value indicating whether to apply a constant boost for field values beyond\nthe range end value; default is false." + } + }, + "required": [ + "boostingRangeStart", + "boostingRangeEnd" + ] + }, + "MappingCharFilter": { + "type": "object", + "description": "A character filter that applies mappings defined with the mappings option.\nMatching is greedy (longest pattern matching at a given point wins).\nReplacement is allowed to be the empty string. This character filter is\nimplemented using Apache Lucene.", + "properties": { + "mappings": { + "type": "array", + "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the\ncharacter \"a\" will be replaced with character \"b\").", + "items": { + "type": "string" + } + } + }, + "required": [ + "mappings" + ], + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter" + }, + "MergeSkill": { + "type": "object", + "description": "A skill for merging two or more strings into a single unified string, with an\noptional user-defined delimiter separating each component part.", + "properties": { + "insertPreTag": { + "type": "string", + "description": "The tag indicates the start of the merged text. By default, the tag is an empty\nspace.", + "default": " " + }, + "insertPostTag": { + "type": "string", + "description": "The tag indicates the end of the merged text. By default, the tag is an empty\nspace.", + "default": " " + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill" + }, + "MicrosoftLanguageStemmingTokenizer": { + "type": "object", + "description": "Divides text using language-specific rules and reduces words to their base\nforms.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", + "default": 255, + "maximum": 300 + }, + "isSearchTokenizer": { + "type": "boolean", + "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" + }, + "MicrosoftLanguageTokenizer": { + "type": "object", + "description": "Divides text using language-specific rules.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", + "default": 255, + "maximum": 300 + }, + "isSearchTokenizer": { + "type": "boolean", + "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" + }, + "MicrosoftStemmingTokenizerLanguage": { + "type": "string", + "description": "Lists the languages supported by the Microsoft language stemming tokenizer.", + "enum": [ + "arabic", + "bangla", + "bulgarian", + "catalan", + "croatian", + "czech", + "danish", + "dutch", + "english", + "estonian", + "finnish", + "french", + "german", + "greek", + "gujarati", + "hebrew", + "hindi", + "hungarian", + "icelandic", + "indonesian", + "italian", + "kannada", + "latvian", + "lithuanian", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovak", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "turkish", + "ukrainian", + "urdu" + ], + "x-ms-enum": { + "name": "MicrosoftStemmingTokenizerLanguage", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the Microsoft stemming tokenizer for Arabic." + }, + { + "name": "Bangla", + "value": "bangla", + "description": "Selects the Microsoft stemming tokenizer for Bangla." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Microsoft stemming tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Microsoft stemming tokenizer for Catalan." + }, + { + "name": "Croatian", + "value": "croatian", + "description": "Selects the Microsoft stemming tokenizer for Croatian." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Microsoft stemming tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Microsoft stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Microsoft stemming tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Microsoft stemming tokenizer for English." + }, + { + "name": "Estonian", + "value": "estonian", + "description": "Selects the Microsoft stemming tokenizer for Estonian." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Microsoft stemming tokenizer for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Microsoft stemming tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Microsoft stemming tokenizer for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Microsoft stemming tokenizer for Greek." + }, + { + "name": "Gujarati", + "value": "gujarati", + "description": "Selects the Microsoft stemming tokenizer for Gujarati." + }, + { + "name": "Hebrew", + "value": "hebrew", + "description": "Selects the Microsoft stemming tokenizer for Hebrew." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Microsoft stemming tokenizer for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Microsoft stemming tokenizer for Hungarian." + }, + { + "name": "Icelandic", + "value": "icelandic", + "description": "Selects the Microsoft stemming tokenizer for Icelandic." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Microsoft stemming tokenizer for Indonesian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Microsoft stemming tokenizer for Italian." + }, + { + "name": "Kannada", + "value": "kannada", + "description": "Selects the Microsoft stemming tokenizer for Kannada." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the Microsoft stemming tokenizer for Latvian." + }, + { + "name": "Lithuanian", + "value": "lithuanian", + "description": "Selects the Microsoft stemming tokenizer for Lithuanian." + }, + { + "name": "Malay", + "value": "malay", + "description": "Selects the Microsoft stemming tokenizer for Malay." + }, + { + "name": "Malayalam", + "value": "malayalam", + "description": "Selects the Microsoft stemming tokenizer for Malayalam." + }, + { + "name": "Marathi", + "value": "marathi", + "description": "Selects the Microsoft stemming tokenizer for Marathi." + }, + { + "name": "NorwegianBokmaal", + "value": "norwegianBokmaal", + "description": "Selects the Microsoft stemming tokenizer for Norwegian (Bokmål)." + }, + { + "name": "Polish", + "value": "polish", + "description": "Selects the Microsoft stemming tokenizer for Polish." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Microsoft stemming tokenizer for Portuguese." + }, + { + "name": "PortugueseBrazilian", + "value": "portugueseBrazilian", + "description": "Selects the Microsoft stemming tokenizer for Portuguese (Brazil)." + }, + { + "name": "Punjabi", + "value": "punjabi", + "description": "Selects the Microsoft stemming tokenizer for Punjabi." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Microsoft stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Microsoft stemming tokenizer for Russian." + }, + { + "name": "SerbianCyrillic", + "value": "serbianCyrillic", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Cyrillic)." + }, + { + "name": "SerbianLatin", + "value": "serbianLatin", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Latin)." + }, + { + "name": "Slovak", + "value": "slovak", + "description": "Selects the Microsoft stemming tokenizer for Slovak." + }, + { + "name": "Slovenian", + "value": "slovenian", + "description": "Selects the Microsoft stemming tokenizer for Slovenian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Microsoft stemming tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Microsoft stemming tokenizer for Swedish." + }, + { + "name": "Tamil", + "value": "tamil", + "description": "Selects the Microsoft stemming tokenizer for Tamil." + }, + { + "name": "Telugu", + "value": "telugu", + "description": "Selects the Microsoft stemming tokenizer for Telugu." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Microsoft stemming tokenizer for Turkish." + }, + { + "name": "Ukrainian", + "value": "ukrainian", + "description": "Selects the Microsoft stemming tokenizer for Ukrainian." + }, + { + "name": "Urdu", + "value": "urdu", + "description": "Selects the Microsoft stemming tokenizer for Urdu." + } + ] + } + }, + "MicrosoftTokenizerLanguage": { + "type": "string", + "description": "Lists the languages supported by the Microsoft language tokenizer.", + "enum": [ + "bangla", + "bulgarian", + "catalan", + "chineseSimplified", + "chineseTraditional", + "croatian", + "czech", + "danish", + "dutch", + "english", + "french", + "german", + "greek", + "gujarati", + "hindi", + "icelandic", + "indonesian", + "italian", + "japanese", + "kannada", + "korean", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "thai", + "ukrainian", + "urdu", + "vietnamese" + ], + "x-ms-enum": { + "name": "MicrosoftTokenizerLanguage", + "modelAsString": true, + "values": [ + { + "name": "Bangla", + "value": "bangla", + "description": "Selects the Microsoft tokenizer for Bangla." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Microsoft tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Microsoft tokenizer for Catalan." + }, + { + "name": "ChineseSimplified", + "value": "chineseSimplified", + "description": "Selects the Microsoft tokenizer for Chinese (Simplified)." + }, + { + "name": "ChineseTraditional", + "value": "chineseTraditional", + "description": "Selects the Microsoft tokenizer for Chinese (Traditional)." + }, + { + "name": "Croatian", + "value": "croatian", + "description": "Selects the Microsoft tokenizer for Croatian." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Microsoft tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Microsoft tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Microsoft tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Microsoft tokenizer for English." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Microsoft tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Microsoft tokenizer for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Microsoft tokenizer for Greek." + }, + { + "name": "Gujarati", + "value": "gujarati", + "description": "Selects the Microsoft tokenizer for Gujarati." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Microsoft tokenizer for Hindi." + }, + { + "name": "Icelandic", + "value": "icelandic", + "description": "Selects the Microsoft tokenizer for Icelandic." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Microsoft tokenizer for Indonesian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Microsoft tokenizer for Italian." + }, + { + "name": "Japanese", + "value": "japanese", + "description": "Selects the Microsoft tokenizer for Japanese." + }, + { + "name": "Kannada", + "value": "kannada", + "description": "Selects the Microsoft tokenizer for Kannada." + }, + { + "name": "Korean", + "value": "korean", + "description": "Selects the Microsoft tokenizer for Korean." + }, + { + "name": "Malay", + "value": "malay", + "description": "Selects the Microsoft tokenizer for Malay." + }, + { + "name": "Malayalam", + "value": "malayalam", + "description": "Selects the Microsoft tokenizer for Malayalam." + }, + { + "name": "Marathi", + "value": "marathi", + "description": "Selects the Microsoft tokenizer for Marathi." + }, + { + "name": "NorwegianBokmaal", + "value": "norwegianBokmaal", + "description": "Selects the Microsoft tokenizer for Norwegian (Bokmål)." + }, + { + "name": "Polish", + "value": "polish", + "description": "Selects the Microsoft tokenizer for Polish." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Microsoft tokenizer for Portuguese." + }, + { + "name": "PortugueseBrazilian", + "value": "portugueseBrazilian", + "description": "Selects the Microsoft tokenizer for Portuguese (Brazil)." + }, + { + "name": "Punjabi", + "value": "punjabi", + "description": "Selects the Microsoft tokenizer for Punjabi." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Microsoft tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Microsoft tokenizer for Russian." + }, + { + "name": "SerbianCyrillic", + "value": "serbianCyrillic", + "description": "Selects the Microsoft tokenizer for Serbian (Cyrillic)." + }, + { + "name": "SerbianLatin", + "value": "serbianLatin", + "description": "Selects the Microsoft tokenizer for Serbian (Latin)." + }, + { + "name": "Slovenian", + "value": "slovenian", + "description": "Selects the Microsoft tokenizer for Slovenian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Microsoft tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Microsoft tokenizer for Swedish." + }, + { + "name": "Tamil", + "value": "tamil", + "description": "Selects the Microsoft tokenizer for Tamil." + }, + { + "name": "Telugu", + "value": "telugu", + "description": "Selects the Microsoft tokenizer for Telugu." + }, + { + "name": "Thai", + "value": "thai", + "description": "Selects the Microsoft tokenizer for Thai." + }, + { + "name": "Ukrainian", + "value": "ukrainian", + "description": "Selects the Microsoft tokenizer for Ukrainian." + }, + { + "name": "Urdu", + "value": "urdu", + "description": "Selects the Microsoft tokenizer for Urdu." + }, + { + "name": "Vietnamese", + "value": "vietnamese", + "description": "Selects the Microsoft tokenizer for Vietnamese." + } + ] + } + }, + "NGramTokenFilter": { + "type": "object", + "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", + "default": 1 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2.", + "default": 2 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter" + }, + "NGramTokenFilterV2": { + "type": "object", + "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2" + }, + "NGramTokenizer": { + "type": "object", + "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is\nimplemented using Apache Lucene.", + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", + "default": 1, + "maximum": 300 + }, + "maxGram": { + "type": "integer", + "format": "int32", + "description": "The maximum n-gram length. Default is 2. Maximum is 300.", + "default": 2, + "maximum": 300 + }, + "tokenChars": { + "type": "array", + "description": "Character classes to keep in the tokens.", + "items": { + "$ref": "#/definitions/TokenCharacterKind" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer" + }, + "OcrLineEnding": { + "type": "string", + "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\".", + "enum": [ + "space", + "carriageReturn", + "lineFeed", + "carriageReturnLineFeed" + ], + "x-ms-enum": { + "name": "OcrLineEnding", + "modelAsString": true, + "values": [ + { + "name": "Space", + "value": "space", + "description": "Lines are separated by a single space character." + }, + { + "name": "CarriageReturn", + "value": "carriageReturn", + "description": "Lines are separated by a carriage return ('\\r') character." + }, + { + "name": "LineFeed", + "value": "lineFeed", + "description": "Lines are separated by a single line feed ('\\n') character." + }, + { + "name": "CarriageReturnLineFeed", + "value": "carriageReturnLineFeed", + "description": "Lines are separated by a carriage return and a line feed ('\\r\\n') character." + } + ] + } + }, + "OcrSkill": { + "type": "object", + "description": "A skill that extracts text from image files.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/OcrSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "detectOrientation": { + "type": "boolean", + "description": "A value indicating to turn orientation detection on or not. Default is false." + }, + "lineEnding": { + "$ref": "#/definitions/OcrLineEnding", + "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\"." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill" + }, + "OcrSkillLanguage": { + "type": "string", + "description": "The language codes supported for input by OcrSkill.", + "enum": [ + "af", + "sq", + "anp", + "ar", + "ast", + "awa", + "az", + "bfy", + "eu", + "be", + "be-cyrl", + "be-latn", + "bho", + "bi", + "brx", + "bs", + "bra", + "br", + "bg", + "bns", + "bua", + "ca", + "ceb", + "rab", + "ch", + "hne", + "zh-Hans", + "zh-Hant", + "kw", + "co", + "crh", + "hr", + "cs", + "da", + "prs", + "dhi", + "doi", + "nl", + "en", + "myv", + "et", + "fo", + "fj", + "fil", + "fi", + "fr", + "fur", + "gag", + "gl", + "de", + "gil", + "gon", + "el", + "kl", + "gvr", + "ht", + "hlb", + "hni", + "bgc", + "haw", + "hi", + "mww", + "hoc", + "hu", + "is", + "smn", + "id", + "ia", + "iu", + "ga", + "it", + "ja", + "Jns", + "jv", + "kea", + "kac", + "xnr", + "krc", + "kaa-cyrl", + "kaa", + "csb", + "kk-cyrl", + "kk-latn", + "klr", + "kha", + "quc", + "ko", + "kfq", + "kpy", + "kos", + "kum", + "ku-arab", + "ku-latn", + "kru", + "ky", + "lkt", + "la", + "lt", + "dsb", + "smj", + "lb", + "bfz", + "ms", + "mt", + "kmj", + "gv", + "mi", + "mr", + "mn", + "cnr-cyrl", + "cnr-latn", + "nap", + "ne", + "niu", + "nog", + "sme", + "nb", + "no", + "oc", + "os", + "ps", + "fa", + "pl", + "pt", + "pa", + "ksh", + "ro", + "rm", + "ru", + "sck", + "sm", + "sa", + "sat", + "sco", + "gd", + "sr", + "sr-Cyrl", + "sr-Latn", + "xsr", + "srx", + "sms", + "sk", + "sl", + "so", + "sma", + "es", + "sw", + "sv", + "tg", + "tt", + "tet", + "thf", + "to", + "tr", + "tk", + "tyv", + "hsb", + "ur", + "ug", + "uz-arab", + "uz-cyrl", + "uz", + "vo", + "wae", + "cy", + "fy", + "yua", + "za", + "zu", + "unk" + ], + "x-ms-enum": { + "name": "OcrSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "af", + "value": "af", + "description": "Afrikaans" + }, + { + "name": "sq", + "value": "sq", + "description": "Albanian" + }, + { + "name": "anp", + "value": "anp", + "description": "Angika (Devanagiri)" + }, + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "ast", + "value": "ast", + "description": "Asturian" + }, + { + "name": "awa", + "value": "awa", + "description": "Awadhi-Hindi (Devanagiri)" + }, + { + "name": "az", + "value": "az", + "description": "Azerbaijani (Latin)" + }, + { + "name": "bfy", + "value": "bfy", + "description": "Bagheli" + }, + { + "name": "eu", + "value": "eu", + "description": "Basque" + }, + { + "name": "be", + "value": "be", + "description": "Belarusian (Cyrillic and Latin)" + }, + { + "name": "be-cyrl", + "value": "be-cyrl", + "description": "Belarusian (Cyrillic)" + }, + { + "name": "be-latn", + "value": "be-latn", + "description": "Belarusian (Latin)" + }, + { + "name": "bho", + "value": "bho", + "description": "Bhojpuri-Hindi (Devanagiri)" + }, + { + "name": "bi", + "value": "bi", + "description": "Bislama" + }, + { + "name": "brx", + "value": "brx", + "description": "Bodo (Devanagiri)" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian Latin" + }, + { + "name": "bra", + "value": "bra", + "description": "Brajbha" + }, + { + "name": "br", + "value": "br", + "description": "Breton" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "bns", + "value": "bns", + "description": "Bundeli" + }, + { + "name": "bua", + "value": "bua", + "description": "Buryat (Cyrillic)" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "ceb", + "value": "ceb", + "description": "Cebuano" + }, + { + "name": "rab", + "value": "rab", + "description": "Chamling" + }, + { + "name": "ch", + "value": "ch", + "description": "Chamorro" + }, + { + "name": "hne", + "value": "hne", + "description": "Chhattisgarhi (Devanagiri)" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "name": "kw", + "value": "kw", + "description": "Cornish" + }, + { + "name": "co", + "value": "co", + "description": "Corsican" + }, + { + "name": "crh", + "value": "crh", + "description": "Crimean Tatar (Latin)" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "prs", + "value": "prs", + "description": "Dari" + }, + { + "name": "dhi", + "value": "dhi", + "description": "Dhimal (Devanagiri)" + }, + { + "name": "doi", + "value": "doi", + "description": "Dogri (Devanagiri)" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "myv", + "value": "myv", + "description": "Erzya (Cyrillic)" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fo", + "value": "fo", + "description": "Faroese" + }, + { + "name": "fj", + "value": "fj", + "description": "Fijian" + }, + { + "name": "fil", + "value": "fil", + "description": "Filipino" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "fur", + "value": "fur", + "description": "Frulian" + }, + { + "name": "gag", + "value": "gag", + "description": "Gagauz (Latin)" + }, + { + "name": "gl", + "value": "gl", + "description": "Galician" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "gil", + "value": "gil", + "description": "Gilbertese" + }, + { + "name": "gon", + "value": "gon", + "description": "Gondi (Devanagiri)" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "kl", + "value": "kl", + "description": "Greenlandic" + }, + { + "name": "gvr", + "value": "gvr", + "description": "Gurung (Devanagiri)" + }, + { + "name": "ht", + "value": "ht", + "description": "Haitian Creole" + }, + { + "name": "hlb", + "value": "hlb", + "description": "Halbi (Devanagiri)" + }, + { + "name": "hni", + "value": "hni", + "description": "Hani" + }, + { + "name": "bgc", + "value": "bgc", + "description": "Haryanvi" + }, + { + "name": "haw", + "value": "haw", + "description": "Hawaiian" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "mww", + "value": "mww", + "description": "Hmong Daw (Latin)" + }, + { + "name": "hoc", + "value": "hoc", + "description": "Ho (Devanagiri)" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "smn", + "value": "smn", + "description": "Inari Sami" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "ia", + "value": "ia", + "description": "Interlingua" + }, + { + "name": "iu", + "value": "iu", + "description": "Inuktitut (Latin)" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "Jns", + "value": "Jns", + "description": "Jaunsari (Devanagiri)" + }, + { + "name": "jv", + "value": "jv", + "description": "Javanese" + }, + { + "name": "kea", + "value": "kea", + "description": "Kabuverdianu" + }, + { + "name": "kac", + "value": "kac", + "description": "Kachin (Latin)" + }, + { + "name": "xnr", + "value": "xnr", + "description": "Kangri (Devanagiri)" + }, + { + "name": "krc", + "value": "krc", + "description": "Karachay-Balkar" + }, + { + "name": "kaa-cyrl", + "value": "kaa-cyrl", + "description": "Kara-Kalpak (Cyrillic)" + }, + { + "name": "kaa", + "value": "kaa", + "description": "Kara-Kalpak (Latin)" + }, + { + "name": "csb", + "value": "csb", + "description": "Kashubian" + }, + { + "name": "kk-cyrl", + "value": "kk-cyrl", + "description": "Kazakh (Cyrillic)" + }, + { + "name": "kk-latn", + "value": "kk-latn", + "description": "Kazakh (Latin)" + }, + { + "name": "klr", + "value": "klr", + "description": "Khaling" + }, + { + "name": "kha", + "value": "kha", + "description": "Khasi" + }, + { + "name": "quc", + "value": "quc", + "description": "K'iche'" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "kfq", + "value": "kfq", + "description": "Korku" + }, + { + "name": "kpy", + "value": "kpy", + "description": "Koryak" + }, + { + "name": "kos", + "value": "kos", + "description": "Kosraean" + }, + { + "name": "kum", + "value": "kum", + "description": "Kumyk (Cyrillic)" + }, + { + "name": "ku-arab", + "value": "ku-arab", + "description": "Kurdish (Arabic)" + }, + { + "name": "ku-latn", + "value": "ku-latn", + "description": "Kurdish (Latin)" + }, + { + "name": "kru", + "value": "kru", + "description": "Kurukh (Devanagiri)" + }, + { + "name": "ky", + "value": "ky", + "description": "Kyrgyz (Cyrillic)" + }, + { + "name": "lkt", + "value": "lkt", + "description": "Lakota" + }, + { + "name": "la", + "value": "la", + "description": "Latin" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "dsb", + "value": "dsb", + "description": "Lower Sorbian" + }, + { + "name": "smj", + "value": "smj", + "description": "Lule Sami" + }, + { + "name": "lb", + "value": "lb", + "description": "Luxembourgish" + }, + { + "name": "bfz", + "value": "bfz", + "description": "Mahasu Pahari (Devanagiri)" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay (Latin)" + }, + { + "name": "mt", + "value": "mt", + "description": "Maltese" + }, + { + "name": "kmj", + "value": "kmj", + "description": "Malto (Devanagiri)" + }, + { + "name": "gv", + "value": "gv", + "description": "Manx" + }, + { + "name": "mi", + "value": "mi", + "description": "Maori" + }, + { + "name": "mr", + "value": "mr", + "description": "Marathi" + }, + { + "name": "mn", + "value": "mn", + "description": "Mongolian (Cyrillic)" + }, + { + "name": "cnr-cyrl", + "value": "cnr-cyrl", + "description": "Montenegrin (Cyrillic)" + }, + { + "name": "cnr-latn", + "value": "cnr-latn", + "description": "Montenegrin (Latin)" + }, + { + "name": "nap", + "value": "nap", + "description": "Neapolitan" + }, + { + "name": "ne", + "value": "ne", + "description": "Nepali" + }, + { + "name": "niu", + "value": "niu", + "description": "Niuean" + }, + { + "name": "nog", + "value": "nog", + "description": "Nogay" + }, + { + "name": "sme", + "value": "sme", + "description": "Northern Sami (Latin)" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian" + }, + { + "name": "oc", + "value": "oc", + "description": "Occitan" + }, + { + "name": "os", + "value": "os", + "description": "Ossetic" + }, + { + "name": "ps", + "value": "ps", + "description": "Pashto" + }, + { + "name": "fa", + "value": "fa", + "description": "Persian" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + }, + { + "name": "pa", + "value": "pa", + "description": "Punjabi (Arabic)" + }, + { + "name": "ksh", + "value": "ksh", + "description": "Ripuarian" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "rm", + "value": "rm", + "description": "Romansh" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sck", + "value": "sck", + "description": "Sadri (Devanagiri)" + }, + { + "name": "sm", + "value": "sm", + "description": "Samoan (Latin)" + }, + { + "name": "sa", + "value": "sa", + "description": "Sanskrit (Devanagiri)" + }, + { + "name": "sat", + "value": "sat", + "description": "Santali (Devanagiri)" + }, + { + "name": "sco", + "value": "sco", + "description": "Scots" + }, + { + "name": "gd", + "value": "gd", + "description": "Scottish Gaelic" + }, + { + "name": "sr", + "value": "sr", + "description": "Serbian (Latin)" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "name": "xsr", + "value": "xsr", + "description": "Sherpa (Devanagiri)" + }, + { + "name": "srx", + "value": "srx", + "description": "Sirmauri (Devanagiri)" + }, + { + "name": "sms", + "value": "sms", + "description": "Skolt Sami" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "so", + "value": "so", + "description": "Somali (Arabic)" + }, + { + "name": "sma", + "value": "sma", + "description": "Southern Sami" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sw", + "value": "sw", + "description": "Swahili (Latin)" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tg", + "value": "tg", + "description": "Tajik (Cyrillic)" + }, + { + "name": "tt", + "value": "tt", + "description": "Tatar (Latin)" + }, + { + "name": "tet", + "value": "tet", + "description": "Tetum" + }, + { + "name": "thf", + "value": "thf", + "description": "Thangmi" + }, + { + "name": "to", + "value": "to", + "description": "Tongan" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "tk", + "value": "tk", + "description": "Turkmen (Latin)" + }, + { + "name": "tyv", + "value": "tyv", + "description": "Tuvan" + }, + { + "name": "hsb", + "value": "hsb", + "description": "Upper Sorbian" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "ug", + "value": "ug", + "description": "Uyghur (Arabic)" + }, + { + "name": "uz-arab", + "value": "uz-arab", + "description": "Uzbek (Arabic)" + }, + { + "name": "uz-cyrl", + "value": "uz-cyrl", + "description": "Uzbek (Cyrillic)" + }, + { + "name": "uz", + "value": "uz", + "description": "Uzbek (Latin)" + }, + { + "name": "vo", + "value": "vo", + "description": "Volapük" + }, + { + "name": "wae", + "value": "wae", + "description": "Walser" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "fy", + "value": "fy", + "description": "Western Frisian" + }, + { + "name": "yua", + "value": "yua", + "description": "Yucatec Maya" + }, + { + "name": "za", + "value": "za", + "description": "Zhuang" + }, + { + "name": "zu", + "value": "zu", + "description": "Zulu" + }, + { + "name": "unk", + "value": "unk", + "description": "Unknown (All)" + } + ] + } + }, + "OutputFieldMappingEntry": { + "type": "object", + "description": "Output field mapping for a skill.", + "properties": { + "name": { + "type": "string", + "description": "The name of the output defined by the skill." + }, + "targetName": { + "type": "string", + "description": "The target name of the output. It is optional and default to name." + } + }, + "required": [ + "name" + ] + }, + "PIIDetectionSkill": { + "type": "object", + "description": "Using the Text Analytics API, extracts personal information from an input text\nand gives you the option of masking it.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", + "maximum": 1 + }, + "maskingMode": { + "$ref": "#/definitions/PIIDetectionSkillMaskingMode", + "description": "A parameter that provides various ways to mask the personal information\ndetected in the input text. Default is 'none'." + }, + "maskingCharacter": { + "type": "string", + "description": "The character used to mask the text if the maskingMode parameter is set to\nreplace. Default is '*'.", + "maxLength": 1 + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + }, + "piiCategories": { + "type": "array", + "description": "A list of PII entity categories that should be extracted and masked.", + "items": { + "type": "string" + } + }, + "domain": { + "type": "string", + "description": "If specified, will set the PII domain to include only a subset of the entity\ncategories. Possible values include: 'phi', 'none'. Default is 'none'." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.PIIDetectionSkill" + }, + "PIIDetectionSkillMaskingMode": { + "type": "string", + "description": "A string indicating what maskingMode to use to mask the personal information\ndetected in the input text.", + "enum": [ + "none", + "replace" + ], + "x-ms-enum": { + "name": "PIIDetectionSkillMaskingMode", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "none", + "description": "No masking occurs and the maskedText output will not be returned." + }, + { + "name": "Replace", + "value": "replace", + "description": "Replaces the detected entities with the character given in the maskingCharacter\nparameter. The character will be repeated to the length of the detected entity\nso that the offsets will correctly correspond to both the input text as well as\nthe output maskedText." + } + ] + } + }, + "PathHierarchyTokenizerV2": { + "type": "object", + "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache\nLucene.", + "properties": { + "delimiter": { + "type": "string", + "description": "The delimiter character to use. Default is \"/\".", + "default": "/" + }, + "replacement": { + "type": "string", + "description": "A value that, if set, replaces the delimiter character. Default is \"/\".", + "default": "/" + }, + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default and maximum is 300.", + "default": 300, + "maximum": 300 + }, + "reverse": { + "type": "boolean", + "description": "A value indicating whether to generate tokens in reverse order. Default is\nfalse." + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of initial tokens to skip. Default is 0." + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" + }, + "PatternAnalyzer": { + "type": "object", + "description": "Flexibly separates text into terms via a regular expression pattern. This\nanalyzer is implemented using Apache Lucene.", + "properties": { + "lowercase": { + "type": "boolean", + "description": "A value indicating whether terms should be lower-cased. Default is true.", + "default": true + }, + "pattern": { + "type": "string", + "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", + "default": "\\W+" + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer" + }, + "PatternCaptureTokenFilter": { + "type": "object", + "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one\nor more patterns. This token filter is implemented using Apache Lucene.", + "properties": { + "patterns": { + "type": "array", + "description": "A list of patterns to match against each token.", + "items": { + "type": "string" + } + }, + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether to return the original token even if one of the\npatterns matches. Default is true.", + "default": true + } + }, + "required": [ + "patterns" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter" + }, + "PatternReplaceCharFilter": { + "type": "object", + "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This character filter is implemented using\nApache Lucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter" + }, + "PatternReplaceTokenFilter": { + "type": "object", + "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This token filter is implemented using Apache\nLucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter" + }, + "PatternTokenizer": { + "type": "object", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This\ntokenizer is implemented using Apache Lucene.", + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", + "default": "\\W+" + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "group": { + "type": "integer", + "format": "int32", + "description": "The zero-based ordinal of the matching group in the regular expression pattern\nto extract into tokens. Use -1 if you want to use the entire pattern to split\nthe input into tokens, irrespective of matching groups. Default is -1.", + "default": -1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer" + }, + "PhoneticEncoder": { + "type": "string", + "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter.", + "enum": [ + "metaphone", + "doubleMetaphone", + "soundex", + "refinedSoundex", + "caverphone1", + "caverphone2", + "cologne", + "nysiis", + "koelnerPhonetik", + "haasePhonetik", + "beiderMorse" + ], + "x-ms-enum": { + "name": "PhoneticEncoder", + "modelAsString": true, + "values": [ + { + "name": "Metaphone", + "value": "metaphone", + "description": "Encodes a token into a Metaphone value." + }, + { + "name": "DoubleMetaphone", + "value": "doubleMetaphone", + "description": "Encodes a token into a double metaphone value." + }, + { + "name": "Soundex", + "value": "soundex", + "description": "Encodes a token into a Soundex value." + }, + { + "name": "RefinedSoundex", + "value": "refinedSoundex", + "description": "Encodes a token into a Refined Soundex value." + }, + { + "name": "Caverphone1", + "value": "caverphone1", + "description": "Encodes a token into a Caverphone 1.0 value." + }, + { + "name": "Caverphone2", + "value": "caverphone2", + "description": "Encodes a token into a Caverphone 2.0 value." + }, + { + "name": "Cologne", + "value": "cologne", + "description": "Encodes a token into a Cologne Phonetic value." + }, + { + "name": "Nysiis", + "value": "nysiis", + "description": "Encodes a token into a NYSIIS value." + }, + { + "name": "KoelnerPhonetik", + "value": "koelnerPhonetik", + "description": "Encodes a token using the Kölner Phonetik algorithm." + }, + { + "name": "HaasePhonetik", + "value": "haasePhonetik", + "description": "Encodes a token using the Haase refinement of the Kölner Phonetik algorithm." + }, + { + "name": "BeiderMorse", + "value": "beiderMorse", + "description": "Encodes a token into a Beider-Morse value." + } + ] + } + }, + "PhoneticTokenFilter": { + "type": "object", + "description": "Create tokens for phonetic matches. This token filter is implemented using\nApache Lucene.", + "properties": { + "encoder": { + "$ref": "#/definitions/PhoneticEncoder", + "description": "The phonetic encoder to use. Default is \"metaphone\"." + }, + "replace": { + "type": "boolean", + "description": "A value indicating whether encoded tokens should replace original tokens. If\nfalse, encoded tokens are added as synonyms. Default is true.", + "default": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter" + }, + "RegexFlags": { + "type": "string", + "description": "Defines flags that can be combined to control how regular expressions are used\nin the pattern analyzer and pattern tokenizer.", + "enum": [ + "CANON_EQ", + "CASE_INSENSITIVE", + "COMMENTS", + "DOTALL", + "LITERAL", + "MULTILINE", + "UNICODE_CASE", + "UNIX_LINES" + ], + "x-ms-enum": { + "name": "RegexFlags", + "modelAsString": true, + "values": [ + { + "name": "CanonEq", + "value": "CANON_EQ", + "description": "Enables canonical equivalence." + }, + { + "name": "CaseInsensitive", + "value": "CASE_INSENSITIVE", + "description": "Enables case-insensitive matching." + }, + { + "name": "Comments", + "value": "COMMENTS", + "description": "Permits whitespace and comments in the pattern." + }, + { + "name": "DotAll", + "value": "DOTALL", + "description": "Enables dotall mode." + }, + { + "name": "Literal", + "value": "LITERAL", + "description": "Enables literal parsing of the pattern." + }, + { + "name": "Multiline", + "value": "MULTILINE", + "description": "Enables multiline mode." + }, + { + "name": "UnicodeCase", + "value": "UNICODE_CASE", + "description": "Enables Unicode-aware case folding." + }, + { + "name": "UnixLines", + "value": "UNIX_LINES", + "description": "Enables Unix lines mode." + } + ] + } + }, + "ResourceCounter": { + "type": "object", + "description": "Represents a resource's usage and quota.", + "properties": { + "usage": { + "type": "integer", + "format": "int64", + "description": "The resource usage amount." + }, + "quota": { + "type": "integer", + "format": "int64", + "description": "The resource amount quota." + } + }, + "required": [ + "usage" + ] + }, + "ScalarQuantizationCompression": { + "type": "object", + "description": "Contains configuration options specific to the scalar quantization compression\nmethod used during indexing and querying.", + "properties": { + "scalarQuantizationParameters": { + "$ref": "#/definitions/ScalarQuantizationParameters", + "description": "Contains the parameters specific to Scalar Quantization." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchCompression" + } + ], + "x-ms-discriminator-value": "scalarQuantization" + }, + "ScalarQuantizationParameters": { + "type": "object", + "description": "Contains the parameters specific to Scalar Quantization.", + "properties": { + "quantizedDataType": { + "$ref": "#/definitions/VectorSearchCompressionTarget", + "description": "The quantized data type of compressed vector values." + } + } + }, + "ScoringFunction": { + "type": "object", + "description": "Base type for functions that can modify document scores during ranking.", + "properties": { + "fieldName": { + "type": "string", + "description": "The name of the field used as input to the scoring function." + }, + "boost": { + "type": "number", + "format": "double", + "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." + }, + "interpolation": { + "$ref": "#/definitions/ScoringFunctionInterpolation", + "description": "A value indicating how boosting will be interpolated across document scores;\ndefaults to \"Linear\"." + }, + "type": { + "type": "string", + "description": "Type of ScoringFunction." + } + }, + "discriminator": "type", + "required": [ + "fieldName", + "boost", + "type" + ] + }, + "ScoringFunctionAggregation": { + "type": "string", + "description": "Defines the aggregation function used to combine the results of all the scoring\nfunctions in a scoring profile.", + "enum": [ + "sum", + "average", + "minimum", + "maximum", + "firstMatching" + ], + "x-ms-enum": { + "name": "ScoringFunctionAggregation", + "modelAsString": true, + "values": [ + { + "name": "Sum", + "value": "sum", + "description": "Boost scores by the sum of all scoring function results." + }, + { + "name": "Average", + "value": "average", + "description": "Boost scores by the average of all scoring function results." + }, + { + "name": "Minimum", + "value": "minimum", + "description": "Boost scores by the minimum of all scoring function results." + }, + { + "name": "Maximum", + "value": "maximum", + "description": "Boost scores by the maximum of all scoring function results." + }, + { + "name": "FirstMatching", + "value": "firstMatching", + "description": "Boost scores using the first applicable scoring function in the scoring profile." + } + ] + } + }, + "ScoringFunctionInterpolation": { + "type": "string", + "description": "Defines the function used to interpolate score boosting across a range of\ndocuments.", + "enum": [ + "linear", + "constant", + "quadratic", + "logarithmic" + ], + "x-ms-enum": { + "name": "ScoringFunctionInterpolation", + "modelAsString": true, + "values": [ + { + "name": "Linear", + "value": "linear", + "description": "Boosts scores by a linearly decreasing amount. This is the default\ninterpolation for scoring functions." + }, + { + "name": "Constant", + "value": "constant", + "description": "Boosts scores by a constant factor." + }, + { + "name": "Quadratic", + "value": "quadratic", + "description": "Boosts scores by an amount that decreases quadratically. Boosts decrease slowly\nfor higher scores, and more quickly as the scores decrease. This interpolation\noption is not allowed in tag scoring functions." + }, + { + "name": "Logarithmic", + "value": "logarithmic", + "description": "Boosts scores by an amount that decreases logarithmically. Boosts decrease\nquickly for higher scores, and more slowly as the scores decrease. This\ninterpolation option is not allowed in tag scoring functions." + } + ] + } + }, + "ScoringProfile": { + "type": "object", + "description": "Defines parameters for a search index that influence scoring in search queries.", + "properties": { + "name": { + "type": "string", + "description": "The name of the scoring profile." + }, + "text": { + "$ref": "#/definitions/TextWeights", + "description": "Parameters that boost scoring based on text matches in certain index fields." + }, + "functions": { + "type": "array", + "description": "The collection of functions that influence the scoring of documents.", + "items": { + "$ref": "#/definitions/ScoringFunction" + }, + "x-ms-identifiers": [] + }, + "functionAggregation": { + "$ref": "#/definitions/ScoringFunctionAggregation", + "description": "A value indicating how the results of individual scoring functions should be\ncombined. Defaults to \"Sum\". Ignored if there are no scoring functions." + } + }, + "required": [ + "name" + ] + }, + "SearchField": { + "type": "object", + "description": "Represents a field in an index definition, which describes the name, data type,\nand search behavior of a field.", + "properties": { + "name": { + "type": "string", + "description": "The name of the field, which must be unique within the fields collection of the\nindex or parent field." + }, + "type": { + "$ref": "#/definitions/SearchFieldDataType", + "description": "The data type of the field." + }, + "key": { + "type": "boolean", + "description": "A value indicating whether the field uniquely identifies documents in the\nindex. Exactly one top-level field in each index must be chosen as the key\nfield and it must be of type Edm.String. Key fields can be used to look up\ndocuments directly and update or delete specific documents. Default is false\nfor simple fields and null for complex fields." + }, + "retrievable": { + "type": "boolean", + "description": "A value indicating whether the field can be returned in a search result. You\ncan disable this option if you want to use a field (for example, margin) as a\nfilter, sorting, or scoring mechanism but do not want the field to be visible\nto the end user. This property must be true for key fields, and it must be null\nfor complex fields. This property can be changed on existing fields. Enabling\nthis property does not cause any increase in index storage requirements.\nDefault is true for simple fields, false for vector fields, and null for\ncomplex fields." + }, + "stored": { + "type": "boolean", + "description": "An immutable value indicating whether the field will be persisted separately on\ndisk to be returned in a search result. You can disable this option if you\ndon't plan to return the field contents in a search response to save on storage\noverhead. This can only be set during index creation and only for vector\nfields. This property cannot be changed for existing fields or set as false for\nnew fields. If this property is set as false, the property 'retrievable' must\nalso be set to false. This property must be true or unset for key fields, for\nnew fields, and for non-vector fields, and it must be null for complex fields.\nDisabling this property will reduce index storage requirements. The default is\ntrue for vector fields." + }, + "searchable": { + "type": "boolean", + "description": "A value indicating whether the field is full-text searchable. This means it\nwill undergo analysis such as word-breaking during indexing. If you set a\nsearchable field to a value like \"sunny day\", internally it will be split into\nthe individual tokens \"sunny\" and \"day\". This enables full-text searches for\nthese terms. Fields of type Edm.String or Collection(Edm.String) are searchable\nby default. This property must be false for simple fields of other non-string\ndata types, and it must be null for complex fields. Note: searchable fields\nconsume extra space in your index to accommodate additional tokenized versions\nof the field value for full-text searches. If you want to save space in your\nindex and you don't need a field to be included in searches, set searchable to\nfalse." + }, + "filterable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $filter\nqueries. filterable differs from searchable in how strings are handled. Fields\nof type Edm.String or Collection(Edm.String) that are filterable do not undergo\nword-breaking, so comparisons are for exact matches only. For example, if you\nset such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches,\nbut $filter=f eq 'sunny day' will. This property must be null for complex\nfields. Default is true for simple fields and null for complex fields." + }, + "sortable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $orderby\nexpressions. By default, the search engine sorts results by score, but in many\nexperiences users will want to sort by fields in the documents. A simple field\ncan be sortable only if it is single-valued (it has a single value in the scope\nof the parent document). Simple collection fields cannot be sortable, since\nthey are multi-valued. Simple sub-fields of complex collections are also\nmulti-valued, and therefore cannot be sortable. This is true whether it's an\nimmediate parent field, or an ancestor field, that's the complex collection.\nComplex fields cannot be sortable and the sortable property must be null for\nsuch fields. The default for sortable is true for single-valued simple fields,\nfalse for multi-valued simple fields, and null for complex fields." + }, + "facetable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in facet\nqueries. Typically used in a presentation of search results that includes hit\ncount by category (for example, search for digital cameras and see hits by\nbrand, by megapixels, by price, and so on). This property must be null for\ncomplex fields. Fields of type Edm.GeographyPoint or\nCollection(Edm.GeographyPoint) cannot be facetable. Default is true for all\nother simple fields." + }, + "analyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer to use for the field. This option can be used only\nwith searchable fields and it can't be set together with either searchAnalyzer\nor indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the\nfield. Must be null for complex fields." + }, + "searchAnalyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at search time for the field. This option can be\nused only with searchable fields. It must be set together with indexAnalyzer\nand it cannot be set together with the analyzer option. This property cannot be\nset to the name of a language analyzer; use the analyzer property instead if\nyou need a language analyzer. This analyzer can be updated on an existing\nfield. Must be null for complex fields." + }, + "indexAnalyzer": { + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at indexing time for the field. This option can\nbe used only with searchable fields. It must be set together with\nsearchAnalyzer and it cannot be set together with the analyzer option. This\nproperty cannot be set to the name of a language analyzer; use the analyzer\nproperty instead if you need a language analyzer. Once the analyzer is chosen,\nit cannot be changed for the field. Must be null for complex fields." + }, + "dimensions": { + "type": "integer", + "format": "int32", + "description": "The dimensionality of the vector field.", + "minimum": 2, + "maximum": 2048 + }, + "vectorSearchProfile": { + "type": "string", + "description": "The name of the vector search profile that specifies the algorithm and\nvectorizer to use when searching the vector field." + }, + "vectorEncoding": { + "$ref": "#/definitions/VectorEncodingFormat", + "description": "The encoding format to interpret the field contents." + }, + "synonymMaps": { + "type": "array", + "description": "A list of the names of synonym maps to associate with this field. This option\ncan be used only with searchable fields. Currently only one synonym map per\nfield is supported. Assigning a synonym map to a field ensures that query terms\ntargeting that field are expanded at query-time using the rules in the synonym\nmap. This attribute can be changed on existing fields. Must be null or an empty\ncollection for complex fields.", + "items": { + "type": "string" + } + }, + "fields": { + "type": "array", + "description": "A list of sub-fields if this is a field of type Edm.ComplexType or\nCollection(Edm.ComplexType). Must be null or empty for simple fields.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name", + "type" + ] + }, + "SearchFieldDataType": { + "type": "string", + "description": "Defines the data type of a field in a search index.", + "enum": [ + "Edm.String", + "Edm.Int32", + "Edm.Int64", + "Edm.Double", + "Edm.Boolean", + "Edm.DateTimeOffset", + "Edm.GeographyPoint", + "Edm.ComplexType", + "Edm.Single", + "Edm.Half", + "Edm.Int16", + "Edm.SByte", + "Edm.Byte" + ], + "x-ms-enum": { + "name": "SearchFieldDataType", + "modelAsString": true, + "values": [ + { + "name": "String", + "value": "Edm.String", + "description": "Indicates that a field contains a string." + }, + { + "name": "Int32", + "value": "Edm.Int32", + "description": "Indicates that a field contains a 32-bit signed integer." + }, + { + "name": "Int64", + "value": "Edm.Int64", + "description": "Indicates that a field contains a 64-bit signed integer." + }, + { + "name": "Double", + "value": "Edm.Double", + "description": "Indicates that a field contains an IEEE double-precision floating point number." + }, + { + "name": "Boolean", + "value": "Edm.Boolean", + "description": "Indicates that a field contains a Boolean value (true or false)." + }, + { + "name": "DateTimeOffset", + "value": "Edm.DateTimeOffset", + "description": "Indicates that a field contains a date/time value, including timezone\ninformation." + }, + { + "name": "GeographyPoint", + "value": "Edm.GeographyPoint", + "description": "Indicates that a field contains a geo-location in terms of longitude and\nlatitude." + }, + { + "name": "Complex", + "value": "Edm.ComplexType", + "description": "Indicates that a field contains one or more complex objects that in turn have\nsub-fields of other types." + }, + { + "name": "Single", + "value": "Edm.Single", + "description": "Indicates that a field contains a single-precision floating point number. This\nis only valid when used with Collection(Edm.Single)." + }, + { + "name": "Half", + "value": "Edm.Half", + "description": "Indicates that a field contains a half-precision floating point number. This is\nonly valid when used with Collection(Edm.Half)." + }, + { + "name": "Int16", + "value": "Edm.Int16", + "description": "Indicates that a field contains a 16-bit signed integer. This is only valid\nwhen used with Collection(Edm.Int16)." + }, + { + "name": "SByte", + "value": "Edm.SByte", + "description": "Indicates that a field contains a 8-bit signed integer. This is only valid when\nused with Collection(Edm.SByte)." + }, + { + "name": "Byte", + "value": "Edm.Byte", + "description": "Indicates that a field contains a 8-bit unsigned integer. This is only valid\nwhen used with Collection(Edm.Byte)." + } + ] + } + }, + "SearchIndex": { + "type": "object", + "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", + "properties": { + "name": { + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "description": "The fields of the index.", + "items": { + "$ref": "#/definitions/SearchField" + }, + "x-ms-identifiers": [] + }, + "scoringProfiles": { + "type": "array", + "description": "The scoring profiles for the index.", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "x-ms-identifiers": [] + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "description": "The suggesters for the index.", + "items": { + "$ref": "#/definitions/SearchSuggester" + }, + "x-ms-identifiers": [] + }, + "analyzers": { + "type": "array", + "description": "The analyzers for the index.", + "items": { + "$ref": "#/definitions/LexicalAnalyzer" + }, + "x-ms-identifiers": [] + }, + "tokenizers": { + "type": "array", + "description": "The tokenizers for the index.", + "items": { + "$ref": "#/definitions/LexicalTokenizer" + }, + "x-ms-identifiers": [] + }, + "tokenFilters": { + "type": "array", + "description": "The token filters for the index.", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "x-ms-identifiers": [] + }, + "charFilters": { + "type": "array", + "description": "The character filters for the index.", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "x-ms-identifiers": [] + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "similarity": { + "$ref": "#/definitions/SimilarityAlgorithm", + "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." + }, + "semantic": { + "$ref": "#/definitions/SemanticSearch", + "description": "Defines parameters for a search index that influence semantic capabilities." + }, + "vectorSearch": { + "$ref": "#/definitions/VectorSearch", + "description": "Contains configuration options related to vector search." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the index.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "name", + "fields" + ] + }, + "SearchIndexer": { + "type": "object", + "description": "Represents an indexer.", + "properties": { + "name": { + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "outputFieldMappings": { + "type": "array", + "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "x-ms-identifiers": [] + }, + "disabled": { + "type": "boolean", + "description": "A value indicating whether the indexer is disabled. Default is false." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the indexer.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." + } + }, + "required": [ + "name", + "dataSourceName", + "targetIndexName" + ] + }, + "SearchIndexerDataContainer": { + "type": "object", + "description": "Represents information about the entity (such as Azure SQL table or CosmosDB\ncollection) that will be indexed.", + "properties": { + "name": { + "type": "string", + "description": "The name of the table or view (for Azure SQL data source) or collection (for\nCosmosDB data source) that will be indexed." + }, + "query": { + "type": "string", + "description": "A query that is applied to this data container. The syntax and meaning of this\nparameter is datasource-specific. Not supported by Azure SQL datasources." + } + }, + "required": [ + "name" + ] + }, + "SearchIndexerDataIdentity": { + "type": "object", + "description": "Abstract base type for data identities.", + "properties": { + "@odata.type": { + "type": "string", + "description": "A URI fragment specifying the type of identity." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "SearchIndexerDataNoneIdentity": { + "type": "object", + "description": "Clears the identity property of a datasource.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerDataIdentity" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataNoneIdentity" + }, + "SearchIndexerDataSource": { + "type": "object", + "description": "Represents a datasource definition, which can be used to configure an indexer.", + "properties": { + "name": { + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/SearchIndexerDataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/SearchIndexerDataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the data source.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." + } + }, + "required": [ + "name", + "type", + "credentials", + "container" + ] + }, + "SearchIndexerDataSourceType": { + "type": "string", + "description": "Defines the type of a datasource.", + "enum": [ + "azuresql", + "cosmosdb", + "azureblob", + "azuretable", + "mysql", + "adlsgen2" + ], + "x-ms-enum": { + "name": "SearchIndexerDataSourceType", + "modelAsString": true, + "values": [ + { + "name": "AzureSql", + "value": "azuresql", + "description": "Indicates an Azure SQL datasource." + }, + { + "name": "CosmosDb", + "value": "cosmosdb", + "description": "Indicates a CosmosDB datasource." + }, + { + "name": "AzureBlob", + "value": "azureblob", + "description": "Indicates an Azure Blob datasource." + }, + { + "name": "AzureTable", + "value": "azuretable", + "description": "Indicates an Azure Table datasource." + }, + { + "name": "MySql", + "value": "mysql", + "description": "Indicates a MySql datasource." + }, + { + "name": "AdlsGen2", + "value": "adlsgen2", + "description": "Indicates an ADLS Gen2 datasource." + } + ] + } + }, + "SearchIndexerDataUserAssignedIdentity": { + "type": "object", + "description": "Specifies the identity for a datasource to use.", + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The fully qualified Azure resource Id of a user assigned managed identity\ntypically in the form\n\"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\"\nthat should have been assigned to the search service." + } + }, + "required": [ + "userAssignedIdentity" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerDataIdentity" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataUserAssignedIdentity" + }, + "SearchIndexerError": { + "type": "object", + "description": "Represents an item- or document-level indexing error.", + "properties": { + "key": { + "type": "string", + "description": "The key of the item for which indexing failed." + }, + "errorMessage": { + "type": "string", + "description": "The message describing the error that occurred while processing the item." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code indicating why the indexing operation failed. Possible values\ninclude: 400 for a malformed input document, 404 for document not found, 409\nfor a version conflict, 422 when the index is temporarily unavailable, or 503\nfor when the service is too busy." + }, + "name": { + "type": "string", + "description": "The name of the source at which the error originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable." + }, + "details": { + "type": "string", + "description": "Additional, verbose details about the error to assist in debugging the indexer.\nThis may not be always available." + }, + "documentationLink": { + "type": "string", + "description": "A link to a troubleshooting guide for these classes of errors. This may not be\nalways available." + } + }, + "required": [ + "errorMessage", + "statusCode" + ] + }, + "SearchIndexerIndexProjection": { + "type": "object", + "description": "Definition of additional projections to secondary search indexes.", + "properties": { + "selectors": { + "type": "array", + "description": "A list of projections to be performed to secondary search indexes.", + "items": { + "$ref": "#/definitions/SearchIndexerIndexProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "parameters": { + "$ref": "#/definitions/SearchIndexerIndexProjectionsParameters", + "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type." + } + }, + "required": [ + "selectors" + ] + }, + "SearchIndexerIndexProjectionSelector": { + "type": "object", + "description": "Description for what data to store in the designated search index.", + "properties": { + "targetIndexName": { + "type": "string", + "description": "Name of the search index to project to. Must have a key field with the 'keyword' analyzer set." + }, + "parentKeyFieldName": { + "type": "string", + "description": "Name of the field in the search index to map the parent document's key value\nto. Must be a string field that is filterable and not the key field." + }, + "sourceContext": { + "type": "string", + "description": "Source context for the projections. Represents the cardinality at which the\ndocument will be split into multiple sub documents." + }, + "mappings": { + "type": "array", + "description": "Mappings for the projection, or which source should be mapped to which field in\nthe target index.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "targetIndexName", + "parentKeyFieldName", + "sourceContext", + "mappings" + ] + }, + "SearchIndexerIndexProjectionsParameters": { + "type": "object", + "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type.", + "properties": { + "projectionMode": { + "$ref": "#/definitions/IndexProjectionMode", + "description": "Defines behavior of the index projections in relation to the rest of the\nindexer." + } + }, + "additionalProperties": {} + }, + "SearchIndexerKnowledgeStore": { + "type": "object", + "description": "Definition of additional projections to azure blob, table, or files, of\nenriched data.", + "properties": { + "storageConnectionString": { + "type": "string", + "description": "The connection string to the storage account projections will be stored in." + }, + "projections": { + "type": "array", + "description": "A list of additional projections to perform during indexing.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjection" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "storageConnectionString", + "projections" + ] + }, + "SearchIndexerKnowledgeStoreBlobProjectionSelector": { + "type": "object", + "description": "Abstract class to share properties between concrete selectors.", + "properties": { + "storageContainer": { + "type": "string", + "description": "Blob container to store projections in." + } + }, + "required": [ + "storageContainer" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreFileProjectionSelector": { + "type": "object", + "description": "Projection definition for what data to store in Azure Files.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreObjectProjectionSelector": { + "type": "object", + "description": "Projection definition for what data to store in Azure Blob.", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" + } + ] + }, + "SearchIndexerKnowledgeStoreParameters": { + "type": "object", + "description": "A dictionary of knowledge store-specific configuration properties. Each name is\nthe name of a specific property. Each value must be of a primitive type.", + "properties": { + "synthesizeGeneratedKeyName": { + "type": "boolean", + "description": "Whether or not projections should synthesize a generated key name if one isn't\nalready present." + } + }, + "additionalProperties": {} + }, + "SearchIndexerKnowledgeStoreProjection": { + "type": "object", + "description": "Container object for various projection selectors.", + "properties": { + "tables": { + "type": "array", + "description": "Projections to Azure Table storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreTableProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "objects": { + "type": "array", + "description": "Projections to Azure Blob storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreObjectProjectionSelector" + }, + "x-ms-identifiers": [] + }, + "files": { + "type": "array", + "description": "Projections to Azure File storage.", + "items": { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreFileProjectionSelector" + }, + "x-ms-identifiers": [] + } + } + }, + "SearchIndexerKnowledgeStoreProjectionSelector": { + "type": "object", + "description": "Abstract class to share properties between concrete selectors.", + "properties": { + "referenceKeyName": { + "type": "string", + "description": "Name of reference key to different projection." + }, + "generatedKeyName": { + "type": "string", + "description": "Name of generated key to store projection under." + }, + "source": { + "type": "string", + "description": "Source data to project." + }, + "sourceContext": { + "type": "string", + "description": "Source context for complex projections." + }, + "inputs": { + "type": "array", + "description": "Nested inputs for complex projections.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + } + }, + "SearchIndexerKnowledgeStoreTableProjectionSelector": { + "type": "object", + "description": "Description for what data to store in Azure Tables.", + "properties": { + "tableName": { + "type": "string", + "description": "Name of the Azure table to store projected data in." + } + }, + "required": [ + "tableName" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" + } + ] + }, + "SearchIndexerLimits": { + "type": "object", + "description": "Represents the limits that can be applied to an indexer.", + "properties": { + "maxRunTime": { + "type": "string", + "format": "duration", + "description": "The maximum duration that the indexer is permitted to run for one execution." + }, + "maxDocumentExtractionSize": { + "type": "integer", + "format": "int64", + "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing." + }, + "maxDocumentContentCharactersToExtract": { + "type": "integer", + "format": "int64", + "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing." + } + } + }, + "SearchIndexerSkill": { + "type": "object", + "description": "Base type for skills.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the skill which uniquely identifies it within the skillset. A skill\nwith no name defined will be given a default name of its 1-based index in the\nskills array, prefixed with the character '#'." + }, + "description": { + "type": "string", + "description": "The description of the skill which describes the inputs, outputs, and usage of\nthe skill." + }, + "context": { + "type": "string", + "description": "Represents the level at which operations take place, such as the document root\nor document content (for example, /document or /document/content). The default\nis /document." + }, + "inputs": { + "type": "array", + "description": "Inputs of the skills could be a column in the source data set, or the output of\nan upstream skill.", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "x-ms-identifiers": [] + }, + "outputs": { + "type": "array", + "description": "The output of a skill is either a field in a search index, or a value that can\nbe consumed as an input by another skill.", + "items": { + "$ref": "#/definitions/OutputFieldMappingEntry" + }, + "x-ms-identifiers": [] + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "inputs", + "outputs" + ] + }, + "SearchIndexerSkillset": { + "type": "object", + "description": "A list of skills.", + "properties": { + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "description": "A list of skills in the skillset.", + "items": { + "$ref": "#/definitions/SearchIndexerSkill" + }, + "x-ms-identifiers": [] + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about the Azure AI service to be used when running skills." + }, + "knowledgeStore": { + "$ref": "#/definitions/SearchIndexerKnowledgeStore", + "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." + }, + "indexProjections": { + "$ref": "#/definitions/SearchIndexerIndexProjection", + "description": "Definition of additional projections to secondary search index(es)." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the skillset.", + "x-ms-client-name": "eTag" + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + } + }, + "required": [ + "name", + "skills" + ] + }, + "SearchIndexerStatus": { + "type": "object", + "description": "Represents the current status and execution history of an indexer.", + "properties": { + "status": { + "$ref": "#/definitions/IndexerStatus", + "description": "Overall indexer status." + }, + "lastResult": { + "$ref": "#/definitions/IndexerExecutionResult", + "description": "The result of the most recent or an in-progress indexer execution." + }, + "executionHistory": { + "type": "array", + "description": "History of the recent indexer executions, sorted in reverse chronological order.", + "items": { + "$ref": "#/definitions/IndexerExecutionResult" + }, + "x-ms-identifiers": [] + }, + "limits": { + "$ref": "#/definitions/SearchIndexerLimits", + "description": "The execution limits for the indexer." + } + }, + "required": [ + "status", + "executionHistory", + "limits" + ] + }, + "SearchIndexerWarning": { + "type": "object", + "description": "Represents an item-level warning.", + "properties": { + "key": { + "type": "string", + "description": "The key of the item which generated a warning." + }, + "message": { + "type": "string", + "description": "The message describing the warning that occurred while processing the item." + }, + "name": { + "type": "string", + "description": "The name of the source at which the warning originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable." + }, + "details": { + "type": "string", + "description": "Additional, verbose details about the warning to assist in debugging the\nindexer. This may not be always available." + }, + "documentationLink": { + "type": "string", + "description": "A link to a troubleshooting guide for these classes of warnings. This may not\nbe always available." + } + }, + "required": [ + "message" + ] + }, + "SearchResourceEncryptionKey": { + "type": "object", + "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and\nmanage can be used to encrypt or decrypt data-at-rest, such as indexes and\nsynonym maps.", + "properties": { + "keyVaultKeyName": { + "type": "string", + "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest." + }, + "keyVaultKeyVersion": { + "type": "string", + "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest." + }, + "keyVaultUri": { + "type": "string", + "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains\nthe key to be used to encrypt your data at rest. An example URI might be\n`https://my-keyvault-name.vault.azure.net`." + }, + "accessCredentials": { + "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", + "description": "Optional Azure Active Directory credentials used for accessing your Azure Key\nVault. Not required if using managed identity instead." + } + }, + "required": [ + "keyVaultKeyName", + "keyVaultKeyVersion", + "keyVaultUri" + ] + }, + "SearchServiceCounters": { + "type": "object", + "description": "Represents service-level resource counters and quotas.", + "properties": { + "documentCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of documents across all indexes in the service." + }, + "indexesCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexes." + }, + "indexersCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexers." + }, + "dataSourcesCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of data sources." + }, + "storageSize": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total size of used storage in bytes." + }, + "synonymMaps": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of synonym maps." + }, + "skillsetCount": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of skillsets." + }, + "vectorIndexSize": { + "$ref": "#/definitions/ResourceCounter", + "description": "Total memory consumption of all vector indexes within the service, in bytes." + } + }, + "required": [ + "documentCount", + "indexesCount", + "indexersCount", + "dataSourcesCount", + "storageSize", + "synonymMaps", + "skillsetCount", + "vectorIndexSize" + ] + }, + "SearchServiceLimits": { + "type": "object", + "description": "Represents various service level limits.", + "properties": { + "maxFieldsPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum allowed fields per index." + }, + "maxFieldNestingDepthPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum depth which you can nest sub-fields in an index, including the\ntop-level complex field. For example, a/b/c has a nesting depth of 3." + }, + "maxComplexCollectionFieldsPerIndex": { + "type": "integer", + "format": "int32", + "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an\nindex." + }, + "maxComplexObjectsInCollectionsPerDocument": { + "type": "integer", + "format": "int32", + "description": "The maximum number of objects in complex collections allowed per document." + }, + "maxStoragePerIndex": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of storage in bytes allowed per index." + } + } + }, + "SearchServiceStatistics": { + "type": "object", + "description": "Response from a get service statistics request. If successful, it includes\nservice level counters and limits.", + "properties": { + "counters": { + "$ref": "#/definitions/SearchServiceCounters", + "description": "Service level resource counters." + }, + "limits": { + "$ref": "#/definitions/SearchServiceLimits", + "description": "Service level general limits." + } + }, + "required": [ + "counters", + "limits" + ] + }, + "SearchSuggester": { + "type": "object", + "description": "Defines how the Suggest API should apply to a group of fields in the index.", + "properties": { + "name": { + "type": "string", + "description": "The name of the suggester." + }, + "searchMode": { + "type": "string", + "description": "A value indicating the capabilities of the suggester.", + "enum": [ + "analyzingInfixMatching" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "sourceFields": { + "type": "array", + "description": "The list of field names to which the suggester applies. Each field must be\nsearchable.", + "items": { + "type": "string" + } + } + }, + "required": [ + "name", + "searchMode", + "sourceFields" + ] + }, + "SemanticConfiguration": { + "type": "object", + "description": "Defines a specific configuration to be used in the context of semantic\ncapabilities.", + "properties": { + "name": { + "type": "string", + "description": "The name of the semantic configuration." + }, + "prioritizedFields": { + "$ref": "#/definitions/SemanticPrioritizedFields", + "description": "Describes the title, content, and keyword fields to be used for semantic\nranking, captions, highlights, and answers. At least one of the three sub\nproperties (titleField, prioritizedKeywordsFields and prioritizedContentFields)\nneed to be set." + } + }, + "required": [ + "name", + "prioritizedFields" + ] + }, + "SemanticField": { + "type": "object", + "description": "A field that is used as part of the semantic configuration.", + "properties": { + "fieldName": { + "type": "string", + "description": "File name" + } + }, + "required": [ + "fieldName" + ] + }, + "SemanticPrioritizedFields": { + "type": "object", + "description": "Describes the title, content, and keywords fields to be used for semantic\nranking, captions, highlights, and answers.", + "properties": { + "titleField": { + "$ref": "#/definitions/SemanticField", + "description": "Defines the title field to be used for semantic ranking, captions, highlights,\nand answers. If you don't have a title field in your index, leave this blank." + }, + "prioritizedContentFields": { + "type": "array", + "description": "Defines the content fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain text in natural language form. The order of the fields in the array\nrepresents their priority. Fields with lower priority may get truncated if the\ncontent is long.", + "items": { + "$ref": "#/definitions/SemanticField" + }, + "x-ms-identifiers": [] + }, + "prioritizedKeywordsFields": { + "type": "array", + "description": "Defines the keyword fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain a list of keywords. The order of the fields in the array represents\ntheir priority. Fields with lower priority may get truncated if the content is\nlong.", + "items": { + "$ref": "#/definitions/SemanticField" + }, + "x-ms-identifiers": [] + } + } + }, + "SemanticSearch": { + "type": "object", + "description": "Defines parameters for a search index that influence semantic capabilities.", + "properties": { + "defaultConfiguration": { + "type": "string", + "description": "Allows you to set the name of a default semantic configuration in your index,\nmaking it optional to pass it on as a query parameter every time." + }, + "configurations": { + "type": "array", + "description": "The semantic configurations for the index.", + "items": { + "$ref": "#/definitions/SemanticConfiguration" + }, + "x-ms-identifiers": [] + } + } + }, + "SentimentSkill": { + "type": "object", + "description": "This skill is deprecated. Use the V3.SentimentSkill instead.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SentimentSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill" + }, + "SentimentSkillLanguage": { + "type": "string", + "description": "Deprecated. The language codes supported for input text by SentimentSkill.", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "it", + "no", + "pl", + "pt-PT", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "SentimentSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "no", + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + } + ] + } + }, + "SentimentSkillV3": { + "type": "object", + "description": "Using the Text Analytics API, evaluates unstructured text and for each record,\nprovides sentiment labels (such as \"negative\", \"neutral\" and \"positive\") based\non the highest confidence score found by the service at a sentence and\ndocument-level.", + "properties": { + "defaultLanguageCode": { + "type": "string", + "description": "A value indicating which language code to use. Default is `en`." + }, + "includeOpinionMining": { + "type": "boolean", + "description": "If set to true, the skill output will include information from Text Analytics\nfor opinion mining, namely targets (nouns or verbs) and their associated\nassessment (adjective) in the text. Default is false." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.SentimentSkill" + }, + "ShaperSkill": { + "type": "object", + "description": "A skill for reshaping the outputs. It creates a complex type to support\ncomposite fields (also known as multipart fields).", + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill" + }, + "ShingleTokenFilter": { + "type": "object", + "description": "Creates combinations of tokens as a single token. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "maxShingleSize": { + "type": "integer", + "format": "int32", + "description": "The maximum shingle size. Default and minimum value is 2.", + "default": 2, + "minimum": 2 + }, + "minShingleSize": { + "type": "integer", + "format": "int32", + "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the\nvalue of maxShingleSize.", + "default": 2, + "minimum": 2 + }, + "outputUnigrams": { + "type": "boolean", + "description": "A value indicating whether the output stream will contain the input tokens\n(unigrams) as well as shingles. Default is true.", + "default": true + }, + "outputUnigramsIfNoShingles": { + "type": "boolean", + "description": "A value indicating whether to output unigrams for those times when no shingles\nare available. This property takes precedence when outputUnigrams is set to\nfalse. Default is false." + }, + "tokenSeparator": { + "type": "string", + "description": "The string to use when joining adjacent tokens to form a shingle. Default is a\nsingle space (\" \").", + "default": " " + }, + "filterToken": { + "type": "string", + "description": "The string to insert for each position at which there is no token. Default is\nan underscore (\"_\").", + "default": "_" + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter" + }, + "SimilarityAlgorithm": { + "type": "object", + "description": "Base type for similarity algorithms. Similarity algorithms are used to\ncalculate scores that tie queries to documents. The higher the score, the more\nrelevant the document is to that specific query. Those scores are used to rank\nthe search results.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type" + ] + }, + "SnowballTokenFilter": { + "type": "object", + "description": "A filter that stems words using a Snowball-generated stemmer. This token filter\nis implemented using Apache Lucene.", + "properties": { + "language": { + "$ref": "#/definitions/SnowballTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter" + }, + "SnowballTokenFilterLanguage": { + "type": "string", + "description": "The language to use for a Snowball token filter.", + "enum": [ + "armenian", + "basque", + "catalan", + "danish", + "dutch", + "english", + "finnish", + "french", + "german", + "german2", + "hungarian", + "italian", + "kp", + "lovins", + "norwegian", + "porter", + "portuguese", + "romanian", + "russian", + "spanish", + "swedish", + "turkish" + ], + "x-ms-enum": { + "name": "SnowballTokenFilterLanguage", + "modelAsString": true, + "values": [ + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the Lucene Snowball stemming tokenizer for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the Lucene Snowball stemming tokenizer for Basque." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Lucene Snowball stemming tokenizer for Catalan." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Lucene Snowball stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Lucene Snowball stemming tokenizer for English." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Lucene Snowball stemming tokenizer for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Lucene Snowball stemming tokenizer for French." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Lucene Snowball stemming tokenizer for German." + }, + { + "name": "German2", + "value": "german2", + "description": "Selects the Lucene Snowball stemming tokenizer that uses the German variant\nalgorithm." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Lucene Snowball stemming tokenizer for Hungarian." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Lucene Snowball stemming tokenizer for Italian." + }, + { + "name": "Kp", + "value": "kp", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch that uses the\nKraaij-Pohlmann stemming algorithm." + }, + { + "name": "Lovins", + "value": "lovins", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins\nstemming algorithm." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the Lucene Snowball stemming tokenizer for Norwegian." + }, + { + "name": "Porter", + "value": "porter", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Porter\nstemming algorithm." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Lucene Snowball stemming tokenizer for Portuguese." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Lucene Snowball stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Lucene Snowball stemming tokenizer for Russian." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Lucene Snowball stemming tokenizer for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Lucene Snowball stemming tokenizer for Swedish." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Lucene Snowball stemming tokenizer for Turkish." + } + ] + } + }, + "SoftDeleteColumnDeletionDetectionPolicy": { + "type": "object", + "description": "Defines a data deletion detection policy that implements a soft-deletion\nstrategy. It determines whether an item should be deleted based on the value of\na designated 'soft delete' column.", + "properties": { + "softDeleteColumnName": { + "type": "string", + "description": "The name of the column to use for soft-deletion detection." + }, + "softDeleteMarkerValue": { + "type": "string", + "description": "The marker value that identifies an item as deleted." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataDeletionDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" + }, + "SplitSkill": { + "type": "object", + "description": "A skill to split a string into chunks of text.", + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SplitSkillLanguage", + "description": "A value indicating which language code to use. Default is `en`." + }, + "textSplitMode": { + "$ref": "#/definitions/TextSplitMode", + "description": "A value indicating which split mode to perform." + }, + "maximumPageLength": { + "type": "integer", + "format": "int32", + "description": "The desired maximum page length. Default is 10000." + }, + "pageOverlapLength": { + "type": "integer", + "format": "int32", + "description": "Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk\nwill start with this number of characters/tokens from the end of the nth chunk." + }, + "maximumPagesToTake": { + "type": "integer", + "format": "int32", + "description": "Only applicable when textSplitMode is set to 'pages'. If specified, the\nSplitSkill will discontinue splitting after processing the first\n'maximumPagesToTake' pages, in order to improve performance when only a few\ninitial pages are needed from each document." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill" + }, + "SplitSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by SplitSkill.", + "enum": [ + "am", + "bs", + "cs", + "da", + "de", + "en", + "es", + "et", + "fi", + "fr", + "he", + "hi", + "hr", + "hu", + "id", + "is", + "it", + "ja", + "ko", + "lv", + "nb", + "nl", + "pl", + "pt", + "pt-br", + "ru", + "sk", + "sl", + "sr", + "sv", + "tr", + "ur", + "zh" + ], + "x-ms-enum": { + "name": "SplitSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "am", + "value": "am", + "description": "Amharic" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese (Portugal)" + }, + { + "name": "pt-br", + "value": "pt-br", + "description": "Portuguese (Brazil)" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "sr", + "value": "sr", + "description": "Serbian" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "zh", + "value": "zh", + "description": "Chinese (Simplified)" + } + ] + } + }, + "SqlIntegratedChangeTrackingPolicy": { + "type": "object", + "description": "Defines a data change detection policy that captures changes using the\nIntegrated Change Tracking feature of Azure SQL Database.", + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" + }, + "StemmerOverrideTokenFilter": { + "type": "object", + "description": "Provides the ability to override other stemming filters with custom\ndictionary-based stemming. Any dictionary-stemmed terms will be marked as\nkeywords so that they will not be stemmed with stemmers down the chain. Must be\nplaced before any stemming filters. This token filter is implemented using\nApache Lucene.", + "properties": { + "rules": { + "type": "array", + "description": "A list of stemming rules in the following format: \"word => stem\", for example:\n\"ran => run\".", + "items": { + "type": "string" + } + } + }, + "required": [ + "rules" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" + }, + "StemmerTokenFilter": { + "type": "object", + "description": "Language specific stemming filter. This token filter is implemented using\nApache Lucene.", + "properties": { + "language": { + "$ref": "#/definitions/StemmerTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter" + }, + "StemmerTokenFilterLanguage": { + "type": "string", + "description": "The language to use for a stemmer token filter.", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "dutchKp", + "english", + "lightEnglish", + "minimalEnglish", + "possessiveEnglish", + "porter2", + "lovins", + "finnish", + "lightFinnish", + "french", + "lightFrench", + "minimalFrench", + "galician", + "minimalGalician", + "german", + "german2", + "lightGerman", + "minimalGerman", + "greek", + "hindi", + "hungarian", + "lightHungarian", + "indonesian", + "irish", + "italian", + "lightItalian", + "sorani", + "latvian", + "norwegian", + "lightNorwegian", + "minimalNorwegian", + "lightNynorsk", + "minimalNynorsk", + "portuguese", + "lightPortuguese", + "minimalPortuguese", + "portugueseRslp", + "romanian", + "russian", + "lightRussian", + "spanish", + "lightSpanish", + "swedish", + "lightSwedish", + "turkish" + ], + "x-ms-enum": { + "name": "StemmerTokenFilterLanguage", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the Lucene stemming tokenizer for Arabic." + }, + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the Lucene stemming tokenizer for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the Lucene stemming tokenizer for Basque." + }, + { + "name": "Brazilian", + "value": "brazilian", + "description": "Selects the Lucene stemming tokenizer for Portuguese (Brazil)." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the Lucene stemming tokenizer for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the Lucene stemming tokenizer for Catalan." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the Lucene stemming tokenizer for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the Lucene stemming tokenizer for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the Lucene stemming tokenizer for Dutch." + }, + { + "name": "DutchKp", + "value": "dutchKp", + "description": "Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann\nstemming algorithm." + }, + { + "name": "English", + "value": "english", + "description": "Selects the Lucene stemming tokenizer for English." + }, + { + "name": "LightEnglish", + "value": "lightEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does light stemming." + }, + { + "name": "MinimalEnglish", + "value": "minimalEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does minimal stemming." + }, + { + "name": "PossessiveEnglish", + "value": "possessiveEnglish", + "description": "Selects the Lucene stemming tokenizer for English that removes trailing\npossessives from words." + }, + { + "name": "Porter2", + "value": "porter2", + "description": "Selects the Lucene stemming tokenizer for English that uses the Porter2\nstemming algorithm." + }, + { + "name": "Lovins", + "value": "lovins", + "description": "Selects the Lucene stemming tokenizer for English that uses the Lovins stemming\nalgorithm." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the Lucene stemming tokenizer for Finnish." + }, + { + "name": "LightFinnish", + "value": "lightFinnish", + "description": "Selects the Lucene stemming tokenizer for Finnish that does light stemming." + }, + { + "name": "French", + "value": "french", + "description": "Selects the Lucene stemming tokenizer for French." + }, + { + "name": "LightFrench", + "value": "lightFrench", + "description": "Selects the Lucene stemming tokenizer for French that does light stemming." + }, + { + "name": "MinimalFrench", + "value": "minimalFrench", + "description": "Selects the Lucene stemming tokenizer for French that does minimal stemming." + }, + { + "name": "Galician", + "value": "galician", + "description": "Selects the Lucene stemming tokenizer for Galician." + }, + { + "name": "MinimalGalician", + "value": "minimalGalician", + "description": "Selects the Lucene stemming tokenizer for Galician that does minimal stemming." + }, + { + "name": "German", + "value": "german", + "description": "Selects the Lucene stemming tokenizer for German." + }, + { + "name": "German2", + "value": "german2", + "description": "Selects the Lucene stemming tokenizer that uses the German variant algorithm." + }, + { + "name": "LightGerman", + "value": "lightGerman", + "description": "Selects the Lucene stemming tokenizer for German that does light stemming." + }, + { + "name": "MinimalGerman", + "value": "minimalGerman", + "description": "Selects the Lucene stemming tokenizer for German that does minimal stemming." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the Lucene stemming tokenizer for Greek." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the Lucene stemming tokenizer for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian." + }, + { + "name": "LightHungarian", + "value": "lightHungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian that does light stemming." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the Lucene stemming tokenizer for Indonesian." + }, + { + "name": "Irish", + "value": "irish", + "description": "Selects the Lucene stemming tokenizer for Irish." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the Lucene stemming tokenizer for Italian." + }, + { + "name": "LightItalian", + "value": "lightItalian", + "description": "Selects the Lucene stemming tokenizer for Italian that does light stemming." + }, + { + "name": "Sorani", + "value": "sorani", + "description": "Selects the Lucene stemming tokenizer for Sorani." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the Lucene stemming tokenizer for Latvian." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål)." + }, + { + "name": "LightNorwegian", + "value": "lightNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light\nstemming." + }, + { + "name": "MinimalNorwegian", + "value": "minimalNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal\nstemming." + }, + { + "name": "LightNynorsk", + "value": "lightNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light\nstemming." + }, + { + "name": "MinimalNynorsk", + "value": "minimalNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal\nstemming." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese." + }, + { + "name": "LightPortuguese", + "value": "lightPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does light stemming." + }, + { + "name": "MinimalPortuguese", + "value": "minimalPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming." + }, + { + "name": "PortugueseRslp", + "value": "portugueseRslp", + "description": "Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP\nstemming algorithm." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the Lucene stemming tokenizer for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the Lucene stemming tokenizer for Russian." + }, + { + "name": "LightRussian", + "value": "lightRussian", + "description": "Selects the Lucene stemming tokenizer for Russian that does light stemming." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the Lucene stemming tokenizer for Spanish." + }, + { + "name": "LightSpanish", + "value": "lightSpanish", + "description": "Selects the Lucene stemming tokenizer for Spanish that does light stemming." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the Lucene stemming tokenizer for Swedish." + }, + { + "name": "LightSwedish", + "value": "lightSwedish", + "description": "Selects the Lucene stemming tokenizer for Swedish that does light stemming." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the Lucene stemming tokenizer for Turkish." + } + ] + } + }, + "StopAnalyzer": { + "type": "object", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nThis analyzer is implemented using Apache Lucene.", + "properties": { + "stopwords": { + "type": "array", + "description": "A list of stopwords.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalAnalyzer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer" + }, + "StopwordsList": { + "type": "string", + "description": "Identifies a predefined list of language-specific stopwords.", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "english", + "finnish", + "french", + "galician", + "german", + "greek", + "hindi", + "hungarian", + "indonesian", + "irish", + "italian", + "latvian", + "norwegian", + "persian", + "portuguese", + "romanian", + "russian", + "sorani", + "spanish", + "swedish", + "thai", + "turkish" + ], + "x-ms-enum": { + "name": "StopwordsList", + "modelAsString": true, + "values": [ + { + "name": "Arabic", + "value": "arabic", + "description": "Selects the stopword list for Arabic." + }, + { + "name": "Armenian", + "value": "armenian", + "description": "Selects the stopword list for Armenian." + }, + { + "name": "Basque", + "value": "basque", + "description": "Selects the stopword list for Basque." + }, + { + "name": "Brazilian", + "value": "brazilian", + "description": "Selects the stopword list for Portuguese (Brazil)." + }, + { + "name": "Bulgarian", + "value": "bulgarian", + "description": "Selects the stopword list for Bulgarian." + }, + { + "name": "Catalan", + "value": "catalan", + "description": "Selects the stopword list for Catalan." + }, + { + "name": "Czech", + "value": "czech", + "description": "Selects the stopword list for Czech." + }, + { + "name": "Danish", + "value": "danish", + "description": "Selects the stopword list for Danish." + }, + { + "name": "Dutch", + "value": "dutch", + "description": "Selects the stopword list for Dutch." + }, + { + "name": "English", + "value": "english", + "description": "Selects the stopword list for English." + }, + { + "name": "Finnish", + "value": "finnish", + "description": "Selects the stopword list for Finnish." + }, + { + "name": "French", + "value": "french", + "description": "Selects the stopword list for French." + }, + { + "name": "Galician", + "value": "galician", + "description": "Selects the stopword list for Galician." + }, + { + "name": "German", + "value": "german", + "description": "Selects the stopword list for German." + }, + { + "name": "Greek", + "value": "greek", + "description": "Selects the stopword list for Greek." + }, + { + "name": "Hindi", + "value": "hindi", + "description": "Selects the stopword list for Hindi." + }, + { + "name": "Hungarian", + "value": "hungarian", + "description": "Selects the stopword list for Hungarian." + }, + { + "name": "Indonesian", + "value": "indonesian", + "description": "Selects the stopword list for Indonesian." + }, + { + "name": "Irish", + "value": "irish", + "description": "Selects the stopword list for Irish." + }, + { + "name": "Italian", + "value": "italian", + "description": "Selects the stopword list for Italian." + }, + { + "name": "Latvian", + "value": "latvian", + "description": "Selects the stopword list for Latvian." + }, + { + "name": "Norwegian", + "value": "norwegian", + "description": "Selects the stopword list for Norwegian." + }, + { + "name": "Persian", + "value": "persian", + "description": "Selects the stopword list for Persian." + }, + { + "name": "Portuguese", + "value": "portuguese", + "description": "Selects the stopword list for Portuguese." + }, + { + "name": "Romanian", + "value": "romanian", + "description": "Selects the stopword list for Romanian." + }, + { + "name": "Russian", + "value": "russian", + "description": "Selects the stopword list for Russian." + }, + { + "name": "Sorani", + "value": "sorani", + "description": "Selects the stopword list for Sorani." + }, + { + "name": "Spanish", + "value": "spanish", + "description": "Selects the stopword list for Spanish." + }, + { + "name": "Swedish", + "value": "swedish", + "description": "Selects the stopword list for Swedish." + }, + { + "name": "Thai", + "value": "thai", + "description": "Selects the stopword list for Thai." + }, + { + "name": "Turkish", + "value": "turkish", + "description": "Selects the stopword list for Turkish." + } + ] + } + }, + "StopwordsTokenFilter": { + "type": "object", + "description": "Removes stop words from a token stream. This token filter is implemented using\nApache Lucene.", + "properties": { + "stopwords": { + "type": "array", + "description": "The list of stopwords. This property and the stopwords list property cannot\nboth be set.", + "items": { + "type": "string" + } + }, + "stopwordsList": { + "$ref": "#/definitions/StopwordsList", + "description": "A predefined list of stopwords to use. This property and the stopwords property\ncannot both be set. Default is English." + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." + }, + "removeTrailing": { + "type": "boolean", + "description": "A value indicating whether to ignore the last search term if it's a stop word.\nDefault is true.", + "default": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter" + }, + "SynonymMap": { + "type": "object", + "description": "Represents a synonym map definition.", + "properties": { + "name": { + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "description": "The format of the synonym map. Only the 'solr' format is currently supported.", + "enum": [ + "solr" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." + }, + "encryptionKey": { + "$ref": "#/definitions/SearchResourceEncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." + }, + "@odata.etag": { + "type": "string", + "description": "The ETag of the synonym map.", + "x-ms-client-name": "eTag" + } + }, + "required": [ + "name", + "format", + "synonyms" + ] + }, + "SynonymTokenFilter": { + "type": "object", + "description": "Matches single or multi-word synonyms in a token stream. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "synonyms": { + "type": "array", + "description": "A list of synonyms in following one of two formats: 1. incredible,\nunbelievable, fabulous => amazing - all terms on the left side of => symbol\nwill be replaced with all terms on its right side; 2. incredible, unbelievable,\nfabulous, amazing - comma separated list of equivalent words. Set the expand\noption to change how this list is interpreted.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether to case-fold input for matching. Default is false." + }, + "expand": { + "type": "boolean", + "description": "A value indicating whether all words in the list of synonyms (if => notation is\nnot used) will map to one another. If true, all words in the list of synonyms\n(if => notation is not used) will map to one another. The following list:\nincredible, unbelievable, fabulous, amazing is equivalent to: incredible,\nunbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing.\nIf false, the following list: incredible, unbelievable, fabulous, amazing will\nbe equivalent to: incredible, unbelievable, fabulous, amazing => incredible.\nDefault is true.", + "default": true + } + }, + "required": [ + "synonyms" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter" + }, + "TagScoringFunction": { + "type": "object", + "description": "Defines a function that boosts scores of documents with string values matching\na given list of tags.", + "properties": { + "tag": { + "$ref": "#/definitions/TagScoringParameters", + "description": "Parameter values for the tag scoring function." + } + }, + "required": [ + "tag" + ], + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "x-ms-discriminator-value": "tag" + }, + "TagScoringParameters": { + "type": "object", + "description": "Provides parameter values to a tag scoring function.", + "properties": { + "tagsParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the list of tags\nto compare against the target field." + } + }, + "required": [ + "tagsParameter" + ] + }, + "TextSplitMode": { + "type": "string", + "description": "A value indicating which split mode to perform.", + "enum": [ + "pages", + "sentences" + ], + "x-ms-enum": { + "name": "TextSplitMode", + "modelAsString": true, + "values": [ + { + "name": "Pages", + "value": "pages", + "description": "Split the text into individual pages." + }, + { + "name": "Sentences", + "value": "sentences", + "description": "Split the text into individual sentences." + } + ] + } + }, + "TextTranslationSkill": { + "type": "object", + "description": "A skill to translate text from one language to another.", + "properties": { + "defaultToLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents into for documents that don't specify\nthe to language explicitly." + }, + "defaultFromLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from for documents that don't specify\nthe from language explicitly." + }, + "suggestedFrom": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from when neither the fromLanguageCode\ninput nor the defaultFromLanguageCode parameter are provided, and the automatic\nlanguage detection is unsuccessful. Default is `en`." + } + }, + "required": [ + "defaultToLanguageCode" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill" + }, + "TextTranslationSkillLanguage": { + "type": "string", + "description": "The language codes supported for input text by TextTranslationSkill.", + "enum": [ + "af", + "ar", + "bn", + "bs", + "bg", + "yue", + "ca", + "zh-Hans", + "zh-Hant", + "hr", + "cs", + "da", + "nl", + "en", + "et", + "fj", + "fil", + "fi", + "fr", + "de", + "el", + "ht", + "he", + "hi", + "mww", + "hu", + "is", + "id", + "it", + "ja", + "sw", + "tlh", + "tlh-Latn", + "tlh-Piqd", + "ko", + "lv", + "lt", + "mg", + "ms", + "mt", + "nb", + "fa", + "pl", + "pt", + "pt-br", + "pt-PT", + "otq", + "ro", + "ru", + "sm", + "sr-Cyrl", + "sr-Latn", + "sk", + "sl", + "es", + "sv", + "ty", + "ta", + "te", + "th", + "to", + "tr", + "uk", + "ur", + "vi", + "cy", + "yua", + "ga", + "kn", + "mi", + "ml", + "pa" + ], + "x-ms-enum": { + "name": "TextTranslationSkillLanguage", + "modelAsString": true, + "values": [ + { + "name": "af", + "value": "af", + "description": "Afrikaans" + }, + { + "name": "ar", + "value": "ar", + "description": "Arabic" + }, + { + "name": "bn", + "value": "bn", + "description": "Bangla" + }, + { + "name": "bs", + "value": "bs", + "description": "Bosnian (Latin)" + }, + { + "name": "bg", + "value": "bg", + "description": "Bulgarian" + }, + { + "name": "yue", + "value": "yue", + "description": "Cantonese (Traditional)" + }, + { + "name": "ca", + "value": "ca", + "description": "Catalan" + }, + { + "name": "zh-Hans", + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "name": "zh-Hant", + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "name": "hr", + "value": "hr", + "description": "Croatian" + }, + { + "name": "cs", + "value": "cs", + "description": "Czech" + }, + { + "name": "da", + "value": "da", + "description": "Danish" + }, + { + "name": "nl", + "value": "nl", + "description": "Dutch" + }, + { + "name": "en", + "value": "en", + "description": "English" + }, + { + "name": "et", + "value": "et", + "description": "Estonian" + }, + { + "name": "fj", + "value": "fj", + "description": "Fijian" + }, + { + "name": "fil", + "value": "fil", + "description": "Filipino" + }, + { + "name": "fi", + "value": "fi", + "description": "Finnish" + }, + { + "name": "fr", + "value": "fr", + "description": "French" + }, + { + "name": "de", + "value": "de", + "description": "German" + }, + { + "name": "el", + "value": "el", + "description": "Greek" + }, + { + "name": "ht", + "value": "ht", + "description": "Haitian Creole" + }, + { + "name": "he", + "value": "he", + "description": "Hebrew" + }, + { + "name": "hi", + "value": "hi", + "description": "Hindi" + }, + { + "name": "mww", + "value": "mww", + "description": "Hmong Daw" + }, + { + "name": "hu", + "value": "hu", + "description": "Hungarian" + }, + { + "name": "is", + "value": "is", + "description": "Icelandic" + }, + { + "name": "id", + "value": "id", + "description": "Indonesian" + }, + { + "name": "it", + "value": "it", + "description": "Italian" + }, + { + "name": "ja", + "value": "ja", + "description": "Japanese" + }, + { + "name": "sw", + "value": "sw", + "description": "Kiswahili" + }, + { + "name": "tlh", + "value": "tlh", + "description": "Klingon" + }, + { + "name": "tlh-Latn", + "value": "tlh-Latn", + "description": "Klingon (Latin script)" + }, + { + "name": "tlh-Piqd", + "value": "tlh-Piqd", + "description": "Klingon (Klingon script)" + }, + { + "name": "ko", + "value": "ko", + "description": "Korean" + }, + { + "name": "lv", + "value": "lv", + "description": "Latvian" + }, + { + "name": "lt", + "value": "lt", + "description": "Lithuanian" + }, + { + "name": "mg", + "value": "mg", + "description": "Malagasy" + }, + { + "name": "ms", + "value": "ms", + "description": "Malay" + }, + { + "name": "mt", + "value": "mt", + "description": "Maltese" + }, + { + "name": "nb", + "value": "nb", + "description": "Norwegian" + }, + { + "name": "fa", + "value": "fa", + "description": "Persian" + }, + { + "name": "pl", + "value": "pl", + "description": "Polish" + }, + { + "name": "pt", + "value": "pt", + "description": "Portuguese" + }, + { + "name": "pt-br", + "value": "pt-br", + "description": "Portuguese (Brazil)" + }, + { + "name": "pt-PT", + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "name": "otq", + "value": "otq", + "description": "Queretaro Otomi" + }, + { + "name": "ro", + "value": "ro", + "description": "Romanian" + }, + { + "name": "ru", + "value": "ru", + "description": "Russian" + }, + { + "name": "sm", + "value": "sm", + "description": "Samoan" + }, + { + "name": "sr-Cyrl", + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "name": "sr-Latn", + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "name": "sk", + "value": "sk", + "description": "Slovak" + }, + { + "name": "sl", + "value": "sl", + "description": "Slovenian" + }, + { + "name": "es", + "value": "es", + "description": "Spanish" + }, + { + "name": "sv", + "value": "sv", + "description": "Swedish" + }, + { + "name": "ty", + "value": "ty", + "description": "Tahitian" + }, + { + "name": "ta", + "value": "ta", + "description": "Tamil" + }, + { + "name": "te", + "value": "te", + "description": "Telugu" + }, + { + "name": "th", + "value": "th", + "description": "Thai" + }, + { + "name": "to", + "value": "to", + "description": "Tongan" + }, + { + "name": "tr", + "value": "tr", + "description": "Turkish" + }, + { + "name": "uk", + "value": "uk", + "description": "Ukrainian" + }, + { + "name": "ur", + "value": "ur", + "description": "Urdu" + }, + { + "name": "vi", + "value": "vi", + "description": "Vietnamese" + }, + { + "name": "cy", + "value": "cy", + "description": "Welsh" + }, + { + "name": "yua", + "value": "yua", + "description": "Yucatec Maya" + }, + { + "name": "ga", + "value": "ga", + "description": "Irish" + }, + { + "name": "kn", + "value": "kn", + "description": "Kannada" + }, + { + "name": "mi", + "value": "mi", + "description": "Maori" + }, + { + "name": "ml", + "value": "ml", + "description": "Malayalam" + }, + { + "name": "pa", + "value": "pa", + "description": "Punjabi" + } + ] + } + }, + "TextWeights": { + "type": "object", + "description": "Defines weights on index fields for which matches should boost scoring in\nsearch queries.", + "properties": { + "weights": { + "type": "object", + "description": "The dictionary of per-field weights to boost document scoring. The keys are\nfield names and the values are the weights for each field.", + "additionalProperties": { + "format": "double", + "type": "number" + } + } + }, + "required": [ + "weights" + ] + }, + "TokenCharacterKind": { + "type": "string", + "description": "Represents classes of characters on which a token filter can operate.", + "enum": [ + "letter", + "digit", + "whitespace", + "punctuation", + "symbol" + ], + "x-ms-enum": { + "name": "TokenCharacterKind", + "modelAsString": true, + "values": [ + { + "name": "Letter", + "value": "letter", + "description": "Keeps letters in tokens." + }, + { + "name": "Digit", + "value": "digit", + "description": "Keeps digits in tokens." + }, + { + "name": "Whitespace", + "value": "whitespace", + "description": "Keeps whitespace in tokens." + }, + { + "name": "Punctuation", + "value": "punctuation", + "description": "Keeps punctuation in tokens." + }, + { + "name": "Symbol", + "value": "symbol", + "description": "Keeps symbols in tokens." + } + ] + } + }, + "TokenFilter": { + "type": "object", + "description": "Base type for token filters.", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "The name of the token filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." + } + }, + "discriminator": "@odata.type", + "required": [ + "@odata.type", + "name" + ] + }, + "TokenFilterName": { + "type": "string", + "description": "Defines the names of all token filters supported by the search engine.", + "enum": [ + "arabic_normalization", + "apostrophe", + "asciifolding", + "cjk_bigram", + "cjk_width", + "classic", + "common_grams", + "edgeNGram_v2", + "elision", + "german_normalization", + "hindi_normalization", + "indic_normalization", + "keyword_repeat", + "kstem", + "length", + "limit", + "lowercase", + "nGram_v2", + "persian_normalization", + "phonetic", + "porter_stem", + "reverse", + "scandinavian_normalization", + "scandinavian_folding", + "shingle", + "snowball", + "sorani_normalization", + "stemmer", + "stopwords", + "trim", + "truncate", + "unique", + "uppercase", + "word_delimiter" + ], + "x-ms-enum": { + "name": "TokenFilterName", + "modelAsString": true, + "values": [ + { + "name": "ArabicNormalization", + "value": "arabic_normalization", + "description": "A token filter that applies the Arabic normalizer to normalize the orthography.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" + }, + { + "name": "Apostrophe", + "value": "apostrophe", + "description": "Strips all characters after an apostrophe (including the apostrophe itself).\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" + }, + { + "name": "AsciiFolding", + "value": "asciifolding", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + }, + { + "name": "CjkBigram", + "value": "cjk_bigram", + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + }, + { + "name": "CjkWidth", + "value": "cjk_width", + "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the\nequivalent basic Latin, and half-width Katakana variants into the equivalent\nKana. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" + }, + { + "name": "Classic", + "value": "classic", + "description": "Removes English possessives, and dots from acronyms. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" + }, + { + "name": "CommonGram", + "value": "common_grams", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + }, + { + "name": "EdgeNGram", + "value": "edgeNGram_v2", + "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + { + "name": "Elision", + "value": "elision", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + }, + { + "name": "GermanNormalization", + "value": "german_normalization", + "description": "Normalizes German characters according to the heuristics of the German2\nsnowball algorithm. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" + }, + { + "name": "HindiNormalization", + "value": "hindi_normalization", + "description": "Normalizes text in Hindi to remove some differences in spelling variations. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" + }, + { + "name": "IndicNormalization", + "value": "indic_normalization", + "description": "Normalizes the Unicode representation of text in Indian languages. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" + }, + { + "name": "KeywordRepeat", + "value": "keyword_repeat", + "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" + }, + { + "name": "KStem", + "value": "kstem", + "description": "A high-performance kstem filter for English. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" + }, + { + "name": "Length", + "value": "length", + "description": "Removes words that are too long or too short. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + }, + { + "name": "Limit", + "value": "limit", + "description": "Limits the number of tokens while indexing. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + }, + { + "name": "Lowercase", + "value": "lowercase", + "description": "Normalizes token text to lower case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html" + }, + { + "name": "NGram", + "value": "nGram_v2", + "description": "Generates n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + { + "name": "PersianNormalization", + "value": "persian_normalization", + "description": "Applies normalization for Persian. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" + }, + { + "name": "Phonetic", + "value": "phonetic", + "description": "Create tokens for phonetic matches. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + }, + { + "name": "PorterStem", + "value": "porter_stem", + "description": "Uses the Porter stemming algorithm to transform the token stream. See\nhttp://tartarus.org/~martin/PorterStemmer" + }, + { + "name": "Reverse", + "value": "reverse", + "description": "Reverses the token string. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" + }, + { + "name": "ScandinavianNormalization", + "value": "scandinavian_normalization", + "description": "Normalizes use of the interchangeable Scandinavian characters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" + }, + { + "name": "ScandinavianFoldingNormalization", + "value": "scandinavian_folding", + "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also\ndiscriminates against use of double vowels aa, ae, ao, oe and oo, leaving just\nthe first one. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" + }, + { + "name": "Shingle", + "value": "shingle", + "description": "Creates combinations of tokens as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + }, + { + "name": "Snowball", + "value": "snowball", + "description": "A filter that stems words using a Snowball-generated stemmer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + }, + { + "name": "SoraniNormalization", + "value": "sorani_normalization", + "description": "Normalizes the Unicode representation of Sorani text. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" + }, + { + "name": "Stemmer", + "value": "stemmer", + "description": "Language specific stemming filter. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + }, + { + "name": "Stopwords", + "value": "stopwords", + "description": "Removes stop words from a token stream. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + }, + { + "name": "Trim", + "value": "trim", + "description": "Trims leading and trailing whitespace from tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" + }, + { + "name": "Truncate", + "value": "truncate", + "description": "Truncates the terms to a specific length. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + }, + { + "name": "Unique", + "value": "unique", + "description": "Filters out tokens with same text as the previous token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + }, + { + "name": "Uppercase", + "value": "uppercase", + "description": "Normalizes token text to upper case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" + }, + { + "name": "WordDelimiter", + "value": "word_delimiter", + "description": "Splits words into subwords and performs optional transformations on subword\ngroups." + } + ] + } + }, + "TruncateTokenFilter": { + "type": "object", + "description": "Truncates the terms to a specific length. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "length": { + "type": "integer", + "format": "int32", + "description": "The length at which terms will be truncated. Default and maximum is 300.", + "default": 300, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter" + }, + "UaxUrlEmailTokenizer": { + "type": "object", + "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using\nApache Lucene.", + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", + "default": 255, + "maximum": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/LexicalTokenizer" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" + }, + "UniqueTokenFilter": { + "type": "object", + "description": "Filters out tokens with same text as the previous token. This token filter is\nimplemented using Apache Lucene.", + "properties": { + "onlyOnSamePosition": { + "type": "boolean", + "description": "A value indicating whether to remove duplicates only at the same position.\nDefault is false." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter" + }, + "VectorEncodingFormat": { + "type": "string", + "description": "The encoding format for interpreting vector field contents.", + "enum": [ + "packedBit" + ], + "x-ms-enum": { + "name": "VectorEncodingFormat", + "modelAsString": true, + "values": [ + { + "name": "PackedBit", + "value": "packedBit", + "description": "Encoding format representing bits packed into a wider data type." + } + ] + } + }, + "VectorSearch": { + "type": "object", + "description": "Contains configuration options related to vector search.", + "properties": { + "profiles": { + "type": "array", + "description": "Defines combinations of configurations to use with vector search.", + "items": { + "$ref": "#/definitions/VectorSearchProfile" + }, + "x-ms-identifiers": [] + }, + "algorithms": { + "type": "array", + "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", + "items": { + "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" + }, + "x-ms-identifiers": [] + }, + "vectorizers": { + "type": "array", + "description": "Contains configuration options on how to vectorize text vector queries.", + "items": { + "$ref": "#/definitions/VectorSearchVectorizer" + }, + "x-ms-identifiers": [] + }, + "compressions": { + "type": "array", + "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", + "items": { + "$ref": "#/definitions/VectorSearchCompression" + }, + "x-ms-identifiers": [] + } + } + }, + "VectorSearchAlgorithmConfiguration": { + "type": "object", + "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular configuration." + }, + "kind": { + "$ref": "#/definitions/VectorSearchAlgorithmKind", + "description": "Type of VectorSearchAlgorithmConfiguration." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchAlgorithmKind": { + "type": "string", + "description": "The algorithm used for indexing and querying.", + "enum": [ + "hnsw", + "exhaustiveKnn" + ], + "x-ms-enum": { + "name": "VectorSearchAlgorithmKind", + "modelAsString": true, + "values": [ + { + "name": "Hnsw", + "value": "hnsw", + "description": "HNSW (Hierarchical Navigable Small World), a type of approximate nearest\nneighbors algorithm." + }, + { + "name": "ExhaustiveKnn", + "value": "exhaustiveKnn", + "description": "Exhaustive KNN algorithm which will perform brute-force search." + } + ] + } + }, + "VectorSearchAlgorithmMetric": { + "type": "string", + "description": "The similarity metric to use for vector comparisons. It is recommended to\nchoose the same similarity metric as the embedding model was trained on.", + "enum": [ + "cosine", + "euclidean", + "dotProduct", + "hamming" + ], + "x-ms-enum": { + "name": "VectorSearchAlgorithmMetric", + "modelAsString": true, + "values": [ + { + "name": "Cosine", + "value": "cosine", + "description": "Measures the angle between vectors to quantify their similarity, disregarding\nmagnitude. The smaller the angle, the closer the similarity." + }, + { + "name": "Euclidean", + "value": "euclidean", + "description": "Computes the straight-line distance between vectors in a multi-dimensional\nspace. The smaller the distance, the closer the similarity." + }, + { + "name": "DotProduct", + "value": "dotProduct", + "description": "Calculates the sum of element-wise products to gauge alignment and magnitude\nsimilarity. The larger and more positive, the closer the similarity." + }, + { + "name": "Hamming", + "value": "hamming", + "description": "Only applicable to bit-packed binary data types. Determines dissimilarity by\ncounting differing positions in binary vectors. The fewer differences, the\ncloser the similarity." + } + ] + } + }, + "VectorSearchCompression": { + "type": "object", + "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular configuration." + }, + "rerankWithOriginalVectors": { + "type": "boolean", + "description": "If set to true, once the ordered set of results calculated using compressed\nvectors are obtained, they will be reranked again by recalculating the\nfull-precision similarity scores. This will improve recall at the expense of\nlatency.", + "default": true + }, + "defaultOversampling": { + "type": "number", + "format": "double", + "description": "Default oversampling factor. Oversampling will internally request more\ndocuments (specified by this multiplier) in the initial search. This increases\nthe set of results that will be reranked using recomputed similarity scores\nfrom full-precision vectors. Minimum value is 1, meaning no oversampling (1x).\nThis parameter can only be set when rerankWithOriginalVectors is true. Higher\nvalues improve recall at the expense of latency." + }, + "kind": { + "$ref": "#/definitions/VectorSearchCompressionKind", + "description": "Type of VectorSearchCompression." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchCompressionKind": { + "type": "string", + "description": "The compression method used for indexing and querying.", + "enum": [ + "scalarQuantization", + "binaryQuantization" + ], + "x-ms-enum": { + "name": "VectorSearchCompressionKind", + "modelAsString": true, + "values": [ + { + "name": "ScalarQuantization", + "value": "scalarQuantization", + "description": "Scalar Quantization, a type of compression method. In scalar quantization, the\noriginal vectors values are compressed to a narrower type by discretizing and\nrepresenting each component of a vector using a reduced set of quantized\nvalues, thereby reducing the overall data size." + }, + { + "name": "BinaryQuantization", + "value": "binaryQuantization", + "description": "Binary Quantization, a type of compression method. In binary quantization, the\noriginal vectors values are compressed to the narrower binary type by discretizing\nand representing each component of a vector using binary values,\nthereby reducing the overall data size." + } + ] + } + }, + "VectorSearchCompressionTarget": { + "type": "string", + "description": "The quantized data type of compressed vector values.", + "enum": [ + "int8" + ], + "x-ms-enum": { + "name": "VectorSearchCompressionTarget", + "modelAsString": true, + "values": [ + { + "name": "Int8", + "value": "int8", + "description": "8-bit signed integer." + } + ] + } + }, + "VectorSearchProfile": { + "type": "object", + "description": "Defines a combination of configurations to use with vector search.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular vector search profile." + }, + "algorithm": { + "type": "string", + "description": "The name of the vector search algorithm configuration that specifies the\nalgorithm and optional parameters." + }, + "vectorizer": { + "type": "string", + "description": "The name of the vectorization being configured for use with vector search." + }, + "compression": { + "type": "string", + "description": "The name of the compression method configuration that specifies the compression\nmethod and optional parameters." + } + }, + "required": [ + "name", + "algorithm" + ] + }, + "VectorSearchVectorizer": { + "type": "object", + "description": "Specifies the vectorization method to be used during query time.", + "properties": { + "name": { + "type": "string", + "description": "The name to associate with this particular vectorization method." + }, + "kind": { + "$ref": "#/definitions/VectorSearchVectorizerKind", + "description": "Type of VectorSearchVectorizer." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "VectorSearchVectorizerKind": { + "type": "string", + "description": "The vectorization method to be used during query time.", + "enum": [ + "azureOpenAI", + "customWebApi" + ], + "x-ms-enum": { + "name": "VectorSearchVectorizerKind", + "modelAsString": true, + "values": [ + { + "name": "AzureOpenAI", + "value": "azureOpenAI", + "description": "Generate embeddings using an Azure OpenAI resource at query time." + }, + { + "name": "CustomWebApi", + "value": "customWebApi", + "description": "Generate embeddings using a custom web endpoint at query time." + } + ] + } + }, + "VisualFeature": { + "type": "string", + "description": "The strings indicating what visual feature types to return.", + "enum": [ + "adult", + "brands", + "categories", + "description", + "faces", + "objects", + "tags" + ], + "x-ms-enum": { + "name": "VisualFeature", + "modelAsString": true, + "values": [ + { + "name": "Adult", + "value": "adult", + "description": "Visual features recognized as adult persons." + }, + { + "name": "Brands", + "value": "brands", + "description": "Visual features recognized as commercial brands." + }, + { + "name": "Categories", + "value": "categories", + "description": "Categories." + }, + { + "name": "Description", + "value": "description", + "description": "Description." + }, + { + "name": "Faces", + "value": "faces", + "description": "Visual features recognized as people faces." + }, + { + "name": "Objects", + "value": "objects", + "description": "Visual features recognized as objects." + }, + { + "name": "Tags", + "value": "tags", + "description": "Tags." + } + ] + } + }, + "WebApiSkill": { + "type": "object", + "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by\nhaving it call your custom code.", + "properties": { + "uri": { + "type": "string", + "description": "The url for the Web API." + }, + "httpHeaders": { + "type": "object", + "description": "The headers required to make the http request.", + "additionalProperties": { + "type": "string" + } + }, + "httpMethod": { + "type": "string", + "description": "The method for the http request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The desired batch size which indicates number of documents." + }, + "degreeOfParallelism": { + "type": "integer", + "format": "int32", + "description": "If set, the number of parallel calls that can be made to the Web API." + }, + "authResourceId": { + "type": "string", + "description": "Applies to custom skills that connect to external code in an Azure function or\nsome other application that provides the transformations. This value should be\nthe application ID created for the function or app when it was registered with\nAzure Active Directory. When specified, the custom skill connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." + } + }, + "required": [ + "uri" + ], + "allOf": [ + { + "$ref": "#/definitions/SearchIndexerSkill" + } + ], + "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill" + }, + "WebApiVectorizer": { + "type": "object", + "description": "Specifies a user-defined vectorizer for generating the vector embedding of a\nquery string. Integration of an external vectorizer is achieved using the\ncustom Web API interface of a skillset.", + "properties": { + "customWebApiParameters": { + "$ref": "#/definitions/WebApiVectorizerParameters", + "description": "Specifies the properties of the user-defined vectorizer." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VectorSearchVectorizer" + } + ], + "x-ms-discriminator-value": "customWebApi" + }, + "WebApiVectorizerParameters": { + "type": "object", + "description": "Specifies the properties for connecting to a user-defined vectorizer.", + "properties": { + "uri": { + "type": "string", + "format": "uri", + "description": "The URI of the Web API providing the vectorizer." + }, + "httpHeaders": { + "type": "object", + "description": "The headers required to make the HTTP request.", + "additionalProperties": { + "type": "string" + } + }, + "httpMethod": { + "type": "string", + "description": "The method for the HTTP request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "authResourceId": { + "type": "string", + "description": "Applies to custom endpoints that connect to external code in an Azure function\nor some other application that provides the transformations. This value should\nbe the application ID created for the function or app when it was registered\nwith Azure Active Directory. When specified, the vectorization connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." + } + } + }, + "WordDelimiterTokenFilter": { + "type": "object", + "description": "Splits words into subwords and performs optional transformations on subword\ngroups. This token filter is implemented using Apache Lucene.", + "properties": { + "generateWordParts": { + "type": "boolean", + "description": "A value indicating whether to generate part words. If set, causes parts of\nwords to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\".\nDefault is true.", + "default": true + }, + "generateNumberParts": { + "type": "boolean", + "description": "A value indicating whether to generate number subwords. Default is true.", + "default": true + }, + "catenateWords": { + "type": "boolean", + "description": "A value indicating whether maximum runs of word parts will be catenated. For\nexample, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default\nis false." + }, + "catenateNumbers": { + "type": "boolean", + "description": "A value indicating whether maximum runs of number parts will be catenated. For\nexample, if this is set to true, \"1-2\" becomes \"12\". Default is false." + }, + "catenateAll": { + "type": "boolean", + "description": "A value indicating whether all subword parts will be catenated. For example, if\nthis is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." + }, + "splitOnCaseChange": { + "type": "boolean", + "description": "A value indicating whether to split words on caseChange. For example, if this\nis set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true.", + "default": true + }, + "preserveOriginal": { + "type": "boolean", + "description": "A value indicating whether original words will be preserved and added to the\nsubword list. Default is false." + }, + "splitOnNumerics": { + "type": "boolean", + "description": "A value indicating whether to split on numbers. For example, if this is set to\ntrue, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true.", + "default": true + }, + "stemEnglishPossessive": { + "type": "boolean", + "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is\ntrue.", + "default": true + }, + "protectedWords": { + "type": "array", + "description": "A list of tokens to protect from being delimited.", + "items": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter" + } + }, + "parameters": { + "Azure.Core.ClientRequestIdHeader": { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-parameter-location": "method", + "x-ms-client-name": "clientRequestId" + }, + "Azure.Core.Foundations.ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "x-ms-client-name": "apiVersion" + } + } +} From 880599ac8e77ce2ee0f655f013d2eb90d45a69d4 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 14:54:27 -0800 Subject: [PATCH 60/78] add examples --- .../SearchIndexAutocompleteDocumentsGet.json | 40 + .../SearchIndexAutocompleteDocumentsPost.json | 38 + .../2024-07-01/SearchIndexCountDocuments.json | 14 + .../2024-07-01/SearchIndexGetDocument.json | 25 + .../2024-07-01/SearchIndexIndexDocuments.json | 96 ++ .../SearchIndexSearchDocumentsGet.json | 88 ++ .../SearchIndexSearchDocumentsPost.json | 121 +++ ...SearchIndexSearchDocumentsSemanticGet.json | 54 ++ ...earchIndexSearchDocumentsSemanticPost.json | 71 ++ .../SearchIndexSuggestDocumentsGet.json | 49 + .../SearchIndexSuggestDocumentsPost.json | 41 + .../SearchServiceCreateDataSource.json | 72 ++ .../2024-07-01/SearchServiceCreateIndex.json | 702 ++++++++++++++ .../SearchServiceCreateIndexer.json | 60 ++ ...SearchServiceCreateOrUpdateDataSource.json | 97 ++ .../SearchServiceCreateOrUpdateIndex.json | 865 ++++++++++++++++++ .../SearchServiceCreateOrUpdateIndexer.json | 80 ++ .../SearchServiceCreateOrUpdateSkillset.json | 389 ++++++++ ...SearchServiceCreateOrUpdateSynonymMap.json | 49 + .../SearchServiceCreateSkillset.json | 309 +++++++ .../SearchServiceCreateSynonymMap.json | 40 + .../SearchServiceDeleteDataSource.json | 13 + .../2024-07-01/SearchServiceDeleteIndex.json | 13 + .../SearchServiceDeleteIndexer.json | 13 + .../SearchServiceDeleteSkillset.json | 13 + .../SearchServiceDeleteSynonymMap.json | 13 + .../SearchServiceGetDataSource.json | 43 + .../2024-07-01/SearchServiceGetIndex.json | 346 +++++++ .../SearchServiceGetIndexStatistics.json | 18 + .../2024-07-01/SearchServiceGetIndexer.json | 38 + .../SearchServiceGetIndexerStatus.json | 91 ++ .../SearchServiceGetServiceStatistics.json | 54 ++ .../2024-07-01/SearchServiceGetSkillset.json | 146 +++ .../SearchServiceGetSynonymMap.json | 27 + .../2024-07-01/SearchServiceIndexAnalyze.json | 39 + .../SearchServiceListDataSources.json | 47 + .../2024-07-01/SearchServiceListIndexers.json | 78 ++ .../2024-07-01/SearchServiceListIndexes.json | 317 +++++++ .../SearchServiceListSkillsets.json | 150 +++ .../SearchServiceListSynonymMaps.json | 33 + .../2024-07-01/SearchServiceResetIndexer.json | 12 + .../2024-07-01/SearchServiceRunIndexer.json | 12 + .../SearchIndexAutocompleteDocumentsGet.json | 40 + .../SearchIndexAutocompleteDocumentsPost.json | 38 + .../2024-07-01/SearchIndexCountDocuments.json | 14 + .../2024-07-01/SearchIndexGetDocument.json | 25 + .../2024-07-01/SearchIndexIndexDocuments.json | 96 ++ .../SearchIndexSearchDocumentsGet.json | 88 ++ .../SearchIndexSearchDocumentsPost.json | 121 +++ ...SearchIndexSearchDocumentsSemanticGet.json | 54 ++ ...earchIndexSearchDocumentsSemanticPost.json | 71 ++ .../SearchIndexSuggestDocumentsGet.json | 49 + .../SearchIndexSuggestDocumentsPost.json | 41 + .../SearchServiceCreateDataSource.json | 72 ++ .../2024-07-01/SearchServiceCreateIndex.json | 702 ++++++++++++++ .../SearchServiceCreateIndexer.json | 60 ++ ...SearchServiceCreateOrUpdateDataSource.json | 97 ++ .../SearchServiceCreateOrUpdateIndex.json | 865 ++++++++++++++++++ .../SearchServiceCreateOrUpdateIndexer.json | 80 ++ .../SearchServiceCreateOrUpdateSkillset.json | 389 ++++++++ ...SearchServiceCreateOrUpdateSynonymMap.json | 49 + .../SearchServiceCreateSkillset.json | 309 +++++++ .../SearchServiceCreateSynonymMap.json | 40 + .../SearchServiceDeleteDataSource.json | 13 + .../2024-07-01/SearchServiceDeleteIndex.json | 13 + .../SearchServiceDeleteIndexer.json | 13 + .../SearchServiceDeleteSkillset.json | 13 + .../SearchServiceDeleteSynonymMap.json | 13 + .../SearchServiceGetDataSource.json | 43 + .../2024-07-01/SearchServiceGetIndex.json | 346 +++++++ .../SearchServiceGetIndexStatistics.json | 18 + .../2024-07-01/SearchServiceGetIndexer.json | 38 + .../SearchServiceGetIndexerStatus.json | 91 ++ .../SearchServiceGetServiceStatistics.json | 54 ++ .../2024-07-01/SearchServiceGetSkillset.json | 146 +++ .../SearchServiceGetSynonymMap.json | 27 + .../2024-07-01/SearchServiceIndexAnalyze.json | 39 + .../SearchServiceListDataSources.json | 47 + .../2024-07-01/SearchServiceListIndexers.json | 78 ++ .../2024-07-01/SearchServiceListIndexes.json | 317 +++++++ .../SearchServiceListSkillsets.json | 150 +++ .../SearchServiceListSynonymMaps.json | 33 + .../2024-07-01/SearchServiceResetIndexer.json | 12 + .../2024-07-01/SearchServiceRunIndexer.json | 12 + 84 files changed, 9632 insertions(+) create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexCountDocuments.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexGetDocument.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexIndexDocuments.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsGet.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsPost.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateDataSource.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndex.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndexer.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSkillset.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSynonymMap.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteDataSource.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndex.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndexer.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSkillset.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSynonymMap.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetDataSource.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndex.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexStatistics.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexer.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexerStatus.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetServiceStatistics.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSkillset.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSynonymMap.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceIndexAnalyze.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListDataSources.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexers.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexes.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSkillsets.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSynonymMaps.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceResetIndexer.json create mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceRunIndexer.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexCountDocuments.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexGetDocument.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexIndexDocuments.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsGet.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsPost.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateDataSource.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndex.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndexer.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSkillset.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSynonymMap.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteDataSource.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndex.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndexer.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSkillset.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSynonymMap.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetDataSource.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndex.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexStatistics.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexer.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexerStatus.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetServiceStatistics.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSkillset.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSynonymMap.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceIndexAnalyze.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListDataSources.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexers.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexes.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSkillsets.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSynonymMaps.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceResetIndexer.json create mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceRunIndexer.json diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json new file mode 100644 index 000000000000..da2054924fcc --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json @@ -0,0 +1,40 @@ +{ + "operationId": "DocumentsOperations_AutocompleteGet", + "title": "SearchIndexAutocompleteDocumentsGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": [ + "title", + "description" + ], + "top": 10 + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json new file mode 100644 index 000000000000..b8251df3fd83 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json @@ -0,0 +1,38 @@ +{ + "operationId": "DocumentsOperations_AutocompletePost", + "title": "SearchIndexAutocompleteDocumentsPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "autocompleteRequest": { + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": "title,description", + "top": 10 + } + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexCountDocuments.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexCountDocuments.json new file mode 100644 index 000000000000..9e860ca33e9a --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexCountDocuments.json @@ -0,0 +1,14 @@ +{ + "operationId": "DocumentsOperations_Count", + "title": "SearchIndexCountDocuments", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": 427 + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexGetDocument.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexGetDocument.json new file mode 100644 index 000000000000..4c3a27feb142 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexGetDocument.json @@ -0,0 +1,25 @@ +{ + "operationId": "DocumentsOperations_Get", + "title": "SearchIndexGetDocument", + "parameters": { + "endpoint": "https://exampleservice.search.windows.net", + "indexName": "getdocumentexample", + "key": "1", + "$select": [ + "docId", + "title", + "description" + ], + "api-version": "2024-07-01", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "docId": "1", + "title": "Nice Hotel", + "description": "Cheapest hotel in town" + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexIndexDocuments.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexIndexDocuments.json new file mode 100644 index 000000000000..15f3d7781789 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexIndexDocuments.json @@ -0,0 +1,96 @@ +{ + "operationId": "DocumentsOperations_Index", + "title": "SearchIndexIndexDocuments", + "parameters": { + "endpoint": "https://exampleservice.search.windows.net", + "indexName": "indexdocumentsexample", + "api-version": "2024-07-01", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "batch": { + "value": [ + { + "@search.action": "upload", + "docId": "1", + "title": "Fancy Stay", + "description": "Best hotel in town" + }, + { + "@search.action": "merge", + "docId": "2", + "title": "Roach Motel" + }, + { + "@search.action": "mergeOrUpload", + "docId": "3", + "title": "Econo Motel" + }, + { + "@search.action": "delete", + "docId": "4" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "2", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + }, + "207": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 201 + }, + { + "key": "2", + "status": false, + "errorMessage": "Document not found.", + "statusCode": 404 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 201 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsGet.json new file mode 100644 index 000000000000..dbb98fecc80e --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsGet.json @@ -0,0 +1,88 @@ +{ + "operationId": "DocumentsOperations_SearchGet", + "title": "SearchIndexSearchDocumentsGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$count": true, + "facet": [ + "category,count:10,sort:count" + ], + "$filter": "rating gt 10", + "highlight": [ + "title" + ], + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "queryType": "simple", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": [ + "title", + "description" + ], + "searchMode": "any", + "$select": [ + "docId", + "title", + "description" + ], + "$skip": 100, + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.coverage": 80, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsPost.json new file mode 100644 index 000000000000..65f518cea193 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsPost.json @@ -0,0 +1,121 @@ +{ + "operationId": "DocumentsOperations_SearchPost", + "title": "SearchIndexSearchDocumentsPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "searchRequest": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "description", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "rating desc", + "queryType": "simple", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "category,description", + "searchMode": "any", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "select": "hotelId,category,description", + "skip": 0, + "top": 10, + "vectorQueries": [ + { + "kind": "vector", + "vector": [ + 0.103, + 0.0712, + 0.0852, + 0.1547, + 0.1183 + ], + "fields": "descriptionEmbedding", + "k": 5, + "exhaustive": true, + "oversampling": 20.0, + "weight": 2.0 + } + ], + "vectorFilterMode": "preFilter" + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "@search.nextPageParameters": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "title", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "search.score() desc,rating desc", + "queryType": "simple", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "title,description", + "searchMode": "any", + "select": "docId,title,description", + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json new file mode 100644 index 000000000000..e520c69d94f5 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json @@ -0,0 +1,54 @@ +{ + "operationId": "DocumentsOperations_SearchGet", + "title": "SearchIndexSearchDocumentsSemanticGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json new file mode 100644 index 000000000000..f28437d390df --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json @@ -0,0 +1,71 @@ +{ + "operationId": "DocumentsOperations_SearchPost", + "title": "SearchIndexSearchDocumentsSemanticPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "searchRequest": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "@search.nextPageParameters": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780, + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json new file mode 100644 index 000000000000..de0013953f7c --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json @@ -0,0 +1,49 @@ +{ + "operationId": "DocumentsOperations_SuggestGet", + "title": "SearchIndexSuggestDocumentsGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$filter": "rating gt 10", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "search": "hote", + "searchFields": [ + "title" + ], + "suggesterName": "sg", + "$select": [ + "docId", + "title", + "description" + ], + "$top": 10 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json new file mode 100644 index 000000000000..b80b58298472 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json @@ -0,0 +1,41 @@ +{ + "operationId": "DocumentsOperations_SuggestPost", + "title": "SearchIndexSuggestDocumentsPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "suggestRequest": { + "filter": "rating gt 4.0", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "orderby": "rating desc", + "search": "hote", + "searchFields": "title", + "select": "docId,title,description", + "suggesterName": "sg", + "top": 10 + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateDataSource.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateDataSource.json new file mode 100644 index 000000000000..882fae5767e5 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateDataSource.json @@ -0,0 +1,72 @@ +{ + "operationId": "DataSourcesOperations_Create", + "title": "SearchServiceCreateDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndex.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndex.json new file mode 100644 index 000000000000..85f8fcc39e6f --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndex.json @@ -0,0 +1,702 @@ +{ + "operationId": "IndexesOperations_Create", + "title": "SearchServiceCreateIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_notstored", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": false, + "stored": false, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_forBQ", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswBQProfile" + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "nameEmbedding", + "type": "Collection(Edm.Half)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myHnswSQProfile", + "algorithm": "myHnsw", + "compression": "mySQ8" + }, + { + "name": "myHnswBQProfile", + "algorithm": "myHnsw", + "compression": "myBQ" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "m": 4, + "metric": "cosine" + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + }, + { + "name": "myBQ", + "kind": "binaryQuantization", + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile", + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding_notstored", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": false, + "stored": false, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_forBQ", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswBQProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "nameEmbedding", + "type": "Collection(Edm.Half)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "fieldName": "location", + "interpolation": "logarithmic", + "type": "distance", + "boost": 5.0, + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenFilters": [], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myHnswSQProfile", + "algorithm": "myHnsw", + "compression": "mySQ8" + }, + { + "name": "myHnswBQProfile", + "algorithm": "myHnsw", + "vectorizer": "myOpenAi", + "compression": "myBQ" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + }, + { + "name": "myBQ", + "kind": "binaryQuantization", + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndexer.json new file mode 100644 index 000000000000..88c81c4060da --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndexer.json @@ -0,0 +1,60 @@ +{ + "operationId": "IndexersOperations_Create", + "title": "SearchServiceCreateIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "indexer": { + "name": "myindexer", + "description": "an indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myindexer", + "description": "an indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json new file mode 100644 index 000000000000..5601c4b456a0 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json @@ -0,0 +1,97 @@ +{ + "operationId": "DataSourcesOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json new file mode 100644 index 000000000000..bf9f68a28622 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json @@ -0,0 +1,865 @@ +{ + "operationId": "IndexesOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "allowIndexDowntime": false, + "api-version": "2024-07-01", + "Prefer": "return=representation", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "searchable": true, + "retrievable": true + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "m": 4, + "metric": "cosine" + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5.0, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + }, + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json new file mode 100644 index 000000000000..6090c4bcaafb --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json @@ -0,0 +1,80 @@ +{ + "operationId": "IndexersOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "indexer": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json new file mode 100644 index 000000000000..b510c95a8df8 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json @@ -0,0 +1,389 @@ +{ + "operationId": "SkillsetsOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json new file mode 100644 index 000000000000..cf8f6c9d07af --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json @@ -0,0 +1,49 @@ +{ + "operationId": "SynonymMapsOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSkillset.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSkillset.json new file mode 100644 index 000000000000..3feeca88e25d --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSkillset.json @@ -0,0 +1,309 @@ +{ + "operationId": "SkillsetsOperations_Create", + "title": "SearchServiceCreateSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "knowledgeStore": { + "storageConnectionString": "DefaultEndpointsProtocol=https;AccountName=myStorage;AccountKey=myStorageKey;EndpointSuffix=core.windows.net", + "projections": [ + { + "tables": [ + { + "tableName": "Reviews", + "generatedKeyName": "ReviewId", + "source": "/document/Review", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Sentences", + "generatedKeyName": "SentenceId", + "source": "/document/Review/Sentences/*", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "KeyPhrases", + "generatedKeyName": "KeyPhraseId", + "source": "/document/Review/Sentences/*/KeyPhrases", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Entities", + "generatedKeyName": "EntityId", + "source": "/document/Review/Sentences/*/Entities/*", + "sourceContext": null, + "inputs": [] + } + ] + }, + { + "objects": [ + { + "storageContainer": "Reviews", + "source": "/document/Review", + "generatedKeyName": "/document/Review/Id" + } + ] + } + ] + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSynonymMap.json new file mode 100644 index 000000000000..7146356cd274 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSynonymMap.json @@ -0,0 +1,40 @@ +{ + "operationId": "SynonymMapsOperations_Create", + "title": "SearchServiceCreateSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "myApplicationSecret" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteDataSource.json new file mode 100644 index 000000000000..af932181bab3 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteDataSource.json @@ -0,0 +1,13 @@ +{ + "operationId": "DataSourcesOperations_Delete", + "title": "SearchServiceDeleteDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndex.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndex.json new file mode 100644 index 000000000000..633ed9d4d6c8 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndex.json @@ -0,0 +1,13 @@ +{ + "operationId": "IndexesOperations_Delete", + "title": "SearchServiceDeleteIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndexer.json new file mode 100644 index 000000000000..404fdf7f7d04 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndexer.json @@ -0,0 +1,13 @@ +{ + "operationId": "IndexersOperations_Delete", + "title": "SearchServiceDeleteIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSkillset.json new file mode 100644 index 000000000000..56b8da5d8118 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSkillset.json @@ -0,0 +1,13 @@ +{ + "operationId": "SkillsetsOperations_Delete", + "title": "SearchServiceDeleteSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSynonymMap.json new file mode 100644 index 000000000000..d9e27a8e60a5 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSynonymMap.json @@ -0,0 +1,13 @@ +{ + "operationId": "SynonymMapsOperations_Delete", + "title": "SearchServiceDeleteSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetDataSource.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetDataSource.json new file mode 100644 index 000000000000..48017bfdd32e --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetDataSource.json @@ -0,0 +1,43 @@ +{ + "operationId": "DataSourcesOperations_Get", + "title": "SearchServiceGetDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndex.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndex.json new file mode 100644 index 000000000000..23d3c2e2fb78 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndex.json @@ -0,0 +1,346 @@ +{ + "operationId": "IndexesOperations_Get", + "title": "SearchServiceGetIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5.0, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexStatistics.json new file mode 100644 index 000000000000..252d25544656 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexStatistics.json @@ -0,0 +1,18 @@ +{ + "operationId": "IndexesOperations_GetStatistics", + "title": "SearchServiceGetIndexStatistics", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "documentCount": 239572, + "storageSize": 72375920, + "vectorIndexSize": 123456 + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexer.json new file mode 100644 index 000000000000..532bc68f6ce6 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexer.json @@ -0,0 +1,38 @@ +{ + "operationId": "IndexersOperations_Get", + "title": "SearchServiceGetIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexerStatus.json new file mode 100644 index 000000000000..8b369c8eea0c --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexerStatus.json @@ -0,0 +1,91 @@ +{ + "operationId": "IndexersOperations_GetStatus", + "title": "SearchServiceGetIndexerStatus", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "status": "running", + "lastResult": { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + "executionHistory": [ + { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + { + "status": "transientFailure", + "errorMessage": null, + "startTime": "2014-11-26T03:28:10.125Z", + "endTime": "2014-11-26T03:28:12.007Z", + "errors": [ + { + "key": "", + "errorMessage": "Document key cannot be missing or empty.", + "statusCode": 400, + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 1", + "errorMessage": "Could not read the value of column 'foo' at index '0'.", + "statusCode": 400, + "name": "DocumentExtraction.AzureBlob.MyDataSource", + "details": "The file could not be parsed.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388" + } + ], + "warnings": [ + { + "key": "document id", + "message": "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob.", + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 2", + "message": "Document was truncated to 50000 characters.", + "name": "Enrichment.LanguageDetectionSkill.#4", + "details": "The skill did something that didn't break anything, nonetheless something we didn't expect happened, so it might be worth double checking.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2099692" + } + ], + "itemsProcessed": 1, + "itemsFailed": 2, + "initialTrackingState": null, + "finalTrackingState": null + } + ], + "limits": { + "maxRunTime": "PT22H", + "maxDocumentExtractionSize": 256000000, + "maxDocumentContentCharactersToExtract": 4000000 + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetServiceStatistics.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetServiceStatistics.json new file mode 100644 index 000000000000..743a516c6f85 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetServiceStatistics.json @@ -0,0 +1,54 @@ +{ + "operationId": "GetServiceStatistics", + "title": "SearchServiceGetServiceStatistics", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "counters": { + "documentCount": { + "usage": 7093, + "quota": 10000 + }, + "indexesCount": { + "usage": 3, + "quota": 3 + }, + "indexersCount": { + "usage": 3, + "quota": 3 + }, + "dataSourcesCount": { + "usage": 1, + "quota": 3 + }, + "storageSize": { + "usage": 914529, + "quota": 52428800 + }, + "synonymMaps": { + "usage": 2, + "quota": 3 + }, + "skillsetCount": { + "usage": 1, + "quota": 3 + }, + "vectorIndexSize": { + "usage": 123456, + "quota": 26214400 + } + }, + "limits": { + "maxFieldsPerIndex": 1000, + "maxFieldNestingDepthPerIndex": 10, + "maxComplexCollectionFieldsPerIndex": 100, + "maxComplexObjectsInCollectionsPerDocument": 3000 + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSkillset.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSkillset.json new file mode 100644 index 000000000000..cee2ffba575e --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSkillset.json @@ -0,0 +1,146 @@ +{ + "operationId": "SkillsetsOperations_Get", + "title": "SearchServiceGetSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSynonymMap.json new file mode 100644 index 000000000000..b1bb6b5c71d9 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSynonymMap.json @@ -0,0 +1,27 @@ +{ + "operationId": "SynonymMapsOperations_Get", + "title": "SearchServiceGetSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceIndexAnalyze.json new file mode 100644 index 000000000000..32d8385754e8 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceIndexAnalyze.json @@ -0,0 +1,39 @@ +{ + "operationId": "IndexesOperations_Analyze", + "title": "SearchServiceIndexAnalyze", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01", + "request": { + "text": "Text to analyze", + "analyzer": "standard.lucene" + } + }, + "responses": { + "200": { + "body": { + "tokens": [ + { + "token": "text", + "startOffset": 0, + "endOffset": 4, + "position": 0 + }, + { + "token": "to", + "startOffset": 5, + "endOffset": 7, + "position": 1 + }, + { + "token": "analyze", + "startOffset": 8, + "endOffset": 15, + "position": 2 + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListDataSources.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListDataSources.json new file mode 100644 index 000000000000..6a8611843e0a --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListDataSources.json @@ -0,0 +1,47 @@ +{ + "operationId": "DataSourcesOperations_List", + "title": "SearchServiceListDataSources", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexers.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexers.json new file mode 100644 index 000000000000..d853b67419ac --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexers.json @@ -0,0 +1,78 @@ +{ + "operationId": "IndexersOperations_List", + "title": "SearchServiceListIndexers", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydocdbdatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + }, + { + "name": "myotherindexer", + "description": "another cool indexer", + "dataSourceName": "myblobdatasource", + "targetIndexName": "orders", + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "batchSize": 15 + }, + "fieldMappings": [ + { + "sourceFieldName": "PersonName", + "targetFieldName": "FirstName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 0 + } + } + }, + { + "sourceFieldName": "PersonName", + "targetFieldName": "LastName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 1 + } + } + } + ], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexes.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexes.json new file mode 100644 index 000000000000..b89b350a43ca --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexes.json @@ -0,0 +1,317 @@ +{ + "operationId": "IndexesOperations_List", + "title": "SearchServiceListIndexes", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + } + }, + { + "name": "testindex", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": false, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "hidden", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": false, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [], + "defaultScoringProfile": null, + "suggesters": [], + "analyzers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": null, + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSkillsets.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSkillsets.json new file mode 100644 index 000000000000..b4bdd7cd81e5 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSkillsets.json @@ -0,0 +1,150 @@ +{ + "operationId": "SkillsetsOperations_List", + "title": "SearchServiceListSkillsets", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSynonymMaps.json new file mode 100644 index 000000000000..53c8134271c4 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSynonymMaps.json @@ -0,0 +1,33 @@ +{ + "operationId": "SynonymMapsOperations_List", + "title": "SearchServiceListSynonymMaps", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + }, + { + "name": "myothersynonymmap", + "format": "solr", + "synonyms": "couch, sofa, chesterfield\npop, soda\ntoque, hat", + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceResetIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceResetIndexer.json new file mode 100644 index 000000000000..a9d763f69655 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceResetIndexer.json @@ -0,0 +1,12 @@ +{ + "operationId": "IndexersOperations_Reset", + "title": "SearchServiceResetIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "204": {} + } +} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceRunIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceRunIndexer.json new file mode 100644 index 000000000000..97604abf06b3 --- /dev/null +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceRunIndexer.json @@ -0,0 +1,12 @@ +{ + "operationId": "IndexersOperations_Run", + "title": "SearchServiceRunIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "202": {} + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json new file mode 100644 index 000000000000..da2054924fcc --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json @@ -0,0 +1,40 @@ +{ + "operationId": "DocumentsOperations_AutocompleteGet", + "title": "SearchIndexAutocompleteDocumentsGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": [ + "title", + "description" + ], + "top": 10 + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json new file mode 100644 index 000000000000..b8251df3fd83 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json @@ -0,0 +1,38 @@ +{ + "operationId": "DocumentsOperations_AutocompletePost", + "title": "SearchIndexAutocompleteDocumentsPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "autocompleteRequest": { + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": "title,description", + "top": 10 + } + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexCountDocuments.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexCountDocuments.json new file mode 100644 index 000000000000..9e860ca33e9a --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexCountDocuments.json @@ -0,0 +1,14 @@ +{ + "operationId": "DocumentsOperations_Count", + "title": "SearchIndexCountDocuments", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": 427 + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexGetDocument.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexGetDocument.json new file mode 100644 index 000000000000..4c3a27feb142 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexGetDocument.json @@ -0,0 +1,25 @@ +{ + "operationId": "DocumentsOperations_Get", + "title": "SearchIndexGetDocument", + "parameters": { + "endpoint": "https://exampleservice.search.windows.net", + "indexName": "getdocumentexample", + "key": "1", + "$select": [ + "docId", + "title", + "description" + ], + "api-version": "2024-07-01", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "docId": "1", + "title": "Nice Hotel", + "description": "Cheapest hotel in town" + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexIndexDocuments.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexIndexDocuments.json new file mode 100644 index 000000000000..15f3d7781789 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexIndexDocuments.json @@ -0,0 +1,96 @@ +{ + "operationId": "DocumentsOperations_Index", + "title": "SearchIndexIndexDocuments", + "parameters": { + "endpoint": "https://exampleservice.search.windows.net", + "indexName": "indexdocumentsexample", + "api-version": "2024-07-01", + "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", + "batch": { + "value": [ + { + "@search.action": "upload", + "docId": "1", + "title": "Fancy Stay", + "description": "Best hotel in town" + }, + { + "@search.action": "merge", + "docId": "2", + "title": "Roach Motel" + }, + { + "@search.action": "mergeOrUpload", + "docId": "3", + "title": "Econo Motel" + }, + { + "@search.action": "delete", + "docId": "4" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "2", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + }, + "207": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 201 + }, + { + "key": "2", + "status": false, + "errorMessage": "Document not found.", + "statusCode": 404 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 201 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsGet.json new file mode 100644 index 000000000000..dbb98fecc80e --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsGet.json @@ -0,0 +1,88 @@ +{ + "operationId": "DocumentsOperations_SearchGet", + "title": "SearchIndexSearchDocumentsGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$count": true, + "facet": [ + "category,count:10,sort:count" + ], + "$filter": "rating gt 10", + "highlight": [ + "title" + ], + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "queryType": "simple", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": [ + "title", + "description" + ], + "searchMode": "any", + "$select": [ + "docId", + "title", + "description" + ], + "$skip": 100, + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.coverage": 80, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsPost.json new file mode 100644 index 000000000000..65f518cea193 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsPost.json @@ -0,0 +1,121 @@ +{ + "operationId": "DocumentsOperations_SearchPost", + "title": "SearchIndexSearchDocumentsPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "searchRequest": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "description", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "rating desc", + "queryType": "simple", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "category,description", + "searchMode": "any", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "select": "hotelId,category,description", + "skip": 0, + "top": 10, + "vectorQueries": [ + { + "kind": "vector", + "vector": [ + 0.103, + 0.0712, + 0.0852, + 0.1547, + 0.1183 + ], + "fields": "descriptionEmbedding", + "k": 5, + "exhaustive": true, + "oversampling": 20.0, + "weight": 2.0 + } + ], + "vectorFilterMode": "preFilter" + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "@search.nextPageParameters": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "title", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "search.score() desc,rating desc", + "queryType": "simple", + "sessionId": "mysessionid", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "title,description", + "searchMode": "any", + "select": "docId,title,description", + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json new file mode 100644 index 000000000000..e520c69d94f5 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json @@ -0,0 +1,54 @@ +{ + "operationId": "DocumentsOperations_SearchGet", + "title": "SearchIndexSearchDocumentsSemanticGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json new file mode 100644 index 000000000000..f28437d390df --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json @@ -0,0 +1,71 @@ +{ + "operationId": "DocumentsOperations_SearchPost", + "title": "SearchIndexSearchDocumentsSemanticPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "searchRequest": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780 + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.answers": [ + { + "key": "4123", + "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", + "score": 0.94639826 + } + ], + "@search.nextPageParameters": { + "count": true, + "highlightPostTag": "", + "highlightPreTag": "", + "queryType": "semantic", + "search": "how do clouds form", + "semanticConfiguration": "my-semantic-config", + "answers": "extractive|count-3", + "captions": "extractive|highlight-true", + "semanticErrorHandling": "partial", + "semanticMaxWaitInMilliseconds": 780, + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 0.5479723, + "@search.rerankerScore": 1.0321671911515296, + "@search.captions": [ + { + "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", + "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." + } + ], + "id": "4123", + "title": "Earth Atmosphere", + "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", + "locations": [ + "Pacific Northwest", + "North America", + "Vancouver" + ] + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json new file mode 100644 index 000000000000..de0013953f7c --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json @@ -0,0 +1,49 @@ +{ + "operationId": "DocumentsOperations_SuggestGet", + "title": "SearchIndexSuggestDocumentsGet", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "$filter": "rating gt 10", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "search": "hote", + "searchFields": [ + "title" + ], + "suggesterName": "sg", + "$select": [ + "docId", + "title", + "description" + ], + "$top": 10 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json new file mode 100644 index 000000000000..b80b58298472 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json @@ -0,0 +1,41 @@ +{ + "operationId": "DocumentsOperations_SuggestPost", + "title": "SearchIndexSuggestDocumentsPost", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01", + "suggestRequest": { + "filter": "rating gt 4.0", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "orderby": "rating desc", + "search": "hote", + "searchFields": "title", + "select": "docId,title,description", + "suggesterName": "sg", + "top": 10 + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateDataSource.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateDataSource.json new file mode 100644 index 000000000000..882fae5767e5 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateDataSource.json @@ -0,0 +1,72 @@ +{ + "operationId": "DataSourcesOperations_Create", + "title": "SearchServiceCreateDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndex.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndex.json new file mode 100644 index 000000000000..85f8fcc39e6f --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndex.json @@ -0,0 +1,702 @@ +{ + "operationId": "IndexesOperations_Create", + "title": "SearchServiceCreateIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_notstored", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": false, + "stored": false, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_forBQ", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswBQProfile" + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "nameEmbedding", + "type": "Collection(Edm.Half)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myHnswSQProfile", + "algorithm": "myHnsw", + "compression": "mySQ8" + }, + { + "name": "myHnswBQProfile", + "algorithm": "myHnsw", + "compression": "myBQ" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "m": 4, + "metric": "cosine" + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + }, + { + "name": "myBQ", + "kind": "binaryQuantization", + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile", + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding_notstored", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": false, + "stored": false, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [], + "dimensions": 1536, + "vectorSearchProfile": "myHnswSQProfile" + }, + { + "name": "descriptionEmbedding_forBQ", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswBQProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "nameEmbedding", + "type": "Collection(Edm.Half)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "fieldName": "location", + "interpolation": "logarithmic", + "type": "distance", + "boost": 5.0, + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenFilters": [], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myHnswSQProfile", + "algorithm": "myHnsw", + "compression": "mySQ8" + }, + { + "name": "myHnswBQProfile", + "algorithm": "myHnsw", + "vectorizer": "myOpenAi", + "compression": "myBQ" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "compressions": [ + { + "name": "mySQ8", + "kind": "scalarQuantization", + "scalarQuantizationParameters": { + "quantizedDataType": "int8" + }, + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + }, + { + "name": "myBQ", + "kind": "binaryQuantization", + "rerankWithOriginalVectors": true, + "defaultOversampling": 10.0 + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndexer.json new file mode 100644 index 000000000000..88c81c4060da --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndexer.json @@ -0,0 +1,60 @@ +{ + "operationId": "IndexersOperations_Create", + "title": "SearchServiceCreateIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "indexer": { + "name": "myindexer", + "description": "an indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myindexer", + "description": "an indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json new file mode 100644 index 000000000000..5601c4b456a0 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json @@ -0,0 +1,97 @@ +{ + "operationId": "DataSourcesOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json new file mode 100644 index 000000000000..bf9f68a28622 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json @@ -0,0 +1,865 @@ +{ + "operationId": "IndexesOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "allowIndexDowntime": false, + "api-version": "2024-07-01", + "Prefer": "return=representation", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "searchable": true, + "retrievable": true + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ], + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "m": 4, + "metric": "cosine" + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5.0, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + }, + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json new file mode 100644 index 000000000000..6090c4bcaafb --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json @@ -0,0 +1,80 @@ +{ + "operationId": "IndexersOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "indexer": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json new file mode 100644 index 000000000000..b510c95a8df8 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json @@ -0,0 +1,389 @@ +{ + "operationId": "SkillsetsOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json new file mode 100644 index 000000000000..cf8f6c9d07af --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json @@ -0,0 +1,49 @@ +{ + "operationId": "SynonymMapsOperations_CreateOrUpdate", + "title": "SearchServiceCreateOrUpdateSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSkillset.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSkillset.json new file mode 100644 index 000000000000..3feeca88e25d --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSkillset.json @@ -0,0 +1,309 @@ +{ + "operationId": "SkillsetsOperations_Create", + "title": "SearchServiceCreateSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "knowledgeStore": { + "storageConnectionString": "DefaultEndpointsProtocol=https;AccountName=myStorage;AccountKey=myStorageKey;EndpointSuffix=core.windows.net", + "projections": [ + { + "tables": [ + { + "tableName": "Reviews", + "generatedKeyName": "ReviewId", + "source": "/document/Review", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Sentences", + "generatedKeyName": "SentenceId", + "source": "/document/Review/Sentences/*", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "KeyPhrases", + "generatedKeyName": "KeyPhraseId", + "source": "/document/Review/Sentences/*/KeyPhrases", + "sourceContext": null, + "inputs": [] + }, + { + "tableName": "Entities", + "generatedKeyName": "EntityId", + "source": "/document/Review/Sentences/*/Entities/*", + "sourceContext": null, + "inputs": [] + } + ] + }, + { + "objects": [ + { + "storageContainer": "Reviews", + "source": "/document/Review", + "generatedKeyName": "/document/Review/Id" + } + ] + } + ] + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSynonymMap.json new file mode 100644 index 000000000000..7146356cd274 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSynonymMap.json @@ -0,0 +1,40 @@ +{ + "operationId": "SynonymMapsOperations_Create", + "title": "SearchServiceCreateSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "myApplicationSecret" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteDataSource.json new file mode 100644 index 000000000000..af932181bab3 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteDataSource.json @@ -0,0 +1,13 @@ +{ + "operationId": "DataSourcesOperations_Delete", + "title": "SearchServiceDeleteDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndex.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndex.json new file mode 100644 index 000000000000..633ed9d4d6c8 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndex.json @@ -0,0 +1,13 @@ +{ + "operationId": "IndexesOperations_Delete", + "title": "SearchServiceDeleteIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndexer.json new file mode 100644 index 000000000000..404fdf7f7d04 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndexer.json @@ -0,0 +1,13 @@ +{ + "operationId": "IndexersOperations_Delete", + "title": "SearchServiceDeleteIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSkillset.json new file mode 100644 index 000000000000..56b8da5d8118 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSkillset.json @@ -0,0 +1,13 @@ +{ + "operationId": "SkillsetsOperations_Delete", + "title": "SearchServiceDeleteSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSynonymMap.json new file mode 100644 index 000000000000..d9e27a8e60a5 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSynonymMap.json @@ -0,0 +1,13 @@ +{ + "operationId": "SynonymMapsOperations_Delete", + "title": "SearchServiceDeleteSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetDataSource.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetDataSource.json new file mode 100644 index 000000000000..48017bfdd32e --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetDataSource.json @@ -0,0 +1,43 @@ +{ + "operationId": "DataSourcesOperations_Get", + "title": "SearchServiceGetDataSource", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndex.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndex.json new file mode 100644 index 000000000000..23d3c2e2fb78 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndex.json @@ -0,0 +1,346 @@ +{ + "operationId": "IndexesOperations_Get", + "title": "SearchServiceGetIndex", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "descriptionEmbedding", + "type": "Collection(Edm.Single)", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": 1536, + "vectorSearchProfile": "myHnswProfile", + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "dimensions": null, + "vectorSearchProfile": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "functionAggregation": "sum", + "text": { + "weights": { + "hotelName": 5.0 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5.0, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10.0 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + }, + "vectorSearch": { + "algorithms": [ + { + "name": "myHnsw", + "kind": "hnsw", + "hnswParameters": { + "metric": "cosine", + "m": 4, + "efConstruction": 400, + "efSearch": 500 + } + }, + { + "name": "myExhaustive", + "kind": "exhaustiveKnn", + "exhaustiveKnnParameters": { + "metric": "cosine" + } + } + ], + "profiles": [ + { + "name": "myHnswProfile", + "algorithm": "myHnsw" + }, + { + "name": "myAlgorithm", + "algorithm": "myExhaustive" + } + ] + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexStatistics.json new file mode 100644 index 000000000000..252d25544656 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexStatistics.json @@ -0,0 +1,18 @@ +{ + "operationId": "IndexesOperations_GetStatistics", + "title": "SearchServiceGetIndexStatistics", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "documentCount": 239572, + "storageSize": 72375920, + "vectorIndexSize": 123456 + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexer.json new file mode 100644 index 000000000000..532bc68f6ce6 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexer.json @@ -0,0 +1,38 @@ +{ + "operationId": "IndexersOperations_Get", + "title": "SearchServiceGetIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexerStatus.json new file mode 100644 index 000000000000..8b369c8eea0c --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexerStatus.json @@ -0,0 +1,91 @@ +{ + "operationId": "IndexersOperations_GetStatus", + "title": "SearchServiceGetIndexerStatus", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "status": "running", + "lastResult": { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + "executionHistory": [ + { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + { + "status": "transientFailure", + "errorMessage": null, + "startTime": "2014-11-26T03:28:10.125Z", + "endTime": "2014-11-26T03:28:12.007Z", + "errors": [ + { + "key": "", + "errorMessage": "Document key cannot be missing or empty.", + "statusCode": 400, + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 1", + "errorMessage": "Could not read the value of column 'foo' at index '0'.", + "statusCode": 400, + "name": "DocumentExtraction.AzureBlob.MyDataSource", + "details": "The file could not be parsed.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388" + } + ], + "warnings": [ + { + "key": "document id", + "message": "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob.", + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 2", + "message": "Document was truncated to 50000 characters.", + "name": "Enrichment.LanguageDetectionSkill.#4", + "details": "The skill did something that didn't break anything, nonetheless something we didn't expect happened, so it might be worth double checking.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2099692" + } + ], + "itemsProcessed": 1, + "itemsFailed": 2, + "initialTrackingState": null, + "finalTrackingState": null + } + ], + "limits": { + "maxRunTime": "PT22H", + "maxDocumentExtractionSize": 256000000, + "maxDocumentContentCharactersToExtract": 4000000 + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetServiceStatistics.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetServiceStatistics.json new file mode 100644 index 000000000000..743a516c6f85 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetServiceStatistics.json @@ -0,0 +1,54 @@ +{ + "operationId": "GetServiceStatistics", + "title": "SearchServiceGetServiceStatistics", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "counters": { + "documentCount": { + "usage": 7093, + "quota": 10000 + }, + "indexesCount": { + "usage": 3, + "quota": 3 + }, + "indexersCount": { + "usage": 3, + "quota": 3 + }, + "dataSourcesCount": { + "usage": 1, + "quota": 3 + }, + "storageSize": { + "usage": 914529, + "quota": 52428800 + }, + "synonymMaps": { + "usage": 2, + "quota": 3 + }, + "skillsetCount": { + "usage": 1, + "quota": 3 + }, + "vectorIndexSize": { + "usage": 123456, + "quota": 26214400 + } + }, + "limits": { + "maxFieldsPerIndex": 1000, + "maxFieldNestingDepthPerIndex": 10, + "maxComplexCollectionFieldsPerIndex": 100, + "maxComplexObjectsInCollectionsPerDocument": 3000 + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSkillset.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSkillset.json new file mode 100644 index 000000000000..cee2ffba575e --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSkillset.json @@ -0,0 +1,146 @@ +{ + "operationId": "SkillsetsOperations_Get", + "title": "SearchServiceGetSkillset", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSynonymMap.json new file mode 100644 index 000000000000..b1bb6b5c71d9 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSynonymMap.json @@ -0,0 +1,27 @@ +{ + "operationId": "SynonymMapsOperations_Get", + "title": "SearchServiceGetSynonymMap", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceIndexAnalyze.json new file mode 100644 index 000000000000..32d8385754e8 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceIndexAnalyze.json @@ -0,0 +1,39 @@ +{ + "operationId": "IndexesOperations_Analyze", + "title": "SearchServiceIndexAnalyze", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2024-07-01", + "request": { + "text": "Text to analyze", + "analyzer": "standard.lucene" + } + }, + "responses": { + "200": { + "body": { + "tokens": [ + { + "token": "text", + "startOffset": 0, + "endOffset": 4, + "position": 0 + }, + { + "token": "to", + "startOffset": 5, + "endOffset": 7, + "position": 1 + }, + { + "token": "analyze", + "startOffset": 8, + "endOffset": 15, + "position": 2 + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListDataSources.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListDataSources.json new file mode 100644 index 000000000000..6a8611843e0a --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListDataSources.json @@ -0,0 +1,47 @@ +{ + "operationId": "DataSourcesOperations_List", + "title": "SearchServiceListDataSources", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexers.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexers.json new file mode 100644 index 000000000000..d853b67419ac --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexers.json @@ -0,0 +1,78 @@ +{ + "operationId": "IndexersOperations_List", + "title": "SearchServiceListIndexers", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydocdbdatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + }, + { + "name": "myotherindexer", + "description": "another cool indexer", + "dataSourceName": "myblobdatasource", + "targetIndexName": "orders", + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "batchSize": 15 + }, + "fieldMappings": [ + { + "sourceFieldName": "PersonName", + "targetFieldName": "FirstName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 0 + } + } + }, + { + "sourceFieldName": "PersonName", + "targetFieldName": "LastName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 1 + } + } + } + ], + "disabled": false, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexes.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexes.json new file mode 100644 index 000000000000..b89b350a43ca --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexes.json @@ -0,0 +1,317 @@ +{ + "operationId": "IndexesOperations_List", + "title": "SearchServiceListIndexes", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + }, + "semantic": { + "configurations": [ + { + "name": "semanticHotels", + "prioritizedFields": { + "titleField": { + "fieldName": "hotelName" + }, + "prioritizedContentFields": [ + { + "fieldName": "description" + }, + { + "fieldName": "description_fr" + } + ], + "prioritizedKeywordsFields": [ + { + "fieldName": "tags" + }, + { + "fieldName": "category" + } + ] + } + } + ] + } + }, + { + "name": "testindex", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": false, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "hidden", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": false, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [], + "defaultScoringProfile": null, + "suggesters": [], + "analyzers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": null, + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSkillsets.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSkillsets.json new file mode 100644 index 000000000000..b4bdd7cd81e5 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSkillsets.json @@ -0,0 +1,150 @@ +{ + "operationId": "SkillsetsOperations_List", + "title": "SearchServiceListSkillsets", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ], + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSynonymMaps.json new file mode 100644 index 000000000000..53c8134271c4 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSynonymMaps.json @@ -0,0 +1,33 @@ +{ + "operationId": "SynonymMapsOperations_List", + "title": "SearchServiceListSynonymMaps", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2024-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + }, + { + "name": "myothersynonymmap", + "format": "solr", + "synonyms": "couch, sofa, chesterfield\npop, soda\ntoque, hat", + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceResetIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceResetIndexer.json new file mode 100644 index 000000000000..a9d763f69655 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceResetIndexer.json @@ -0,0 +1,12 @@ +{ + "operationId": "IndexersOperations_Reset", + "title": "SearchServiceResetIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "204": {} + } +} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceRunIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceRunIndexer.json new file mode 100644 index 000000000000..97604abf06b3 --- /dev/null +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceRunIndexer.json @@ -0,0 +1,12 @@ +{ + "operationId": "IndexersOperations_Run", + "title": "SearchServiceRunIndexer", + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2024-07-01" + }, + "responses": { + "202": {} + } +} From 8433d6bc90cc6ac0ae165cdf9c1defa3fbec3c20 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 15:01:24 -0800 Subject: [PATCH 61/78] update --- .../SearchServiceCreateDataSource.json | 72 -- .../2024-07-01/SearchServiceCreateIndex.json | 702 -------------- .../SearchServiceCreateIndexer.json | 60 -- ...SearchServiceCreateOrUpdateDataSource.json | 97 -- .../SearchServiceCreateOrUpdateIndex.json | 865 ------------------ .../SearchServiceCreateOrUpdateIndexer.json | 80 -- .../SearchServiceCreateOrUpdateSkillset.json | 389 -------- ...SearchServiceCreateOrUpdateSynonymMap.json | 49 - .../SearchServiceCreateSkillset.json | 309 ------- .../SearchServiceCreateSynonymMap.json | 40 - .../SearchServiceDeleteDataSource.json | 13 - .../2024-07-01/SearchServiceDeleteIndex.json | 13 - .../SearchServiceDeleteIndexer.json | 13 - .../SearchServiceDeleteSkillset.json | 13 - .../SearchServiceDeleteSynonymMap.json | 13 - .../SearchServiceGetDataSource.json | 43 - .../2024-07-01/SearchServiceGetIndex.json | 346 ------- .../SearchServiceGetIndexStatistics.json | 18 - .../2024-07-01/SearchServiceGetIndexer.json | 38 - .../SearchServiceGetIndexerStatus.json | 91 -- .../SearchServiceGetServiceStatistics.json | 54 -- .../2024-07-01/SearchServiceGetSkillset.json | 146 --- .../SearchServiceGetSynonymMap.json | 27 - .../2024-07-01/SearchServiceIndexAnalyze.json | 39 - .../SearchServiceListDataSources.json | 47 - .../2024-07-01/SearchServiceListIndexers.json | 78 -- .../2024-07-01/SearchServiceListIndexes.json | 317 ------- .../SearchServiceListSkillsets.json | 150 --- .../SearchServiceListSynonymMaps.json | 33 - .../2024-07-01/SearchServiceResetIndexer.json | 12 - .../2024-07-01/SearchServiceRunIndexer.json | 12 - .../SearchIndexAutocompleteDocumentsGet.json | 40 - .../SearchIndexAutocompleteDocumentsPost.json | 38 - .../2024-07-01/SearchIndexCountDocuments.json | 14 - .../2024-07-01/SearchIndexGetDocument.json | 25 - .../2024-07-01/SearchIndexIndexDocuments.json | 96 -- .../SearchIndexSearchDocumentsGet.json | 88 -- .../SearchIndexSearchDocumentsPost.json | 121 --- ...SearchIndexSearchDocumentsSemanticGet.json | 54 -- ...earchIndexSearchDocumentsSemanticPost.json | 71 -- .../SearchIndexSuggestDocumentsGet.json | 49 - .../SearchIndexSuggestDocumentsPost.json | 41 - .../Search/stable/2024-07-01/searchindex.json | 51 ++ 43 files changed, 51 insertions(+), 4816 deletions(-) delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateDataSource.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndex.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndexer.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSkillset.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSynonymMap.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteDataSource.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndex.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndexer.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSkillset.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSynonymMap.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetDataSource.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndex.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexStatistics.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexer.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexerStatus.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetServiceStatistics.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSkillset.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSynonymMap.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceIndexAnalyze.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListDataSources.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexers.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexes.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSkillsets.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSynonymMaps.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceResetIndexer.json delete mode 100644 specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceRunIndexer.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexCountDocuments.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexGetDocument.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexIndexDocuments.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsGet.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsPost.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json delete mode 100644 specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateDataSource.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateDataSource.json deleted file mode 100644 index 882fae5767e5..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateDataSource.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "operationId": "DataSourcesOperations_Create", - "title": "SearchServiceCreateDataSource", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "api-version": "2024-07-01", - "dataSource": { - "name": "mydocdbdatasource", - "description": "My Cosmos DB data source.", - "type": "cosmosdb", - "credentials": { - "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" - }, - "container": { - "name": "myDocDbCollectionId", - "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "_ts" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "201": { - "body": { - "name": "mydocdbdatasource", - "description": "My Cosmos DB data source.", - "type": "cosmosdb", - "credentials": { - "connectionString": null - }, - "container": { - "name": "myDocDbCollectionId", - "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "_ts" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndex.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndex.json deleted file mode 100644 index 85f8fcc39e6f..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndex.json +++ /dev/null @@ -1,702 +0,0 @@ -{ - "operationId": "IndexesOperations_Create", - "title": "SearchServiceCreateIndex", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "api-version": "2024-07-01", - "index": { - "name": "hotels", - "fields": [ - { - "name": "hotelId", - "type": "Edm.String", - "key": true, - "searchable": false - }, - { - "name": "baseRate", - "type": "Edm.Double" - }, - { - "name": "description", - "type": "Edm.String", - "filterable": false, - "sortable": false, - "facetable": false - }, - { - "name": "descriptionEmbedding", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [], - "dimensions": 1536, - "vectorSearchProfile": "myHnswSQProfile" - }, - { - "name": "descriptionEmbedding_notstored", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": false, - "stored": false, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [], - "dimensions": 1536, - "vectorSearchProfile": "myHnswSQProfile" - }, - { - "name": "descriptionEmbedding_forBQ", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [], - "dimensions": 1536, - "vectorSearchProfile": "myHnswBQProfile" - }, - { - "name": "description_fr", - "type": "Edm.String", - "filterable": false, - "sortable": false, - "facetable": false, - "analyzer": "fr.lucene" - }, - { - "name": "hotelName", - "type": "Edm.String" - }, - { - "name": "nameEmbedding", - "type": "Collection(Edm.Half)", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [], - "dimensions": 1536, - "vectorSearchProfile": "myHnswProfile" - }, - { - "name": "category", - "type": "Edm.String" - }, - { - "name": "tags", - "type": "Collection(Edm.String)", - "analyzer": "tagsAnalyzer" - }, - { - "name": "parkingIncluded", - "type": "Edm.Boolean" - }, - { - "name": "smokingAllowed", - "type": "Edm.Boolean" - }, - { - "name": "lastRenovationDate", - "type": "Edm.DateTimeOffset" - }, - { - "name": "rating", - "type": "Edm.Int32" - }, - { - "name": "location", - "type": "Edm.GeographyPoint" - } - ], - "scoringProfiles": [ - { - "name": "geo", - "text": { - "weights": { - "hotelName": 5 - } - }, - "functions": [ - { - "type": "distance", - "boost": 5, - "fieldName": "location", - "interpolation": "logarithmic", - "distance": { - "referencePointParameter": "currentLocation", - "boostingDistance": 10 - } - } - ] - } - ], - "defaultScoringProfile": "geo", - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "hotelName" - ] - } - ], - "analyzers": [ - { - "name": "tagsAnalyzer", - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "charFilters": [ - "html_strip" - ], - "tokenizer": "standard_v2" - } - ], - "corsOptions": { - "allowedOrigins": [ - "tempuri.org" - ], - "maxAgeInSeconds": 60 - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - }, - "similarity": { - "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", - "b": 0.5, - "k1": 1.3 - }, - "semantic": { - "configurations": [ - { - "name": "semanticHotels", - "prioritizedFields": { - "titleField": { - "fieldName": "hotelName" - }, - "prioritizedContentFields": [ - { - "fieldName": "description" - }, - { - "fieldName": "description_fr" - } - ], - "prioritizedKeywordsFields": [ - { - "fieldName": "tags" - }, - { - "fieldName": "category" - } - ] - } - } - ] - }, - "vectorSearch": { - "profiles": [ - { - "name": "myHnswProfile", - "algorithm": "myHnsw" - }, - { - "name": "myHnswSQProfile", - "algorithm": "myHnsw", - "compression": "mySQ8" - }, - { - "name": "myHnswBQProfile", - "algorithm": "myHnsw", - "compression": "myBQ" - }, - { - "name": "myAlgorithm", - "algorithm": "myExhaustive" - } - ], - "algorithms": [ - { - "name": "myHnsw", - "kind": "hnsw", - "hnswParameters": { - "m": 4, - "metric": "cosine" - } - }, - { - "name": "myExhaustive", - "kind": "exhaustiveKnn", - "exhaustiveKnnParameters": { - "metric": "cosine" - } - } - ], - "compressions": [ - { - "name": "mySQ8", - "kind": "scalarQuantization", - "scalarQuantizationParameters": { - "quantizedDataType": "int8" - }, - "rerankWithOriginalVectors": true, - "defaultOversampling": 10.0 - }, - { - "name": "myBQ", - "kind": "binaryQuantization", - "rerankWithOriginalVectors": true, - "defaultOversampling": 10.0 - } - ] - } - } - }, - "responses": { - "201": { - "body": { - "name": "hotels", - "fields": [ - { - "name": "hotelId", - "type": "Edm.String", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": true, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "baseRate", - "type": "Edm.Double", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "descriptionEmbedding", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": 1536, - "vectorSearchProfile": "myHnswSQProfile", - "synonymMaps": [] - }, - { - "name": "descriptionEmbedding_notstored", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": false, - "stored": false, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [], - "dimensions": 1536, - "vectorSearchProfile": "myHnswSQProfile" - }, - { - "name": "descriptionEmbedding_forBQ", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": 1536, - "vectorSearchProfile": "myHnswBQProfile", - "synonymMaps": [] - }, - { - "name": "description_fr", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "fr.lucene", - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "hotelName", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "nameEmbedding", - "type": "Collection(Edm.Half)", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": 1536, - "vectorSearchProfile": "myHnswProfile", - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "tags", - "type": "Collection(Edm.String)", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": false, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "tagsAnalyzer", - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "parkingIncluded", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "smokingAllowed", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "lastRenovationDate", - "type": "Edm.DateTimeOffset", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "rating", - "type": "Edm.Int32", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "location", - "type": "Edm.GeographyPoint", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "geo", - "functionAggregation": "sum", - "text": { - "weights": { - "hotelName": 5.0 - } - }, - "functions": [ - { - "fieldName": "location", - "interpolation": "logarithmic", - "type": "distance", - "boost": 5.0, - "distance": { - "referencePointParameter": "currentLocation", - "boostingDistance": 10.0 - } - } - ] - } - ], - "defaultScoringProfile": "geo", - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "hotelName" - ] - } - ], - "analyzers": [ - { - "name": "tagsAnalyzer", - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "charFilters": [ - "html_strip" - ], - "tokenFilters": [], - "tokenizer": "standard_v2" - } - ], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "corsOptions": { - "allowedOrigins": [ - "tempuri.org" - ], - "maxAgeInSeconds": 60 - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - }, - "similarity": { - "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", - "b": 0.5, - "k1": 1.3 - }, - "semantic": { - "configurations": [ - { - "name": "semanticHotels", - "prioritizedFields": { - "titleField": { - "fieldName": "hotelName" - }, - "prioritizedContentFields": [ - { - "fieldName": "description" - }, - { - "fieldName": "description_fr" - } - ], - "prioritizedKeywordsFields": [ - { - "fieldName": "tags" - }, - { - "fieldName": "category" - } - ] - } - } - ] - }, - "vectorSearch": { - "algorithms": [ - { - "name": "myHnsw", - "kind": "hnsw", - "hnswParameters": { - "metric": "cosine", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "myExhaustive", - "kind": "exhaustiveKnn", - "exhaustiveKnnParameters": { - "metric": "cosine" - } - } - ], - "profiles": [ - { - "name": "myHnswProfile", - "algorithm": "myHnsw" - }, - { - "name": "myHnswSQProfile", - "algorithm": "myHnsw", - "compression": "mySQ8" - }, - { - "name": "myHnswBQProfile", - "algorithm": "myHnsw", - "vectorizer": "myOpenAi", - "compression": "myBQ" - }, - { - "name": "myAlgorithm", - "algorithm": "myExhaustive" - } - ], - "compressions": [ - { - "name": "mySQ8", - "kind": "scalarQuantization", - "scalarQuantizationParameters": { - "quantizedDataType": "int8" - }, - "rerankWithOriginalVectors": true, - "defaultOversampling": 10.0 - }, - { - "name": "myBQ", - "kind": "binaryQuantization", - "rerankWithOriginalVectors": true, - "defaultOversampling": 10.0 - } - ] - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndexer.json deleted file mode 100644 index 88c81c4060da..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateIndexer.json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "operationId": "IndexersOperations_Create", - "title": "SearchServiceCreateIndexer", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "api-version": "2024-07-01", - "indexer": { - "name": "myindexer", - "description": "an indexer", - "dataSourceName": "mydatasource", - "targetIndexName": "orders", - "schedule": { - "interval": "PT1H", - "startTime": "2015-01-01T00:00:00Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5 - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "201": { - "body": { - "name": "myindexer", - "description": "an indexer", - "dataSourceName": "mydatasource", - "targetIndexName": "orders", - "schedule": { - "interval": "PT1H", - "startTime": "2015-01-01T00:00:00Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5 - }, - "fieldMappings": [], - "disabled": false, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json deleted file mode 100644 index 5601c4b456a0..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json +++ /dev/null @@ -1,97 +0,0 @@ -{ - "operationId": "DataSourcesOperations_CreateOrUpdate", - "title": "SearchServiceCreateOrUpdateDataSource", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "dataSourceName": "mydatasource", - "api-version": "2024-07-01", - "Prefer": "return=representation", - "dataSource": { - "name": "mydocdbdatasource", - "description": "My Cosmos DB data source.", - "type": "cosmosdb", - "credentials": { - "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" - }, - "container": { - "name": "myDocDbCollectionId", - "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "_ts" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - }, - "responses": { - "200": { - "body": { - "name": "mydocdbdatasource", - "description": "My Cosmos DB data source.", - "type": "cosmosdb", - "credentials": { - "connectionString": null - }, - "container": { - "name": "myDocDbCollectionId", - "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "_ts" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - }, - "201": { - "body": { - "name": "mydocdbdatasource", - "description": "My Cosmos DB data source.", - "type": "cosmosdb", - "credentials": { - "connectionString": null - }, - "container": { - "name": "myDocDbCollectionId", - "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "_ts" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json deleted file mode 100644 index bf9f68a28622..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json +++ /dev/null @@ -1,865 +0,0 @@ -{ - "operationId": "IndexesOperations_CreateOrUpdate", - "title": "SearchServiceCreateOrUpdateIndex", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "hotels", - "allowIndexDowntime": false, - "api-version": "2024-07-01", - "Prefer": "return=representation", - "index": { - "name": "hotels", - "fields": [ - { - "name": "hotelId", - "type": "Edm.String", - "key": true, - "searchable": false - }, - { - "name": "baseRate", - "type": "Edm.Double" - }, - { - "name": "description", - "type": "Edm.String", - "filterable": false, - "sortable": false, - "facetable": false - }, - { - "name": "descriptionEmbedding", - "type": "Collection(Edm.Single)", - "dimensions": 1536, - "vectorSearchProfile": "myHnswProfile", - "searchable": true, - "retrievable": true - }, - { - "name": "description_fr", - "type": "Edm.String", - "filterable": false, - "sortable": false, - "facetable": false, - "analyzer": "fr.lucene" - }, - { - "name": "hotelName", - "type": "Edm.String" - }, - { - "name": "category", - "type": "Edm.String" - }, - { - "name": "tags", - "type": "Collection(Edm.String)", - "analyzer": "tagsAnalyzer" - }, - { - "name": "parkingIncluded", - "type": "Edm.Boolean" - }, - { - "name": "smokingAllowed", - "type": "Edm.Boolean" - }, - { - "name": "lastRenovationDate", - "type": "Edm.DateTimeOffset" - }, - { - "name": "rating", - "type": "Edm.Int32" - }, - { - "name": "location", - "type": "Edm.GeographyPoint" - } - ], - "scoringProfiles": [ - { - "name": "geo", - "text": { - "weights": { - "hotelName": 5 - } - }, - "functions": [ - { - "type": "distance", - "boost": 5, - "fieldName": "location", - "interpolation": "logarithmic", - "distance": { - "referencePointParameter": "currentLocation", - "boostingDistance": 10 - } - } - ] - } - ], - "defaultScoringProfile": "geo", - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "hotelName" - ] - } - ], - "analyzers": [ - { - "name": "tagsAnalyzer", - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "charFilters": [ - "html_strip" - ], - "tokenizer": "standard_v2" - } - ], - "corsOptions": { - "allowedOrigins": [ - "tempuri.org" - ], - "maxAgeInSeconds": 60 - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - }, - "similarity": { - "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" - }, - "semantic": { - "configurations": [ - { - "name": "semanticHotels", - "prioritizedFields": { - "titleField": { - "fieldName": "hotelName" - }, - "prioritizedContentFields": [ - { - "fieldName": "description" - }, - { - "fieldName": "description_fr" - } - ], - "prioritizedKeywordsFields": [ - { - "fieldName": "tags" - }, - { - "fieldName": "category" - } - ] - } - } - ] - }, - "vectorSearch": { - "profiles": [ - { - "name": "myHnswProfile", - "algorithm": "myHnsw" - }, - { - "name": "myAlgorithm", - "algorithm": "myExhaustive" - } - ], - "algorithms": [ - { - "name": "myHnsw", - "kind": "hnsw", - "hnswParameters": { - "m": 4, - "metric": "cosine" - } - }, - { - "name": "myExhaustive", - "kind": "exhaustiveKnn", - "exhaustiveKnnParameters": { - "metric": "cosine" - } - } - ] - } - } - }, - "responses": { - "200": { - "body": { - "name": "hotels", - "fields": [ - { - "name": "hotelId", - "type": "Edm.String", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": true, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "baseRate", - "type": "Edm.Double", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "descriptionEmbedding", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": 1536, - "vectorSearchProfile": "myHnswProfile", - "synonymMaps": [] - }, - { - "name": "description_fr", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "fr.lucene", - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "hotelName", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "tags", - "type": "Collection(Edm.String)", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": false, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "tagsAnalyzer", - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "parkingIncluded", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "smokingAllowed", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "lastRenovationDate", - "type": "Edm.DateTimeOffset", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "rating", - "type": "Edm.Int32", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "location", - "type": "Edm.GeographyPoint", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "geo", - "functionAggregation": "sum", - "text": { - "weights": { - "hotelName": 5.0 - } - }, - "functions": [ - { - "type": "distance", - "boost": 5.0, - "fieldName": "location", - "interpolation": "logarithmic", - "distance": { - "referencePointParameter": "currentLocation", - "boostingDistance": 10.0 - } - } - ] - } - ], - "defaultScoringProfile": "geo", - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "hotelName" - ] - } - ], - "analyzers": [ - { - "name": "tagsAnalyzer", - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "charFilters": [ - "html_strip" - ], - "tokenizer": "standard_v2" - } - ], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "corsOptions": { - "allowedOrigins": [ - "tempuri.org" - ], - "maxAgeInSeconds": 60 - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - }, - "similarity": { - "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" - }, - "semantic": { - "configurations": [ - { - "name": "semanticHotels", - "prioritizedFields": { - "titleField": { - "fieldName": "hotelName" - }, - "prioritizedContentFields": [ - { - "fieldName": "description" - }, - { - "fieldName": "description_fr" - } - ], - "prioritizedKeywordsFields": [ - { - "fieldName": "tags" - }, - { - "fieldName": "category" - } - ] - } - } - ] - }, - "vectorSearch": { - "algorithms": [ - { - "name": "myHnsw", - "kind": "hnsw", - "hnswParameters": { - "metric": "cosine", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "myExhaustive", - "kind": "exhaustiveKnn", - "exhaustiveKnnParameters": { - "metric": "cosine" - } - } - ], - "profiles": [ - { - "name": "myHnswProfile", - "algorithm": "myHnsw" - }, - { - "name": "myAlgorithm", - "algorithm": "myExhaustive" - } - ] - } - } - }, - "201": { - "body": { - "name": "hotels", - "fields": [ - { - "name": "hotelId", - "type": "Edm.String", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": true, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "baseRate", - "type": "Edm.Double", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "descriptionEmbedding", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": 1536, - "vectorSearchProfile": "myHnswProfile", - "synonymMaps": [] - }, - { - "name": "description_fr", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "fr.lucene", - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "hotelName", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "tags", - "type": "Collection(Edm.String)", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": false, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "tagsAnalyzer", - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "parkingIncluded", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "smokingAllowed", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "lastRenovationDate", - "type": "Edm.DateTimeOffset", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "rating", - "type": "Edm.Int32", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "location", - "type": "Edm.GeographyPoint", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "geo", - "functionAggregation": "sum", - "text": { - "weights": { - "hotelName": 5 - } - }, - "functions": [ - { - "type": "distance", - "boost": 5, - "fieldName": "location", - "interpolation": "logarithmic", - "distance": { - "referencePointParameter": "currentLocation", - "boostingDistance": 10 - } - } - ] - } - ], - "defaultScoringProfile": "geo", - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "hotelName" - ] - } - ], - "analyzers": [ - { - "name": "tagsAnalyzer", - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "charFilters": [ - "html_strip" - ], - "tokenizer": "standard_v2" - } - ], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "corsOptions": { - "allowedOrigins": [ - "tempuri.org" - ], - "maxAgeInSeconds": 60 - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - }, - "semantic": { - "configurations": [ - { - "name": "semanticHotels", - "prioritizedFields": { - "titleField": { - "fieldName": "hotelName" - }, - "prioritizedContentFields": [ - { - "fieldName": "description" - }, - { - "fieldName": "description_fr" - } - ], - "prioritizedKeywordsFields": [ - { - "fieldName": "tags" - }, - { - "fieldName": "category" - } - ] - } - } - ] - }, - "vectorSearch": { - "algorithms": [ - { - "name": "myHnsw", - "kind": "hnsw", - "hnswParameters": { - "metric": "cosine", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "myExhaustive", - "kind": "exhaustiveKnn", - "exhaustiveKnnParameters": { - "metric": "cosine" - } - } - ], - "profiles": [ - { - "name": "myHnswProfile", - "algorithm": "myHnsw" - }, - { - "name": "myAlgorithm", - "algorithm": "myExhaustive" - } - ] - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json deleted file mode 100644 index 6090c4bcaafb..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "operationId": "IndexersOperations_CreateOrUpdate", - "title": "SearchServiceCreateOrUpdateIndexer", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-07-01", - "Prefer": "return=representation", - "indexer": { - "name": "myindexer", - "description": "a cool indexer", - "dataSourceName": "mydatasource", - "targetIndexName": "orders", - "schedule": { - "interval": "PT1H", - "startTime": "2015-01-01T00:00:00Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5 - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - }, - "responses": { - "200": { - "body": { - "name": "myindexer", - "description": "a cool indexer", - "dataSourceName": "mydatasource", - "targetIndexName": "orders", - "schedule": { - "interval": "PT1H", - "startTime": "2015-01-01T00:00:00Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5 - }, - "fieldMappings": [], - "disabled": false, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - }, - "201": { - "body": { - "name": "myindexer", - "description": "a cool indexer", - "dataSourceName": "mydatasource", - "targetIndexName": "orders", - "schedule": { - "interval": "PT1H", - "startTime": "2015-01-01T00:00:00Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5 - }, - "fieldMappings": [], - "disabled": false, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json deleted file mode 100644 index b510c95a8df8..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json +++ /dev/null @@ -1,389 +0,0 @@ -{ - "operationId": "SkillsetsOperations_CreateOrUpdate", - "title": "SearchServiceCreateOrUpdateSkillset", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "skillsetName": "demoskillset", - "api-version": "2024-07-01", - "Prefer": "return=representation", - "skillset": { - "name": "demoskillset", - "description": "Extract entities, detect language and extract key-phrases", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "categories": [ - "organization" - ], - "defaultLanguageCode": "en", - "minimumPrecision": 0.7, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "organizations", - "targetName": "organizations" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "textSplitMode": "pages", - "maximumPageLength": 4000, - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "MyCustomWebApiSkill", - "uri": "https://contoso.example.org", - "httpMethod": "POST", - "timeout": "PT30S", - "batchSize": 1, - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - } - ], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - }, - "responses": { - "200": { - "body": { - "name": "demoskillset", - "description": "Extract entities, detect language and extract key-phrases", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "name": "#1", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "organizations", - "targetName": "organizations" - } - ], - "categories": [ - "organization" - ], - "defaultLanguageCode": "en", - "minimumPrecision": 0.7 - }, - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "#2", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "#3", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "defaultLanguageCode": null, - "textSplitMode": "pages", - "maximumPageLength": 4000 - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "#4", - "description": null, - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ], - "defaultLanguageCode": null, - "maxKeyPhraseCount": null - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "MyCustomWebApiSkill", - "description": null, - "context": "/document", - "uri": "https://contoso.example.org", - "httpMethod": "POST", - "timeout": "PT30S", - "batchSize": 1, - "degreeOfParallelism": null, - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - } - ], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - }, - "201": { - "body": { - "name": "demoskillset", - "description": "Extract entities, detect language and extract key-phrases", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "name": "#1", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "organizations", - "targetName": "organizations" - } - ], - "categories": [ - "organization" - ], - "defaultLanguageCode": "en", - "minimumPrecision": 0.7 - }, - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "#2", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "#3", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "defaultLanguageCode": null, - "textSplitMode": "pages", - "maximumPageLength": 4000 - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "#4", - "description": null, - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ], - "defaultLanguageCode": null, - "maxKeyPhraseCount": null - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "MyCustomWebApiSkill", - "description": null, - "context": "/document", - "uri": "https://contoso.example.org", - "httpMethod": "POST", - "timeout": "PT30S", - "batchSize": 1, - "degreeOfParallelism": null, - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - } - ], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json deleted file mode 100644 index cf8f6c9d07af..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_CreateOrUpdate", - "title": "SearchServiceCreateOrUpdateSynonymMap", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "synonymMapName": "mysynonymmap", - "api-version": "2024-07-01", - "Prefer": "return=representation", - "synonymMap": { - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - }, - "responses": { - "200": { - "body": { - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - }, - "201": { - "body": { - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSkillset.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSkillset.json deleted file mode 100644 index 3feeca88e25d..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSkillset.json +++ /dev/null @@ -1,309 +0,0 @@ -{ - "operationId": "SkillsetsOperations_Create", - "title": "SearchServiceCreateSkillset", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "skillsetName": "demoskillset", - "api-version": "2024-07-01", - "Prefer": "return=representation", - "skillset": { - "name": "demoskillset", - "description": "Extract entities, detect language and extract key-phrases", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "categories": [ - "organization" - ], - "defaultLanguageCode": "en", - "minimumPrecision": 0.7, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "organizations", - "targetName": "organizations" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "textSplitMode": "pages", - "maximumPageLength": 4000, - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "MyCustomWebApiSkill", - "uri": "https://contoso.example.org", - "httpMethod": "POST", - "timeout": "PT30S", - "batchSize": 1, - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - } - ], - "knowledgeStore": { - "storageConnectionString": "DefaultEndpointsProtocol=https;AccountName=myStorage;AccountKey=myStorageKey;EndpointSuffix=core.windows.net", - "projections": [ - { - "tables": [ - { - "tableName": "Reviews", - "generatedKeyName": "ReviewId", - "source": "/document/Review", - "sourceContext": null, - "inputs": [] - }, - { - "tableName": "Sentences", - "generatedKeyName": "SentenceId", - "source": "/document/Review/Sentences/*", - "sourceContext": null, - "inputs": [] - }, - { - "tableName": "KeyPhrases", - "generatedKeyName": "KeyPhraseId", - "source": "/document/Review/Sentences/*/KeyPhrases", - "sourceContext": null, - "inputs": [] - }, - { - "tableName": "Entities", - "generatedKeyName": "EntityId", - "source": "/document/Review/Sentences/*/Entities/*", - "sourceContext": null, - "inputs": [] - } - ] - }, - { - "objects": [ - { - "storageContainer": "Reviews", - "source": "/document/Review", - "generatedKeyName": "/document/Review/Id" - } - ] - } - ] - }, - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "" - } - } - } - }, - "responses": { - "201": { - "body": { - "name": "demoskillset", - "description": "Extract entities, detect language and extract key-phrases", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "name": "#1", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "organizations", - "targetName": "organizations" - } - ], - "categories": [ - "organization" - ], - "defaultLanguageCode": "en", - "minimumPrecision": 0.7 - }, - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "#2", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "#3", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "defaultLanguageCode": null, - "textSplitMode": "pages", - "maximumPageLength": 4000 - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "#4", - "description": null, - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ], - "defaultLanguageCode": null, - "maxKeyPhraseCount": null - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "MyCustomWebApiSkill", - "description": null, - "context": "/document", - "uri": "https://contoso.example.org", - "httpMethod": "POST", - "timeout": "PT30S", - "batchSize": 1, - "degreeOfParallelism": null, - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - } - ], - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSynonymMap.json deleted file mode 100644 index 7146356cd274..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceCreateSynonymMap.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_Create", - "title": "SearchServiceCreateSynonymMap", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "api-version": "2024-07-01", - "synonymMap": { - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": "myApplicationSecret" - } - } - } - }, - "responses": { - "201": { - "body": { - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", - "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteDataSource.json deleted file mode 100644 index af932181bab3..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteDataSource.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "operationId": "DataSourcesOperations_Delete", - "title": "SearchServiceDeleteDataSource", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "dataSourceName": "mydatasource", - "api-version": "2024-07-01" - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndex.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndex.json deleted file mode 100644 index 633ed9d4d6c8..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndex.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "operationId": "IndexesOperations_Delete", - "title": "SearchServiceDeleteIndex", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01" - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndexer.json deleted file mode 100644 index 404fdf7f7d04..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteIndexer.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "operationId": "IndexersOperations_Delete", - "title": "SearchServiceDeleteIndexer", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-07-01" - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSkillset.json deleted file mode 100644 index 56b8da5d8118..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSkillset.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "operationId": "SkillsetsOperations_Delete", - "title": "SearchServiceDeleteSkillset", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "skillsetName": "demoskillset", - "api-version": "2024-07-01" - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSynonymMap.json deleted file mode 100644 index d9e27a8e60a5..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceDeleteSynonymMap.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_Delete", - "title": "SearchServiceDeleteSynonymMap", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "synonymMapName": "mysynonymmap", - "api-version": "2024-07-01" - }, - "responses": { - "204": {}, - "404": {} - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetDataSource.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetDataSource.json deleted file mode 100644 index 48017bfdd32e..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetDataSource.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "operationId": "DataSourcesOperations_Get", - "title": "SearchServiceGetDataSource", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "dataSourceName": "mydatasource", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "name": "mydocdbdatasource", - "description": "My Cosmos DB data source.", - "type": "cosmosdb", - "credentials": { - "connectionString": null - }, - "container": { - "name": "myDocDbCollectionId", - "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "_ts" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndex.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndex.json deleted file mode 100644 index 23d3c2e2fb78..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndex.json +++ /dev/null @@ -1,346 +0,0 @@ -{ - "operationId": "IndexesOperations_Get", - "title": "SearchServiceGetIndex", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "hotels", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "name": "hotels", - "fields": [ - { - "name": "hotelId", - "type": "Edm.String", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": true, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "baseRate", - "type": "Edm.Double", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "descriptionEmbedding", - "type": "Collection(Edm.Single)", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": 1536, - "vectorSearchProfile": "myHnswProfile", - "synonymMaps": [] - }, - { - "name": "description_fr", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "fr.lucene", - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "hotelName", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "tags", - "type": "Collection(Edm.String)", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": false, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "tagsAnalyzer", - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "parkingIncluded", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "smokingAllowed", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "lastRenovationDate", - "type": "Edm.DateTimeOffset", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "rating", - "type": "Edm.Int32", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - }, - { - "name": "location", - "type": "Edm.GeographyPoint", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "dimensions": null, - "vectorSearchProfile": null, - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "geo", - "functionAggregation": "sum", - "text": { - "weights": { - "hotelName": 5.0 - } - }, - "functions": [ - { - "type": "distance", - "boost": 5.0, - "fieldName": "location", - "interpolation": "logarithmic", - "distance": { - "referencePointParameter": "currentLocation", - "boostingDistance": 10.0 - } - } - ] - } - ], - "defaultScoringProfile": "geo", - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "hotelName" - ] - } - ], - "analyzers": [ - { - "name": "tagsAnalyzer", - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "charFilters": [ - "html_strip" - ], - "tokenizer": "standard_v2" - } - ], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "corsOptions": { - "allowedOrigins": [ - "tempuri.org" - ], - "maxAgeInSeconds": 60 - }, - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - }, - "semantic": { - "configurations": [ - { - "name": "semanticHotels", - "prioritizedFields": { - "titleField": { - "fieldName": "hotelName" - }, - "prioritizedContentFields": [ - { - "fieldName": "description" - }, - { - "fieldName": "description_fr" - } - ], - "prioritizedKeywordsFields": [ - { - "fieldName": "tags" - }, - { - "fieldName": "category" - } - ] - } - } - ] - }, - "vectorSearch": { - "algorithms": [ - { - "name": "myHnsw", - "kind": "hnsw", - "hnswParameters": { - "metric": "cosine", - "m": 4, - "efConstruction": 400, - "efSearch": 500 - } - }, - { - "name": "myExhaustive", - "kind": "exhaustiveKnn", - "exhaustiveKnnParameters": { - "metric": "cosine" - } - } - ], - "profiles": [ - { - "name": "myHnswProfile", - "algorithm": "myHnsw" - }, - { - "name": "myAlgorithm", - "algorithm": "myExhaustive" - } - ] - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexStatistics.json deleted file mode 100644 index 252d25544656..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexStatistics.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "operationId": "IndexesOperations_GetStatistics", - "title": "SearchServiceGetIndexStatistics", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "hotels", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "documentCount": 239572, - "storageSize": 72375920, - "vectorIndexSize": 123456 - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexer.json deleted file mode 100644 index 532bc68f6ce6..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexer.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "operationId": "IndexersOperations_Get", - "title": "SearchServiceGetIndexer", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "name": "myindexer", - "description": "a cool indexer", - "dataSourceName": "mydatasource", - "targetIndexName": "orders", - "schedule": { - "interval": "PT1H", - "startTime": "2015-01-01T00:00:00Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5 - }, - "fieldMappings": [], - "disabled": false, - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexerStatus.json deleted file mode 100644 index 8b369c8eea0c..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetIndexerStatus.json +++ /dev/null @@ -1,91 +0,0 @@ -{ - "operationId": "IndexersOperations_GetStatus", - "title": "SearchServiceGetIndexerStatus", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "status": "running", - "lastResult": { - "status": "success", - "errorMessage": null, - "startTime": "2014-11-26T03:37:18.853Z", - "endTime": "2014-11-26T03:37:19.012Z", - "errors": [], - "warnings": [], - "itemsProcessed": 11, - "itemsFailed": 0, - "initialTrackingState": null, - "finalTrackingState": null - }, - "executionHistory": [ - { - "status": "success", - "errorMessage": null, - "startTime": "2014-11-26T03:37:18.853Z", - "endTime": "2014-11-26T03:37:19.012Z", - "errors": [], - "warnings": [], - "itemsProcessed": 11, - "itemsFailed": 0, - "initialTrackingState": null, - "finalTrackingState": null - }, - { - "status": "transientFailure", - "errorMessage": null, - "startTime": "2014-11-26T03:28:10.125Z", - "endTime": "2014-11-26T03:28:12.007Z", - "errors": [ - { - "key": "", - "errorMessage": "Document key cannot be missing or empty.", - "statusCode": 400, - "name": null, - "details": null, - "documentationLink": null - }, - { - "key": "document id 1", - "errorMessage": "Could not read the value of column 'foo' at index '0'.", - "statusCode": 400, - "name": "DocumentExtraction.AzureBlob.MyDataSource", - "details": "The file could not be parsed.", - "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388" - } - ], - "warnings": [ - { - "key": "document id", - "message": "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob.", - "name": null, - "details": null, - "documentationLink": null - }, - { - "key": "document id 2", - "message": "Document was truncated to 50000 characters.", - "name": "Enrichment.LanguageDetectionSkill.#4", - "details": "The skill did something that didn't break anything, nonetheless something we didn't expect happened, so it might be worth double checking.", - "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2099692" - } - ], - "itemsProcessed": 1, - "itemsFailed": 2, - "initialTrackingState": null, - "finalTrackingState": null - } - ], - "limits": { - "maxRunTime": "PT22H", - "maxDocumentExtractionSize": 256000000, - "maxDocumentContentCharactersToExtract": 4000000 - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetServiceStatistics.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetServiceStatistics.json deleted file mode 100644 index 743a516c6f85..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetServiceStatistics.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "operationId": "GetServiceStatistics", - "title": "SearchServiceGetServiceStatistics", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "counters": { - "documentCount": { - "usage": 7093, - "quota": 10000 - }, - "indexesCount": { - "usage": 3, - "quota": 3 - }, - "indexersCount": { - "usage": 3, - "quota": 3 - }, - "dataSourcesCount": { - "usage": 1, - "quota": 3 - }, - "storageSize": { - "usage": 914529, - "quota": 52428800 - }, - "synonymMaps": { - "usage": 2, - "quota": 3 - }, - "skillsetCount": { - "usage": 1, - "quota": 3 - }, - "vectorIndexSize": { - "usage": 123456, - "quota": 26214400 - } - }, - "limits": { - "maxFieldsPerIndex": 1000, - "maxFieldNestingDepthPerIndex": 10, - "maxComplexCollectionFieldsPerIndex": 100, - "maxComplexObjectsInCollectionsPerDocument": 3000 - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSkillset.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSkillset.json deleted file mode 100644 index cee2ffba575e..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSkillset.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "operationId": "SkillsetsOperations_Get", - "title": "SearchServiceGetSkillset", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "skillsetName": "demoskillset", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "name": "demoskillset", - "description": "Extract entities, detect language and extract key-phrases", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "name": "#1", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "organizations", - "targetName": "organizations" - } - ], - "categories": [ - "organization" - ], - "defaultLanguageCode": "en", - "minimumPrecision": 0.7 - }, - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "#2", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "#3", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "defaultLanguageCode": null, - "textSplitMode": "pages", - "maximumPageLength": 4000 - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "#4", - "description": null, - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ], - "defaultLanguageCode": null, - "maxKeyPhraseCount": null - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "MyCustomWebApiSkill", - "description": null, - "context": "/document", - "uri": "https://contoso.example.org", - "httpMethod": "POST", - "timeout": "PT30S", - "batchSize": 1, - "degreeOfParallelism": null, - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - } - ], - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSynonymMap.json deleted file mode 100644 index b1bb6b5c71d9..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceGetSynonymMap.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_Get", - "title": "SearchServiceGetSynonymMap", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "synonymMapName": "mysynonymmap", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceIndexAnalyze.json deleted file mode 100644 index 32d8385754e8..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceIndexAnalyze.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "operationId": "IndexesOperations_Analyze", - "title": "SearchServiceIndexAnalyze", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "hotels", - "api-version": "2024-07-01", - "request": { - "text": "Text to analyze", - "analyzer": "standard.lucene" - } - }, - "responses": { - "200": { - "body": { - "tokens": [ - { - "token": "text", - "startOffset": 0, - "endOffset": 4, - "position": 0 - }, - { - "token": "to", - "startOffset": 5, - "endOffset": 7, - "position": 1 - }, - { - "token": "analyze", - "startOffset": 8, - "endOffset": 15, - "position": 2 - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListDataSources.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListDataSources.json deleted file mode 100644 index 6a8611843e0a..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListDataSources.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "operationId": "DataSourcesOperations_List", - "title": "SearchServiceListDataSources", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "$select": "*", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "mydocdbdatasource", - "description": "My Cosmos DB data source.", - "type": "cosmosdb", - "credentials": { - "connectionString": null - }, - "container": { - "name": "myDocDbCollectionId", - "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "_ts" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - }, - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexers.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexers.json deleted file mode 100644 index d853b67419ac..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexers.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "operationId": "IndexersOperations_List", - "title": "SearchServiceListIndexers", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "$select": "*", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "myindexer", - "description": "a cool indexer", - "dataSourceName": "mydocdbdatasource", - "targetIndexName": "orders", - "schedule": { - "interval": "PT1H", - "startTime": "2015-01-01T00:00:00Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5 - }, - "fieldMappings": [], - "disabled": false - }, - { - "name": "myotherindexer", - "description": "another cool indexer", - "dataSourceName": "myblobdatasource", - "targetIndexName": "orders", - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5, - "batchSize": 15 - }, - "fieldMappings": [ - { - "sourceFieldName": "PersonName", - "targetFieldName": "FirstName", - "mappingFunction": { - "name": "extractTokenAtPosition", - "parameters": { - "delimiter": " ", - "position": 0 - } - } - }, - { - "sourceFieldName": "PersonName", - "targetFieldName": "LastName", - "mappingFunction": { - "name": "extractTokenAtPosition", - "parameters": { - "delimiter": " ", - "position": 1 - } - } - } - ], - "disabled": false, - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexes.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexes.json deleted file mode 100644 index b89b350a43ca..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListIndexes.json +++ /dev/null @@ -1,317 +0,0 @@ -{ - "operationId": "IndexesOperations_List", - "title": "SearchServiceListIndexes", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "$select": "*", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "hotels", - "fields": [ - { - "name": "hotelId", - "type": "Edm.String", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": true, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "baseRate", - "type": "Edm.Double", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "description_fr", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "fr.lucene", - "synonymMaps": [] - }, - { - "name": "hotelName", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "tags", - "type": "Collection(Edm.String)", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": false, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "tagsAnalyzer", - "synonymMaps": [] - }, - { - "name": "parkingIncluded", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "smokingAllowed", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "lastRenovationDate", - "type": "Edm.DateTimeOffset", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "rating", - "type": "Edm.Int32", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "location", - "type": "Edm.GeographyPoint", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "geo", - "text": { - "weights": { - "hotelName": 5 - } - }, - "functions": [ - { - "type": "distance", - "boost": 5, - "fieldName": "location", - "interpolation": "logarithmic", - "distance": { - "referencePointParameter": "currentLocation", - "boostingDistance": 10 - } - } - ] - } - ], - "defaultScoringProfile": "geo", - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "hotelName" - ] - } - ], - "analyzers": [ - { - "name": "tagsAnalyzer", - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "charFilters": [ - "html_strip" - ], - "tokenizer": "standard_v2" - } - ], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "corsOptions": { - "allowedOrigins": [ - "tempuri.org" - ], - "maxAgeInSeconds": 60 - }, - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - }, - "semantic": { - "configurations": [ - { - "name": "semanticHotels", - "prioritizedFields": { - "titleField": { - "fieldName": "hotelName" - }, - "prioritizedContentFields": [ - { - "fieldName": "description" - }, - { - "fieldName": "description_fr" - } - ], - "prioritizedKeywordsFields": [ - { - "fieldName": "tags" - }, - { - "fieldName": "category" - } - ] - } - } - ] - } - }, - { - "name": "testindex", - "fields": [ - { - "name": "id", - "type": "Edm.String", - "searchable": false, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": true, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "hidden", - "type": "Edm.Double", - "searchable": false, - "filterable": true, - "retrievable": false, - "sortable": true, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - } - ], - "scoringProfiles": [], - "defaultScoringProfile": null, - "suggesters": [], - "analyzers": [], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "corsOptions": null, - "encryptionKey": null - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSkillsets.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSkillsets.json deleted file mode 100644 index b4bdd7cd81e5..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSkillsets.json +++ /dev/null @@ -1,150 +0,0 @@ -{ - "operationId": "SkillsetsOperations_List", - "title": "SearchServiceListSkillsets", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "$select": "*", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "demoskillset", - "description": "Extract entities, detect language and extract key-phrases", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "name": "#1", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "organizations", - "targetName": "organizations" - } - ], - "categories": [ - "organization" - ], - "defaultLanguageCode": "en", - "minimumPrecision": 0.7 - }, - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "#2", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "#3", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "defaultLanguageCode": null, - "textSplitMode": "pages", - "maximumPageLength": 4000 - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "#4", - "description": null, - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ], - "defaultLanguageCode": null, - "maxKeyPhraseCount": null - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "MyCustomWebApiSkill", - "description": null, - "context": "/document", - "uri": "https://contoso.example.org", - "httpMethod": "POST", - "timeout": "PT30S", - "batchSize": 1, - "degreeOfParallelism": null, - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - } - ], - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": { - "applicationId": "00000000-0000-0000-0000-000000000000", - "applicationSecret": null - } - } - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSynonymMaps.json deleted file mode 100644 index 53c8134271c4..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceListSynonymMaps.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "operationId": "SynonymMapsOperations_List", - "title": "SearchServiceListSynonymMaps", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", - "encryptionKey": { - "keyVaultKeyName": "myKeyName", - "keyVaultKeyVersion": "myKeyVersion", - "keyVaultUri": "https://myKeyVault.vault.azure.net", - "accessCredentials": null - } - }, - { - "name": "myothersynonymmap", - "format": "solr", - "synonyms": "couch, sofa, chesterfield\npop, soda\ntoque, hat", - "encryptionKey": null - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceResetIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceResetIndexer.json deleted file mode 100644 index a9d763f69655..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceResetIndexer.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "operationId": "IndexersOperations_Reset", - "title": "SearchServiceResetIndexer", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-07-01" - }, - "responses": { - "204": {} - } -} diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceRunIndexer.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceRunIndexer.json deleted file mode 100644 index 97604abf06b3..000000000000 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchServiceRunIndexer.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "operationId": "IndexersOperations_Run", - "title": "SearchServiceRunIndexer", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexerName": "myindexer", - "api-version": "2024-07-01" - }, - "responses": { - "202": {} - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json deleted file mode 100644 index da2054924fcc..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "operationId": "DocumentsOperations_AutocompleteGet", - "title": "SearchIndexAutocompleteDocumentsGet", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01", - "autocompleteMode": "oneTerm", - "search": "washington medic", - "suggesterName": "sg", - "filter": "search.in(docId,'101,102,105')", - "fuzzy": false, - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "searchFields": [ - "title", - "description" - ], - "top": 10 - }, - "responses": { - "200": { - "body": [ - { - "text": "medicaid", - "queryPlusText": "washington medicaid" - }, - { - "text": "medicare", - "queryPlusText": "washington medicare" - }, - { - "text": "medicine", - "queryPlusText": "washington medicine" - } - ] - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json deleted file mode 100644 index b8251df3fd83..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "operationId": "DocumentsOperations_AutocompletePost", - "title": "SearchIndexAutocompleteDocumentsPost", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01", - "autocompleteRequest": { - "autocompleteMode": "oneTerm", - "search": "washington medic", - "suggesterName": "sg", - "filter": "search.in(docId,'101,102,105')", - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "searchFields": "title,description", - "top": 10 - } - }, - "responses": { - "200": { - "body": [ - { - "text": "medicaid", - "queryPlusText": "washington medicaid" - }, - { - "text": "medicare", - "queryPlusText": "washington medicare" - }, - { - "text": "medicine", - "queryPlusText": "washington medicine" - } - ] - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexCountDocuments.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexCountDocuments.json deleted file mode 100644 index 9e860ca33e9a..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexCountDocuments.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "operationId": "DocumentsOperations_Count", - "title": "SearchIndexCountDocuments", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01" - }, - "responses": { - "200": { - "body": 427 - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexGetDocument.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexGetDocument.json deleted file mode 100644 index 4c3a27feb142..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexGetDocument.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "operationId": "DocumentsOperations_Get", - "title": "SearchIndexGetDocument", - "parameters": { - "endpoint": "https://exampleservice.search.windows.net", - "indexName": "getdocumentexample", - "key": "1", - "$select": [ - "docId", - "title", - "description" - ], - "api-version": "2024-07-01", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "docId": "1", - "title": "Nice Hotel", - "description": "Cheapest hotel in town" - } - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexIndexDocuments.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexIndexDocuments.json deleted file mode 100644 index 15f3d7781789..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexIndexDocuments.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "operationId": "DocumentsOperations_Index", - "title": "SearchIndexIndexDocuments", - "parameters": { - "endpoint": "https://exampleservice.search.windows.net", - "indexName": "indexdocumentsexample", - "api-version": "2024-07-01", - "x-ms-client-request-id": "00000000-0000-0000-0000-000000000000", - "batch": { - "value": [ - { - "@search.action": "upload", - "docId": "1", - "title": "Fancy Stay", - "description": "Best hotel in town" - }, - { - "@search.action": "merge", - "docId": "2", - "title": "Roach Motel" - }, - { - "@search.action": "mergeOrUpload", - "docId": "3", - "title": "Econo Motel" - }, - { - "@search.action": "delete", - "docId": "4" - } - ] - } - }, - "responses": { - "200": { - "body": { - "value": [ - { - "key": "1", - "status": true, - "errorMessage": null, - "statusCode": 200 - }, - { - "key": "2", - "status": true, - "errorMessage": null, - "statusCode": 200 - }, - { - "key": "3", - "status": true, - "errorMessage": null, - "statusCode": 200 - }, - { - "key": "4", - "status": true, - "errorMessage": null, - "statusCode": 200 - } - ] - } - }, - "207": { - "body": { - "value": [ - { - "key": "1", - "status": true, - "errorMessage": null, - "statusCode": 201 - }, - { - "key": "2", - "status": false, - "errorMessage": "Document not found.", - "statusCode": 404 - }, - { - "key": "3", - "status": true, - "errorMessage": null, - "statusCode": 201 - }, - { - "key": "4", - "status": true, - "errorMessage": null, - "statusCode": 200 - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsGet.json deleted file mode 100644 index dbb98fecc80e..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsGet.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "operationId": "DocumentsOperations_SearchGet", - "title": "SearchIndexSearchDocumentsGet", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01", - "$count": true, - "facet": [ - "category,count:10,sort:count" - ], - "$filter": "rating gt 10", - "highlight": [ - "title" - ], - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "$orderby": [ - "search.score() desc", - "rating desc" - ], - "queryType": "simple", - "sessionId": "mysessionid", - "scoringStatistics": "global", - "scoringParameters": [ - "currentLocation--122.123,44.77233" - ], - "scoringProfile": "sp", - "search": "nice hotels", - "searchFields": [ - "title", - "description" - ], - "searchMode": "any", - "$select": [ - "docId", - "title", - "description" - ], - "$skip": 100, - "$top": 10 - }, - "responses": { - "200": { - "body": { - "@odata.count": 25, - "@search.coverage": 80, - "@search.facets": { - "category": [ - { - "count": 1, - "value": "Economy" - }, - { - "count": 1, - "value": "Luxury" - } - ] - }, - "value": [ - { - "@search.score": 1.50, - "@search.highlights": { - "title": [ - "Nice Hotel" - ] - }, - "description": "Cheapest hotel in town", - "docId": "1", - "title": "Nice Hotel" - }, - { - "@search.score": 0.70, - "@search.highlights": { - "title": [ - "Fancy Hotel" - ] - }, - "description": "Best hotel in town", - "docId": "2", - "title": "Fancy Hotel" - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsPost.json deleted file mode 100644 index 65f518cea193..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsPost.json +++ /dev/null @@ -1,121 +0,0 @@ -{ - "operationId": "DocumentsOperations_SearchPost", - "title": "SearchIndexSearchDocumentsPost", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01", - "searchRequest": { - "count": true, - "facets": [ - "category,count:10,sort:count" - ], - "filter": "rating gt 4.0", - "highlight": "description", - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": null, - "orderby": "rating desc", - "queryType": "simple", - "scoringParameters": [ - "currentLocation--122.123,44.77233" - ], - "scoringProfile": "sp", - "search": "nice hotels", - "searchFields": "category,description", - "searchMode": "any", - "sessionId": "mysessionid", - "scoringStatistics": "global", - "select": "hotelId,category,description", - "skip": 0, - "top": 10, - "vectorQueries": [ - { - "kind": "vector", - "vector": [ - 0.103, - 0.0712, - 0.0852, - 0.1547, - 0.1183 - ], - "fields": "descriptionEmbedding", - "k": 5, - "exhaustive": true, - "oversampling": 20.0, - "weight": 2.0 - } - ], - "vectorFilterMode": "preFilter" - } - }, - "responses": { - "200": { - "body": { - "@odata.count": 25, - "@search.facets": { - "category": [ - { - "count": 1, - "value": "Economy" - }, - { - "count": 1, - "value": "Luxury" - } - ] - }, - "@search.nextPageParameters": { - "count": true, - "facets": [ - "category,count:10,sort:count" - ], - "filter": "rating gt 4.0", - "highlight": "title", - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": null, - "orderby": "search.score() desc,rating desc", - "queryType": "simple", - "sessionId": "mysessionid", - "scoringStatistics": "global", - "scoringParameters": [ - "currentLocation--122.123,44.77233" - ], - "scoringProfile": "sp", - "search": "nice hotels", - "searchFields": "title,description", - "searchMode": "any", - "select": "docId,title,description", - "skip": 2, - "top": 8 - }, - "value": [ - { - "@search.score": 1.50, - "@search.highlights": { - "title": [ - "Nice Hotel" - ] - }, - "description": "Cheapest hotel in town", - "docId": "1", - "title": "Nice Hotel" - }, - { - "@search.score": 0.70, - "@search.highlights": { - "title": [ - "Fancy Hotel" - ] - }, - "description": "Best hotel in town", - "docId": "2", - "title": "Fancy Hotel" - } - ], - "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" - } - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json deleted file mode 100644 index e520c69d94f5..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "operationId": "DocumentsOperations_SearchGet", - "title": "SearchIndexSearchDocumentsSemanticGet", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01", - "$count": true, - "highlightPostTag": "", - "highlightPreTag": "", - "queryType": "semantic", - "search": "how do clouds form", - "semanticConfiguration": "my-semantic-config", - "answers": "extractive|count-3", - "captions": "extractive|highlight-true", - "semanticErrorHandling": "partial", - "semanticMaxWaitInMilliseconds": 780 - }, - "responses": { - "200": { - "body": { - "@odata.count": 25, - "@search.answers": [ - { - "key": "4123", - "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", - "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", - "score": 0.94639826 - } - ], - "value": [ - { - "@search.score": 0.5479723, - "@search.rerankerScore": 1.0321671911515296, - "@search.captions": [ - { - "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", - "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." - } - ], - "id": "4123", - "title": "Earth Atmosphere", - "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", - "locations": [ - "Pacific Northwest", - "North America", - "Vancouver" - ] - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json deleted file mode 100644 index f28437d390df..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "operationId": "DocumentsOperations_SearchPost", - "title": "SearchIndexSearchDocumentsSemanticPost", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01", - "searchRequest": { - "count": true, - "highlightPostTag": "", - "highlightPreTag": "", - "queryType": "semantic", - "search": "how do clouds form", - "semanticConfiguration": "my-semantic-config", - "answers": "extractive|count-3", - "captions": "extractive|highlight-true", - "semanticErrorHandling": "partial", - "semanticMaxWaitInMilliseconds": 780 - } - }, - "responses": { - "200": { - "body": { - "@odata.count": 25, - "@search.answers": [ - { - "key": "4123", - "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", - "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), but not where it is descending (over the river).", - "score": 0.94639826 - } - ], - "@search.nextPageParameters": { - "count": true, - "highlightPostTag": "", - "highlightPreTag": "", - "queryType": "semantic", - "search": "how do clouds form", - "semanticConfiguration": "my-semantic-config", - "answers": "extractive|count-3", - "captions": "extractive|highlight-true", - "semanticErrorHandling": "partial", - "semanticMaxWaitInMilliseconds": 780, - "skip": 2, - "top": 8 - }, - "value": [ - { - "@search.score": 0.5479723, - "@search.rerankerScore": 1.0321671911515296, - "@search.captions": [ - { - "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.", - "highlights": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America." - } - ], - "id": "4123", - "title": "Earth Atmosphere", - "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n", - "locations": [ - "Pacific Northwest", - "North America", - "Vancouver" - ] - } - ], - "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2024-07-01" - } - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json deleted file mode 100644 index de0013953f7c..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "operationId": "DocumentsOperations_SuggestGet", - "title": "SearchIndexSuggestDocumentsGet", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01", - "$filter": "rating gt 10", - "fuzzy": false, - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "$orderby": [ - "search.score() desc", - "rating desc" - ], - "search": "hote", - "searchFields": [ - "title" - ], - "suggesterName": "sg", - "$select": [ - "docId", - "title", - "description" - ], - "$top": 10 - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@search.text": "Nice Hotel", - "description": "Cheapest hotel in town", - "docId": "1", - "title": "Nice Hotel" - }, - { - "@search.text": "Fancy Hotel", - "description": "Best hotel in town", - "docId": "2", - "title": "Fancy Hotel" - } - ] - } - } - } -} diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json deleted file mode 100644 index b80b58298472..000000000000 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "operationId": "DocumentsOperations_SuggestPost", - "title": "SearchIndexSuggestDocumentsPost", - "parameters": { - "endpoint": "https://myservice.search.windows.net", - "indexName": "myindex", - "api-version": "2024-07-01", - "suggestRequest": { - "filter": "rating gt 4.0", - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "orderby": "rating desc", - "search": "hote", - "searchFields": "title", - "select": "docId,title,description", - "suggesterName": "sg", - "top": 10 - } - }, - "responses": { - "200": { - "body": { - "value": [ - { - "@search.text": "Nice Hotel", - "description": "Cheapest hotel in town", - "docId": "1", - "title": "Nice Hotel" - }, - { - "@search.text": "Fancy Hotel", - "description": "Best hotel in town", - "docId": "2", - "title": "Fancy Hotel" - } - ] - } - } - } -} diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json index 40483bf4d79a..622b5b66c682 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json @@ -414,6 +414,14 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsGet": { + "$ref": "./examples/SearchIndexSearchDocumentsGet.json" + }, + "SearchIndexSearchDocumentsSemanticGet": { + "$ref": "./examples/SearchIndexSearchDocumentsSemanticGet.json" + } } } }, @@ -450,6 +458,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexCountDocuments": { + "$ref": "./examples/SearchIndexCountDocuments.json" + } } } }, @@ -589,6 +602,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsGet": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" + } } } }, @@ -639,6 +657,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexIndexDocuments": { + "$ref": "./examples/SearchIndexIndexDocuments.json" + } } } }, @@ -683,6 +706,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsPost": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" + } } } }, @@ -727,6 +755,14 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsPost": { + "$ref": "./examples/SearchIndexSearchDocumentsPost.json" + }, + "SearchIndexSearchDocumentsSemanticPost": { + "$ref": "./examples/SearchIndexSearchDocumentsSemanticPost.json" + } } } }, @@ -771,6 +807,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsPost": { + "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" + } } } }, @@ -900,6 +941,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsGet": { + "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" + } } } }, @@ -954,6 +1000,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexGetDocument": { + "$ref": "./examples/SearchIndexGetDocument.json" + } } } } From 2352decffa31677fb9e8baec0dff8f09ba80bf3f Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 15:16:48 -0800 Subject: [PATCH 62/78] update --- .../stable/2024-07-01/searchservice.json | 155 ++++++++++++++++++ 1 file changed, 155 insertions(+) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json index eba39d0e5fdd..0bdb3160f96c 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json @@ -78,6 +78,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListDataSources": { + "$ref": "./examples/SearchServiceListDataSources.json" + } } }, "post": { @@ -113,6 +118,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateDataSource": { + "$ref": "./examples/SearchServiceCreateDataSource.json" + } } } }, @@ -148,6 +158,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetDataSource": { + "$ref": "./examples/SearchServiceGetDataSource.json" + } } }, "put": { @@ -226,6 +241,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateDataSource": { + "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" + } } }, "delete": { @@ -275,6 +295,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteDataSource": { + "$ref": "./examples/SearchServiceDeleteDataSource.json" + } } } }, @@ -310,6 +335,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListIndexers": { + "$ref": "./examples/SearchServiceListIndexers.json" + } } }, "post": { @@ -345,6 +375,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateIndexer": { + "$ref": "./examples/SearchServiceCreateIndexer.json" + } } } }, @@ -380,6 +415,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexer": { + "$ref": "./examples/SearchServiceGetIndexer.json" + } } }, "put": { @@ -458,6 +498,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndexer": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" + } } }, "delete": { @@ -507,6 +552,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteIndexer": { + "$ref": "./examples/SearchServiceDeleteIndexer.json" + } } } }, @@ -539,6 +589,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceResetIndexer": { + "$ref": "./examples/SearchServiceResetIndexer.json" + } } } }, @@ -571,6 +626,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceRunIndexer": { + "$ref": "./examples/SearchServiceRunIndexer.json" + } } } }, @@ -606,6 +666,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexerStatus": { + "$ref": "./examples/SearchServiceGetIndexerStatus.json" + } } } }, @@ -641,6 +706,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListIndexes": { + "$ref": "./examples/SearchServiceListIndexes.json" + } } }, "post": { @@ -676,6 +746,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateIndex": { + "$ref": "./examples/SearchServiceCreateIndex.json" + } } } }, @@ -711,6 +786,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndex": { + "$ref": "./examples/SearchServiceGetIndex.json" + } } }, "put": { @@ -796,6 +876,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndex": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" + } } }, "delete": { @@ -845,6 +930,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteIndex": { + "$ref": "./examples/SearchServiceDeleteIndex.json" + } } } }, @@ -889,6 +979,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceIndexAnalyze": { + "$ref": "./examples/SearchServiceIndexAnalyze.json" + } } } }, @@ -924,6 +1019,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexStatistics": { + "$ref": "./examples/SearchServiceGetIndexStatistics.json" + } } } }, @@ -952,6 +1052,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetServiceStatistics": { + "$ref": "./examples/SearchServiceGetServiceStatistics.json" + } } } }, @@ -987,6 +1092,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListSkillsets": { + "$ref": "./examples/SearchServiceListSkillsets.json" + } } }, "post": { @@ -1022,6 +1132,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateSkillset": { + "$ref": "./examples/SearchServiceCreateSkillset.json" + } } } }, @@ -1057,6 +1172,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetSkillset": { + "$ref": "./examples/SearchServiceGetSkillset.json" + } } }, "put": { @@ -1135,6 +1255,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateSkillset": { + "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" + } } }, "delete": { @@ -1184,6 +1309,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteSkillset": { + "$ref": "./examples/SearchServiceDeleteSkillset.json" + } } } }, @@ -1219,6 +1349,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListSynonymMaps": { + "$ref": "./examples/SearchServiceListSynonymMaps.json" + } } }, "post": { @@ -1254,6 +1389,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateSynonymMap": { + "$ref": "./examples/SearchServiceCreateSynonymMap.json" + } } } }, @@ -1289,6 +1429,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetSynonymMap": { + "$ref": "./examples/SearchServiceGetSynonymMap.json" + } } }, "put": { @@ -1367,6 +1512,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateSynonymMap": { + "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" + } } }, "delete": { @@ -1416,6 +1566,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteSynonymMap": { + "$ref": "./examples/SearchServiceDeleteSynonymMap.json" + } } } } From b94472ad11f89848d49d458eded88f6c2885613a Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 16:24:05 -0800 Subject: [PATCH 63/78] update --- .../2024-11-01-preview/searchindex.json | 1996 --- .../2024-11-01-preview/searchservice.json | 11434 ---------------- 2 files changed, 13430 deletions(-) delete mode 100644 specification/search/data-plane/Search/preview/2024-11-01-preview/searchindex.json delete mode 100644 specification/search/data-plane/Search/preview/2024-11-01-preview/searchservice.json diff --git a/specification/search/data-plane/Search/preview/2024-11-01-preview/searchindex.json b/specification/search/data-plane/Search/preview/2024-11-01-preview/searchindex.json deleted file mode 100644 index aefb5c6d9812..000000000000 --- a/specification/search/data-plane/Search/preview/2024-11-01-preview/searchindex.json +++ /dev/null @@ -1,1996 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Azure AI Search", - "version": "2024-11-01-preview", - "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", - "x-typespec-generated": [ - { - "emitter": "@azure-tools/typespec-autorest" - } - ] - }, - "schemes": [ - "https" - ], - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ], - "security": [ - { - "ApiKeyAuth": [] - }, - { - "OAuth2Auth": [ - "https://search.azure.com/.default" - ] - } - ], - "securityDefinitions": { - "ApiKeyAuth": { - "type": "apiKey", - "name": "api-key", - "in": "header" - }, - "OAuth2Auth": { - "type": "oauth2", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", - "scopes": { - "https://search.azure.com/.default": "" - } - } - }, - "tags": [], - "paths": { - "/indexes('{indexName}')/docs": { - "get": { - "operationId": "DocumentsOperations_SearchGet", - "description": "Searches for documents in the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "search", - "in": "query", - "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents.", - "required": false, - "type": "string", - "x-ms-client-name": "searchText" - }, - { - "name": "$count", - "in": "query", - "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation.", - "required": false, - "type": "boolean", - "x-ms-client-name": "includeTotalResultCount" - }, - { - "name": "facet", - "in": "query", - "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "x-ms-client-name": "facets" - }, - { - "name": "$filter", - "in": "query", - "description": "The OData $filter expression to apply to the search query.", - "required": false, - "type": "string" - }, - { - "name": "highlight", - "in": "query", - "description": "The list of field names to use for hit highlights. Only searchable fields can\nbe used for hit highlighting.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv", - "x-ms-client-name": "highlightFields" - }, - { - "name": "highlightPostTag", - "in": "query", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>.", - "required": false, - "type": "string" - }, - { - "name": "highlightPreTag", - "in": "query", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>.", - "required": false, - "type": "string" - }, - { - "name": "minimumCoverage", - "in": "query", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100.", - "required": false, - "type": "number", - "format": "double" - }, - { - "name": "$orderby", - "in": "query", - "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, and desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no OrderBy is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv", - "x-ms-client-name": "orderBy" - }, - { - "name": "queryType", - "in": "query", - "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax.", - "required": false, - "type": "string", - "enum": [ - "simple", - "full", - "semantic" - ], - "x-ms-enum": { - "name": "QueryType", - "modelAsString": true, - "values": [ - { - "name": "Simple", - "value": "simple", - "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." - }, - { - "name": "Full", - "value": "full", - "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." - }, - { - "name": "Semantic", - "value": "semantic", - "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." - } - ] - } - }, - { - "name": "scoringParameter", - "in": "query", - "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "x-ms-client-name": "scoringParameters" - }, - { - "name": "scoringProfile", - "in": "query", - "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results.", - "required": false, - "type": "string" - }, - { - "name": "searchFields", - "in": "query", - "description": "The list of field names to which to scope the full-text search. When using\nfielded search (fieldName:searchExpression) in a full Lucene query, the field\nnames of each fielded search expression take precedence over any field names\nlisted in this parameter.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "searchMode", - "in": "query", - "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match.", - "required": false, - "type": "string", - "enum": [ - "any", - "all" - ], - "x-ms-enum": { - "name": "SearchMode", - "modelAsString": true, - "values": [ - { - "name": "Any", - "value": "any", - "description": "Any of the search terms must be matched in order to count the document as a\nmatch." - }, - { - "name": "All", - "value": "all", - "description": "All of the search terms must be matched in order to count the document as a\nmatch." - } - ] - } - }, - { - "name": "scoringStatistics", - "in": "query", - "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency.", - "required": false, - "type": "string", - "enum": [ - "local", - "global" - ], - "x-ms-enum": { - "name": "ScoringStatistics", - "modelAsString": true, - "values": [ - { - "name": "Local", - "value": "local", - "description": "The scoring statistics will be calculated locally for lower latency." - }, - { - "name": "Global", - "value": "global", - "description": "The scoring statistics will be calculated globally for more consistent scoring." - } - ] - } - }, - { - "name": "sessionId", - "in": "query", - "description": "A value to be used to create a sticky session, which can help to get more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character.", - "required": false, - "type": "string" - }, - { - "name": "$select", - "in": "query", - "description": "The list of fields to retrieve. If unspecified, all fields marked as\nretrievable in the schema are included.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "$skip", - "in": "query", - "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use $skip due to\nthis limitation, consider using $orderby on a totally-ordered key and $filter\nwith a range query instead.", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "name": "$top", - "in": "query", - "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults.", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "name": "semanticConfiguration", - "in": "query", - "description": "The name of the semantic configuration that lists which fields should be used\nfor semantic ranking, captions, highlights, and answers", - "required": false, - "type": "string" - }, - { - "name": "semanticErrorHandling", - "in": "query", - "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results (default).", - "required": false, - "type": "string", - "enum": [ - "partial", - "fail" - ], - "x-ms-enum": { - "name": "SemanticErrorMode", - "modelAsString": true, - "values": [ - { - "name": "Partial", - "value": "partial", - "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." - }, - { - "name": "Fail", - "value": "fail", - "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." - } - ] - } - }, - { - "name": "semanticMaxWaitInMilliseconds", - "in": "query", - "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 700 - }, - { - "name": "answers", - "in": "query", - "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", - "required": false, - "type": "string", - "enum": [ - "none", - "extractive" - ], - "x-ms-enum": { - "name": "QueryAnswerType", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Do not return answers for the query." - }, - { - "name": "Extractive", - "value": "extractive", - "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." - } - ] - } - }, - { - "name": "captions", - "in": "query", - "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", - "required": false, - "type": "string", - "enum": [ - "none", - "extractive" - ], - "x-ms-enum": { - "name": "QueryCaptionType", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Do not return captions for the query." - }, - { - "name": "Extractive", - "value": "extractive", - "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." - } - ] - } - }, - { - "name": "semanticQuery", - "in": "query", - "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/$count": { - "get": { - "operationId": "DocumentsOperations_Count", - "description": "Queries the number of documents in the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "type": "integer", - "format": "int32" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.autocomplete": { - "get": { - "operationId": "DocumentsOperations_AutocompleteGet", - "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "search", - "in": "query", - "description": "The incomplete term which should be auto-completed.", - "required": true, - "type": "string", - "x-ms-client-name": "searchText" - }, - { - "name": "suggesterName", - "in": "query", - "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", - "required": true, - "type": "string" - }, - { - "name": "autocompleteMode", - "in": "query", - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms.", - "required": false, - "type": "string", - "enum": [ - "oneTerm", - "twoTerms", - "oneTermWithContext" - ], - "x-ms-enum": { - "name": "AutocompleteMode", - "modelAsString": true, - "values": [ - { - "name": "OneTerm", - "value": "oneTerm", - "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." - }, - { - "name": "TwoTerms", - "value": "twoTerms", - "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." - }, - { - "name": "OneTermWithContext", - "value": "oneTermWithContext", - "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." - } - ] - } - }, - { - "name": "$filter", - "in": "query", - "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result.", - "required": false, - "type": "string" - }, - { - "name": "fuzzy", - "in": "query", - "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nautocomplete queries are slower and consume more resources.", - "required": false, - "type": "boolean", - "x-ms-client-name": "useFuzzyMatching" - }, - { - "name": "highlightPostTag", - "in": "query", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled.", - "required": false, - "type": "string" - }, - { - "name": "highlightPreTag", - "in": "query", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled.", - "required": false, - "type": "string" - }, - { - "name": "minimumCoverage", - "in": "query", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", - "required": false, - "type": "number", - "format": "double" - }, - { - "name": "searchFields", - "in": "query", - "description": "The list of field names to consider when querying for auto-completed terms.\nTarget fields must be included in the specified suggester.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "$top", - "in": "query", - "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5.", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/AutocompleteResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.index": { - "post": { - "operationId": "DocumentsOperations_Index", - "description": "Sends a batch of document write actions to the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "batch", - "in": "body", - "description": "The batch of index actions.", - "required": true, - "schema": { - "$ref": "#/definitions/IndexBatch" - } - } - ], - "responses": { - "200": { - "description": "Response containing the status of operations for all documents in the indexing\nrequest.", - "schema": { - "$ref": "#/definitions/IndexDocumentsResult" - } - }, - "207": { - "description": "Response containing the status of operations for all documents in the indexing\nrequest.", - "schema": { - "$ref": "#/definitions/IndexDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.post.autocomplete": { - "post": { - "operationId": "DocumentsOperations_AutocompletePost", - "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "autocompleteRequest", - "in": "body", - "description": "The definition of the Autocomplete request.", - "required": true, - "schema": { - "$ref": "#/definitions/AutocompleteRequest" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/AutocompleteResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.post.search": { - "post": { - "operationId": "DocumentsOperations_SearchPost", - "description": "Searches for documents in the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "searchRequest", - "in": "body", - "description": "The definition of the Search request.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchRequest" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.post.suggest": { - "post": { - "operationId": "DocumentsOperations_SuggestPost", - "description": "Suggests documents in the index that match the given partial query text.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "suggestRequest", - "in": "body", - "description": "The Suggest request.", - "required": true, - "schema": { - "$ref": "#/definitions/SuggestRequest" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SuggestDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs/search.suggest": { - "get": { - "operationId": "DocumentsOperations_SuggestGet", - "description": "Suggests documents in the index that match the given partial query text.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "search", - "in": "query", - "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters.", - "required": true, - "type": "string", - "x-ms-client-name": "searchText" - }, - { - "name": "suggesterName", - "in": "query", - "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition.", - "required": true, - "type": "string" - }, - { - "name": "$filter", - "in": "query", - "description": "An OData expression that filters the documents considered for suggestions.", - "required": false, - "type": "string" - }, - { - "name": "fuzzy", - "in": "query", - "description": "A value indicating whether to use fuzzy matching for the suggestions query.\nDefault is false. When set to true, the query will find terms even if there's a\nsubstituted or missing character in the search text. While this provides a\nbetter experience in some scenarios, it comes at a performance cost as fuzzy\nsuggestions queries are slower and consume more resources.", - "required": false, - "type": "boolean", - "x-ms-client-name": "useFuzzyMatching" - }, - { - "name": "highlightPostTag", - "in": "query", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled.", - "required": false, - "type": "string" - }, - { - "name": "highlightPreTag", - "in": "query", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled.", - "required": false, - "type": "string" - }, - { - "name": "minimumCoverage", - "in": "query", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestions query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80.", - "required": false, - "type": "number", - "format": "double" - }, - { - "name": "$orderby", - "in": "query", - "description": "The list of OData $orderby expressions by which to sort the results. Each\nexpression can be either a field name or a call to either the geo.distance() or\nthe search.score() functions. Each expression can be followed by asc to\nindicate ascending, or desc to indicate descending. The default is ascending\norder. Ties will be broken by the match scores of documents. If no $orderby is\nspecified, the default sort order is descending by document match score. There\ncan be at most 32 $orderby clauses.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv", - "x-ms-client-name": "orderBy" - }, - { - "name": "searchFields", - "in": "query", - "description": "The list of field names to search for the specified search text. Target fields\nmust be included in the specified suggester.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "$select", - "in": "query", - "description": "The list of fields to retrieve. If unspecified, only the key field will be\nincluded in the results.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv" - }, - { - "name": "$top", - "in": "query", - "description": "The number of suggestions to retrieve. The value must be a number between 1 and\n100. The default is 5.", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SuggestDocumentsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/docs('{key}')": { - "get": { - "operationId": "DocumentsOperations_Get", - "description": "Retrieves a document from the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "key", - "in": "path", - "description": "The key of the document to retrieve.", - "required": true, - "type": "string" - }, - { - "name": "$select", - "in": "query", - "description": "List of field names to retrieve for the document; Any field not retrieved will\nbe missing from the returned document.", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "csv", - "x-ms-client-name": "selectedFields" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/LookupDocument" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - } - }, - "definitions": { - "AutocompleteItem": { - "type": "object", - "description": "The result of Autocomplete requests.", - "properties": { - "text": { - "type": "string", - "description": "The completed term." - }, - "queryPlusText": { - "type": "string", - "description": "The query along with the completed term." - } - }, - "required": [ - "text", - "queryPlusText" - ] - }, - "AutocompleteMode": { - "type": "string", - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context in\nproducing autocomplete terms.", - "enum": [ - "oneTerm", - "twoTerms", - "oneTermWithContext" - ], - "x-ms-enum": { - "name": "AutocompleteMode", - "modelAsString": true, - "values": [ - { - "name": "OneTerm", - "value": "oneTerm", - "description": "Only one term is suggested. If the query has two terms, only the last term is\ncompleted. For example, if the input is 'washington medic', the suggested terms\ncould include 'medicaid', 'medicare', and 'medicine'." - }, - { - "name": "TwoTerms", - "value": "twoTerms", - "description": "Matching two-term phrases in the index will be suggested. For example, if the\ninput is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." - }, - { - "name": "OneTermWithContext", - "value": "oneTermWithContext", - "description": "Completes the last term in a query with two or more terms, where the last two\nterms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." - } - ] - } - }, - "AutocompleteRequest": { - "type": "object", - "description": "Parameters for fuzzy matching, and other autocomplete query behaviors.", - "properties": { - "search": { - "type": "string", - "description": "The search text on which to base autocomplete results." - }, - "autocompleteMode": { - "$ref": "#/definitions/AutocompleteMode", - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms'\nto get shingles and 'oneTermWithContext' to use the current context while\nproducing auto-completed terms." - }, - "filter": { - "type": "string", - "description": "An OData expression that filters the documents used to produce completed terms\nfor the Autocomplete result." - }, - "fuzzy": { - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the autocomplete query.\nDefault is false. When set to true, the query will autocomplete terms even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy autocomplete queries are slower and consume more resources." - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting is disabled." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting is disabled." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by an autocomplete query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to consider when querying for\nauto-completed terms. Target fields must be included in the specified\nsuggester." - }, - "suggesterName": { - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of auto-completed terms to retrieve. This must be a value between 1\nand 100. The default is 5." - } - }, - "required": [ - "search", - "suggesterName" - ] - }, - "AutocompleteResult": { - "type": "object", - "description": "The result of Autocomplete query.", - "properties": { - "@search.coverage": { - "type": "number", - "format": "double", - "description": "A value indicating the percentage of the index that was considered by the\nautocomplete request, or null if minimumCoverage was not specified in the\nrequest.", - "x-ms-client-name": "coverage" - }, - "value": { - "type": "array", - "description": "The list of returned Autocompleted items.", - "items": { - "$ref": "#/definitions/AutocompleteItem" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "ErrorAdditionalInfo": { - "type": "object", - "description": "The resource management error additional info.", - "properties": { - "type": { - "type": "string", - "description": "The additional info type." - }, - "info": { - "type": "object", - "description": "The additional info.", - "additionalProperties": { - "type": "string" - } - } - } - }, - "ErrorDetail": { - "type": "object", - "description": "The error detail.", - "properties": { - "code": { - "type": "string", - "description": "The error code." - }, - "message": { - "type": "string", - "description": "The error message." - }, - "target": { - "type": "string", - "description": "The error target." - }, - "details": { - "type": "array", - "description": "The error details.", - "items": { - "$ref": "#/definitions/ErrorDetail" - }, - "x-ms-identifiers": [] - }, - "additionalInfo": { - "type": "array", - "description": "The error additional info.", - "items": { - "$ref": "#/definitions/ErrorAdditionalInfo" - }, - "x-ms-identifiers": [] - } - } - }, - "ErrorResponse": { - "type": "object", - "description": "Common error response for all Azure Resource Manager APIs to return error\ndetails for failed operations. (This also follows the OData error response\nformat.).", - "properties": { - "error": { - "$ref": "#/definitions/ErrorDetail", - "description": "The error object." - } - } - }, - "FacetResult": { - "type": "object", - "description": "A single bucket of a facet query result. Reports the number of documents with a\nfield value falling within a particular range or having a particular value or\ninterval.", - "properties": { - "count": { - "type": "integer", - "format": "int64", - "description": "The approximate count of documents falling within the bucket described by this\nfacet." - } - }, - "additionalProperties": {} - }, - "IndexAction": { - "type": "object", - "description": "Represents an index action that operates on a document.", - "properties": { - "@search.action": { - "$ref": "#/definitions/IndexActionType", - "description": "The operation to perform on a document in an indexing batch.", - "x-ms-client-name": "actionType" - } - }, - "additionalProperties": {} - }, - "IndexActionType": { - "type": "string", - "description": "The operation to perform on a document in an indexing batch.", - "enum": [ - "upload", - "merge", - "mergeOrUpload", - "delete" - ], - "x-ms-enum": { - "name": "IndexActionType", - "modelAsString": true, - "values": [ - { - "name": "Upload", - "value": "upload", - "description": "Inserts the document into the index if it is new and updates it if it exists.\nAll fields are replaced in the update case." - }, - { - "name": "Merge", - "value": "merge", - "description": "Merges the specified field values with an existing document. If the document\ndoes not exist, the merge will fail. Any field you specify in a merge will\nreplace the existing field in the document. This also applies to collections of\nprimitive and complex types." - }, - { - "name": "MergeOrUpload", - "value": "mergeOrUpload", - "description": "Behaves like merge if a document with the given key already exists in the\nindex. If the document does not exist, it behaves like upload with a new\ndocument." - }, - { - "name": "Delete", - "value": "delete", - "description": "Removes the specified document from the index. Any field you specify in a\ndelete operation other than the key field will be ignored. If you want to\nremove an individual field from a document, use merge instead and set the field\nexplicitly to null." - } - ] - } - }, - "IndexBatch": { - "type": "object", - "description": "Contains a batch of document write actions to send to the index.", - "properties": { - "value": { - "type": "array", - "description": "The actions in the batch.", - "items": { - "$ref": "#/definitions/IndexAction" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "IndexDocumentsResult": { - "type": "object", - "description": "Response containing the status of operations for all documents in the indexing\nrequest.", - "properties": { - "value": { - "type": "array", - "description": "The list of status information for each document in the indexing request.", - "items": { - "$ref": "#/definitions/IndexingResult" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "IndexingResult": { - "type": "object", - "description": "Status of an indexing operation for a single document.", - "properties": { - "key": { - "type": "string", - "description": "The key of a document that was in the indexing request." - }, - "errorMessage": { - "type": "string", - "description": "The error message explaining why the indexing operation failed for the document\nidentified by the key; null if indexing succeeded." - }, - "status": { - "type": "boolean", - "description": "A value indicating whether the indexing operation succeeded for the document\nidentified by the key." - }, - "statusCode": { - "type": "integer", - "format": "int32", - "description": "The status code of the indexing operation. Possible values include: 200 for a\nsuccessful update or delete, 201 for successful document creation, 400 for a\nmalformed input document, 404 for document not found, 409 for a version\nconflict, 422 when the index is temporarily unavailable, or 503 for when the\nservice is too busy." - } - }, - "required": [ - "key", - "status", - "statusCode" - ] - }, - "LookupDocument": { - "type": "object", - "description": "A document retrieved via a document lookup operation.", - "additionalProperties": {} - }, - "QueryAnswerResult": { - "type": "object", - "description": "An answer is a text passage extracted from the contents of the most relevant\ndocuments that matched the query. Answers are extracted from the top search\nresults. Answer candidates are scored and the top answers are selected.", - "properties": { - "score": { - "type": "number", - "format": "double", - "description": "The score value represents how relevant the answer is to the query relative to\nother answers returned for the query." - }, - "key": { - "type": "string", - "description": "The key of the document the answer was extracted from." - }, - "text": { - "type": "string", - "description": "The text passage extracted from the document contents as the answer." - }, - "highlights": { - "type": "string", - "description": "Same text passage as in the Text property with highlighted text phrases most\nrelevant to the query." - } - }, - "additionalProperties": {} - }, - "QueryAnswerType": { - "type": "string", - "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns answers extracted from key passages in the highest ranked documents.\nThe number of answers returned can be configured by appending the pipe\ncharacter `|` followed by the `count-` option after the\nanswers parameter value, such as `extractive|count-3`. Default count is 1. The\nconfidence threshold can be configured by appending the pipe character `|`\nfollowed by the `threshold-` option after the answers\nparameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7.", - "enum": [ - "none", - "extractive" - ], - "x-ms-enum": { - "name": "QueryAnswerType", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Do not return answers for the query." - }, - { - "name": "Extractive", - "value": "extractive", - "description": "Extracts answer candidates from the contents of the documents returned in\nresponse to a query expressed as a question in natural language." - } - ] - } - }, - "QueryCaptionResult": { - "type": "object", - "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type `semantic`.", - "properties": { - "text": { - "type": "string", - "description": "A representative text passage extracted from the document most relevant to the\nsearch query." - }, - "highlights": { - "type": "string", - "description": "Same text passage as in the Text property with highlighted phrases most\nrelevant to the query." - } - }, - "additionalProperties": {} - }, - "QueryCaptionType": { - "type": "string", - "description": "This parameter is only valid if the query type is `semantic`. If set, the query\nreturns captions extracted from key passages in the highest ranked documents.\nWhen Captions is set to `extractive`, highlighting is enabled by default, and\ncan be configured by appending the pipe character `|` followed by the\n`highlight-` option, such as `extractive|highlight-true`. Defaults\nto `None`.", - "enum": [ - "none", - "extractive" - ], - "x-ms-enum": { - "name": "QueryCaptionType", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Do not return captions for the query." - }, - { - "name": "Extractive", - "value": "extractive", - "description": "Extracts captions from the matching documents that contain passages relevant to\nthe search query." - } - ] - } - }, - "QueryType": { - "type": "string", - "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full'\nif your query uses the Lucene query syntax.", - "enum": [ - "simple", - "full", - "semantic" - ], - "x-ms-enum": { - "name": "QueryType", - "modelAsString": true, - "values": [ - { - "name": "Simple", - "value": "simple", - "description": "Uses the simple query syntax for searches. Search text is interpreted using a\nsimple query language that allows for symbols such as +, * and \"\". Queries are\nevaluated across all searchable fields by default, unless the searchFields\nparameter is specified." - }, - { - "name": "Full", - "value": "full", - "description": "Uses the full Lucene query syntax for searches. Search text is interpreted\nusing the Lucene query language which allows field-specific and weighted\nsearches, as well as other advanced features." - }, - { - "name": "Semantic", - "value": "semantic", - "description": "Best suited for queries expressed in natural language as opposed to keywords.\nImproves precision of search results by re-ranking the top search results using\na ranking model trained on the Web corpus." - } - ] - } - }, - "ScoringStatistics": { - "type": "string", - "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries.", - "enum": [ - "local", - "global" - ], - "x-ms-enum": { - "name": "ScoringStatistics", - "modelAsString": true, - "values": [ - { - "name": "Local", - "value": "local", - "description": "The scoring statistics will be calculated locally for lower latency." - }, - { - "name": "Global", - "value": "global", - "description": "The scoring statistics will be calculated globally for more consistent scoring." - } - ] - } - }, - "SearchDocumentsResult": { - "type": "object", - "description": "Response containing search results from an index.", - "properties": { - "@odata.count": { - "type": "integer", - "format": "int64", - "description": "The total count of results found by the search operation, or null if the count\nwas not requested. If present, the count may be greater than the number of\nresults in this response. This can happen if you use the $top or $skip\nparameters, or if the query can't return all the requested documents in a\nsingle response.", - "x-ms-client-name": "count" - }, - "@search.coverage": { - "type": "number", - "format": "double", - "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not specified in the request.", - "x-ms-client-name": "coverage" - }, - "@search.facets": { - "type": "object", - "description": "The facet query results for the search operation, organized as a collection of\nbuckets for each faceted field; null if the query did not include any facet\nexpressions.", - "additionalProperties": { - "items": { - "$ref": "#/definitions/FacetResult" - }, - "type": "array", - "x-ms-identifiers": [] - }, - "x-ms-client-name": "facets" - }, - "@search.answers": { - "type": "array", - "description": "The answers query results for the search operation; null if the answers query\nparameter was not specified or set to 'none'.", - "items": { - "$ref": "#/definitions/QueryAnswerResult" - }, - "x-ms-client-name": "answers", - "x-ms-identifiers": [] - }, - "value": { - "type": "array", - "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with", - "items": { - "$ref": "#/definitions/SearchResult" - }, - "x-ms-identifiers": [] - }, - "@odata.nextLink": { - "type": "string", - "description": "Continuation URL returned when the query can't return all the requested results\nin a single response. You can use this URL to formulate another GET or POST\nSearch request to get the next part of the search response. Make sure to use\nthe same verb (GET or POST) as the request that produced this response.", - "x-ms-client-name": "nextLink" - }, - "@search.semanticPartialResponseReason": { - "$ref": "#/definitions/SemanticErrorReason", - "description": "Reason that a partial response was returned for a semantic ranking request.", - "x-ms-client-name": "semanticPartialResponseReason" - }, - "@search.semanticPartialResponseType": { - "$ref": "#/definitions/SemanticSearchResultsType", - "description": "Type of partial response that was returned for a semantic ranking request.", - "x-ms-client-name": "semanticPartialResponseType" - } - }, - "required": [ - "value" - ] - }, - "SearchMode": { - "type": "string", - "description": "Specifies whether any or all of the search terms must be matched in order to\ncount the document as a match.", - "enum": [ - "any", - "all" - ], - "x-ms-enum": { - "name": "SearchMode", - "modelAsString": true, - "values": [ - { - "name": "Any", - "value": "any", - "description": "Any of the search terms must be matched in order to count the document as a\nmatch." - }, - { - "name": "All", - "value": "all", - "description": "All of the search terms must be matched in order to count the document as a\nmatch." - } - ] - } - }, - "SearchRequest": { - "type": "object", - "description": "Parameters for filtering, sorting, faceting, paging, and other search query\nbehaviors.", - "properties": { - "count": { - "type": "boolean", - "description": "A value that specifies whether to fetch the total count of results. Default is\nfalse. Setting this value to true may have a performance impact. Note that the\ncount returned is an approximation." - }, - "facets": { - "type": "array", - "description": "The list of facet expressions to apply to the search query. Each facet\nexpression contains a field name, optionally followed by a comma-separated list\nof name:value pairs.", - "items": { - "type": "string" - } - }, - "filter": { - "type": "string", - "description": "The OData $filter expression to apply to the search query." - }, - "highlight": { - "type": "string", - "description": "The comma-separated list of field names to use for hit highlights. Only\nsearchable fields can be used for hit highlighting." - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. Default is </em>." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. Default is <em>." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100." - }, - "$orderby": { - "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." - }, - "queryType": { - "$ref": "#/definitions/QueryType", - "description": "A value that specifies the syntax of the search query. The default is 'simple'.\nUse 'full' if your query uses the Lucene query syntax." - }, - "scoringStatistics": { - "$ref": "#/definitions/ScoringStatistics", - "description": "A value that specifies whether we want to calculate scoring statistics (such as\ndocument frequency) globally for more consistent scoring, or locally, for lower\nlatency. The default is 'local'. Use 'global' to aggregate scoring statistics\nglobally before scoring. Using global scoring statistics can increase latency\nof search queries." - }, - "sessionId": { - "type": "string", - "description": "A value to be used to create a sticky session, which can help getting more\nconsistent results. As long as the same sessionId is used, a best-effort\nattempt will be made to target the same replica set. Be wary that reusing the\nsame sessionID values repeatedly can interfere with the load balancing of the\nrequests across replicas and adversely affect the performance of the search\nservice. The value used as sessionId cannot start with a '_' character." - }, - "scoringParameters": { - "type": "array", - "description": "The list of parameter values to be used in scoring functions (for example,\nreferencePointParameter) using the format name-values. For example, if the\nscoring profile defines a function with a parameter called 'mylocation' the\nparameter string would be \"mylocation--122.2,44.8\" (without the quotes).", - "items": { - "type": "string" - } - }, - "scoringProfile": { - "type": "string", - "description": "The name of a scoring profile to evaluate match scores for matching documents\nin order to sort the results." - }, - "search": { - "type": "string", - "description": "A full-text search query expression; Use \"*\" or omit this parameter to match\nall documents." - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to which to scope the full-text search.\nWhen using fielded search (fieldName:searchExpression) in a full Lucene query,\nthe field names of each fielded search expression take precedence over any\nfield names listed in this parameter." - }, - "searchMode": { - "$ref": "#/definitions/SearchMode", - "description": "A value that specifies whether any or all of the search terms must be matched\nin order to count the document as a match." - }, - "select": { - "type": "string", - "description": "The comma-separated list of fields to retrieve. If unspecified, all fields\nmarked as retrievable in the schema are included." - }, - "skip": { - "type": "integer", - "format": "int32", - "description": "The number of search results to skip. This value cannot be greater than\n100,000. If you need to scan documents in sequence, but cannot use skip due to\nthis limitation, consider using orderby on a totally-ordered key and filter\nwith a range query instead." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of search results to retrieve. This can be used in conjunction with\n$skip to implement client-side paging of search results. If results are\ntruncated due to server-side paging, the response will include a continuation\ntoken that can be used to issue another Search request for the next page of\nresults." - }, - "semanticConfiguration": { - "type": "string", - "description": "The name of a semantic configuration that will be used when processing\ndocuments for queries of type semantic." - }, - "semanticErrorHandling": { - "$ref": "#/definitions/SemanticErrorMode", - "description": "Allows the user to choose whether a semantic call should fail completely\n(default / current behavior), or to return partial results." - }, - "semanticMaxWaitInMilliseconds": { - "type": "integer", - "format": "int32", - "description": "Allows the user to set an upper bound on the amount of time it takes for\nsemantic enrichment to finish processing before the request fails.", - "minimum": 700 - }, - "semanticQuery": { - "type": "string", - "description": "Allows setting a separate search query that will be solely used for semantic\nreranking, semantic captions and semantic answers. Is useful for scenarios\nwhere there is a need to use different queries between the base retrieval and\nranking phase, and the L2 semantic phase." - }, - "answers": { - "$ref": "#/definitions/QueryAnswerType", - "description": "A value that specifies whether answers should be returned as part of the search\nresponse." - }, - "captions": { - "$ref": "#/definitions/QueryCaptionType", - "description": "A value that specifies whether captions should be returned as part of the\nsearch response." - }, - "vectorQueries": { - "type": "array", - "description": "The query parameters for vector and hybrid search queries.", - "items": { - "$ref": "#/definitions/VectorQuery" - }, - "x-ms-identifiers": [] - }, - "vectorFilterMode": { - "$ref": "#/definitions/VectorFilterMode", - "description": "Determines whether or not filters are applied before or after the vector search\nis performed. Default is 'preFilter' for new indexes." - } - } - }, - "SearchResult": { - "type": "object", - "description": "Contains a document found by a search query, plus associated metadata.", - "properties": { - "@search.score": { - "type": "number", - "format": "double", - "description": "The relevance score of the document compared to other documents returned by the\nquery.", - "x-ms-client-name": "score" - }, - "@search.rerankerScore": { - "type": "number", - "format": "double", - "description": "The relevance score computed by the semantic ranker for the top search results.\nSearch results are sorted by the RerankerScore first and then by the Score.\nRerankerScore is only returned for queries of type 'semantic'.", - "x-ms-client-name": "rerankerScore" - }, - "@search.highlights": { - "type": "object", - "description": "Text fragments from the document that indicate the matching search terms,\norganized by each applicable field; null if hit highlighting was not enabled\nfor the query.", - "additionalProperties": { - "items": { - "type": "string" - }, - "type": "array" - }, - "x-ms-client-name": "highlights" - }, - "@search.captions": { - "type": "array", - "description": "Captions are the most representative passages from the document relatively to\nthe search query. They are often used as document summary. Captions are only\nreturned for queries of type 'semantic'.", - "items": { - "$ref": "#/definitions/QueryCaptionResult" - }, - "x-ms-client-name": "captions", - "x-ms-identifiers": [] - } - }, - "required": [ - "@search.score" - ], - "additionalProperties": {} - }, - "SemanticErrorMode": { - "type": "string", - "description": "Allows the user to choose whether a semantic call should fail completely, or to\nreturn partial results.", - "enum": [ - "partial", - "fail" - ], - "x-ms-enum": { - "name": "SemanticErrorMode", - "modelAsString": true, - "values": [ - { - "name": "Partial", - "value": "partial", - "description": "If the semantic processing fails, partial results still return. The definition\nof partial results depends on what semantic step failed and what was the reason\nfor failure." - }, - { - "name": "Fail", - "value": "fail", - "description": "If there is an exception during the semantic processing step, the query will\nfail and return the appropriate HTTP code depending on the error." - } - ] - } - }, - "SemanticErrorReason": { - "type": "string", - "description": "Reason that a partial response was returned for a semantic ranking request.", - "enum": [ - "maxWaitExceeded", - "capacityOverloaded", - "transient" - ], - "x-ms-enum": { - "name": "SemanticErrorReason", - "modelAsString": true, - "values": [ - { - "name": "MaxWaitExceeded", - "value": "maxWaitExceeded", - "description": "If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration\nexceeded that value. Only the base results were returned." - }, - { - "name": "CapacityOverloaded", - "value": "capacityOverloaded", - "description": "The request was throttled. Only the base results were returned." - }, - { - "name": "Transient", - "value": "transient", - "description": "At least one step of the semantic process failed." - } - ] - } - }, - "SemanticSearchResultsType": { - "type": "string", - "description": "Type of partial response that was returned for a semantic ranking request.", - "enum": [ - "baseResults", - "rerankedResults" - ], - "x-ms-enum": { - "name": "SemanticSearchResultsType", - "modelAsString": true, - "values": [ - { - "name": "BaseResults", - "value": "baseResults", - "description": "Results without any semantic enrichment or reranking." - }, - { - "name": "RerankedResults", - "value": "rerankedResults", - "description": "Results have been reranked with the reranker model and will include semantic\ncaptions. They will not include any answers, answers highlights or caption\nhighlights." - } - ] - } - }, - "SuggestDocumentsResult": { - "type": "object", - "description": "Response containing suggestion query results from an index.", - "properties": { - "value": { - "type": "array", - "description": "The sequence of results returned by the query.", - "items": { - "$ref": "#/definitions/SuggestResult" - }, - "x-ms-identifiers": [] - }, - "@search.coverage": { - "type": "number", - "format": "double", - "description": "A value indicating the percentage of the index that was included in the query,\nor null if minimumCoverage was not set in the request.", - "x-ms-client-name": "coverage" - } - }, - "required": [ - "value" - ] - }, - "SuggestRequest": { - "type": "object", - "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query\nbehaviors.", - "properties": { - "filter": { - "type": "string", - "description": "An OData expression that filters the documents considered for suggestions." - }, - "fuzzy": { - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the suggestion query.\nDefault is false. When set to true, the query will find suggestions even if\nthere's a substituted or missing character in the search text. While this\nprovides a better experience in some scenarios, it comes at a performance cost\nas fuzzy suggestion searches are slower and consume more resources." - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with\nhighlightPreTag. If omitted, hit highlighting of suggestions is disabled." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with\nhighlightPostTag. If omitted, hit highlighting of suggestions is disabled." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestion query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." - }, - "$orderby": { - "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." - }, - "search": { - "type": "string", - "description": "The search text to use to suggest documents. Must be at least 1 character, and\nno more than 100 characters." - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to search for the specified search\ntext. Target fields must be included in the specified suggester." - }, - "select": { - "type": "string", - "description": "The comma-separated list of fields to retrieve. If unspecified, only the key\nfield will be included in the results." - }, - "suggesterName": { - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part\nof the index definition." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of suggestions to retrieve. This must be a value between 1 and 100.\nThe default is 5." - } - }, - "required": [ - "search", - "suggesterName" - ] - }, - "SuggestResult": { - "type": "object", - "description": "A result containing a document found by a suggestion query, plus associated\nmetadata.", - "properties": { - "@search.text": { - "type": "string", - "description": "The text of the suggestion result.", - "x-ms-client-name": "text" - } - }, - "required": [ - "@search.text" - ], - "additionalProperties": {} - }, - "VectorFilterMode": { - "type": "string", - "description": "Determines whether or not filters are applied before or after the vector search\nis performed.", - "enum": [ - "postFilter", - "preFilter" - ], - "x-ms-enum": { - "name": "VectorFilterMode", - "modelAsString": true, - "values": [ - { - "name": "PostFilter", - "value": "postFilter", - "description": "The filter will be applied after the candidate set of vector results is\nreturned. Depending on the filter selectivity, this can result in fewer results\nthan requested by the parameter 'k'." - }, - { - "name": "PreFilter", - "value": "preFilter", - "description": "The filter will be applied before the search query." - } - ] - } - }, - "VectorQuery": { - "type": "object", - "description": "The query parameters for vector and hybrid search queries.", - "properties": { - "k": { - "type": "integer", - "format": "int32", - "description": "Number of nearest neighbors to return as top hits." - }, - "fields": { - "type": "string", - "description": "Vector Fields of type Collection(Edm.Single) to be included in the vector\nsearched." - }, - "exhaustive": { - "type": "boolean", - "description": "When true, triggers an exhaustive k-nearest neighbor search across all vectors\nwithin the vector index. Useful for scenarios where exact matches are critical,\nsuch as determining ground truth values." - }, - "oversampling": { - "type": "number", - "format": "double", - "description": "Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling'\nparameter configured in the index definition. It can be set only when 'rerankWithOriginalVectors'\nis true. This parameter is only permitted when a\ncompression method is used on the underlying vector field." - }, - "weight": { - "type": "number", - "format": "float", - "description": "Relative weight of the vector query when compared to other vector query and/or\nthe text query within the same search request. This value is used when\ncombining the results of multiple ranking lists produced by the different\nvector queries and/or the results retrieved through the text query. The higher\nthe weight, the higher the documents that matched that query will be in the\nfinal ranking. Default is 1.0 and the value needs to be a positive number\nlarger than zero." - }, - "kind": { - "$ref": "#/definitions/VectorQueryKind", - "description": "Type of query." - } - }, - "discriminator": "kind", - "required": [ - "kind" - ] - }, - "VectorQueryKind": { - "type": "string", - "description": "The kind of vector query being performed.", - "enum": [ - "vector", - "text" - ], - "x-ms-enum": { - "name": "VectorQueryKind", - "modelAsString": true, - "values": [ - { - "name": "Vector", - "value": "vector", - "description": "Vector query where a raw vector value is provided." - }, - { - "name": "Text", - "value": "text", - "description": "Vector query where a text value that needs to be vectorized is provided." - } - ] - } - }, - "VectorizableTextQuery": { - "type": "object", - "description": "The query parameters to use for vector search when a text value that needs to\nbe vectorized is provided.", - "properties": { - "text": { - "type": "string", - "description": "The text to be vectorized to perform a vector search query." - } - }, - "required": [ - "text" - ], - "allOf": [ - { - "$ref": "#/definitions/VectorQuery" - } - ], - "x-ms-discriminator-value": "text" - }, - "VectorizedQuery": { - "type": "object", - "description": "The query parameters to use for vector search when a raw vector value is\nprovided.", - "properties": { - "vector": { - "type": "array", - "description": "The vector representation of a search query.", - "items": { - "type": "number", - "format": "float" - } - } - }, - "required": [ - "vector" - ], - "allOf": [ - { - "$ref": "#/definitions/VectorQuery" - } - ], - "x-ms-discriminator-value": "vector" - } - }, - "parameters": { - "Azure.Core.ClientRequestIdHeader": { - "name": "x-ms-client-request-id", - "in": "header", - "description": "An opaque, globally-unique, client-generated string identifier for the request.", - "required": false, - "type": "string", - "format": "uuid", - "x-ms-parameter-location": "method", - "x-ms-client-name": "clientRequestId" - }, - "Azure.Core.Foundations.ApiVersionParameter": { - "name": "api-version", - "in": "query", - "description": "The API version to use for this operation.", - "required": true, - "type": "string", - "minLength": 1, - "x-ms-parameter-location": "method", - "x-ms-client-name": "apiVersion" - } - } -} diff --git a/specification/search/data-plane/Search/preview/2024-11-01-preview/searchservice.json b/specification/search/data-plane/Search/preview/2024-11-01-preview/searchservice.json deleted file mode 100644 index dec76f97deaa..000000000000 --- a/specification/search/data-plane/Search/preview/2024-11-01-preview/searchservice.json +++ /dev/null @@ -1,11434 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Azure AI Search", - "version": "2024-11-01-preview", - "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", - "x-typespec-generated": [ - { - "emitter": "@azure-tools/typespec-autorest" - } - ] - }, - "schemes": [ - "https" - ], - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ], - "security": [ - { - "ApiKeyAuth": [] - }, - { - "OAuth2Auth": [ - "https://search.azure.com/.default" - ] - } - ], - "securityDefinitions": { - "ApiKeyAuth": { - "type": "apiKey", - "name": "api-key", - "in": "header" - }, - "OAuth2Auth": { - "type": "oauth2", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", - "scopes": { - "https://search.azure.com/.default": "" - } - } - }, - "tags": [], - "paths": { - "/datasources": { - "get": { - "operationId": "DataSourcesOperations_List", - "description": "Lists all datasources available for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListDataSourcesResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "DataSourcesOperations_Create", - "description": "Creates a new datasource.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "dataSource", - "in": "body", - "description": "The definition of the datasource to create.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - } - ], - "responses": { - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/datasources('{dataSourceName}')": { - "get": { - "operationId": "DataSourcesOperations_Get", - "description": "Retrieves a datasource definition.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "dataSourceName", - "in": "path", - "description": "The name of the datasource.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "DataSourcesOperations_CreateOrUpdate", - "description": "Creates a new datasource or updates a datasource if it already exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "dataSourceName", - "in": "path", - "description": "The name of the datasource.", - "required": true, - "type": "string" - }, - { - "name": "dataSource", - "in": "body", - "description": "The definition of the datasource to create or update.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SearchIndexerDataSource" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "DataSourcesOperations_Delete", - "description": "Deletes a datasource.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "dataSourceName", - "in": "path", - "description": "The name of the datasource.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "404": { - "description": "The server cannot find the requested resource." - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers": { - "get": { - "operationId": "IndexersOperations_List", - "description": "Lists all indexers available for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListIndexersResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "IndexersOperations_Create", - "description": "Creates a new indexer.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexer", - "in": "body", - "description": "The definition of the indexer to create.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - } - ], - "responses": { - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers('{indexerName}')": { - "get": { - "operationId": "IndexersOperations_Get", - "description": "Retrieves an indexer definition.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "IndexersOperations_CreateOrUpdate", - "description": "Creates a new indexer or updates an indexer if it already exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - }, - { - "name": "indexer", - "in": "body", - "description": "The definition of the indexer to create or update.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SearchIndexer" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "IndexersOperations_Delete", - "description": "Deletes an indexer.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "404": { - "description": "The server cannot find the requested resource." - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers('{indexerName}')/search.reset": { - "post": { - "operationId": "IndexersOperations_Reset", - "description": "Resets the change tracking state associated with an indexer.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers('{indexerName}')/search.run": { - "post": { - "operationId": "IndexersOperations_Run", - "description": "Runs an indexer on-demand.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "202": { - "description": "The request has been accepted for processing, but processing has not yet completed." - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexers('{indexerName}')/search.status": { - "get": { - "operationId": "IndexersOperations_GetStatus", - "description": "Returns the current status and execution history of an indexer.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexerName", - "in": "path", - "description": "The name of the indexer.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndexerStatus" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes": { - "get": { - "operationId": "IndexesOperations_List", - "description": "Lists all indexes available for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListIndexesResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "IndexesOperations_Create", - "description": "Creates a new search index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "index", - "in": "body", - "description": "The definition of the index to create.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndex" - } - } - ], - "responses": { - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')": { - "get": { - "operationId": "IndexesOperations_Get", - "description": "Retrieves an index definition.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "IndexesOperations_CreateOrUpdate", - "description": "Creates a new search index or updates an index if it already exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "allowIndexDowntime", - "in": "query", - "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to\nan index by taking the index offline for at least a few seconds. This\ntemporarily causes indexing and query requests to fail. Performance and write\navailability of the index can be impaired for several minutes after the index\nis updated, or longer for very large indexes.", - "required": false, - "type": "boolean" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "index", - "in": "body", - "description": "The definition of the index to create or update.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndex" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SearchIndex" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "IndexesOperations_Delete", - "description": "Deletes a search index and all the documents it contains. This operation is\npermanent, with no recovery option. Make sure you have a master copy of your\nindex definition, data ingestion code, and a backup of the primary data source\nin case you need to re-build the index.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "404": { - "description": "The server cannot find the requested resource." - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/search.analyze": { - "post": { - "operationId": "IndexesOperations_Analyze", - "description": "Shows how an analyzer breaks text into tokens.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - }, - { - "name": "request", - "in": "body", - "description": "The text and analyzer or analysis components to test.", - "required": true, - "schema": { - "$ref": "#/definitions/AnalyzeRequest" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/AnalyzeResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/indexes('{indexName}')/search.stats": { - "get": { - "operationId": "IndexesOperations_GetStatistics", - "description": "Returns statistics for the given index, including a document count and storage\nusage.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "indexName", - "in": "path", - "description": "The name of the index.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/GetIndexStatisticsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/servicestats": { - "get": { - "operationId": "GetServiceStatistics", - "description": "Gets service level statistics for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchServiceStatistics" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/skillsets": { - "get": { - "operationId": "SkillsetsOperations_List", - "description": "List all skillsets in a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListSkillsetsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "SkillsetsOperations_Create", - "description": "Creates a new skillset in a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "skillset", - "in": "body", - "description": "The skillset containing one or more skills to create in a search service.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - } - ], - "responses": { - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/skillsets('{skillsetName}')": { - "get": { - "operationId": "SkillsetsOperations_Get", - "description": "Retrieves a skillset in a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "skillsetName", - "in": "path", - "description": "The name of the skillset.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "SkillsetsOperations_CreateOrUpdate", - "description": "Creates a new skillset in a search service or updates the skillset if it\nalready exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "skillsetName", - "in": "path", - "description": "The name of the skillset.", - "required": true, - "type": "string" - }, - { - "name": "skillset", - "in": "body", - "description": "The skillset containing one or more skills to create or update in a search\nservice.", - "required": true, - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SearchIndexerSkillset" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "SkillsetsOperations_Delete", - "description": "Deletes a skillset in a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "skillsetName", - "in": "path", - "description": "The name of the skillset.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "404": { - "description": "The server cannot find the requested resource." - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/synonymmaps": { - "get": { - "operationId": "SynonymMapsOperations_List", - "description": "Lists all synonym maps available for a search service.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "$select", - "in": "query", - "description": "Selects which top-level properties to retrieve.\nSpecified as a comma-separated list of JSON property names,\nor '*' for all properties. The default is all properties.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/ListSynonymMapsResult" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "post": { - "operationId": "SynonymMapsOperations_Create", - "description": "Creates a new synonym map.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "synonymMap", - "in": "body", - "description": "The definition of the synonym map to create.", - "required": true, - "schema": { - "$ref": "#/definitions/SynonymMap" - } - } - ], - "responses": { - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/synonymmaps('{synonymMapName}')": { - "get": { - "operationId": "SynonymMapsOperations_Get", - "description": "Retrieves a synonym map definition.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "synonymMapName", - "in": "path", - "description": "The name of the synonym map.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "operationId": "SynonymMapsOperations_CreateOrUpdate", - "description": "Creates a new synonym map or updates a synonym map if it already exists.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "name": "Prefer", - "in": "header", - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "x-ms-enum": { - "modelAsString": false - }, - "x-ms-client-name": "prefer" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "synonymMapName", - "in": "path", - "description": "The name of the synonym map.", - "required": true, - "type": "string" - }, - { - "name": "synonymMap", - "in": "body", - "description": "The definition of the synonym map to create or update.", - "required": true, - "schema": { - "$ref": "#/definitions/SynonymMap" - } - } - ], - "responses": { - "200": { - "description": "The request has succeeded.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "201": { - "description": "The request has succeeded and a new resource has been created as a result.", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "operationId": "SynonymMapsOperations_Delete", - "description": "Deletes a synonym map.", - "parameters": [ - { - "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" - }, - { - "name": "If-Match", - "in": "header", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifMatch" - }, - { - "name": "If-None-Match", - "in": "header", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "required": false, - "type": "string", - "x-ms-client-name": "ifNoneMatch" - }, - { - "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" - }, - { - "name": "synonymMapName", - "in": "path", - "description": "The name of the synonym map.", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "There is no content to send for this request, but the headers may be useful. " - }, - "404": { - "description": "The server cannot find the requested resource." - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - } - }, - "definitions": { - "AnalyzeRequest": { - "type": "object", - "description": "Specifies some text and analysis components used to break that text into tokens.", - "properties": { - "text": { - "type": "string", - "description": "The text to break into tokens." - }, - "analyzer": { - "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer to use to break the given text. If this parameter is\nnot specified, you must specify a tokenizer instead. The tokenizer and analyzer\nparameters are mutually exclusive." - }, - "tokenizer": { - "$ref": "#/definitions/LexicalTokenizerName", - "description": "The name of the tokenizer to use to break the given text. If this parameter is\nnot specified, you must specify an analyzer instead. The tokenizer and analyzer\nparameters are mutually exclusive." - }, - "tokenFilters": { - "type": "array", - "description": "An optional list of token filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", - "items": { - "$ref": "#/definitions/TokenFilterName" - } - }, - "charFilters": { - "type": "array", - "description": "An optional list of character filters to use when breaking the given text. This\nparameter can only be set when using the tokenizer parameter.", - "items": { - "$ref": "#/definitions/CharFilterName" - } - } - }, - "required": [ - "text" - ] - }, - "AnalyzeResult": { - "type": "object", - "description": "The result of testing an analyzer on text.", - "properties": { - "tokens": { - "type": "array", - "description": "The list of tokens returned by the analyzer specified in the request.", - "items": { - "$ref": "#/definitions/AnalyzedTokenInfo" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "tokens" - ] - }, - "AnalyzedTokenInfo": { - "type": "object", - "description": "Information about a token returned by an analyzer.", - "properties": { - "token": { - "type": "string", - "description": "The token returned by the analyzer." - }, - "startOffset": { - "type": "integer", - "format": "int32", - "description": "The index of the first character of the token in the input text." - }, - "endOffset": { - "type": "integer", - "format": "int32", - "description": "The index of the last character of the token in the input text." - }, - "position": { - "type": "integer", - "format": "int32", - "description": "The position of the token in the input text relative to other tokens. The first\ntoken in the input text has position 0, the next has position 1, and so on.\nDepending on the analyzer used, some tokens might have the same position, for\nexample if they are synonyms of each other." - } - }, - "required": [ - "token", - "startOffset", - "endOffset", - "position" - ] - }, - "AsciiFoldingTokenFilter": { - "type": "object", - "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "preserveOriginal": { - "type": "boolean", - "description": "A value indicating whether the original token will be kept. Default is false." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter" - }, - "AzureActiveDirectoryApplicationCredentials": { - "type": "object", - "description": "Credentials of a registered application created for your search service, used\nfor authenticated access to the encryption keys stored in Azure Key Vault.", - "properties": { - "applicationId": { - "type": "string", - "description": "An AAD Application ID that was granted the required access permissions to the\nAzure Key Vault that is to be used when encrypting your data at rest. The\nApplication ID should not be confused with the Object ID for your AAD\nApplication." - }, - "applicationSecret": { - "type": "string", - "description": "The authentication key of the specified AAD application." - } - }, - "required": [ - "applicationId" - ] - }, - "AzureOpenAIEmbeddingSkill": { - "type": "object", - "description": "Allows you to generate a vector embedding for a given text input using the\nAzure OpenAI resource.", - "properties": { - "resourceUri": { - "type": "string", - "format": "uri", - "description": "The resource URI of the Azure OpenAI resource." - }, - "deploymentId": { - "type": "string", - "description": "ID of the Azure OpenAI model deployment on the designated resource." - }, - "apiKey": { - "type": "string", - "description": "API key of the designated Azure OpenAI resource." - }, - "authIdentity": { - "$ref": "#/definitions/SearchIndexerDataIdentity", - "description": "The user-assigned managed identity used for outbound connections." - }, - "modelName": { - "$ref": "#/definitions/AzureOpenAIModelName", - "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." - }, - "dimensions": { - "type": "integer", - "format": "int32", - "description": "The number of dimensions the resulting output embeddings should have. Only\nsupported in text-embedding-3 and later models." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill" - }, - "AzureOpenAIModelName": { - "type": "string", - "description": "The Azure Open AI model name that will be called.", - "enum": [ - "text-embedding-ada-002", - "text-embedding-3-large", - "text-embedding-3-small" - ], - "x-ms-enum": { - "name": "AzureOpenAIModelName", - "modelAsString": true, - "values": [ - { - "name": "TextEmbeddingAda002", - "value": "text-embedding-ada-002", - "description": "TextEmbeddingAda002 model." - }, - { - "name": "TextEmbedding3Large", - "value": "text-embedding-3-large", - "description": "TextEmbedding3Large model." - }, - { - "name": "TextEmbedding3Small", - "value": "text-embedding-3-small", - "description": "TextEmbedding3Small model." - } - ] - } - }, - "AzureOpenAIVectorizer": { - "type": "object", - "description": "Specifies the Azure OpenAI resource used to vectorize a query string.", - "properties": { - "azureOpenAIParameters": { - "$ref": "#/definitions/AzureOpenAIVectorizerParameters", - "description": "Contains the parameters specific to Azure OpenAI embedding vectorization." - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchVectorizer" - } - ], - "x-ms-discriminator-value": "azureOpenAI" - }, - "AzureOpenAIVectorizerParameters": { - "type": "object", - "description": "Specifies the parameters for connecting to the Azure OpenAI resource.", - "properties": { - "resourceUri": { - "type": "string", - "format": "uri", - "description": "The resource URI of the Azure OpenAI resource." - }, - "deploymentId": { - "type": "string", - "description": "ID of the Azure OpenAI model deployment on the designated resource." - }, - "apiKey": { - "type": "string", - "description": "API key of the designated Azure OpenAI resource." - }, - "authIdentity": { - "$ref": "#/definitions/SearchIndexerDataIdentity", - "description": "The user-assigned managed identity used for outbound connections." - }, - "modelName": { - "$ref": "#/definitions/AzureOpenAIModelName", - "description": "The name of the embedding model that is deployed at the provided deploymentId\npath." - } - } - }, - "BM25SimilarityAlgorithm": { - "type": "object", - "description": "Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a\nTF-IDF-like algorithm that includes length normalization (controlled by the 'b'\nparameter) as well as term frequency saturation (controlled by the 'k1'\nparameter).", - "properties": { - "k1": { - "type": "number", - "format": "double", - "description": "This property controls the scaling function between the term frequency of each\nmatching terms and the final relevance score of a document-query pair. By\ndefault, a value of 1.2 is used. A value of 0.0 means the score does not scale\nwith an increase in term frequency." - }, - "b": { - "type": "number", - "format": "double", - "description": "This property controls how the length of a document affects the relevance\nscore. By default, a value of 0.75 is used. A value of 0.0 means no length\nnormalization is applied, while a value of 1.0 means the score is fully\nnormalized by the length of the document." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SimilarityAlgorithm" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.BM25Similarity" - }, - "BinaryQuantizationCompression": { - "type": "object", - "description": "Contains configuration options specific to the binary quantization compression\nmethod used during indexing and querying.", - "allOf": [ - { - "$ref": "#/definitions/VectorSearchCompression" - } - ], - "x-ms-discriminator-value": "binaryQuantization" - }, - "BlobIndexerDataToExtract": { - "type": "string", - "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", - "enum": [ - "storageMetadata", - "allMetadata", - "contentAndMetadata" - ], - "x-ms-enum": { - "name": "BlobIndexerDataToExtract", - "modelAsString": true, - "values": [ - { - "name": "StorageMetadata", - "value": "storageMetadata", - "description": "Indexes just the standard blob properties and user-specified metadata." - }, - { - "name": "AllMetadata", - "value": "allMetadata", - "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." - }, - { - "name": "ContentAndMetadata", - "value": "contentAndMetadata", - "description": "Extracts all metadata and textual content from each blob." - } - ] - } - }, - "BlobIndexerImageAction": { - "type": "string", - "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", - "enum": [ - "none", - "generateNormalizedImages", - "generateNormalizedImagePerPage" - ], - "x-ms-enum": { - "name": "BlobIndexerImageAction", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Ignores embedded images or image files in the data set. This is the default." - }, - { - "name": "GenerateNormalizedImages", - "value": "generateNormalizedImages", - "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." - }, - { - "name": "GenerateNormalizedImagePerPage", - "value": "generateNormalizedImagePerPage", - "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." - } - ] - } - }, - "BlobIndexerPDFTextRotationAlgorithm": { - "type": "string", - "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", - "enum": [ - "none", - "detectAngles" - ], - "x-ms-enum": { - "name": "BlobIndexerPDFTextRotationAlgorithm", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Leverages normal text extraction. This is the default." - }, - { - "name": "DetectAngles", - "value": "detectAngles", - "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." - } - ] - } - }, - "BlobIndexerParsingMode": { - "type": "string", - "description": "Represents the parsing mode for indexing from an Azure blob data source.", - "enum": [ - "default", - "text", - "delimitedText", - "json", - "jsonArray", - "jsonLines" - ], - "x-ms-enum": { - "name": "BlobIndexerParsingMode", - "modelAsString": true, - "values": [ - { - "name": "Default", - "value": "default", - "description": "Set to default for normal file processing." - }, - { - "name": "Text", - "value": "text", - "description": "Set to text to improve indexing performance on plain text files in blob storage." - }, - { - "name": "DelimitedText", - "value": "delimitedText", - "description": "Set to delimitedText when blobs are plain CSV files." - }, - { - "name": "Json", - "value": "json", - "description": "Set to json to extract structured content from JSON files." - }, - { - "name": "JsonArray", - "value": "jsonArray", - "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." - }, - { - "name": "JsonLines", - "value": "jsonLines", - "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." - } - ] - } - }, - "CharFilter": { - "type": "object", - "description": "Base type for character filters.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types." - }, - "name": { - "type": "string", - "description": "The name of the char filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type", - "name" - ] - }, - "CharFilterName": { - "type": "string", - "description": "Defines the names of all character filters supported by the search engine.", - "enum": [ - "html_strip" - ], - "x-ms-enum": { - "name": "CharFilterName", - "modelAsString": true, - "values": [ - { - "name": "HtmlStrip", - "value": "html_strip", - "description": "A character filter that attempts to strip out HTML constructs. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" - } - ] - } - }, - "CjkBigramTokenFilter": { - "type": "object", - "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. This\ntoken filter is implemented using Apache Lucene.", - "properties": { - "ignoreScripts": { - "type": "array", - "description": "The scripts to ignore.", - "items": { - "$ref": "#/definitions/CjkBigramTokenFilterScripts" - } - }, - "outputUnigrams": { - "type": "boolean", - "description": "A value indicating whether to output both unigrams and bigrams (if true), or\njust bigrams (if false). Default is false." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter" - }, - "CjkBigramTokenFilterScripts": { - "type": "string", - "description": "Scripts that can be ignored by CjkBigramTokenFilter.", - "enum": [ - "han", - "hiragana", - "katakana", - "hangul" - ], - "x-ms-enum": { - "name": "CjkBigramTokenFilterScripts", - "modelAsString": true, - "values": [ - { - "name": "Han", - "value": "han", - "description": "Ignore Han script when forming bigrams of CJK terms." - }, - { - "name": "Hiragana", - "value": "hiragana", - "description": "Ignore Hiragana script when forming bigrams of CJK terms." - }, - { - "name": "Katakana", - "value": "katakana", - "description": "Ignore Katakana script when forming bigrams of CJK terms." - }, - { - "name": "Hangul", - "value": "hangul", - "description": "Ignore Hangul script when forming bigrams of CJK terms." - } - ] - } - }, - "ClassicSimilarityAlgorithm": { - "type": "object", - "description": "Legacy similarity algorithm which uses the Lucene TFIDFSimilarity\nimplementation of TF-IDF. This variation of TF-IDF introduces static document\nlength normalization as well as coordinating factors that penalize documents\nthat only partially match the searched queries.", - "allOf": [ - { - "$ref": "#/definitions/SimilarityAlgorithm" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicSimilarity" - }, - "ClassicTokenizer": { - "type": "object", - "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. This tokenizer is implemented using Apache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 255, - "maximum": 300 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer" - }, - "CognitiveServicesAccount": { - "type": "object", - "description": "Base type for describing any Azure AI service resource attached to a skillset.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types." - }, - "description": { - "type": "string", - "description": "Description of the Azure AI service resource attached to a skillset." - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type" - ] - }, - "CognitiveServicesAccountKey": { - "type": "object", - "description": "The multi-region account key of an Azure AI service resource that's attached to\na skillset.", - "properties": { - "key": { - "type": "string", - "description": "The key used to provision the Azure AI service resource attached to a skillset." - } - }, - "required": [ - "key" - ], - "allOf": [ - { - "$ref": "#/definitions/CognitiveServicesAccount" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" - }, - "CommonGramTokenFilter": { - "type": "object", - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "commonWords": { - "type": "array", - "description": "The set of common words.", - "items": { - "type": "string" - } - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." - }, - "queryMode": { - "type": "boolean", - "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false." - } - }, - "required": [ - "commonWords" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" - }, - "ConditionalSkill": { - "type": "object", - "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill" - }, - "CorsOptions": { - "type": "object", - "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index.", - "properties": { - "allowedOrigins": { - "type": "array", - "description": "The list of origins from which JavaScript code will be granted access to your\nindex. Can contain a list of hosts of the form\n{protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow\nall origins (not recommended).", - "items": { - "type": "string" - } - }, - "maxAgeInSeconds": { - "type": "integer", - "format": "int64", - "description": "The duration for which browsers should cache CORS preflight responses. Defaults\nto 5 minutes." - } - }, - "required": [ - "allowedOrigins" - ] - }, - "CustomAnalyzer": { - "type": "object", - "description": "Allows you to take control over the process of converting text into\nindexable/searchable tokens. It's a user-defined configuration consisting of a\nsingle predefined tokenizer and one or more filters. The tokenizer is\nresponsible for breaking text into tokens, and the filters for modifying tokens\nemitted by the tokenizer.", - "properties": { - "tokenizer": { - "$ref": "#/definitions/LexicalTokenizerName", - "description": "The name of the tokenizer to use to divide continuous text into a sequence of\ntokens, such as breaking a sentence into words." - }, - "tokenFilters": { - "type": "array", - "description": "A list of token filters used to filter out or modify the tokens generated by a\ntokenizer. For example, you can specify a lowercase filter that converts all\ncharacters to lowercase. The filters are run in the order in which they are\nlisted.", - "items": { - "$ref": "#/definitions/TokenFilterName" - } - }, - "charFilters": { - "type": "array", - "description": "A list of character filters used to prepare input text before it is processed\nby the tokenizer. For instance, they can replace certain characters or symbols.\nThe filters are run in the order in which they are listed.", - "items": { - "$ref": "#/definitions/CharFilterName" - } - } - }, - "required": [ - "tokenizer" - ], - "allOf": [ - { - "$ref": "#/definitions/LexicalAnalyzer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer" - }, - "CustomEntity": { - "type": "object", - "description": "An object that contains information about the matches that were found, and\nrelated metadata.", - "properties": { - "name": { - "type": "string", - "description": "The top-level entity descriptor. Matches in the skill output will be grouped by\nthis name, and it should represent the \"normalized\" form of the text being\nfound." - }, - "description": { - "type": "string", - "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." - }, - "type": { - "type": "string", - "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." - }, - "subtype": { - "type": "string", - "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." - }, - "id": { - "type": "string", - "description": "This field can be used as a passthrough for custom metadata about the matched\ntext(s). The value of this field will appear with every match of its entity in\nthe skill output." - }, - "caseSensitive": { - "type": "boolean", - "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to character casing. Sample case insensitive matches\nof \"Microsoft\" could be: microsoft, microSoft, MICROSOFT." - }, - "accentSensitive": { - "type": "boolean", - "description": "Defaults to false. Boolean value denoting whether comparisons with the entity\nname should be sensitive to accent." - }, - "fuzzyEditDistance": { - "type": "integer", - "format": "int32", - "description": "Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent\ncharacters that would still constitute a match with the entity name. The\nsmallest possible fuzziness for any given match is returned. For instance, if\nthe edit distance is set to 3, \"Windows10\" would still match \"Windows\",\n\"Windows10\" and \"Windows 7\". When case sensitivity is set to false, case\ndifferences do NOT count towards fuzziness tolerance, but otherwise do." - }, - "defaultCaseSensitive": { - "type": "boolean", - "description": "Changes the default case sensitivity value for this entity. It be used to\nchange the default value of all aliases caseSensitive values." - }, - "defaultAccentSensitive": { - "type": "boolean", - "description": "Changes the default accent sensitivity value for this entity. It be used to\nchange the default value of all aliases accentSensitive values." - }, - "defaultFuzzyEditDistance": { - "type": "integer", - "format": "int32", - "description": "Changes the default fuzzy edit distance value for this entity. It can be used\nto change the default value of all aliases fuzzyEditDistance values." - }, - "aliases": { - "type": "array", - "description": "An array of complex objects that can be used to specify alternative spellings\nor synonyms to the root entity name.", - "items": { - "$ref": "#/definitions/CustomEntityAlias" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "name" - ] - }, - "CustomEntityAlias": { - "type": "object", - "description": "A complex object that can be used to specify alternative spellings or synonyms\nto the root entity name.", - "properties": { - "text": { - "type": "string", - "description": "The text of the alias." - }, - "caseSensitive": { - "type": "boolean", - "description": "Determine if the alias is case sensitive." - }, - "accentSensitive": { - "type": "boolean", - "description": "Determine if the alias is accent sensitive." - }, - "fuzzyEditDistance": { - "type": "integer", - "format": "int32", - "description": "Determine the fuzzy edit distance of the alias." - } - }, - "required": [ - "text" - ] - }, - "CustomEntityLookupSkill": { - "type": "object", - "description": "A skill looks for text from a custom, user-defined list of words and phrases.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/CustomEntityLookupSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "entitiesDefinitionUri": { - "type": "string", - "description": "Path to a JSON or CSV file containing all the target text to match against.\nThis entity definition is read at the beginning of an indexer run. Any updates\nto this file during an indexer run will not take effect until subsequent runs.\nThis config must be accessible over HTTPS." - }, - "inlineEntitiesDefinition": { - "type": "array", - "description": "The inline CustomEntity definition.", - "items": { - "$ref": "#/definitions/CustomEntity" - } - }, - "globalDefaultCaseSensitive": { - "type": "boolean", - "description": "A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity,\nthis value will be the default value." - }, - "globalDefaultAccentSensitive": { - "type": "boolean", - "description": "A global flag for AccentSensitive. If AccentSensitive is not set in\nCustomEntity, this value will be the default value." - }, - "globalDefaultFuzzyEditDistance": { - "type": "integer", - "format": "int32", - "description": "A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in\nCustomEntity, this value will be the default value." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.CustomEntityLookupSkill" - }, - "CustomEntityLookupSkillLanguage": { - "type": "string", - "description": "The language codes supported for input text by CustomEntityLookupSkill.", - "enum": [ - "da", - "de", - "en", - "es", - "fi", - "fr", - "it", - "ko", - "pt" - ], - "x-ms-enum": { - "name": "CustomEntityLookupSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese" - } - ] - } - }, - "DataChangeDetectionPolicy": { - "type": "object", - "description": "Base type for data change detection policies.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types." - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type" - ] - }, - "DataDeletionDetectionPolicy": { - "type": "object", - "description": "Base type for data deletion detection policies.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types." - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type" - ] - }, - "DataSourceCredentials": { - "type": "object", - "description": "Represents credentials that can be used to connect to a datasource.", - "properties": { - "connectionString": { - "type": "string", - "description": "The connection string for the datasource. Set to `` (with brackets)\nif you don't want the connection string updated. Set to `` if you\nwant to remove the connection string value from the datasource." - } - } - }, - "DefaultCognitiveServicesAccount": { - "type": "object", - "description": "An empty object that represents the default Azure AI service resource for a\nskillset.", - "allOf": [ - { - "$ref": "#/definitions/CognitiveServicesAccount" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices" - }, - "DictionaryDecompounderTokenFilter": { - "type": "object", - "description": "Decomposes compound words found in many Germanic languages. This token filter\nis implemented using Apache Lucene.", - "properties": { - "wordList": { - "type": "array", - "description": "The list of words to match against.", - "items": { - "type": "string" - } - }, - "minWordSize": { - "type": "integer", - "format": "int32", - "description": "The minimum word size. Only words longer than this get processed. Default is 5.\nMaximum is 300.", - "default": 5, - "maximum": 300 - }, - "minSubwordSize": { - "type": "integer", - "format": "int32", - "description": "The minimum subword size. Only subwords longer than this are outputted. Default\nis 2. Maximum is 300.", - "default": 2, - "maximum": 300 - }, - "maxSubwordSize": { - "type": "integer", - "format": "int32", - "description": "The maximum subword size. Only subwords shorter than this are outputted.\nDefault is 15. Maximum is 300.", - "default": 15, - "maximum": 300 - }, - "onlyLongestMatch": { - "type": "boolean", - "description": "A value indicating whether to add only the longest matching subword to the\noutput. Default is false." - } - }, - "required": [ - "wordList" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter" - }, - "DistanceScoringFunction": { - "type": "object", - "description": "Defines a function that boosts scores based on distance from a geographic\nlocation.", - "properties": { - "distance": { - "$ref": "#/definitions/DistanceScoringParameters", - "description": "Parameter values for the distance scoring function." - } - }, - "required": [ - "distance" - ], - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "x-ms-discriminator-value": "distance" - }, - "DistanceScoringParameters": { - "type": "object", - "description": "Provides parameter values to a distance scoring function.", - "properties": { - "referencePointParameter": { - "type": "string", - "description": "The name of the parameter passed in search queries to specify the reference\nlocation." - }, - "boostingDistance": { - "type": "number", - "format": "double", - "description": "The distance in kilometers from the reference location where the boosting range\nends." - } - }, - "required": [ - "referencePointParameter", - "boostingDistance" - ] - }, - "DocumentExtractionSkill": { - "type": "object", - "description": "A skill that extracts content from a file within the enrichment pipeline.", - "properties": { - "parsingMode": { - "type": "string", - "description": "The parsingMode for the skill. Will be set to 'default' if not defined." - }, - "dataToExtract": { - "type": "string", - "description": "The type of data to be extracted for the skill. Will be set to\n'contentAndMetadata' if not defined." - }, - "configuration": { - "type": "object", - "description": "A dictionary of configurations for the skill.", - "additionalProperties": {} - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Util.DocumentExtractionSkill" - }, - "EdgeNGramTokenFilter": { - "type": "object", - "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", - "default": 1 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2.", - "default": 2 - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter" - }, - "EdgeNGramTokenFilterSide": { - "type": "string", - "description": "Specifies which side of the input an n-gram should be generated from.", - "enum": [ - "front", - "back" - ], - "x-ms-enum": { - "name": "EdgeNGramTokenFilterSide", - "modelAsString": true, - "values": [ - { - "name": "Front", - "value": "front", - "description": "Specifies that the n-gram should be generated from the front of the input." - }, - { - "name": "Back", - "value": "back", - "description": "Specifies that the n-gram should be generated from the back of the input." - } - ] - } - }, - "EdgeNGramTokenFilterV2": { - "type": "object", - "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", - "default": 1, - "maximum": 300 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2. Maximum is 300.", - "default": 2, - "maximum": 300 - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2" - }, - "EdgeNGramTokenizer": { - "type": "object", - "description": "Tokenizes the input from an edge into n-grams of the given size(s). This\ntokenizer is implemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", - "default": 1, - "maximum": 300 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2. Maximum is 300.", - "default": 2, - "maximum": 300 - }, - "tokenChars": { - "type": "array", - "description": "Character classes to keep in the tokens.", - "items": { - "$ref": "#/definitions/TokenCharacterKind" - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer" - }, - "ElisionTokenFilter": { - "type": "object", - "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). This token filter is implemented using Apache Lucene.", - "properties": { - "articles": { - "type": "array", - "description": "The set of articles to remove.", - "items": { - "type": "string" - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter" - }, - "EntityCategory": { - "type": "string", - "description": "A string indicating what entity categories to return.", - "enum": [ - "location", - "organization", - "person", - "quantity", - "datetime", - "url", - "email" - ], - "x-ms-enum": { - "name": "EntityCategory", - "modelAsString": true, - "values": [ - { - "name": "Location", - "value": "location", - "description": "Entities describing a physical location." - }, - { - "name": "Organization", - "value": "organization", - "description": "Entities describing an organization." - }, - { - "name": "Person", - "value": "person", - "description": "Entities describing a person." - }, - { - "name": "Quantity", - "value": "quantity", - "description": "Entities describing a quantity." - }, - { - "name": "Datetime", - "value": "datetime", - "description": "Entities describing a date and time." - }, - { - "name": "Url", - "value": "url", - "description": "Entities describing a URL." - }, - { - "name": "Email", - "value": "email", - "description": "Entities describing an email address." - } - ] - } - }, - "EntityLinkingSkill": { - "type": "object", - "description": "Using the Text Analytics API, extracts linked entities from text.", - "properties": { - "defaultLanguageCode": { - "type": "string", - "description": "A value indicating which language code to use. Default is `en`." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", - "maximum": 1 - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityLinkingSkill" - }, - "EntityRecognitionSkill": { - "type": "object", - "description": "This skill is deprecated. Use the V3.EntityRecognitionSkill instead.", - "properties": { - "categories": { - "type": "array", - "description": "A list of entity categories that should be extracted.", - "items": { - "$ref": "#/definitions/EntityCategory" - } - }, - "defaultLanguageCode": { - "$ref": "#/definitions/EntityRecognitionSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "includeTypelessEntities": { - "type": "boolean", - "description": "Determines whether or not to include entities which are well known but don't\nconform to a pre-defined type. If this configuration is not set (default), set\nto null or set to false, entities which don't conform to one of the pre-defined\ntypes will not be surfaced." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill" - }, - "EntityRecognitionSkillLanguage": { - "type": "string", - "description": "Deprecated. The language codes supported for input text by\nEntityRecognitionSkill.", - "enum": [ - "ar", - "cs", - "zh-Hans", - "zh-Hant", - "da", - "nl", - "en", - "fi", - "fr", - "de", - "el", - "hu", - "it", - "ja", - "ko", - "no", - "pl", - "pt-PT", - "pt-BR", - "ru", - "es", - "sv", - "tr" - ], - "x-ms-enum": { - "name": "EntityRecognitionSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "ar", - "value": "ar", - "description": "Arabic" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "zh-Hans", - "value": "zh-Hans", - "description": "Chinese-Simplified" - }, - { - "name": "zh-Hant", - "value": "zh-Hant", - "description": "Chinese-Traditional" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "no", - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "name": "pt-BR", - "value": "pt-BR", - "description": "Portuguese (Brazil)" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - } - ] - } - }, - "EntityRecognitionSkillV3": { - "type": "object", - "description": "Using the Text Analytics API, extracts entities of different types from text.", - "properties": { - "categories": { - "type": "array", - "description": "A list of entity categories that should be extracted.", - "items": { - "type": "string" - } - }, - "defaultLanguageCode": { - "type": "string", - "description": "A value indicating which language code to use. Default is `en`." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", - "maximum": 1 - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics API. It will\ndefault to the latest available when not specified. We recommend you do not\nspecify this value unless absolutely necessary." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill" - }, - "ErrorAdditionalInfo": { - "type": "object", - "description": "The resource management error additional info.", - "properties": { - "type": { - "type": "string", - "description": "The additional info type." - }, - "info": { - "type": "object", - "description": "The additional info.", - "additionalProperties": { - "type": "string" - } - } - } - }, - "ErrorDetail": { - "type": "object", - "description": "The error detail.", - "properties": { - "code": { - "type": "string", - "description": "The error code." - }, - "message": { - "type": "string", - "description": "The error message." - }, - "target": { - "type": "string", - "description": "The error target." - }, - "details": { - "type": "array", - "description": "The error details.", - "items": { - "$ref": "#/definitions/ErrorDetail" - }, - "x-ms-identifiers": [] - }, - "additionalInfo": { - "type": "array", - "description": "The error additional info.", - "items": { - "$ref": "#/definitions/ErrorAdditionalInfo" - }, - "x-ms-identifiers": [] - } - } - }, - "ErrorResponse": { - "type": "object", - "description": "Common error response for all Azure Resource Manager APIs to return error\ndetails for failed operations. (This also follows the OData error response\nformat.).", - "properties": { - "error": { - "$ref": "#/definitions/ErrorDetail", - "description": "The error object." - } - } - }, - "ExhaustiveKnnAlgorithmConfiguration": { - "type": "object", - "description": "Contains configuration options specific to the exhaustive KNN algorithm used\nduring querying, which will perform brute-force search across the entire vector\nindex.", - "properties": { - "exhaustiveKnnParameters": { - "$ref": "#/definitions/ExhaustiveKnnParameters", - "description": "Contains the parameters specific to exhaustive KNN algorithm." - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" - } - ], - "x-ms-discriminator-value": "exhaustiveKnn" - }, - "ExhaustiveKnnParameters": { - "type": "object", - "description": "Contains the parameters specific to exhaustive KNN algorithm.", - "properties": { - "metric": { - "$ref": "#/definitions/VectorSearchAlgorithmMetric", - "description": "The similarity metric to use for vector comparisons." - } - } - }, - "FieldMapping": { - "type": "object", - "description": "Defines a mapping between a field in a data source and a target field in an\nindex.", - "properties": { - "sourceFieldName": { - "type": "string", - "description": "The name of the field in the data source." - }, - "targetFieldName": { - "type": "string", - "description": "The name of the target field in the index. Same as the source field name by\ndefault." - }, - "mappingFunction": { - "$ref": "#/definitions/FieldMappingFunction", - "description": "A function to apply to each source field value before indexing." - } - }, - "required": [ - "sourceFieldName" - ] - }, - "FieldMappingFunction": { - "type": "object", - "description": "Represents a function that transforms a value from a data source before\nindexing.", - "properties": { - "name": { - "type": "string", - "description": "The name of the field mapping function." - }, - "parameters": { - "type": "object", - "description": "A dictionary of parameter name/value pairs to pass to the function. Each value\nmust be of a primitive type.", - "additionalProperties": {} - } - }, - "required": [ - "name" - ] - }, - "FreshnessScoringFunction": { - "type": "object", - "description": "Defines a function that boosts scores based on the value of a date-time field.", - "properties": { - "freshness": { - "$ref": "#/definitions/FreshnessScoringParameters", - "description": "Parameter values for the freshness scoring function." - } - }, - "required": [ - "freshness" - ], - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "x-ms-discriminator-value": "freshness" - }, - "FreshnessScoringParameters": { - "type": "object", - "description": "Provides parameter values to a freshness scoring function.", - "properties": { - "boostingDuration": { - "type": "string", - "format": "duration", - "description": "The expiration period after which boosting will stop for a particular document." - } - }, - "required": [ - "boostingDuration" - ] - }, - "GetIndexStatisticsResult": { - "type": "object", - "description": "Statistics for a given index. Statistics are collected periodically and are not\nguaranteed to always be up-to-date.", - "properties": { - "documentCount": { - "type": "integer", - "format": "int64", - "description": "The number of documents in the index." - }, - "storageSize": { - "type": "integer", - "format": "int64", - "description": "The amount of storage in bytes consumed by the index." - }, - "vectorIndexSize": { - "type": "integer", - "format": "int64", - "description": "The amount of memory in bytes consumed by vectors in the index." - } - }, - "required": [ - "documentCount", - "storageSize", - "vectorIndexSize" - ] - }, - "HighWaterMarkChangeDetectionPolicy": { - "type": "object", - "description": "Defines a data change detection policy that captures changes based on the value\nof a high water mark column.", - "properties": { - "highWaterMarkColumnName": { - "type": "string", - "description": "The name of the high water mark column." - } - }, - "required": [ - "highWaterMarkColumnName" - ], - "allOf": [ - { - "$ref": "#/definitions/DataChangeDetectionPolicy" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy" - }, - "HnswAlgorithmConfiguration": { - "type": "object", - "description": "Contains configuration options specific to the HNSW approximate nearest\nneighbors algorithm used during indexing and querying. The HNSW algorithm\noffers a tunable trade-off between search speed and accuracy.", - "properties": { - "hnswParameters": { - "$ref": "#/definitions/HnswParameters", - "description": "Contains the parameters specific to HNSW algorithm." - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" - } - ], - "x-ms-discriminator-value": "hnsw" - }, - "HnswParameters": { - "type": "object", - "description": "Contains the parameters specific to the HNSW algorithm.", - "properties": { - "m": { - "type": "integer", - "format": "int32", - "description": "The number of bi-directional links created for every new element during\nconstruction. Increasing this parameter value may improve recall and reduce\nretrieval times for datasets with high intrinsic dimensionality at the expense\nof increased memory consumption and longer indexing time.", - "default": 4, - "minimum": 4, - "maximum": 10 - }, - "efConstruction": { - "type": "integer", - "format": "int32", - "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring index time. Increasing this parameter may improve index quality, at the\nexpense of increased indexing time. At a certain point, increasing this\nparameter leads to diminishing returns.", - "default": 400, - "minimum": 100, - "maximum": 1000 - }, - "efSearch": { - "type": "integer", - "format": "int32", - "description": "The size of the dynamic list containing the nearest neighbors, which is used\nduring search time. Increasing this parameter may improve search results, at\nthe expense of slower search. At a certain point, increasing this parameter\nleads to diminishing returns.", - "default": 500, - "minimum": 100, - "maximum": 1000 - }, - "metric": { - "$ref": "#/definitions/VectorSearchAlgorithmMetric", - "description": "The similarity metric to use for vector comparisons." - } - } - }, - "ImageAnalysisSkill": { - "type": "object", - "description": "A skill that analyzes image files. It extracts a rich set of visual features\nbased on the image content.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/ImageAnalysisSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "visualFeatures": { - "type": "array", - "description": "A list of visual features.", - "items": { - "$ref": "#/definitions/VisualFeature" - } - }, - "details": { - "type": "array", - "description": "A string indicating which domain-specific details to return.", - "items": { - "$ref": "#/definitions/ImageDetail" - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill" - }, - "ImageAnalysisSkillLanguage": { - "type": "string", - "description": "The language codes supported for input by ImageAnalysisSkill.", - "enum": [ - "ar", - "az", - "bg", - "bs", - "ca", - "cs", - "cy", - "da", - "de", - "el", - "en", - "es", - "et", - "eu", - "fi", - "fr", - "ga", - "gl", - "he", - "hi", - "hr", - "hu", - "id", - "it", - "ja", - "kk", - "ko", - "lt", - "lv", - "mk", - "ms", - "nb", - "nl", - "pl", - "prs", - "pt-BR", - "pt", - "pt-PT", - "ro", - "ru", - "sk", - "sl", - "sr-Cyrl", - "sr-Latn", - "sv", - "th", - "tr", - "uk", - "vi", - "zh", - "zh-Hans", - "zh-Hant" - ], - "x-ms-enum": { - "name": "ImageAnalysisSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "ar", - "value": "ar", - "description": "Arabic" - }, - { - "name": "az", - "value": "az", - "description": "Azerbaijani" - }, - { - "name": "bg", - "value": "bg", - "description": "Bulgarian" - }, - { - "name": "bs", - "value": "bs", - "description": "Bosnian Latin" - }, - { - "name": "ca", - "value": "ca", - "description": "Catalan" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "cy", - "value": "cy", - "description": "Welsh" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "et", - "value": "et", - "description": "Estonian" - }, - { - "name": "eu", - "value": "eu", - "description": "Basque" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "ga", - "value": "ga", - "description": "Irish" - }, - { - "name": "gl", - "value": "gl", - "description": "Galician" - }, - { - "name": "he", - "value": "he", - "description": "Hebrew" - }, - { - "name": "hi", - "value": "hi", - "description": "Hindi" - }, - { - "name": "hr", - "value": "hr", - "description": "Croatian" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "id", - "value": "id", - "description": "Indonesian" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "kk", - "value": "kk", - "description": "Kazakh" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "lt", - "value": "lt", - "description": "Lithuanian" - }, - { - "name": "lv", - "value": "lv", - "description": "Latvian" - }, - { - "name": "mk", - "value": "mk", - "description": "Macedonian" - }, - { - "name": "ms", - "value": "ms", - "description": "Malay Malaysia" - }, - { - "name": "nb", - "value": "nb", - "description": "Norwegian (Bokmal)" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "prs", - "value": "prs", - "description": "Dari" - }, - { - "name": "pt-BR", - "value": "pt-BR", - "description": "Portuguese-Brazil" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese-Portugal" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese-Portugal" - }, - { - "name": "ro", - "value": "ro", - "description": "Romanian" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "sk", - "value": "sk", - "description": "Slovak" - }, - { - "name": "sl", - "value": "sl", - "description": "Slovenian" - }, - { - "name": "sr-Cyrl", - "value": "sr-Cyrl", - "description": "Serbian - Cyrillic RS" - }, - { - "name": "sr-Latn", - "value": "sr-Latn", - "description": "Serbian - Latin RS" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "th", - "value": "th", - "description": "Thai" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - }, - { - "name": "uk", - "value": "uk", - "description": "Ukrainian" - }, - { - "name": "vi", - "value": "vi", - "description": "Vietnamese" - }, - { - "name": "zh", - "value": "zh", - "description": "Chinese Simplified" - }, - { - "name": "zh-Hans", - "value": "zh-Hans", - "description": "Chinese Simplified" - }, - { - "name": "zh-Hant", - "value": "zh-Hant", - "description": "Chinese Traditional" - } - ] - } - }, - "ImageDetail": { - "type": "string", - "description": "A string indicating which domain-specific details to return.", - "enum": [ - "celebrities", - "landmarks" - ], - "x-ms-enum": { - "name": "ImageDetail", - "modelAsString": true, - "values": [ - { - "name": "Celebrities", - "value": "celebrities", - "description": "Details recognized as celebrities." - }, - { - "name": "Landmarks", - "value": "landmarks", - "description": "Details recognized as landmarks." - } - ] - } - }, - "IndexProjectionMode": { - "type": "string", - "description": "Defines behavior of the index projections in relation to the rest of the\nindexer.", - "enum": [ - "skipIndexingParentDocuments", - "includeIndexingParentDocuments" - ], - "x-ms-enum": { - "name": "IndexProjectionMode", - "modelAsString": true, - "values": [ - { - "name": "SkipIndexingParentDocuments", - "value": "skipIndexingParentDocuments", - "description": "The source document will be skipped from writing into the indexer's target\nindex." - }, - { - "name": "IncludeIndexingParentDocuments", - "value": "includeIndexingParentDocuments", - "description": "The source document will be written into the indexer's target index. This is\nthe default pattern." - } - ] - } - }, - "IndexerExecutionEnvironment": { - "type": "string", - "description": "Specifies the environment in which the indexer should execute.", - "enum": [ - "standard", - "private" - ], - "x-ms-enum": { - "name": "IndexerExecutionEnvironment", - "modelAsString": true, - "values": [ - { - "name": "standard", - "value": "standard", - "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." - }, - { - "name": "private", - "value": "private", - "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." - } - ] - } - }, - "IndexerExecutionResult": { - "type": "object", - "description": "Represents the result of an individual indexer execution.", - "properties": { - "status": { - "$ref": "#/definitions/IndexerExecutionStatus", - "description": "The outcome of this indexer execution." - }, - "errorMessage": { - "type": "string", - "description": "The error message indicating the top-level error, if any." - }, - "startTime": { - "type": "string", - "format": "date-time", - "description": "The start time of this indexer execution." - }, - "endTime": { - "type": "string", - "format": "date-time", - "description": "The end time of this indexer execution, if the execution has already completed." - }, - "errors": { - "type": "array", - "description": "The item-level indexing errors.", - "items": { - "$ref": "#/definitions/SearchIndexerError" - }, - "x-ms-identifiers": [] - }, - "warnings": { - "type": "array", - "description": "The item-level indexing warnings.", - "items": { - "$ref": "#/definitions/SearchIndexerWarning" - }, - "x-ms-identifiers": [] - }, - "itemsProcessed": { - "type": "integer", - "format": "int32", - "description": "The number of items that were processed during this indexer execution. This\nincludes both successfully processed items and items where indexing was\nattempted but failed." - }, - "itemsFailed": { - "type": "integer", - "format": "int32", - "description": "The number of items that failed to be indexed during this indexer execution." - }, - "initialTrackingState": { - "type": "string", - "description": "Change tracking state with which an indexer execution started." - }, - "finalTrackingState": { - "type": "string", - "description": "Change tracking state with which an indexer execution finished." - } - }, - "required": [ - "status", - "errors", - "warnings", - "itemsProcessed", - "itemsFailed" - ] - }, - "IndexerExecutionStatus": { - "type": "string", - "description": "Represents the status of an individual indexer execution.", - "enum": [ - "transientFailure", - "success", - "inProgress", - "reset" - ], - "x-ms-enum": { - "name": "IndexerExecutionStatus", - "modelAsString": true, - "values": [ - { - "name": "TransientFailure", - "value": "transientFailure", - "description": "An indexer invocation has failed, but the failure may be transient. Indexer\ninvocations will continue per schedule." - }, - { - "name": "Success", - "value": "success", - "description": "Indexer execution completed successfully." - }, - { - "name": "InProgress", - "value": "inProgress", - "description": "Indexer execution is in progress." - }, - { - "name": "Reset", - "value": "reset", - "description": "Indexer has been reset." - } - ] - } - }, - "IndexerStatus": { - "type": "string", - "description": "Represents the overall indexer status.", - "enum": [ - "unknown", - "error", - "running" - ], - "x-ms-enum": { - "name": "IndexerStatus", - "modelAsString": true, - "values": [ - { - "name": "Unknown", - "value": "unknown", - "description": "Indicates that the indexer is in an unknown state." - }, - { - "name": "Error", - "value": "error", - "description": "Indicates that the indexer experienced an error that cannot be corrected\nwithout human intervention." - }, - { - "name": "Running", - "value": "running", - "description": "Indicates that the indexer is running normally." - } - ] - } - }, - "IndexingParameters": { - "type": "object", - "description": "Represents parameters for indexer execution.", - "properties": { - "batchSize": { - "type": "integer", - "format": "int32", - "description": "The number of items that are read from the data source and indexed as a single\nbatch in order to improve performance. The default depends on the data source\ntype." - }, - "maxFailedItems": { - "type": "integer", - "format": "int32", - "description": "The maximum number of items that can fail indexing for indexer execution to\nstill be considered successful. -1 means no limit. Default is 0." - }, - "maxFailedItemsPerBatch": { - "type": "integer", - "format": "int32", - "description": "The maximum number of items in a single batch that can fail indexing for the\nbatch to still be considered successful. -1 means no limit. Default is 0." - }, - "configuration": { - "$ref": "#/definitions/IndexingParametersConfiguration", - "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type." - } - } - }, - "IndexingParametersConfiguration": { - "type": "object", - "description": "A dictionary of indexer-specific configuration properties. Each name is the\nname of a specific property. Each value must be of a primitive type.", - "properties": { - "parsingMode": { - "type": "string", - "description": "Represents the parsing mode for indexing from an Azure blob data source.", - "default": "default", - "enum": [ - "default", - "text", - "delimitedText", - "json", - "jsonArray", - "jsonLines" - ], - "x-ms-enum": { - "name": "BlobIndexerParsingMode", - "modelAsString": true, - "values": [ - { - "name": "Default", - "value": "default", - "description": "Set to default for normal file processing." - }, - { - "name": "Text", - "value": "text", - "description": "Set to text to improve indexing performance on plain text files in blob storage." - }, - { - "name": "DelimitedText", - "value": "delimitedText", - "description": "Set to delimitedText when blobs are plain CSV files." - }, - { - "name": "Json", - "value": "json", - "description": "Set to json to extract structured content from JSON files." - }, - { - "name": "JsonArray", - "value": "jsonArray", - "description": "Set to jsonArray to extract individual elements of a JSON array as separate\ndocuments." - }, - { - "name": "JsonLines", - "value": "jsonLines", - "description": "Set to jsonLines to extract individual JSON entities, separated by a new line,\nas separate documents." - } - ] - } - }, - "excludedFileNameExtensions": { - "type": "string", - "description": "Comma-delimited list of filename extensions to ignore when processing from\nAzure blob storage. For example, you could exclude \".png, .mp4\" to skip over\nthose files during indexing." - }, - "indexedFileNameExtensions": { - "type": "string", - "description": "Comma-delimited list of filename extensions to select when processing from\nAzure blob storage. For example, you could focus indexing on specific\napplication files \".docx, .pptx, .msg\" to specifically include those file\ntypes." - }, - "failOnUnsupportedContentType": { - "type": "boolean", - "description": "For Azure blobs, set to false if you want to continue indexing when an\nunsupported content type is encountered, and you don't know all the content\ntypes (file extensions) in advance." - }, - "failOnUnprocessableDocument": { - "type": "boolean", - "description": "For Azure blobs, set to false if you want to continue indexing if a document\nfails indexing." - }, - "indexStorageMetadataOnlyForOversizedDocuments": { - "type": "boolean", - "description": "For Azure blobs, set this property to true to still index storage metadata for\nblob content that is too large to process. Oversized blobs are treated as\nerrors by default. For limits on blob size, see\nhttps://learn.microsoft.com/azure/search/search-limits-quotas-capacity." - }, - "delimitedTextHeaders": { - "type": "string", - "description": "For CSV blobs, specifies a comma-delimited list of column headers, useful for\nmapping source fields to destination fields in an index." - }, - "delimitedTextDelimiter": { - "type": "string", - "description": "For CSV blobs, specifies the end-of-line single-character delimiter for CSV\nfiles where each line starts a new document (for example, \"|\")." - }, - "firstLineContainsHeaders": { - "type": "boolean", - "description": "For CSV blobs, indicates that the first (non-blank) line of each blob contains\nheaders.", - "default": true - }, - "documentRoot": { - "type": "string", - "description": "For JSON arrays, given a structured or semi-structured document, you can\nspecify a path to the array using this property." - }, - "dataToExtract": { - "type": "string", - "description": "Specifies the data to extract from Azure blob storage and tells the indexer\nwhich data to extract from image content when \"imageAction\" is set to a value\nother than \"none\". This applies to embedded image content in a .PDF or other\napplication, or image files such as .jpg and .png, in Azure blobs.", - "default": "contentAndMetadata", - "enum": [ - "storageMetadata", - "allMetadata", - "contentAndMetadata" - ], - "x-ms-enum": { - "name": "BlobIndexerDataToExtract", - "modelAsString": true, - "values": [ - { - "name": "StorageMetadata", - "value": "storageMetadata", - "description": "Indexes just the standard blob properties and user-specified metadata." - }, - { - "name": "AllMetadata", - "value": "allMetadata", - "description": "Extracts metadata provided by the Azure blob storage subsystem and the\ncontent-type specific metadata (for example, metadata unique to just .png files\nare indexed)." - }, - { - "name": "ContentAndMetadata", - "value": "contentAndMetadata", - "description": "Extracts all metadata and textual content from each blob." - } - ] - } - }, - "imageAction": { - "type": "string", - "description": "Determines how to process embedded images and image files in Azure blob\nstorage. Setting the \"imageAction\" configuration to any value other than\n\"none\" requires that a skillset also be attached to that indexer.", - "default": "none", - "enum": [ - "none", - "generateNormalizedImages", - "generateNormalizedImagePerPage" - ], - "x-ms-enum": { - "name": "BlobIndexerImageAction", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Ignores embedded images or image files in the data set. This is the default." - }, - { - "name": "GenerateNormalizedImages", - "value": "generateNormalizedImages", - "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field. This action requires that\n\"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to\nadditional processing resulting in uniform image output, sized and rotated to\npromote consistent rendering when you include images in visual search results.\nThis information is generated for each image when you use this option." - }, - { - "name": "GenerateNormalizedImagePerPage", - "value": "generateNormalizedImagePerPage", - "description": "Extracts text from images (for example, the word \"STOP\" from a traffic stop\nsign), and embeds it into the content field, but treats PDF files differently\nin that each page will be rendered as an image and normalized accordingly,\ninstead of extracting embedded images. Non-PDF file types will be treated the\nsame as if \"generateNormalizedImages\" was set." - } - ] - } - }, - "allowSkillsetToReadFileData": { - "type": "boolean", - "description": "If true, will create a path //document//file_data that is an object\nrepresenting the original file data downloaded from your blob data source.\nThis allows you to pass the original file data to a custom skill for processing\nwithin the enrichment pipeline, or to the Document Extraction skill." - }, - "pdfTextRotationAlgorithm": { - "type": "string", - "description": "Determines algorithm for text extraction from PDF files in Azure blob storage.", - "default": "none", - "enum": [ - "none", - "detectAngles" - ], - "x-ms-enum": { - "name": "BlobIndexerPDFTextRotationAlgorithm", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "Leverages normal text extraction. This is the default." - }, - { - "name": "DetectAngles", - "value": "detectAngles", - "description": "May produce better and more readable text extraction from PDF files that have\nrotated text within them. Note that there may be a small performance speed\nimpact when this parameter is used. This parameter only applies to PDF files,\nand only to PDFs with embedded text. If the rotated text appears within an\nembedded image in the PDF, this parameter does not apply." - } - ] - } - }, - "executionEnvironment": { - "type": "string", - "description": "Specifies the environment in which the indexer should execute.", - "default": "standard", - "enum": [ - "standard", - "private" - ], - "x-ms-enum": { - "name": "IndexerExecutionEnvironment", - "modelAsString": true, - "values": [ - { - "name": "standard", - "value": "standard", - "description": "Indicates that the search service can determine where the indexer should\nexecute. This is the default environment when nothing is specified and is the\nrecommended value." - }, - { - "name": "private", - "value": "private", - "description": "Indicates that the indexer should run with the environment provisioned\nspecifically for the search service. This should only be specified as the\nexecution environment if the indexer needs to access resources securely over\nshared private link resources." - } - ] - } - }, - "queryTimeout": { - "type": "string", - "description": "Increases the timeout beyond the 5-minute default for Azure SQL database data\nsources, specified in the format \"hh:mm:ss\".", - "default": "00:05:00" - } - }, - "additionalProperties": {} - }, - "IndexingSchedule": { - "type": "object", - "description": "Represents a schedule for indexer execution.", - "properties": { - "interval": { - "type": "string", - "format": "duration", - "description": "The interval of time between indexer executions." - }, - "startTime": { - "type": "string", - "format": "date-time", - "description": "The time when an indexer should start running." - } - }, - "required": [ - "interval" - ] - }, - "InputFieldMappingEntry": { - "type": "object", - "description": "Input field mapping for a skill.", - "properties": { - "name": { - "type": "string", - "description": "The name of the input." - }, - "source": { - "type": "string", - "description": "The source of the input." - }, - "sourceContext": { - "type": "string", - "description": "The source context used for selecting recursive inputs." - }, - "inputs": { - "type": "array", - "description": "The recursive inputs used when creating a complex type.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "name" - ] - }, - "KeepTokenFilter": { - "type": "object", - "description": "A token filter that only keeps tokens with text contained in a specified list\nof words. This token filter is implemented using Apache Lucene.", - "properties": { - "keepWords": { - "type": "array", - "description": "The list of words to keep.", - "items": { - "type": "string" - } - }, - "keepWordsCase": { - "type": "boolean", - "description": "A value indicating whether to lower case all words first. Default is false." - } - }, - "required": [ - "keepWords" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter" - }, - "KeyPhraseExtractionSkill": { - "type": "object", - "description": "A skill that uses text analytics for key phrase extraction.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "maxKeyPhraseCount": { - "type": "integer", - "format": "int32", - "description": "A number indicating how many key phrases to return. If absent, all identified\nkey phrases will be returned." - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill" - }, - "KeyPhraseExtractionSkillLanguage": { - "type": "string", - "description": "The language codes supported for input text by KeyPhraseExtractionSkill.", - "enum": [ - "da", - "nl", - "en", - "fi", - "fr", - "de", - "it", - "ja", - "ko", - "no", - "pl", - "pt-PT", - "pt-BR", - "ru", - "es", - "sv" - ], - "x-ms-enum": { - "name": "KeyPhraseExtractionSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "no", - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "name": "pt-BR", - "value": "pt-BR", - "description": "Portuguese (Brazil)" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - } - ] - } - }, - "KeywordMarkerTokenFilter": { - "type": "object", - "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", - "properties": { - "keywords": { - "type": "array", - "description": "A list of words to mark as keywords.", - "items": { - "type": "string" - } - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." - } - }, - "required": [ - "keywords" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" - }, - "KeywordTokenizer": { - "type": "object", - "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", - "properties": { - "bufferSize": { - "type": "integer", - "format": "int32", - "description": "The read buffer size in bytes. Default is 256.", - "default": 256 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer" - }, - "KeywordTokenizerV2": { - "type": "object", - "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 256. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 256, - "maximum": 300 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2" - }, - "LanguageDetectionSkill": { - "type": "object", - "description": "A skill that detects the language of input text and reports a single language\ncode for every document submitted on the request. The language code is paired\nwith a score indicating the confidence of the analysis.", - "properties": { - "defaultCountryHint": { - "type": "string", - "description": "A country code to use as a hint to the language detection model if it cannot\ndisambiguate the language." - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill" - }, - "LengthTokenFilter": { - "type": "object", - "description": "Removes words that are too long or too short. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "min": { - "type": "integer", - "format": "int32", - "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less\nthan the value of max.", - "maximum": 300 - }, - "max": { - "type": "integer", - "format": "int32", - "description": "The maximum length in characters. Default and maximum is 300.", - "default": 300, - "maximum": 300 - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter" - }, - "LexicalAnalyzer": { - "type": "object", - "description": "Base type for analyzers.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types." - }, - "name": { - "type": "string", - "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type", - "name" - ] - }, - "LexicalAnalyzerName": { - "type": "string", - "description": "Defines the names of all text analyzers supported by the search engine.", - "enum": [ - "ar.microsoft", - "ar.lucene", - "hy.lucene", - "bn.microsoft", - "eu.lucene", - "bg.microsoft", - "bg.lucene", - "ca.microsoft", - "ca.lucene", - "zh-Hans.microsoft", - "zh-Hans.lucene", - "zh-Hant.microsoft", - "zh-Hant.lucene", - "hr.microsoft", - "cs.microsoft", - "cs.lucene", - "da.microsoft", - "da.lucene", - "nl.microsoft", - "nl.lucene", - "en.microsoft", - "en.lucene", - "et.microsoft", - "fi.microsoft", - "fi.lucene", - "fr.microsoft", - "fr.lucene", - "gl.lucene", - "de.microsoft", - "de.lucene", - "el.microsoft", - "el.lucene", - "gu.microsoft", - "he.microsoft", - "hi.microsoft", - "hi.lucene", - "hu.microsoft", - "hu.lucene", - "is.microsoft", - "id.microsoft", - "id.lucene", - "ga.lucene", - "it.microsoft", - "it.lucene", - "ja.microsoft", - "ja.lucene", - "kn.microsoft", - "ko.microsoft", - "ko.lucene", - "lv.microsoft", - "lv.lucene", - "lt.microsoft", - "ml.microsoft", - "ms.microsoft", - "mr.microsoft", - "nb.microsoft", - "no.lucene", - "fa.lucene", - "pl.microsoft", - "pl.lucene", - "pt-BR.microsoft", - "pt-BR.lucene", - "pt-PT.microsoft", - "pt-PT.lucene", - "pa.microsoft", - "ro.microsoft", - "ro.lucene", - "ru.microsoft", - "ru.lucene", - "sr-cyrillic.microsoft", - "sr-latin.microsoft", - "sk.microsoft", - "sl.microsoft", - "es.microsoft", - "es.lucene", - "sv.microsoft", - "sv.lucene", - "ta.microsoft", - "te.microsoft", - "th.microsoft", - "th.lucene", - "tr.microsoft", - "tr.lucene", - "uk.microsoft", - "ur.microsoft", - "vi.microsoft", - "standard.lucene", - "standardasciifolding.lucene", - "keyword", - "pattern", - "simple", - "stop", - "whitespace" - ], - "x-ms-enum": { - "name": "LexicalAnalyzerName", - "modelAsString": true, - "values": [ - { - "name": "ArMicrosoft", - "value": "ar.microsoft", - "description": "Microsoft analyzer for Arabic." - }, - { - "name": "ArLucene", - "value": "ar.lucene", - "description": "Lucene analyzer for Arabic." - }, - { - "name": "HyLucene", - "value": "hy.lucene", - "description": "Lucene analyzer for Armenian." - }, - { - "name": "BnMicrosoft", - "value": "bn.microsoft", - "description": "Microsoft analyzer for Bangla." - }, - { - "name": "EuLucene", - "value": "eu.lucene", - "description": "Lucene analyzer for Basque." - }, - { - "name": "BgMicrosoft", - "value": "bg.microsoft", - "description": "Microsoft analyzer for Bulgarian." - }, - { - "name": "BgLucene", - "value": "bg.lucene", - "description": "Lucene analyzer for Bulgarian." - }, - { - "name": "CaMicrosoft", - "value": "ca.microsoft", - "description": "Microsoft analyzer for Catalan." - }, - { - "name": "CaLucene", - "value": "ca.lucene", - "description": "Lucene analyzer for Catalan." - }, - { - "name": "ZhHansMicrosoft", - "value": "zh-Hans.microsoft", - "description": "Microsoft analyzer for Chinese (Simplified)." - }, - { - "name": "ZhHansLucene", - "value": "zh-Hans.lucene", - "description": "Lucene analyzer for Chinese (Simplified)." - }, - { - "name": "ZhHantMicrosoft", - "value": "zh-Hant.microsoft", - "description": "Microsoft analyzer for Chinese (Traditional)." - }, - { - "name": "ZhHantLucene", - "value": "zh-Hant.lucene", - "description": "Lucene analyzer for Chinese (Traditional)." - }, - { - "name": "HrMicrosoft", - "value": "hr.microsoft", - "description": "Microsoft analyzer for Croatian." - }, - { - "name": "CsMicrosoft", - "value": "cs.microsoft", - "description": "Microsoft analyzer for Czech." - }, - { - "name": "CsLucene", - "value": "cs.lucene", - "description": "Lucene analyzer for Czech." - }, - { - "name": "DaMicrosoft", - "value": "da.microsoft", - "description": "Microsoft analyzer for Danish." - }, - { - "name": "DaLucene", - "value": "da.lucene", - "description": "Lucene analyzer for Danish." - }, - { - "name": "NlMicrosoft", - "value": "nl.microsoft", - "description": "Microsoft analyzer for Dutch." - }, - { - "name": "NlLucene", - "value": "nl.lucene", - "description": "Lucene analyzer for Dutch." - }, - { - "name": "EnMicrosoft", - "value": "en.microsoft", - "description": "Microsoft analyzer for English." - }, - { - "name": "EnLucene", - "value": "en.lucene", - "description": "Lucene analyzer for English." - }, - { - "name": "EtMicrosoft", - "value": "et.microsoft", - "description": "Microsoft analyzer for Estonian." - }, - { - "name": "FiMicrosoft", - "value": "fi.microsoft", - "description": "Microsoft analyzer for Finnish." - }, - { - "name": "FiLucene", - "value": "fi.lucene", - "description": "Lucene analyzer for Finnish." - }, - { - "name": "FrMicrosoft", - "value": "fr.microsoft", - "description": "Microsoft analyzer for French." - }, - { - "name": "FrLucene", - "value": "fr.lucene", - "description": "Lucene analyzer for French." - }, - { - "name": "GlLucene", - "value": "gl.lucene", - "description": "Lucene analyzer for Galician." - }, - { - "name": "DeMicrosoft", - "value": "de.microsoft", - "description": "Microsoft analyzer for German." - }, - { - "name": "DeLucene", - "value": "de.lucene", - "description": "Lucene analyzer for German." - }, - { - "name": "ElMicrosoft", - "value": "el.microsoft", - "description": "Microsoft analyzer for Greek." - }, - { - "name": "ElLucene", - "value": "el.lucene", - "description": "Lucene analyzer for Greek." - }, - { - "name": "GuMicrosoft", - "value": "gu.microsoft", - "description": "Microsoft analyzer for Gujarati." - }, - { - "name": "HeMicrosoft", - "value": "he.microsoft", - "description": "Microsoft analyzer for Hebrew." - }, - { - "name": "HiMicrosoft", - "value": "hi.microsoft", - "description": "Microsoft analyzer for Hindi." - }, - { - "name": "HiLucene", - "value": "hi.lucene", - "description": "Lucene analyzer for Hindi." - }, - { - "name": "HuMicrosoft", - "value": "hu.microsoft", - "description": "Microsoft analyzer for Hungarian." - }, - { - "name": "HuLucene", - "value": "hu.lucene", - "description": "Lucene analyzer for Hungarian." - }, - { - "name": "IsMicrosoft", - "value": "is.microsoft", - "description": "Microsoft analyzer for Icelandic." - }, - { - "name": "IdMicrosoft", - "value": "id.microsoft", - "description": "Microsoft analyzer for Indonesian (Bahasa)." - }, - { - "name": "IdLucene", - "value": "id.lucene", - "description": "Lucene analyzer for Indonesian." - }, - { - "name": "GaLucene", - "value": "ga.lucene", - "description": "Lucene analyzer for Irish." - }, - { - "name": "ItMicrosoft", - "value": "it.microsoft", - "description": "Microsoft analyzer for Italian." - }, - { - "name": "ItLucene", - "value": "it.lucene", - "description": "Lucene analyzer for Italian." - }, - { - "name": "JaMicrosoft", - "value": "ja.microsoft", - "description": "Microsoft analyzer for Japanese." - }, - { - "name": "JaLucene", - "value": "ja.lucene", - "description": "Lucene analyzer for Japanese." - }, - { - "name": "KnMicrosoft", - "value": "kn.microsoft", - "description": "Microsoft analyzer for Kannada." - }, - { - "name": "KoMicrosoft", - "value": "ko.microsoft", - "description": "Microsoft analyzer for Korean." - }, - { - "name": "KoLucene", - "value": "ko.lucene", - "description": "Lucene analyzer for Korean." - }, - { - "name": "LvMicrosoft", - "value": "lv.microsoft", - "description": "Microsoft analyzer for Latvian." - }, - { - "name": "LvLucene", - "value": "lv.lucene", - "description": "Lucene analyzer for Latvian." - }, - { - "name": "LtMicrosoft", - "value": "lt.microsoft", - "description": "Microsoft analyzer for Lithuanian." - }, - { - "name": "MlMicrosoft", - "value": "ml.microsoft", - "description": "Microsoft analyzer for Malayalam." - }, - { - "name": "MsMicrosoft", - "value": "ms.microsoft", - "description": "Microsoft analyzer for Malay (Latin)." - }, - { - "name": "MrMicrosoft", - "value": "mr.microsoft", - "description": "Microsoft analyzer for Marathi." - }, - { - "name": "NbMicrosoft", - "value": "nb.microsoft", - "description": "Microsoft analyzer for Norwegian (Bokmål)." - }, - { - "name": "NoLucene", - "value": "no.lucene", - "description": "Lucene analyzer for Norwegian." - }, - { - "name": "FaLucene", - "value": "fa.lucene", - "description": "Lucene analyzer for Persian." - }, - { - "name": "PlMicrosoft", - "value": "pl.microsoft", - "description": "Microsoft analyzer for Polish." - }, - { - "name": "PlLucene", - "value": "pl.lucene", - "description": "Lucene analyzer for Polish." - }, - { - "name": "PtBrMicrosoft", - "value": "pt-BR.microsoft", - "description": "Microsoft analyzer for Portuguese (Brazil)." - }, - { - "name": "PtBrLucene", - "value": "pt-BR.lucene", - "description": "Lucene analyzer for Portuguese (Brazil)." - }, - { - "name": "PtPtMicrosoft", - "value": "pt-PT.microsoft", - "description": "Microsoft analyzer for Portuguese (Portugal)." - }, - { - "name": "PtPtLucene", - "value": "pt-PT.lucene", - "description": "Lucene analyzer for Portuguese (Portugal)." - }, - { - "name": "PaMicrosoft", - "value": "pa.microsoft", - "description": "Microsoft analyzer for Punjabi." - }, - { - "name": "RoMicrosoft", - "value": "ro.microsoft", - "description": "Microsoft analyzer for Romanian." - }, - { - "name": "RoLucene", - "value": "ro.lucene", - "description": "Lucene analyzer for Romanian." - }, - { - "name": "RuMicrosoft", - "value": "ru.microsoft", - "description": "Microsoft analyzer for Russian." - }, - { - "name": "RuLucene", - "value": "ru.lucene", - "description": "Lucene analyzer for Russian." - }, - { - "name": "SrCyrillicMicrosoft", - "value": "sr-cyrillic.microsoft", - "description": "Microsoft analyzer for Serbian (Cyrillic)." - }, - { - "name": "SrLatinMicrosoft", - "value": "sr-latin.microsoft", - "description": "Microsoft analyzer for Serbian (Latin)." - }, - { - "name": "SkMicrosoft", - "value": "sk.microsoft", - "description": "Microsoft analyzer for Slovak." - }, - { - "name": "SlMicrosoft", - "value": "sl.microsoft", - "description": "Microsoft analyzer for Slovenian." - }, - { - "name": "EsMicrosoft", - "value": "es.microsoft", - "description": "Microsoft analyzer for Spanish." - }, - { - "name": "EsLucene", - "value": "es.lucene", - "description": "Lucene analyzer for Spanish." - }, - { - "name": "SvMicrosoft", - "value": "sv.microsoft", - "description": "Microsoft analyzer for Swedish." - }, - { - "name": "SvLucene", - "value": "sv.lucene", - "description": "Lucene analyzer for Swedish." - }, - { - "name": "TaMicrosoft", - "value": "ta.microsoft", - "description": "Microsoft analyzer for Tamil." - }, - { - "name": "TeMicrosoft", - "value": "te.microsoft", - "description": "Microsoft analyzer for Telugu." - }, - { - "name": "ThMicrosoft", - "value": "th.microsoft", - "description": "Microsoft analyzer for Thai." - }, - { - "name": "ThLucene", - "value": "th.lucene", - "description": "Lucene analyzer for Thai." - }, - { - "name": "TrMicrosoft", - "value": "tr.microsoft", - "description": "Microsoft analyzer for Turkish." - }, - { - "name": "TrLucene", - "value": "tr.lucene", - "description": "Lucene analyzer for Turkish." - }, - { - "name": "UkMicrosoft", - "value": "uk.microsoft", - "description": "Microsoft analyzer for Ukrainian." - }, - { - "name": "UrMicrosoft", - "value": "ur.microsoft", - "description": "Microsoft analyzer for Urdu." - }, - { - "name": "ViMicrosoft", - "value": "vi.microsoft", - "description": "Microsoft analyzer for Vietnamese." - }, - { - "name": "StandardLucene", - "value": "standard.lucene", - "description": "Standard Lucene analyzer." - }, - { - "name": "StandardAsciiFoldingLucene", - "value": "standardasciifolding.lucene", - "description": "Standard ASCII Folding Lucene analyzer. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers" - }, - { - "name": "Keyword", - "value": "keyword", - "description": "Treats the entire content of a field as a single token. This is useful for data\nlike zip codes, ids, and some product names. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html" - }, - { - "name": "Pattern", - "value": "pattern", - "description": "Flexibly separates text into terms via a regular expression pattern. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" - }, - { - "name": "Simple", - "value": "simple", - "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html" - }, - { - "name": "Stop", - "value": "stop", - "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" - }, - { - "name": "Whitespace", - "value": "whitespace", - "description": "An analyzer that uses the whitespace tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html" - } - ] - } - }, - "LexicalTokenizer": { - "type": "object", - "description": "Base type for tokenizers.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types." - }, - "name": { - "type": "string", - "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes\nor underscores, can only start and end with alphanumeric characters, and is\nlimited to 128 characters." - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type", - "name" - ] - }, - "LexicalTokenizerName": { - "type": "string", - "description": "Defines the names of all tokenizers supported by the search engine.", - "enum": [ - "classic", - "edgeNGram", - "keyword_v2", - "letter", - "lowercase", - "microsoft_language_tokenizer", - "microsoft_language_stemming_tokenizer", - "nGram", - "path_hierarchy_v2", - "pattern", - "standard_v2", - "uax_url_email", - "whitespace" - ], - "x-ms-enum": { - "name": "LexicalTokenizerName", - "modelAsString": true, - "values": [ - { - "name": "Classic", - "value": "classic", - "description": "Grammar-based tokenizer that is suitable for processing most European-language\ndocuments. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" - }, - { - "name": "EdgeNGram", - "value": "edgeNGram", - "description": "Tokenizes the input from an edge into n-grams of the given size(s). See\nhttps://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" - }, - { - "name": "Keyword", - "value": "keyword_v2", - "description": "Emits the entire input as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" - }, - { - "name": "Letter", - "value": "letter", - "description": "Divides text at non-letters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" - }, - { - "name": "Lowercase", - "value": "lowercase", - "description": "Divides text at non-letters and converts them to lower case. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" - }, - { - "name": "MicrosoftLanguageTokenizer", - "value": "microsoft_language_tokenizer", - "description": "Divides text using language-specific rules." - }, - { - "name": "MicrosoftLanguageStemmingTokenizer", - "value": "microsoft_language_stemming_tokenizer", - "description": "Divides text using language-specific rules and reduces words to their base\nforms." - }, - { - "name": "NGram", - "value": "nGram", - "description": "Tokenizes the input into n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" - }, - { - "name": "PathHierarchy", - "value": "path_hierarchy_v2", - "description": "Tokenizer for path-like hierarchies. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" - }, - { - "name": "Pattern", - "value": "pattern", - "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" - }, - { - "name": "Standard", - "value": "standard_v2", - "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter\nand stop filter. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" - }, - { - "name": "UaxUrlEmail", - "value": "uax_url_email", - "description": "Tokenizes urls and emails as one token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" - }, - { - "name": "Whitespace", - "value": "whitespace", - "description": "Divides text at whitespace. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" - } - ] - } - }, - "LimitTokenFilter": { - "type": "object", - "description": "Limits the number of tokens while indexing. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "maxTokenCount": { - "type": "integer", - "format": "int32", - "description": "The maximum number of tokens to produce. Default is 1.", - "default": 1 - }, - "consumeAllTokens": { - "type": "boolean", - "description": "A value indicating whether all tokens from the input must be consumed even if\nmaxTokenCount is reached. Default is false." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter" - }, - "ListDataSourcesResult": { - "type": "object", - "description": "Response from a List Datasources request. If successful, it includes the full\ndefinitions of all datasources.", - "properties": { - "value": { - "type": "array", - "description": "The datasources in the Search service.", - "items": { - "$ref": "#/definitions/SearchIndexerDataSource" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "ListIndexersResult": { - "type": "object", - "description": "Response from a List Indexers request. If successful, it includes the full\ndefinitions of all indexers.", - "properties": { - "value": { - "type": "array", - "description": "The indexers in the Search service.", - "items": { - "$ref": "#/definitions/SearchIndexer" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "ListIndexesResult": { - "type": "object", - "description": "Response from a List Indexes request. If successful, it includes the full\ndefinitions of all indexes.", - "properties": { - "value": { - "type": "array", - "description": "The indexes in the Search service.", - "items": { - "$ref": "#/definitions/SearchIndex" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "ListSkillsetsResult": { - "type": "object", - "description": "Response from a list skillset request. If successful, it includes the full\ndefinitions of all skillsets.", - "properties": { - "value": { - "type": "array", - "description": "The skillsets defined in the Search service.", - "items": { - "$ref": "#/definitions/SearchIndexerSkillset" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "ListSynonymMapsResult": { - "type": "object", - "description": "Response from a List SynonymMaps request. If successful, it includes the full\ndefinitions of all synonym maps.", - "properties": { - "value": { - "type": "array", - "description": "The synonym maps in the Search service.", - "items": { - "$ref": "#/definitions/SynonymMap" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "value" - ] - }, - "LuceneStandardAnalyzer": { - "type": "object", - "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase\nfilter and stop filter.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 255, - "maximum": 300 - }, - "stopwords": { - "type": "array", - "description": "A list of stopwords.", - "items": { - "type": "string" - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalAnalyzer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer" - }, - "LuceneStandardTokenizer": { - "type": "object", - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split.", - "default": 255 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer" - }, - "LuceneStandardTokenizerV2": { - "type": "object", - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 255, - "maximum": 300 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2" - }, - "MagnitudeScoringFunction": { - "type": "object", - "description": "Defines a function that boosts scores based on the magnitude of a numeric field.", - "properties": { - "magnitude": { - "$ref": "#/definitions/MagnitudeScoringParameters", - "description": "Parameter values for the magnitude scoring function." - } - }, - "required": [ - "magnitude" - ], - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "x-ms-discriminator-value": "magnitude" - }, - "MagnitudeScoringParameters": { - "type": "object", - "description": "Provides parameter values to a magnitude scoring function.", - "properties": { - "boostingRangeStart": { - "type": "number", - "format": "double", - "description": "The field value at which boosting starts." - }, - "boostingRangeEnd": { - "type": "number", - "format": "double", - "description": "The field value at which boosting ends." - }, - "constantBoostBeyondRange": { - "type": "boolean", - "description": "A value indicating whether to apply a constant boost for field values beyond\nthe range end value; default is false." - } - }, - "required": [ - "boostingRangeStart", - "boostingRangeEnd" - ] - }, - "MappingCharFilter": { - "type": "object", - "description": "A character filter that applies mappings defined with the mappings option.\nMatching is greedy (longest pattern matching at a given point wins).\nReplacement is allowed to be the empty string. This character filter is\nimplemented using Apache Lucene.", - "properties": { - "mappings": { - "type": "array", - "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the\ncharacter \"a\" will be replaced with character \"b\").", - "items": { - "type": "string" - } - } - }, - "required": [ - "mappings" - ], - "allOf": [ - { - "$ref": "#/definitions/CharFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter" - }, - "MergeSkill": { - "type": "object", - "description": "A skill for merging two or more strings into a single unified string, with an\noptional user-defined delimiter separating each component part.", - "properties": { - "insertPreTag": { - "type": "string", - "description": "The tag indicates the start of the merged text. By default, the tag is an empty\nspace.", - "default": " " - }, - "insertPostTag": { - "type": "string", - "description": "The tag indicates the end of the merged text. By default, the tag is an empty\nspace.", - "default": " " - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill" - }, - "MicrosoftLanguageStemmingTokenizer": { - "type": "object", - "description": "Divides text using language-specific rules and reduces words to their base\nforms.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", - "default": 255, - "maximum": 300 - }, - "isSearchTokenizer": { - "type": "boolean", - "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." - }, - "language": { - "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", - "description": "The language to use. The default is English." - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer" - }, - "MicrosoftLanguageTokenizer": { - "type": "object", - "description": "Divides text using language-specific rules.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Tokens longer than the maximum length are split.\nMaximum token length that can be used is 300 characters. Tokens longer than 300\ncharacters are first split into tokens of length 300 and then each of those\ntokens is split based on the max token length set. Default is 255.", - "default": 255, - "maximum": 300 - }, - "isSearchTokenizer": { - "type": "boolean", - "description": "A value indicating how the tokenizer is used. Set to true if used as the search\ntokenizer, set to false if used as the indexing tokenizer. Default is false." - }, - "language": { - "$ref": "#/definitions/MicrosoftTokenizerLanguage", - "description": "The language to use. The default is English." - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer" - }, - "MicrosoftStemmingTokenizerLanguage": { - "type": "string", - "description": "Lists the languages supported by the Microsoft language stemming tokenizer.", - "enum": [ - "arabic", - "bangla", - "bulgarian", - "catalan", - "croatian", - "czech", - "danish", - "dutch", - "english", - "estonian", - "finnish", - "french", - "german", - "greek", - "gujarati", - "hebrew", - "hindi", - "hungarian", - "icelandic", - "indonesian", - "italian", - "kannada", - "latvian", - "lithuanian", - "malay", - "malayalam", - "marathi", - "norwegianBokmaal", - "polish", - "portuguese", - "portugueseBrazilian", - "punjabi", - "romanian", - "russian", - "serbianCyrillic", - "serbianLatin", - "slovak", - "slovenian", - "spanish", - "swedish", - "tamil", - "telugu", - "turkish", - "ukrainian", - "urdu" - ], - "x-ms-enum": { - "name": "MicrosoftStemmingTokenizerLanguage", - "modelAsString": true, - "values": [ - { - "name": "Arabic", - "value": "arabic", - "description": "Selects the Microsoft stemming tokenizer for Arabic." - }, - { - "name": "Bangla", - "value": "bangla", - "description": "Selects the Microsoft stemming tokenizer for Bangla." - }, - { - "name": "Bulgarian", - "value": "bulgarian", - "description": "Selects the Microsoft stemming tokenizer for Bulgarian." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the Microsoft stemming tokenizer for Catalan." - }, - { - "name": "Croatian", - "value": "croatian", - "description": "Selects the Microsoft stemming tokenizer for Croatian." - }, - { - "name": "Czech", - "value": "czech", - "description": "Selects the Microsoft stemming tokenizer for Czech." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the Microsoft stemming tokenizer for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the Microsoft stemming tokenizer for Dutch." - }, - { - "name": "English", - "value": "english", - "description": "Selects the Microsoft stemming tokenizer for English." - }, - { - "name": "Estonian", - "value": "estonian", - "description": "Selects the Microsoft stemming tokenizer for Estonian." - }, - { - "name": "Finnish", - "value": "finnish", - "description": "Selects the Microsoft stemming tokenizer for Finnish." - }, - { - "name": "French", - "value": "french", - "description": "Selects the Microsoft stemming tokenizer for French." - }, - { - "name": "German", - "value": "german", - "description": "Selects the Microsoft stemming tokenizer for German." - }, - { - "name": "Greek", - "value": "greek", - "description": "Selects the Microsoft stemming tokenizer for Greek." - }, - { - "name": "Gujarati", - "value": "gujarati", - "description": "Selects the Microsoft stemming tokenizer for Gujarati." - }, - { - "name": "Hebrew", - "value": "hebrew", - "description": "Selects the Microsoft stemming tokenizer for Hebrew." - }, - { - "name": "Hindi", - "value": "hindi", - "description": "Selects the Microsoft stemming tokenizer for Hindi." - }, - { - "name": "Hungarian", - "value": "hungarian", - "description": "Selects the Microsoft stemming tokenizer for Hungarian." - }, - { - "name": "Icelandic", - "value": "icelandic", - "description": "Selects the Microsoft stemming tokenizer for Icelandic." - }, - { - "name": "Indonesian", - "value": "indonesian", - "description": "Selects the Microsoft stemming tokenizer for Indonesian." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the Microsoft stemming tokenizer for Italian." - }, - { - "name": "Kannada", - "value": "kannada", - "description": "Selects the Microsoft stemming tokenizer for Kannada." - }, - { - "name": "Latvian", - "value": "latvian", - "description": "Selects the Microsoft stemming tokenizer for Latvian." - }, - { - "name": "Lithuanian", - "value": "lithuanian", - "description": "Selects the Microsoft stemming tokenizer for Lithuanian." - }, - { - "name": "Malay", - "value": "malay", - "description": "Selects the Microsoft stemming tokenizer for Malay." - }, - { - "name": "Malayalam", - "value": "malayalam", - "description": "Selects the Microsoft stemming tokenizer for Malayalam." - }, - { - "name": "Marathi", - "value": "marathi", - "description": "Selects the Microsoft stemming tokenizer for Marathi." - }, - { - "name": "NorwegianBokmaal", - "value": "norwegianBokmaal", - "description": "Selects the Microsoft stemming tokenizer for Norwegian (Bokmål)." - }, - { - "name": "Polish", - "value": "polish", - "description": "Selects the Microsoft stemming tokenizer for Polish." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the Microsoft stemming tokenizer for Portuguese." - }, - { - "name": "PortugueseBrazilian", - "value": "portugueseBrazilian", - "description": "Selects the Microsoft stemming tokenizer for Portuguese (Brazil)." - }, - { - "name": "Punjabi", - "value": "punjabi", - "description": "Selects the Microsoft stemming tokenizer for Punjabi." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the Microsoft stemming tokenizer for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the Microsoft stemming tokenizer for Russian." - }, - { - "name": "SerbianCyrillic", - "value": "serbianCyrillic", - "description": "Selects the Microsoft stemming tokenizer for Serbian (Cyrillic)." - }, - { - "name": "SerbianLatin", - "value": "serbianLatin", - "description": "Selects the Microsoft stemming tokenizer for Serbian (Latin)." - }, - { - "name": "Slovak", - "value": "slovak", - "description": "Selects the Microsoft stemming tokenizer for Slovak." - }, - { - "name": "Slovenian", - "value": "slovenian", - "description": "Selects the Microsoft stemming tokenizer for Slovenian." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the Microsoft stemming tokenizer for Spanish." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the Microsoft stemming tokenizer for Swedish." - }, - { - "name": "Tamil", - "value": "tamil", - "description": "Selects the Microsoft stemming tokenizer for Tamil." - }, - { - "name": "Telugu", - "value": "telugu", - "description": "Selects the Microsoft stemming tokenizer for Telugu." - }, - { - "name": "Turkish", - "value": "turkish", - "description": "Selects the Microsoft stemming tokenizer for Turkish." - }, - { - "name": "Ukrainian", - "value": "ukrainian", - "description": "Selects the Microsoft stemming tokenizer for Ukrainian." - }, - { - "name": "Urdu", - "value": "urdu", - "description": "Selects the Microsoft stemming tokenizer for Urdu." - } - ] - } - }, - "MicrosoftTokenizerLanguage": { - "type": "string", - "description": "Lists the languages supported by the Microsoft language tokenizer.", - "enum": [ - "bangla", - "bulgarian", - "catalan", - "chineseSimplified", - "chineseTraditional", - "croatian", - "czech", - "danish", - "dutch", - "english", - "french", - "german", - "greek", - "gujarati", - "hindi", - "icelandic", - "indonesian", - "italian", - "japanese", - "kannada", - "korean", - "malay", - "malayalam", - "marathi", - "norwegianBokmaal", - "polish", - "portuguese", - "portugueseBrazilian", - "punjabi", - "romanian", - "russian", - "serbianCyrillic", - "serbianLatin", - "slovenian", - "spanish", - "swedish", - "tamil", - "telugu", - "thai", - "ukrainian", - "urdu", - "vietnamese" - ], - "x-ms-enum": { - "name": "MicrosoftTokenizerLanguage", - "modelAsString": true, - "values": [ - { - "name": "Bangla", - "value": "bangla", - "description": "Selects the Microsoft tokenizer for Bangla." - }, - { - "name": "Bulgarian", - "value": "bulgarian", - "description": "Selects the Microsoft tokenizer for Bulgarian." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the Microsoft tokenizer for Catalan." - }, - { - "name": "ChineseSimplified", - "value": "chineseSimplified", - "description": "Selects the Microsoft tokenizer for Chinese (Simplified)." - }, - { - "name": "ChineseTraditional", - "value": "chineseTraditional", - "description": "Selects the Microsoft tokenizer for Chinese (Traditional)." - }, - { - "name": "Croatian", - "value": "croatian", - "description": "Selects the Microsoft tokenizer for Croatian." - }, - { - "name": "Czech", - "value": "czech", - "description": "Selects the Microsoft tokenizer for Czech." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the Microsoft tokenizer for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the Microsoft tokenizer for Dutch." - }, - { - "name": "English", - "value": "english", - "description": "Selects the Microsoft tokenizer for English." - }, - { - "name": "French", - "value": "french", - "description": "Selects the Microsoft tokenizer for French." - }, - { - "name": "German", - "value": "german", - "description": "Selects the Microsoft tokenizer for German." - }, - { - "name": "Greek", - "value": "greek", - "description": "Selects the Microsoft tokenizer for Greek." - }, - { - "name": "Gujarati", - "value": "gujarati", - "description": "Selects the Microsoft tokenizer for Gujarati." - }, - { - "name": "Hindi", - "value": "hindi", - "description": "Selects the Microsoft tokenizer for Hindi." - }, - { - "name": "Icelandic", - "value": "icelandic", - "description": "Selects the Microsoft tokenizer for Icelandic." - }, - { - "name": "Indonesian", - "value": "indonesian", - "description": "Selects the Microsoft tokenizer for Indonesian." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the Microsoft tokenizer for Italian." - }, - { - "name": "Japanese", - "value": "japanese", - "description": "Selects the Microsoft tokenizer for Japanese." - }, - { - "name": "Kannada", - "value": "kannada", - "description": "Selects the Microsoft tokenizer for Kannada." - }, - { - "name": "Korean", - "value": "korean", - "description": "Selects the Microsoft tokenizer for Korean." - }, - { - "name": "Malay", - "value": "malay", - "description": "Selects the Microsoft tokenizer for Malay." - }, - { - "name": "Malayalam", - "value": "malayalam", - "description": "Selects the Microsoft tokenizer for Malayalam." - }, - { - "name": "Marathi", - "value": "marathi", - "description": "Selects the Microsoft tokenizer for Marathi." - }, - { - "name": "NorwegianBokmaal", - "value": "norwegianBokmaal", - "description": "Selects the Microsoft tokenizer for Norwegian (Bokmål)." - }, - { - "name": "Polish", - "value": "polish", - "description": "Selects the Microsoft tokenizer for Polish." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the Microsoft tokenizer for Portuguese." - }, - { - "name": "PortugueseBrazilian", - "value": "portugueseBrazilian", - "description": "Selects the Microsoft tokenizer for Portuguese (Brazil)." - }, - { - "name": "Punjabi", - "value": "punjabi", - "description": "Selects the Microsoft tokenizer for Punjabi." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the Microsoft tokenizer for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the Microsoft tokenizer for Russian." - }, - { - "name": "SerbianCyrillic", - "value": "serbianCyrillic", - "description": "Selects the Microsoft tokenizer for Serbian (Cyrillic)." - }, - { - "name": "SerbianLatin", - "value": "serbianLatin", - "description": "Selects the Microsoft tokenizer for Serbian (Latin)." - }, - { - "name": "Slovenian", - "value": "slovenian", - "description": "Selects the Microsoft tokenizer for Slovenian." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the Microsoft tokenizer for Spanish." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the Microsoft tokenizer for Swedish." - }, - { - "name": "Tamil", - "value": "tamil", - "description": "Selects the Microsoft tokenizer for Tamil." - }, - { - "name": "Telugu", - "value": "telugu", - "description": "Selects the Microsoft tokenizer for Telugu." - }, - { - "name": "Thai", - "value": "thai", - "description": "Selects the Microsoft tokenizer for Thai." - }, - { - "name": "Ukrainian", - "value": "ukrainian", - "description": "Selects the Microsoft tokenizer for Ukrainian." - }, - { - "name": "Urdu", - "value": "urdu", - "description": "Selects the Microsoft tokenizer for Urdu." - }, - { - "name": "Vietnamese", - "value": "vietnamese", - "description": "Selects the Microsoft tokenizer for Vietnamese." - } - ] - } - }, - "NGramTokenFilter": { - "type": "object", - "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", - "default": 1 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2.", - "default": 2 - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter" - }, - "NGramTokenFilterV2": { - "type": "object", - "description": "Generates n-grams of the given size(s). This token filter is implemented using\nApache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", - "default": 1, - "maximum": 300 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2. Maximum is 300.", - "default": 2, - "maximum": 300 - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2" - }, - "NGramTokenizer": { - "type": "object", - "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is\nimplemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the\nvalue of maxGram.", - "default": 1, - "maximum": 300 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2. Maximum is 300.", - "default": 2, - "maximum": 300 - }, - "tokenChars": { - "type": "array", - "description": "Character classes to keep in the tokens.", - "items": { - "$ref": "#/definitions/TokenCharacterKind" - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer" - }, - "OcrLineEnding": { - "type": "string", - "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\".", - "enum": [ - "space", - "carriageReturn", - "lineFeed", - "carriageReturnLineFeed" - ], - "x-ms-enum": { - "name": "OcrLineEnding", - "modelAsString": true, - "values": [ - { - "name": "Space", - "value": "space", - "description": "Lines are separated by a single space character." - }, - { - "name": "CarriageReturn", - "value": "carriageReturn", - "description": "Lines are separated by a carriage return ('\\r') character." - }, - { - "name": "LineFeed", - "value": "lineFeed", - "description": "Lines are separated by a single line feed ('\\n') character." - }, - { - "name": "CarriageReturnLineFeed", - "value": "carriageReturnLineFeed", - "description": "Lines are separated by a carriage return and a line feed ('\\r\\n') character." - } - ] - } - }, - "OcrSkill": { - "type": "object", - "description": "A skill that extracts text from image files.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/OcrSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "detectOrientation": { - "type": "boolean", - "description": "A value indicating to turn orientation detection on or not. Default is false." - }, - "lineEnding": { - "$ref": "#/definitions/OcrLineEnding", - "description": "Defines the sequence of characters to use between the lines of text recognized\nby the OCR skill. The default value is \"space\"." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill" - }, - "OcrSkillLanguage": { - "type": "string", - "description": "The language codes supported for input by OcrSkill.", - "enum": [ - "af", - "sq", - "anp", - "ar", - "ast", - "awa", - "az", - "bfy", - "eu", - "be", - "be-cyrl", - "be-latn", - "bho", - "bi", - "brx", - "bs", - "bra", - "br", - "bg", - "bns", - "bua", - "ca", - "ceb", - "rab", - "ch", - "hne", - "zh-Hans", - "zh-Hant", - "kw", - "co", - "crh", - "hr", - "cs", - "da", - "prs", - "dhi", - "doi", - "nl", - "en", - "myv", - "et", - "fo", - "fj", - "fil", - "fi", - "fr", - "fur", - "gag", - "gl", - "de", - "gil", - "gon", - "el", - "kl", - "gvr", - "ht", - "hlb", - "hni", - "bgc", - "haw", - "hi", - "mww", - "hoc", - "hu", - "is", - "smn", - "id", - "ia", - "iu", - "ga", - "it", - "ja", - "Jns", - "jv", - "kea", - "kac", - "xnr", - "krc", - "kaa-cyrl", - "kaa", - "csb", - "kk-cyrl", - "kk-latn", - "klr", - "kha", - "quc", - "ko", - "kfq", - "kpy", - "kos", - "kum", - "ku-arab", - "ku-latn", - "kru", - "ky", - "lkt", - "la", - "lt", - "dsb", - "smj", - "lb", - "bfz", - "ms", - "mt", - "kmj", - "gv", - "mi", - "mr", - "mn", - "cnr-cyrl", - "cnr-latn", - "nap", - "ne", - "niu", - "nog", - "sme", - "nb", - "no", - "oc", - "os", - "ps", - "fa", - "pl", - "pt", - "pa", - "ksh", - "ro", - "rm", - "ru", - "sck", - "sm", - "sa", - "sat", - "sco", - "gd", - "sr", - "sr-Cyrl", - "sr-Latn", - "xsr", - "srx", - "sms", - "sk", - "sl", - "so", - "sma", - "es", - "sw", - "sv", - "tg", - "tt", - "tet", - "thf", - "to", - "tr", - "tk", - "tyv", - "hsb", - "ur", - "ug", - "uz-arab", - "uz-cyrl", - "uz", - "vo", - "wae", - "cy", - "fy", - "yua", - "za", - "zu", - "unk" - ], - "x-ms-enum": { - "name": "OcrSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "af", - "value": "af", - "description": "Afrikaans" - }, - { - "name": "sq", - "value": "sq", - "description": "Albanian" - }, - { - "name": "anp", - "value": "anp", - "description": "Angika (Devanagiri)" - }, - { - "name": "ar", - "value": "ar", - "description": "Arabic" - }, - { - "name": "ast", - "value": "ast", - "description": "Asturian" - }, - { - "name": "awa", - "value": "awa", - "description": "Awadhi-Hindi (Devanagiri)" - }, - { - "name": "az", - "value": "az", - "description": "Azerbaijani (Latin)" - }, - { - "name": "bfy", - "value": "bfy", - "description": "Bagheli" - }, - { - "name": "eu", - "value": "eu", - "description": "Basque" - }, - { - "name": "be", - "value": "be", - "description": "Belarusian (Cyrillic and Latin)" - }, - { - "name": "be-cyrl", - "value": "be-cyrl", - "description": "Belarusian (Cyrillic)" - }, - { - "name": "be-latn", - "value": "be-latn", - "description": "Belarusian (Latin)" - }, - { - "name": "bho", - "value": "bho", - "description": "Bhojpuri-Hindi (Devanagiri)" - }, - { - "name": "bi", - "value": "bi", - "description": "Bislama" - }, - { - "name": "brx", - "value": "brx", - "description": "Bodo (Devanagiri)" - }, - { - "name": "bs", - "value": "bs", - "description": "Bosnian Latin" - }, - { - "name": "bra", - "value": "bra", - "description": "Brajbha" - }, - { - "name": "br", - "value": "br", - "description": "Breton" - }, - { - "name": "bg", - "value": "bg", - "description": "Bulgarian" - }, - { - "name": "bns", - "value": "bns", - "description": "Bundeli" - }, - { - "name": "bua", - "value": "bua", - "description": "Buryat (Cyrillic)" - }, - { - "name": "ca", - "value": "ca", - "description": "Catalan" - }, - { - "name": "ceb", - "value": "ceb", - "description": "Cebuano" - }, - { - "name": "rab", - "value": "rab", - "description": "Chamling" - }, - { - "name": "ch", - "value": "ch", - "description": "Chamorro" - }, - { - "name": "hne", - "value": "hne", - "description": "Chhattisgarhi (Devanagiri)" - }, - { - "name": "zh-Hans", - "value": "zh-Hans", - "description": "Chinese Simplified" - }, - { - "name": "zh-Hant", - "value": "zh-Hant", - "description": "Chinese Traditional" - }, - { - "name": "kw", - "value": "kw", - "description": "Cornish" - }, - { - "name": "co", - "value": "co", - "description": "Corsican" - }, - { - "name": "crh", - "value": "crh", - "description": "Crimean Tatar (Latin)" - }, - { - "name": "hr", - "value": "hr", - "description": "Croatian" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "prs", - "value": "prs", - "description": "Dari" - }, - { - "name": "dhi", - "value": "dhi", - "description": "Dhimal (Devanagiri)" - }, - { - "name": "doi", - "value": "doi", - "description": "Dogri (Devanagiri)" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "myv", - "value": "myv", - "description": "Erzya (Cyrillic)" - }, - { - "name": "et", - "value": "et", - "description": "Estonian" - }, - { - "name": "fo", - "value": "fo", - "description": "Faroese" - }, - { - "name": "fj", - "value": "fj", - "description": "Fijian" - }, - { - "name": "fil", - "value": "fil", - "description": "Filipino" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "fur", - "value": "fur", - "description": "Frulian" - }, - { - "name": "gag", - "value": "gag", - "description": "Gagauz (Latin)" - }, - { - "name": "gl", - "value": "gl", - "description": "Galician" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "gil", - "value": "gil", - "description": "Gilbertese" - }, - { - "name": "gon", - "value": "gon", - "description": "Gondi (Devanagiri)" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "kl", - "value": "kl", - "description": "Greenlandic" - }, - { - "name": "gvr", - "value": "gvr", - "description": "Gurung (Devanagiri)" - }, - { - "name": "ht", - "value": "ht", - "description": "Haitian Creole" - }, - { - "name": "hlb", - "value": "hlb", - "description": "Halbi (Devanagiri)" - }, - { - "name": "hni", - "value": "hni", - "description": "Hani" - }, - { - "name": "bgc", - "value": "bgc", - "description": "Haryanvi" - }, - { - "name": "haw", - "value": "haw", - "description": "Hawaiian" - }, - { - "name": "hi", - "value": "hi", - "description": "Hindi" - }, - { - "name": "mww", - "value": "mww", - "description": "Hmong Daw (Latin)" - }, - { - "name": "hoc", - "value": "hoc", - "description": "Ho (Devanagiri)" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "is", - "value": "is", - "description": "Icelandic" - }, - { - "name": "smn", - "value": "smn", - "description": "Inari Sami" - }, - { - "name": "id", - "value": "id", - "description": "Indonesian" - }, - { - "name": "ia", - "value": "ia", - "description": "Interlingua" - }, - { - "name": "iu", - "value": "iu", - "description": "Inuktitut (Latin)" - }, - { - "name": "ga", - "value": "ga", - "description": "Irish" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "Jns", - "value": "Jns", - "description": "Jaunsari (Devanagiri)" - }, - { - "name": "jv", - "value": "jv", - "description": "Javanese" - }, - { - "name": "kea", - "value": "kea", - "description": "Kabuverdianu" - }, - { - "name": "kac", - "value": "kac", - "description": "Kachin (Latin)" - }, - { - "name": "xnr", - "value": "xnr", - "description": "Kangri (Devanagiri)" - }, - { - "name": "krc", - "value": "krc", - "description": "Karachay-Balkar" - }, - { - "name": "kaa-cyrl", - "value": "kaa-cyrl", - "description": "Kara-Kalpak (Cyrillic)" - }, - { - "name": "kaa", - "value": "kaa", - "description": "Kara-Kalpak (Latin)" - }, - { - "name": "csb", - "value": "csb", - "description": "Kashubian" - }, - { - "name": "kk-cyrl", - "value": "kk-cyrl", - "description": "Kazakh (Cyrillic)" - }, - { - "name": "kk-latn", - "value": "kk-latn", - "description": "Kazakh (Latin)" - }, - { - "name": "klr", - "value": "klr", - "description": "Khaling" - }, - { - "name": "kha", - "value": "kha", - "description": "Khasi" - }, - { - "name": "quc", - "value": "quc", - "description": "K'iche'" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "kfq", - "value": "kfq", - "description": "Korku" - }, - { - "name": "kpy", - "value": "kpy", - "description": "Koryak" - }, - { - "name": "kos", - "value": "kos", - "description": "Kosraean" - }, - { - "name": "kum", - "value": "kum", - "description": "Kumyk (Cyrillic)" - }, - { - "name": "ku-arab", - "value": "ku-arab", - "description": "Kurdish (Arabic)" - }, - { - "name": "ku-latn", - "value": "ku-latn", - "description": "Kurdish (Latin)" - }, - { - "name": "kru", - "value": "kru", - "description": "Kurukh (Devanagiri)" - }, - { - "name": "ky", - "value": "ky", - "description": "Kyrgyz (Cyrillic)" - }, - { - "name": "lkt", - "value": "lkt", - "description": "Lakota" - }, - { - "name": "la", - "value": "la", - "description": "Latin" - }, - { - "name": "lt", - "value": "lt", - "description": "Lithuanian" - }, - { - "name": "dsb", - "value": "dsb", - "description": "Lower Sorbian" - }, - { - "name": "smj", - "value": "smj", - "description": "Lule Sami" - }, - { - "name": "lb", - "value": "lb", - "description": "Luxembourgish" - }, - { - "name": "bfz", - "value": "bfz", - "description": "Mahasu Pahari (Devanagiri)" - }, - { - "name": "ms", - "value": "ms", - "description": "Malay (Latin)" - }, - { - "name": "mt", - "value": "mt", - "description": "Maltese" - }, - { - "name": "kmj", - "value": "kmj", - "description": "Malto (Devanagiri)" - }, - { - "name": "gv", - "value": "gv", - "description": "Manx" - }, - { - "name": "mi", - "value": "mi", - "description": "Maori" - }, - { - "name": "mr", - "value": "mr", - "description": "Marathi" - }, - { - "name": "mn", - "value": "mn", - "description": "Mongolian (Cyrillic)" - }, - { - "name": "cnr-cyrl", - "value": "cnr-cyrl", - "description": "Montenegrin (Cyrillic)" - }, - { - "name": "cnr-latn", - "value": "cnr-latn", - "description": "Montenegrin (Latin)" - }, - { - "name": "nap", - "value": "nap", - "description": "Neapolitan" - }, - { - "name": "ne", - "value": "ne", - "description": "Nepali" - }, - { - "name": "niu", - "value": "niu", - "description": "Niuean" - }, - { - "name": "nog", - "value": "nog", - "description": "Nogay" - }, - { - "name": "sme", - "value": "sme", - "description": "Northern Sami (Latin)" - }, - { - "name": "nb", - "value": "nb", - "description": "Norwegian" - }, - { - "name": "no", - "value": "no", - "description": "Norwegian" - }, - { - "name": "oc", - "value": "oc", - "description": "Occitan" - }, - { - "name": "os", - "value": "os", - "description": "Ossetic" - }, - { - "name": "ps", - "value": "ps", - "description": "Pashto" - }, - { - "name": "fa", - "value": "fa", - "description": "Persian" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese" - }, - { - "name": "pa", - "value": "pa", - "description": "Punjabi (Arabic)" - }, - { - "name": "ksh", - "value": "ksh", - "description": "Ripuarian" - }, - { - "name": "ro", - "value": "ro", - "description": "Romanian" - }, - { - "name": "rm", - "value": "rm", - "description": "Romansh" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "sck", - "value": "sck", - "description": "Sadri (Devanagiri)" - }, - { - "name": "sm", - "value": "sm", - "description": "Samoan (Latin)" - }, - { - "name": "sa", - "value": "sa", - "description": "Sanskrit (Devanagiri)" - }, - { - "name": "sat", - "value": "sat", - "description": "Santali (Devanagiri)" - }, - { - "name": "sco", - "value": "sco", - "description": "Scots" - }, - { - "name": "gd", - "value": "gd", - "description": "Scottish Gaelic" - }, - { - "name": "sr", - "value": "sr", - "description": "Serbian (Latin)" - }, - { - "name": "sr-Cyrl", - "value": "sr-Cyrl", - "description": "Serbian (Cyrillic)" - }, - { - "name": "sr-Latn", - "value": "sr-Latn", - "description": "Serbian (Latin)" - }, - { - "name": "xsr", - "value": "xsr", - "description": "Sherpa (Devanagiri)" - }, - { - "name": "srx", - "value": "srx", - "description": "Sirmauri (Devanagiri)" - }, - { - "name": "sms", - "value": "sms", - "description": "Skolt Sami" - }, - { - "name": "sk", - "value": "sk", - "description": "Slovak" - }, - { - "name": "sl", - "value": "sl", - "description": "Slovenian" - }, - { - "name": "so", - "value": "so", - "description": "Somali (Arabic)" - }, - { - "name": "sma", - "value": "sma", - "description": "Southern Sami" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sw", - "value": "sw", - "description": "Swahili (Latin)" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "tg", - "value": "tg", - "description": "Tajik (Cyrillic)" - }, - { - "name": "tt", - "value": "tt", - "description": "Tatar (Latin)" - }, - { - "name": "tet", - "value": "tet", - "description": "Tetum" - }, - { - "name": "thf", - "value": "thf", - "description": "Thangmi" - }, - { - "name": "to", - "value": "to", - "description": "Tongan" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - }, - { - "name": "tk", - "value": "tk", - "description": "Turkmen (Latin)" - }, - { - "name": "tyv", - "value": "tyv", - "description": "Tuvan" - }, - { - "name": "hsb", - "value": "hsb", - "description": "Upper Sorbian" - }, - { - "name": "ur", - "value": "ur", - "description": "Urdu" - }, - { - "name": "ug", - "value": "ug", - "description": "Uyghur (Arabic)" - }, - { - "name": "uz-arab", - "value": "uz-arab", - "description": "Uzbek (Arabic)" - }, - { - "name": "uz-cyrl", - "value": "uz-cyrl", - "description": "Uzbek (Cyrillic)" - }, - { - "name": "uz", - "value": "uz", - "description": "Uzbek (Latin)" - }, - { - "name": "vo", - "value": "vo", - "description": "Volapük" - }, - { - "name": "wae", - "value": "wae", - "description": "Walser" - }, - { - "name": "cy", - "value": "cy", - "description": "Welsh" - }, - { - "name": "fy", - "value": "fy", - "description": "Western Frisian" - }, - { - "name": "yua", - "value": "yua", - "description": "Yucatec Maya" - }, - { - "name": "za", - "value": "za", - "description": "Zhuang" - }, - { - "name": "zu", - "value": "zu", - "description": "Zulu" - }, - { - "name": "unk", - "value": "unk", - "description": "Unknown (All)" - } - ] - } - }, - "OutputFieldMappingEntry": { - "type": "object", - "description": "Output field mapping for a skill.", - "properties": { - "name": { - "type": "string", - "description": "The name of the output defined by the skill." - }, - "targetName": { - "type": "string", - "description": "The target name of the output. It is optional and default to name." - } - }, - "required": [ - "name" - ] - }, - "PIIDetectionSkill": { - "type": "object", - "description": "Using the Text Analytics API, extracts personal information from an input text\nand gives you the option of masking it.", - "properties": { - "defaultLanguageCode": { - "type": "string", - "description": "A value indicating which language code to use. Default is `en`." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "description": "A value between 0 and 1 that be used to only include entities whose confidence\nscore is greater than the value specified. If not set (default), or if\nexplicitly set to null, all entities will be included.", - "maximum": 1 - }, - "maskingMode": { - "$ref": "#/definitions/PIIDetectionSkillMaskingMode", - "description": "A parameter that provides various ways to mask the personal information\ndetected in the input text. Default is 'none'." - }, - "maskingCharacter": { - "type": "string", - "description": "The character used to mask the text if the maskingMode parameter is set to\nreplace. Default is '*'.", - "maxLength": 1 - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - }, - "piiCategories": { - "type": "array", - "description": "A list of PII entity categories that should be extracted and masked.", - "items": { - "type": "string" - } - }, - "domain": { - "type": "string", - "description": "If specified, will set the PII domain to include only a subset of the entity\ncategories. Possible values include: 'phi', 'none'. Default is 'none'." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.PIIDetectionSkill" - }, - "PIIDetectionSkillMaskingMode": { - "type": "string", - "description": "A string indicating what maskingMode to use to mask the personal information\ndetected in the input text.", - "enum": [ - "none", - "replace" - ], - "x-ms-enum": { - "name": "PIIDetectionSkillMaskingMode", - "modelAsString": true, - "values": [ - { - "name": "None", - "value": "none", - "description": "No masking occurs and the maskedText output will not be returned." - }, - { - "name": "Replace", - "value": "replace", - "description": "Replaces the detected entities with the character given in the maskingCharacter\nparameter. The character will be repeated to the length of the detected entity\nso that the offsets will correctly correspond to both the input text as well as\nthe output maskedText." - } - ] - } - }, - "PathHierarchyTokenizerV2": { - "type": "object", - "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache\nLucene.", - "properties": { - "delimiter": { - "type": "string", - "description": "The delimiter character to use. Default is \"/\".", - "default": "/" - }, - "replacement": { - "type": "string", - "description": "A value that, if set, replaces the delimiter character. Default is \"/\".", - "default": "/" - }, - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default and maximum is 300.", - "default": 300, - "maximum": 300 - }, - "reverse": { - "type": "boolean", - "description": "A value indicating whether to generate tokens in reverse order. Default is\nfalse." - }, - "skip": { - "type": "integer", - "format": "int32", - "description": "The number of initial tokens to skip. Default is 0." - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2" - }, - "PatternAnalyzer": { - "type": "object", - "description": "Flexibly separates text into terms via a regular expression pattern. This\nanalyzer is implemented using Apache Lucene.", - "properties": { - "lowercase": { - "type": "boolean", - "description": "A value indicating whether terms should be lower-cased. Default is true.", - "default": true - }, - "pattern": { - "type": "string", - "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", - "default": "\\W+" - }, - "flags": { - "$ref": "#/definitions/RegexFlags", - "description": "Regular expression flags." - }, - "stopwords": { - "type": "array", - "description": "A list of stopwords.", - "items": { - "type": "string" - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalAnalyzer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer" - }, - "PatternCaptureTokenFilter": { - "type": "object", - "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one\nor more patterns. This token filter is implemented using Apache Lucene.", - "properties": { - "patterns": { - "type": "array", - "description": "A list of patterns to match against each token.", - "items": { - "type": "string" - } - }, - "preserveOriginal": { - "type": "boolean", - "description": "A value indicating whether to return the original token even if one of the\npatterns matches. Default is true.", - "default": true - } - }, - "required": [ - "patterns" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter" - }, - "PatternReplaceCharFilter": { - "type": "object", - "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This character filter is implemented using\nApache Lucene.", - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern." - }, - "replacement": { - "type": "string", - "description": "The replacement text." - } - }, - "required": [ - "pattern", - "replacement" - ], - "allOf": [ - { - "$ref": "#/definitions/CharFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter" - }, - "PatternReplaceTokenFilter": { - "type": "object", - "description": "A character filter that replaces characters in the input string. It uses a\nregular expression to identify character sequences to preserve and a\nreplacement pattern to identify characters to replace. For example, given the\ninput text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the\nresult would be \"aa#bb aa#bb\". This token filter is implemented using Apache\nLucene.", - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern." - }, - "replacement": { - "type": "string", - "description": "The replacement text." - } - }, - "required": [ - "pattern", - "replacement" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter" - }, - "PatternTokenizer": { - "type": "object", - "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This\ntokenizer is implemented using Apache Lucene.", - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern to match token separators. Default is an\nexpression that matches one or more non-word characters.", - "default": "\\W+" - }, - "flags": { - "$ref": "#/definitions/RegexFlags", - "description": "Regular expression flags." - }, - "group": { - "type": "integer", - "format": "int32", - "description": "The zero-based ordinal of the matching group in the regular expression pattern\nto extract into tokens. Use -1 if you want to use the entire pattern to split\nthe input into tokens, irrespective of matching groups. Default is -1.", - "default": -1 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer" - }, - "PhoneticEncoder": { - "type": "string", - "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter.", - "enum": [ - "metaphone", - "doubleMetaphone", - "soundex", - "refinedSoundex", - "caverphone1", - "caverphone2", - "cologne", - "nysiis", - "koelnerPhonetik", - "haasePhonetik", - "beiderMorse" - ], - "x-ms-enum": { - "name": "PhoneticEncoder", - "modelAsString": true, - "values": [ - { - "name": "Metaphone", - "value": "metaphone", - "description": "Encodes a token into a Metaphone value." - }, - { - "name": "DoubleMetaphone", - "value": "doubleMetaphone", - "description": "Encodes a token into a double metaphone value." - }, - { - "name": "Soundex", - "value": "soundex", - "description": "Encodes a token into a Soundex value." - }, - { - "name": "RefinedSoundex", - "value": "refinedSoundex", - "description": "Encodes a token into a Refined Soundex value." - }, - { - "name": "Caverphone1", - "value": "caverphone1", - "description": "Encodes a token into a Caverphone 1.0 value." - }, - { - "name": "Caverphone2", - "value": "caverphone2", - "description": "Encodes a token into a Caverphone 2.0 value." - }, - { - "name": "Cologne", - "value": "cologne", - "description": "Encodes a token into a Cologne Phonetic value." - }, - { - "name": "Nysiis", - "value": "nysiis", - "description": "Encodes a token into a NYSIIS value." - }, - { - "name": "KoelnerPhonetik", - "value": "koelnerPhonetik", - "description": "Encodes a token using the Kölner Phonetik algorithm." - }, - { - "name": "HaasePhonetik", - "value": "haasePhonetik", - "description": "Encodes a token using the Haase refinement of the Kölner Phonetik algorithm." - }, - { - "name": "BeiderMorse", - "value": "beiderMorse", - "description": "Encodes a token into a Beider-Morse value." - } - ] - } - }, - "PhoneticTokenFilter": { - "type": "object", - "description": "Create tokens for phonetic matches. This token filter is implemented using\nApache Lucene.", - "properties": { - "encoder": { - "$ref": "#/definitions/PhoneticEncoder", - "description": "The phonetic encoder to use. Default is \"metaphone\"." - }, - "replace": { - "type": "boolean", - "description": "A value indicating whether encoded tokens should replace original tokens. If\nfalse, encoded tokens are added as synonyms. Default is true.", - "default": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter" - }, - "RegexFlags": { - "type": "string", - "description": "Defines flags that can be combined to control how regular expressions are used\nin the pattern analyzer and pattern tokenizer.", - "enum": [ - "CANON_EQ", - "CASE_INSENSITIVE", - "COMMENTS", - "DOTALL", - "LITERAL", - "MULTILINE", - "UNICODE_CASE", - "UNIX_LINES" - ], - "x-ms-enum": { - "name": "RegexFlags", - "modelAsString": true, - "values": [ - { - "name": "CanonEq", - "value": "CANON_EQ", - "description": "Enables canonical equivalence." - }, - { - "name": "CaseInsensitive", - "value": "CASE_INSENSITIVE", - "description": "Enables case-insensitive matching." - }, - { - "name": "Comments", - "value": "COMMENTS", - "description": "Permits whitespace and comments in the pattern." - }, - { - "name": "DotAll", - "value": "DOTALL", - "description": "Enables dotall mode." - }, - { - "name": "Literal", - "value": "LITERAL", - "description": "Enables literal parsing of the pattern." - }, - { - "name": "Multiline", - "value": "MULTILINE", - "description": "Enables multiline mode." - }, - { - "name": "UnicodeCase", - "value": "UNICODE_CASE", - "description": "Enables Unicode-aware case folding." - }, - { - "name": "UnixLines", - "value": "UNIX_LINES", - "description": "Enables Unix lines mode." - } - ] - } - }, - "ResourceCounter": { - "type": "object", - "description": "Represents a resource's usage and quota.", - "properties": { - "usage": { - "type": "integer", - "format": "int64", - "description": "The resource usage amount." - }, - "quota": { - "type": "integer", - "format": "int64", - "description": "The resource amount quota." - } - }, - "required": [ - "usage" - ] - }, - "ScalarQuantizationCompression": { - "type": "object", - "description": "Contains configuration options specific to the scalar quantization compression\nmethod used during indexing and querying.", - "properties": { - "scalarQuantizationParameters": { - "$ref": "#/definitions/ScalarQuantizationParameters", - "description": "Contains the parameters specific to Scalar Quantization." - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchCompression" - } - ], - "x-ms-discriminator-value": "scalarQuantization" - }, - "ScalarQuantizationParameters": { - "type": "object", - "description": "Contains the parameters specific to Scalar Quantization.", - "properties": { - "quantizedDataType": { - "$ref": "#/definitions/VectorSearchCompressionTarget", - "description": "The quantized data type of compressed vector values." - } - } - }, - "ScoringFunction": { - "type": "object", - "description": "Base type for functions that can modify document scores during ranking.", - "properties": { - "fieldName": { - "type": "string", - "description": "The name of the field used as input to the scoring function." - }, - "boost": { - "type": "number", - "format": "double", - "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." - }, - "interpolation": { - "$ref": "#/definitions/ScoringFunctionInterpolation", - "description": "A value indicating how boosting will be interpolated across document scores;\ndefaults to \"Linear\"." - }, - "type": { - "type": "string", - "description": "Type of ScoringFunction." - } - }, - "discriminator": "type", - "required": [ - "fieldName", - "boost", - "type" - ] - }, - "ScoringFunctionAggregation": { - "type": "string", - "description": "Defines the aggregation function used to combine the results of all the scoring\nfunctions in a scoring profile.", - "enum": [ - "sum", - "average", - "minimum", - "maximum", - "firstMatching" - ], - "x-ms-enum": { - "name": "ScoringFunctionAggregation", - "modelAsString": true, - "values": [ - { - "name": "Sum", - "value": "sum", - "description": "Boost scores by the sum of all scoring function results." - }, - { - "name": "Average", - "value": "average", - "description": "Boost scores by the average of all scoring function results." - }, - { - "name": "Minimum", - "value": "minimum", - "description": "Boost scores by the minimum of all scoring function results." - }, - { - "name": "Maximum", - "value": "maximum", - "description": "Boost scores by the maximum of all scoring function results." - }, - { - "name": "FirstMatching", - "value": "firstMatching", - "description": "Boost scores using the first applicable scoring function in the scoring profile." - } - ] - } - }, - "ScoringFunctionInterpolation": { - "type": "string", - "description": "Defines the function used to interpolate score boosting across a range of\ndocuments.", - "enum": [ - "linear", - "constant", - "quadratic", - "logarithmic" - ], - "x-ms-enum": { - "name": "ScoringFunctionInterpolation", - "modelAsString": true, - "values": [ - { - "name": "Linear", - "value": "linear", - "description": "Boosts scores by a linearly decreasing amount. This is the default\ninterpolation for scoring functions." - }, - { - "name": "Constant", - "value": "constant", - "description": "Boosts scores by a constant factor." - }, - { - "name": "Quadratic", - "value": "quadratic", - "description": "Boosts scores by an amount that decreases quadratically. Boosts decrease slowly\nfor higher scores, and more quickly as the scores decrease. This interpolation\noption is not allowed in tag scoring functions." - }, - { - "name": "Logarithmic", - "value": "logarithmic", - "description": "Boosts scores by an amount that decreases logarithmically. Boosts decrease\nquickly for higher scores, and more slowly as the scores decrease. This\ninterpolation option is not allowed in tag scoring functions." - } - ] - } - }, - "ScoringProfile": { - "type": "object", - "description": "Defines parameters for a search index that influence scoring in search queries.", - "properties": { - "name": { - "type": "string", - "description": "The name of the scoring profile." - }, - "text": { - "$ref": "#/definitions/TextWeights", - "description": "Parameters that boost scoring based on text matches in certain index fields." - }, - "functions": { - "type": "array", - "description": "The collection of functions that influence the scoring of documents.", - "items": { - "$ref": "#/definitions/ScoringFunction" - }, - "x-ms-identifiers": [] - }, - "functionAggregation": { - "$ref": "#/definitions/ScoringFunctionAggregation", - "description": "A value indicating how the results of individual scoring functions should be\ncombined. Defaults to \"Sum\". Ignored if there are no scoring functions." - } - }, - "required": [ - "name" - ] - }, - "SearchField": { - "type": "object", - "description": "Represents a field in an index definition, which describes the name, data type,\nand search behavior of a field.", - "properties": { - "name": { - "type": "string", - "description": "The name of the field, which must be unique within the fields collection of the\nindex or parent field." - }, - "type": { - "$ref": "#/definitions/SearchFieldDataType", - "description": "The data type of the field." - }, - "key": { - "type": "boolean", - "description": "A value indicating whether the field uniquely identifies documents in the\nindex. Exactly one top-level field in each index must be chosen as the key\nfield and it must be of type Edm.String. Key fields can be used to look up\ndocuments directly and update or delete specific documents. Default is false\nfor simple fields and null for complex fields." - }, - "retrievable": { - "type": "boolean", - "description": "A value indicating whether the field can be returned in a search result. You\ncan disable this option if you want to use a field (for example, margin) as a\nfilter, sorting, or scoring mechanism but do not want the field to be visible\nto the end user. This property must be true for key fields, and it must be null\nfor complex fields. This property can be changed on existing fields. Enabling\nthis property does not cause any increase in index storage requirements.\nDefault is true for simple fields, false for vector fields, and null for\ncomplex fields." - }, - "stored": { - "type": "boolean", - "description": "An immutable value indicating whether the field will be persisted separately on\ndisk to be returned in a search result. You can disable this option if you\ndon't plan to return the field contents in a search response to save on storage\noverhead. This can only be set during index creation and only for vector\nfields. This property cannot be changed for existing fields or set as false for\nnew fields. If this property is set as false, the property 'retrievable' must\nalso be set to false. This property must be true or unset for key fields, for\nnew fields, and for non-vector fields, and it must be null for complex fields.\nDisabling this property will reduce index storage requirements. The default is\ntrue for vector fields." - }, - "searchable": { - "type": "boolean", - "description": "A value indicating whether the field is full-text searchable. This means it\nwill undergo analysis such as word-breaking during indexing. If you set a\nsearchable field to a value like \"sunny day\", internally it will be split into\nthe individual tokens \"sunny\" and \"day\". This enables full-text searches for\nthese terms. Fields of type Edm.String or Collection(Edm.String) are searchable\nby default. This property must be false for simple fields of other non-string\ndata types, and it must be null for complex fields. Note: searchable fields\nconsume extra space in your index to accommodate additional tokenized versions\nof the field value for full-text searches. If you want to save space in your\nindex and you don't need a field to be included in searches, set searchable to\nfalse." - }, - "filterable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $filter\nqueries. filterable differs from searchable in how strings are handled. Fields\nof type Edm.String or Collection(Edm.String) that are filterable do not undergo\nword-breaking, so comparisons are for exact matches only. For example, if you\nset such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches,\nbut $filter=f eq 'sunny day' will. This property must be null for complex\nfields. Default is true for simple fields and null for complex fields." - }, - "sortable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $orderby\nexpressions. By default, the search engine sorts results by score, but in many\nexperiences users will want to sort by fields in the documents. A simple field\ncan be sortable only if it is single-valued (it has a single value in the scope\nof the parent document). Simple collection fields cannot be sortable, since\nthey are multi-valued. Simple sub-fields of complex collections are also\nmulti-valued, and therefore cannot be sortable. This is true whether it's an\nimmediate parent field, or an ancestor field, that's the complex collection.\nComplex fields cannot be sortable and the sortable property must be null for\nsuch fields. The default for sortable is true for single-valued simple fields,\nfalse for multi-valued simple fields, and null for complex fields." - }, - "facetable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in facet\nqueries. Typically used in a presentation of search results that includes hit\ncount by category (for example, search for digital cameras and see hits by\nbrand, by megapixels, by price, and so on). This property must be null for\ncomplex fields. Fields of type Edm.GeographyPoint or\nCollection(Edm.GeographyPoint) cannot be facetable. Default is true for all\nother simple fields." - }, - "analyzer": { - "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer to use for the field. This option can be used only\nwith searchable fields and it can't be set together with either searchAnalyzer\nor indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the\nfield. Must be null for complex fields." - }, - "searchAnalyzer": { - "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer used at search time for the field. This option can be\nused only with searchable fields. It must be set together with indexAnalyzer\nand it cannot be set together with the analyzer option. This property cannot be\nset to the name of a language analyzer; use the analyzer property instead if\nyou need a language analyzer. This analyzer can be updated on an existing\nfield. Must be null for complex fields." - }, - "indexAnalyzer": { - "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer used at indexing time for the field. This option can\nbe used only with searchable fields. It must be set together with\nsearchAnalyzer and it cannot be set together with the analyzer option. This\nproperty cannot be set to the name of a language analyzer; use the analyzer\nproperty instead if you need a language analyzer. Once the analyzer is chosen,\nit cannot be changed for the field. Must be null for complex fields." - }, - "dimensions": { - "type": "integer", - "format": "int32", - "description": "The dimensionality of the vector field.", - "minimum": 2, - "maximum": 2048 - }, - "vectorSearchProfile": { - "type": "string", - "description": "The name of the vector search profile that specifies the algorithm and\nvectorizer to use when searching the vector field." - }, - "vectorEncoding": { - "$ref": "#/definitions/VectorEncodingFormat", - "description": "The encoding format to interpret the field contents." - }, - "synonymMaps": { - "type": "array", - "description": "A list of the names of synonym maps to associate with this field. This option\ncan be used only with searchable fields. Currently only one synonym map per\nfield is supported. Assigning a synonym map to a field ensures that query terms\ntargeting that field are expanded at query-time using the rules in the synonym\nmap. This attribute can be changed on existing fields. Must be null or an empty\ncollection for complex fields.", - "items": { - "type": "string" - } - }, - "fields": { - "type": "array", - "description": "A list of sub-fields if this is a field of type Edm.ComplexType or\nCollection(Edm.ComplexType). Must be null or empty for simple fields.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "name", - "type" - ] - }, - "SearchFieldDataType": { - "type": "string", - "description": "Defines the data type of a field in a search index.", - "enum": [ - "Edm.String", - "Edm.Int32", - "Edm.Int64", - "Edm.Double", - "Edm.Boolean", - "Edm.DateTimeOffset", - "Edm.GeographyPoint", - "Edm.ComplexType", - "Edm.Single", - "Edm.Half", - "Edm.Int16", - "Edm.SByte", - "Edm.Byte" - ], - "x-ms-enum": { - "name": "SearchFieldDataType", - "modelAsString": true, - "values": [ - { - "name": "String", - "value": "Edm.String", - "description": "Indicates that a field contains a string." - }, - { - "name": "Int32", - "value": "Edm.Int32", - "description": "Indicates that a field contains a 32-bit signed integer." - }, - { - "name": "Int64", - "value": "Edm.Int64", - "description": "Indicates that a field contains a 64-bit signed integer." - }, - { - "name": "Double", - "value": "Edm.Double", - "description": "Indicates that a field contains an IEEE double-precision floating point number." - }, - { - "name": "Boolean", - "value": "Edm.Boolean", - "description": "Indicates that a field contains a Boolean value (true or false)." - }, - { - "name": "DateTimeOffset", - "value": "Edm.DateTimeOffset", - "description": "Indicates that a field contains a date/time value, including timezone\ninformation." - }, - { - "name": "GeographyPoint", - "value": "Edm.GeographyPoint", - "description": "Indicates that a field contains a geo-location in terms of longitude and\nlatitude." - }, - { - "name": "Complex", - "value": "Edm.ComplexType", - "description": "Indicates that a field contains one or more complex objects that in turn have\nsub-fields of other types." - }, - { - "name": "Single", - "value": "Edm.Single", - "description": "Indicates that a field contains a single-precision floating point number. This\nis only valid when used with Collection(Edm.Single)." - }, - { - "name": "Half", - "value": "Edm.Half", - "description": "Indicates that a field contains a half-precision floating point number. This is\nonly valid when used with Collection(Edm.Half)." - }, - { - "name": "Int16", - "value": "Edm.Int16", - "description": "Indicates that a field contains a 16-bit signed integer. This is only valid\nwhen used with Collection(Edm.Int16)." - }, - { - "name": "SByte", - "value": "Edm.SByte", - "description": "Indicates that a field contains a 8-bit signed integer. This is only valid when\nused with Collection(Edm.SByte)." - }, - { - "name": "Byte", - "value": "Edm.Byte", - "description": "Indicates that a field contains a 8-bit unsigned integer. This is only valid\nwhen used with Collection(Edm.Byte)." - } - ] - } - }, - "SearchIndex": { - "type": "object", - "description": "Represents a search index definition, which describes the fields and search\nbehavior of an index.", - "properties": { - "name": { - "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "description": "The fields of the index.", - "items": { - "$ref": "#/definitions/SearchField" - }, - "x-ms-identifiers": [] - }, - "scoringProfiles": { - "type": "array", - "description": "The scoring profiles for the index.", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "x-ms-identifiers": [] - }, - "defaultScoringProfile": { - "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If\nthis property is not set and no scoring profile is specified in the query, then\ndefault scoring (tf-idf) will be used." - }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." - }, - "suggesters": { - "type": "array", - "description": "The suggesters for the index.", - "items": { - "$ref": "#/definitions/SearchSuggester" - }, - "x-ms-identifiers": [] - }, - "analyzers": { - "type": "array", - "description": "The analyzers for the index.", - "items": { - "$ref": "#/definitions/LexicalAnalyzer" - }, - "x-ms-identifiers": [] - }, - "tokenizers": { - "type": "array", - "description": "The tokenizers for the index.", - "items": { - "$ref": "#/definitions/LexicalTokenizer" - }, - "x-ms-identifiers": [] - }, - "tokenFilters": { - "type": "array", - "description": "The token filters for the index.", - "items": { - "$ref": "#/definitions/TokenFilter" - }, - "x-ms-identifiers": [] - }, - "charFilters": { - "type": "array", - "description": "The character filters for the index.", - "items": { - "$ref": "#/definitions/CharFilter" - }, - "x-ms-identifiers": [] - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "similarity": { - "$ref": "#/definitions/SimilarityAlgorithm", - "description": "The type of similarity algorithm to be used when scoring and ranking the\ndocuments matching a search query. The similarity algorithm can only be defined\nat index creation time and cannot be modified on existing indexes. If null, the\nClassicSimilarity algorithm is used." - }, - "semantic": { - "$ref": "#/definitions/SemanticSearch", - "description": "Defines parameters for a search index that influence semantic capabilities." - }, - "vectorSearch": { - "$ref": "#/definitions/VectorSearch", - "description": "Contains configuration options related to vector search." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the index.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "name", - "fields" - ] - }, - "SearchIndexer": { - "type": "object", - "description": "Represents an indexer.", - "properties": { - "name": { - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "description": "Defines mappings between fields in the data source and corresponding target\nfields in the index.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "outputFieldMappings": { - "type": "array", - "description": "Output field mappings are applied after enrichment and immediately before\nindexing.", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "x-ms-identifiers": [] - }, - "disabled": { - "type": "boolean", - "description": "A value indicating whether the indexer is disabled. Default is false." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the indexer.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your indexer\ndefinition (as well as indexer execution status) when you want full assurance\nthat no one, not even Microsoft, can decrypt them. Once you have encrypted your\nindexer definition, it will always remain encrypted. The search service will\nignore attempts to set this property to null. You can change this property as\nneeded if you want to rotate your encryption key; Your indexer definition (and\nindexer execution status) will be unaffected. Encryption with customer-managed\nkeys is not available for free search services, and is only available for paid\nservices created on or after January 1, 2019." - } - }, - "required": [ - "name", - "dataSourceName", - "targetIndexName" - ] - }, - "SearchIndexerDataContainer": { - "type": "object", - "description": "Represents information about the entity (such as Azure SQL table or CosmosDB\ncollection) that will be indexed.", - "properties": { - "name": { - "type": "string", - "description": "The name of the table or view (for Azure SQL data source) or collection (for\nCosmosDB data source) that will be indexed." - }, - "query": { - "type": "string", - "description": "A query that is applied to this data container. The syntax and meaning of this\nparameter is datasource-specific. Not supported by Azure SQL datasources." - } - }, - "required": [ - "name" - ] - }, - "SearchIndexerDataIdentity": { - "type": "object", - "description": "Abstract base type for data identities.", - "properties": { - "@odata.type": { - "type": "string", - "description": "A URI fragment specifying the type of identity." - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type" - ] - }, - "SearchIndexerDataNoneIdentity": { - "type": "object", - "description": "Clears the identity property of a datasource.", - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerDataIdentity" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataNoneIdentity" - }, - "SearchIndexerDataSource": { - "type": "object", - "description": "Represents a datasource definition, which can be used to configure an indexer.", - "properties": { - "name": { - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/SearchIndexerDataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/SearchIndexerDataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the data source.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your\ndatasource definition when you want full assurance that no one, not even\nMicrosoft, can decrypt your data source definition. Once you have encrypted\nyour data source definition, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your datasource\ndefinition will be unaffected. Encryption with customer-managed keys is not\navailable for free search services, and is only available for paid services\ncreated on or after January 1, 2019." - } - }, - "required": [ - "name", - "type", - "credentials", - "container" - ] - }, - "SearchIndexerDataSourceType": { - "type": "string", - "description": "Defines the type of a datasource.", - "enum": [ - "azuresql", - "cosmosdb", - "azureblob", - "azuretable", - "mysql", - "adlsgen2" - ], - "x-ms-enum": { - "name": "SearchIndexerDataSourceType", - "modelAsString": true, - "values": [ - { - "name": "AzureSql", - "value": "azuresql", - "description": "Indicates an Azure SQL datasource." - }, - { - "name": "CosmosDb", - "value": "cosmosdb", - "description": "Indicates a CosmosDB datasource." - }, - { - "name": "AzureBlob", - "value": "azureblob", - "description": "Indicates an Azure Blob datasource." - }, - { - "name": "AzureTable", - "value": "azuretable", - "description": "Indicates an Azure Table datasource." - }, - { - "name": "MySql", - "value": "mysql", - "description": "Indicates a MySql datasource." - }, - { - "name": "AdlsGen2", - "value": "adlsgen2", - "description": "Indicates an ADLS Gen2 datasource." - } - ] - } - }, - "SearchIndexerDataUserAssignedIdentity": { - "type": "object", - "description": "Specifies the identity for a datasource to use.", - "properties": { - "userAssignedIdentity": { - "type": "string", - "description": "The fully qualified Azure resource Id of a user assigned managed identity\ntypically in the form\n\"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\"\nthat should have been assigned to the search service." - } - }, - "required": [ - "userAssignedIdentity" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerDataIdentity" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DataUserAssignedIdentity" - }, - "SearchIndexerError": { - "type": "object", - "description": "Represents an item- or document-level indexing error.", - "properties": { - "key": { - "type": "string", - "description": "The key of the item for which indexing failed." - }, - "errorMessage": { - "type": "string", - "description": "The message describing the error that occurred while processing the item." - }, - "statusCode": { - "type": "integer", - "format": "int32", - "description": "The status code indicating why the indexing operation failed. Possible values\ninclude: 400 for a malformed input document, 404 for document not found, 409\nfor a version conflict, 422 when the index is temporarily unavailable, or 503\nfor when the service is too busy." - }, - "name": { - "type": "string", - "description": "The name of the source at which the error originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable." - }, - "details": { - "type": "string", - "description": "Additional, verbose details about the error to assist in debugging the indexer.\nThis may not be always available." - }, - "documentationLink": { - "type": "string", - "description": "A link to a troubleshooting guide for these classes of errors. This may not be\nalways available." - } - }, - "required": [ - "errorMessage", - "statusCode" - ] - }, - "SearchIndexerIndexProjection": { - "type": "object", - "description": "Definition of additional projections to secondary search indexes.", - "properties": { - "selectors": { - "type": "array", - "description": "A list of projections to be performed to secondary search indexes.", - "items": { - "$ref": "#/definitions/SearchIndexerIndexProjectionSelector" - }, - "x-ms-identifiers": [] - }, - "parameters": { - "$ref": "#/definitions/SearchIndexerIndexProjectionsParameters", - "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type." - } - }, - "required": [ - "selectors" - ] - }, - "SearchIndexerIndexProjectionSelector": { - "type": "object", - "description": "Description for what data to store in the designated search index.", - "properties": { - "targetIndexName": { - "type": "string", - "description": "Name of the search index to project to. Must have a key field with the 'keyword' analyzer set." - }, - "parentKeyFieldName": { - "type": "string", - "description": "Name of the field in the search index to map the parent document's key value\nto. Must be a string field that is filterable and not the key field." - }, - "sourceContext": { - "type": "string", - "description": "Source context for the projections. Represents the cardinality at which the\ndocument will be split into multiple sub documents." - }, - "mappings": { - "type": "array", - "description": "Mappings for the projection, or which source should be mapped to which field in\nthe target index.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "targetIndexName", - "parentKeyFieldName", - "sourceContext", - "mappings" - ] - }, - "SearchIndexerIndexProjectionsParameters": { - "type": "object", - "description": "A dictionary of index projection-specific configuration properties. Each name\nis the name of a specific property. Each value must be of a primitive type.", - "properties": { - "projectionMode": { - "$ref": "#/definitions/IndexProjectionMode", - "description": "Defines behavior of the index projections in relation to the rest of the\nindexer." - } - }, - "additionalProperties": {} - }, - "SearchIndexerKnowledgeStore": { - "type": "object", - "description": "Definition of additional projections to azure blob, table, or files, of\nenriched data.", - "properties": { - "storageConnectionString": { - "type": "string", - "description": "The connection string to the storage account projections will be stored in." - }, - "projections": { - "type": "array", - "description": "A list of additional projections to perform during indexing.", - "items": { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjection" - }, - "x-ms-identifiers": [] - } - }, - "required": [ - "storageConnectionString", - "projections" - ] - }, - "SearchIndexerKnowledgeStoreBlobProjectionSelector": { - "type": "object", - "description": "Abstract class to share properties between concrete selectors.", - "properties": { - "storageContainer": { - "type": "string", - "description": "Blob container to store projections in." - } - }, - "required": [ - "storageContainer" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" - } - ] - }, - "SearchIndexerKnowledgeStoreFileProjectionSelector": { - "type": "object", - "description": "Projection definition for what data to store in Azure Files.", - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" - } - ] - }, - "SearchIndexerKnowledgeStoreObjectProjectionSelector": { - "type": "object", - "description": "Projection definition for what data to store in Azure Blob.", - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreBlobProjectionSelector" - } - ] - }, - "SearchIndexerKnowledgeStoreParameters": { - "type": "object", - "description": "A dictionary of knowledge store-specific configuration properties. Each name is\nthe name of a specific property. Each value must be of a primitive type.", - "properties": { - "synthesizeGeneratedKeyName": { - "type": "boolean", - "description": "Whether or not projections should synthesize a generated key name if one isn't\nalready present." - } - }, - "additionalProperties": {} - }, - "SearchIndexerKnowledgeStoreProjection": { - "type": "object", - "description": "Container object for various projection selectors.", - "properties": { - "tables": { - "type": "array", - "description": "Projections to Azure Table storage.", - "items": { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreTableProjectionSelector" - }, - "x-ms-identifiers": [] - }, - "objects": { - "type": "array", - "description": "Projections to Azure Blob storage.", - "items": { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreObjectProjectionSelector" - }, - "x-ms-identifiers": [] - }, - "files": { - "type": "array", - "description": "Projections to Azure File storage.", - "items": { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreFileProjectionSelector" - }, - "x-ms-identifiers": [] - } - } - }, - "SearchIndexerKnowledgeStoreProjectionSelector": { - "type": "object", - "description": "Abstract class to share properties between concrete selectors.", - "properties": { - "referenceKeyName": { - "type": "string", - "description": "Name of reference key to different projection." - }, - "generatedKeyName": { - "type": "string", - "description": "Name of generated key to store projection under." - }, - "source": { - "type": "string", - "description": "Source data to project." - }, - "sourceContext": { - "type": "string", - "description": "Source context for complex projections." - }, - "inputs": { - "type": "array", - "description": "Nested inputs for complex projections.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - } - }, - "SearchIndexerKnowledgeStoreTableProjectionSelector": { - "type": "object", - "description": "Description for what data to store in Azure Tables.", - "properties": { - "tableName": { - "type": "string", - "description": "Name of the Azure table to store projected data in." - } - }, - "required": [ - "tableName" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerKnowledgeStoreProjectionSelector" - } - ] - }, - "SearchIndexerLimits": { - "type": "object", - "description": "Represents the limits that can be applied to an indexer.", - "properties": { - "maxRunTime": { - "type": "string", - "format": "duration", - "description": "The maximum duration that the indexer is permitted to run for one execution." - }, - "maxDocumentExtractionSize": { - "type": "integer", - "format": "int64", - "description": "The maximum size of a document, in bytes, which will be considered valid for\nindexing." - }, - "maxDocumentContentCharactersToExtract": { - "type": "integer", - "format": "int64", - "description": "The maximum number of characters that will be extracted from a document picked\nup for indexing." - } - } - }, - "SearchIndexerSkill": { - "type": "object", - "description": "Base type for skills.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types." - }, - "name": { - "type": "string", - "description": "The name of the skill which uniquely identifies it within the skillset. A skill\nwith no name defined will be given a default name of its 1-based index in the\nskills array, prefixed with the character '#'." - }, - "description": { - "type": "string", - "description": "The description of the skill which describes the inputs, outputs, and usage of\nthe skill." - }, - "context": { - "type": "string", - "description": "Represents the level at which operations take place, such as the document root\nor document content (for example, /document or /document/content). The default\nis /document." - }, - "inputs": { - "type": "array", - "description": "Inputs of the skills could be a column in the source data set, or the output of\nan upstream skill.", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "x-ms-identifiers": [] - }, - "outputs": { - "type": "array", - "description": "The output of a skill is either a field in a search index, or a value that can\nbe consumed as an input by another skill.", - "items": { - "$ref": "#/definitions/OutputFieldMappingEntry" - }, - "x-ms-identifiers": [] - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type", - "inputs", - "outputs" - ] - }, - "SearchIndexerSkillset": { - "type": "object", - "description": "A list of skills.", - "properties": { - "name": { - "type": "string", - "description": "The name of the skillset." - }, - "description": { - "type": "string", - "description": "The description of the skillset." - }, - "skills": { - "type": "array", - "description": "A list of skills in the skillset.", - "items": { - "$ref": "#/definitions/SearchIndexerSkill" - }, - "x-ms-identifiers": [] - }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServicesAccount", - "description": "Details about the Azure AI service to be used when running skills." - }, - "knowledgeStore": { - "$ref": "#/definitions/SearchIndexerKnowledgeStore", - "description": "Definition of additional projections to Azure blob, table, or files, of\nenriched data." - }, - "indexProjections": { - "$ref": "#/definitions/SearchIndexerIndexProjection", - "description": "Definition of additional projections to secondary search index(es)." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the skillset.", - "x-ms-client-name": "eTag" - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your skillset\ndefinition when you want full assurance that no one, not even Microsoft, can\ndecrypt your skillset definition. Once you have encrypted your skillset\ndefinition, it will always remain encrypted. The search service will ignore\nattempts to set this property to null. You can change this property as needed\nif you want to rotate your encryption key; Your skillset definition will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - } - }, - "required": [ - "name", - "skills" - ] - }, - "SearchIndexerStatus": { - "type": "object", - "description": "Represents the current status and execution history of an indexer.", - "properties": { - "status": { - "$ref": "#/definitions/IndexerStatus", - "description": "Overall indexer status." - }, - "lastResult": { - "$ref": "#/definitions/IndexerExecutionResult", - "description": "The result of the most recent or an in-progress indexer execution." - }, - "executionHistory": { - "type": "array", - "description": "History of the recent indexer executions, sorted in reverse chronological order.", - "items": { - "$ref": "#/definitions/IndexerExecutionResult" - }, - "x-ms-identifiers": [] - }, - "limits": { - "$ref": "#/definitions/SearchIndexerLimits", - "description": "The execution limits for the indexer." - } - }, - "required": [ - "status", - "executionHistory", - "limits" - ] - }, - "SearchIndexerWarning": { - "type": "object", - "description": "Represents an item-level warning.", - "properties": { - "key": { - "type": "string", - "description": "The key of the item which generated a warning." - }, - "message": { - "type": "string", - "description": "The message describing the warning that occurred while processing the item." - }, - "name": { - "type": "string", - "description": "The name of the source at which the warning originated. For example, this could\nrefer to a particular skill in the attached skillset. This may not be always\navailable." - }, - "details": { - "type": "string", - "description": "Additional, verbose details about the warning to assist in debugging the\nindexer. This may not be always available." - }, - "documentationLink": { - "type": "string", - "description": "A link to a troubleshooting guide for these classes of warnings. This may not\nbe always available." - } - }, - "required": [ - "message" - ] - }, - "SearchResourceEncryptionKey": { - "type": "object", - "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and\nmanage can be used to encrypt or decrypt data-at-rest, such as indexes and\nsynonym maps.", - "properties": { - "keyVaultKeyName": { - "type": "string", - "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest." - }, - "keyVaultKeyVersion": { - "type": "string", - "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest." - }, - "keyVaultUri": { - "type": "string", - "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains\nthe key to be used to encrypt your data at rest. An example URI might be\n`https://my-keyvault-name.vault.azure.net`." - }, - "accessCredentials": { - "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", - "description": "Optional Azure Active Directory credentials used for accessing your Azure Key\nVault. Not required if using managed identity instead." - } - }, - "required": [ - "keyVaultKeyName", - "keyVaultKeyVersion", - "keyVaultUri" - ] - }, - "SearchServiceCounters": { - "type": "object", - "description": "Represents service-level resource counters and quotas.", - "properties": { - "documentCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of documents across all indexes in the service." - }, - "indexesCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexes." - }, - "indexersCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexers." - }, - "dataSourcesCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of data sources." - }, - "storageSize": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total size of used storage in bytes." - }, - "synonymMaps": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of synonym maps." - }, - "skillsetCount": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of skillsets." - }, - "vectorIndexSize": { - "$ref": "#/definitions/ResourceCounter", - "description": "Total memory consumption of all vector indexes within the service, in bytes." - } - }, - "required": [ - "documentCount", - "indexesCount", - "indexersCount", - "dataSourcesCount", - "storageSize", - "synonymMaps", - "skillsetCount", - "vectorIndexSize" - ] - }, - "SearchServiceLimits": { - "type": "object", - "description": "Represents various service level limits.", - "properties": { - "maxFieldsPerIndex": { - "type": "integer", - "format": "int32", - "description": "The maximum allowed fields per index." - }, - "maxFieldNestingDepthPerIndex": { - "type": "integer", - "format": "int32", - "description": "The maximum depth which you can nest sub-fields in an index, including the\ntop-level complex field. For example, a/b/c has a nesting depth of 3." - }, - "maxComplexCollectionFieldsPerIndex": { - "type": "integer", - "format": "int32", - "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an\nindex." - }, - "maxComplexObjectsInCollectionsPerDocument": { - "type": "integer", - "format": "int32", - "description": "The maximum number of objects in complex collections allowed per document." - }, - "maxStoragePerIndex": { - "type": "integer", - "format": "int64", - "description": "The maximum amount of storage in bytes allowed per index." - } - } - }, - "SearchServiceStatistics": { - "type": "object", - "description": "Response from a get service statistics request. If successful, it includes\nservice level counters and limits.", - "properties": { - "counters": { - "$ref": "#/definitions/SearchServiceCounters", - "description": "Service level resource counters." - }, - "limits": { - "$ref": "#/definitions/SearchServiceLimits", - "description": "Service level general limits." - } - }, - "required": [ - "counters", - "limits" - ] - }, - "SearchSuggester": { - "type": "object", - "description": "Defines how the Suggest API should apply to a group of fields in the index.", - "properties": { - "name": { - "type": "string", - "description": "The name of the suggester." - }, - "searchMode": { - "type": "string", - "description": "A value indicating the capabilities of the suggester.", - "enum": [ - "analyzingInfixMatching" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "sourceFields": { - "type": "array", - "description": "The list of field names to which the suggester applies. Each field must be\nsearchable.", - "items": { - "type": "string" - } - } - }, - "required": [ - "name", - "searchMode", - "sourceFields" - ] - }, - "SemanticConfiguration": { - "type": "object", - "description": "Defines a specific configuration to be used in the context of semantic\ncapabilities.", - "properties": { - "name": { - "type": "string", - "description": "The name of the semantic configuration." - }, - "prioritizedFields": { - "$ref": "#/definitions/SemanticPrioritizedFields", - "description": "Describes the title, content, and keyword fields to be used for semantic\nranking, captions, highlights, and answers. At least one of the three sub\nproperties (titleField, prioritizedKeywordsFields and prioritizedContentFields)\nneed to be set." - } - }, - "required": [ - "name", - "prioritizedFields" - ] - }, - "SemanticField": { - "type": "object", - "description": "A field that is used as part of the semantic configuration.", - "properties": { - "fieldName": { - "type": "string", - "description": "File name" - } - }, - "required": [ - "fieldName" - ] - }, - "SemanticPrioritizedFields": { - "type": "object", - "description": "Describes the title, content, and keywords fields to be used for semantic\nranking, captions, highlights, and answers.", - "properties": { - "titleField": { - "$ref": "#/definitions/SemanticField", - "description": "Defines the title field to be used for semantic ranking, captions, highlights,\nand answers. If you don't have a title field in your index, leave this blank." - }, - "prioritizedContentFields": { - "type": "array", - "description": "Defines the content fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain text in natural language form. The order of the fields in the array\nrepresents their priority. Fields with lower priority may get truncated if the\ncontent is long.", - "items": { - "$ref": "#/definitions/SemanticField" - }, - "x-ms-identifiers": [] - }, - "prioritizedKeywordsFields": { - "type": "array", - "description": "Defines the keyword fields to be used for semantic ranking, captions,\nhighlights, and answers. For the best result, the selected fields should\ncontain a list of keywords. The order of the fields in the array represents\ntheir priority. Fields with lower priority may get truncated if the content is\nlong.", - "items": { - "$ref": "#/definitions/SemanticField" - }, - "x-ms-identifiers": [] - } - } - }, - "SemanticSearch": { - "type": "object", - "description": "Defines parameters for a search index that influence semantic capabilities.", - "properties": { - "defaultConfiguration": { - "type": "string", - "description": "Allows you to set the name of a default semantic configuration in your index,\nmaking it optional to pass it on as a query parameter every time." - }, - "configurations": { - "type": "array", - "description": "The semantic configurations for the index.", - "items": { - "$ref": "#/definitions/SemanticConfiguration" - }, - "x-ms-identifiers": [] - } - } - }, - "SentimentSkill": { - "type": "object", - "description": "This skill is deprecated. Use the V3.SentimentSkill instead.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/SentimentSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill" - }, - "SentimentSkillLanguage": { - "type": "string", - "description": "Deprecated. The language codes supported for input text by SentimentSkill.", - "enum": [ - "da", - "nl", - "en", - "fi", - "fr", - "de", - "el", - "it", - "no", - "pl", - "pt-PT", - "ru", - "es", - "sv", - "tr" - ], - "x-ms-enum": { - "name": "SentimentSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "no", - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - } - ] - } - }, - "SentimentSkillV3": { - "type": "object", - "description": "Using the Text Analytics API, evaluates unstructured text and for each record,\nprovides sentiment labels (such as \"negative\", \"neutral\" and \"positive\") based\non the highest confidence score found by the service at a sentence and\ndocument-level.", - "properties": { - "defaultLanguageCode": { - "type": "string", - "description": "A value indicating which language code to use. Default is `en`." - }, - "includeOpinionMining": { - "type": "boolean", - "description": "If set to true, the skill output will include information from Text Analytics\nfor opinion mining, namely targets (nouns or verbs) and their associated\nassessment (adjective) in the text. Default is false." - }, - "modelVersion": { - "type": "string", - "description": "The version of the model to use when calling the Text Analytics service. It\nwill default to the latest available when not specified. We recommend you do\nnot specify this value unless absolutely necessary." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.V3.SentimentSkill" - }, - "ShaperSkill": { - "type": "object", - "description": "A skill for reshaping the outputs. It creates a complex type to support\ncomposite fields (also known as multipart fields).", - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill" - }, - "ShingleTokenFilter": { - "type": "object", - "description": "Creates combinations of tokens as a single token. This token filter is\nimplemented using Apache Lucene.", - "properties": { - "maxShingleSize": { - "type": "integer", - "format": "int32", - "description": "The maximum shingle size. Default and minimum value is 2.", - "default": 2, - "minimum": 2 - }, - "minShingleSize": { - "type": "integer", - "format": "int32", - "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the\nvalue of maxShingleSize.", - "default": 2, - "minimum": 2 - }, - "outputUnigrams": { - "type": "boolean", - "description": "A value indicating whether the output stream will contain the input tokens\n(unigrams) as well as shingles. Default is true.", - "default": true - }, - "outputUnigramsIfNoShingles": { - "type": "boolean", - "description": "A value indicating whether to output unigrams for those times when no shingles\nare available. This property takes precedence when outputUnigrams is set to\nfalse. Default is false." - }, - "tokenSeparator": { - "type": "string", - "description": "The string to use when joining adjacent tokens to form a shingle. Default is a\nsingle space (\" \").", - "default": " " - }, - "filterToken": { - "type": "string", - "description": "The string to insert for each position at which there is no token. Default is\nan underscore (\"_\").", - "default": "_" - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter" - }, - "SimilarityAlgorithm": { - "type": "object", - "description": "Base type for similarity algorithms. Similarity algorithms are used to\ncalculate scores that tie queries to documents. The higher the score, the more\nrelevant the document is to that specific query. Those scores are used to rank\nthe search results.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types." - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type" - ] - }, - "SnowballTokenFilter": { - "type": "object", - "description": "A filter that stems words using a Snowball-generated stemmer. This token filter\nis implemented using Apache Lucene.", - "properties": { - "language": { - "$ref": "#/definitions/SnowballTokenFilterLanguage", - "description": "The language to use." - } - }, - "required": [ - "language" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter" - }, - "SnowballTokenFilterLanguage": { - "type": "string", - "description": "The language to use for a Snowball token filter.", - "enum": [ - "armenian", - "basque", - "catalan", - "danish", - "dutch", - "english", - "finnish", - "french", - "german", - "german2", - "hungarian", - "italian", - "kp", - "lovins", - "norwegian", - "porter", - "portuguese", - "romanian", - "russian", - "spanish", - "swedish", - "turkish" - ], - "x-ms-enum": { - "name": "SnowballTokenFilterLanguage", - "modelAsString": true, - "values": [ - { - "name": "Armenian", - "value": "armenian", - "description": "Selects the Lucene Snowball stemming tokenizer for Armenian." - }, - { - "name": "Basque", - "value": "basque", - "description": "Selects the Lucene Snowball stemming tokenizer for Basque." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the Lucene Snowball stemming tokenizer for Catalan." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the Lucene Snowball stemming tokenizer for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the Lucene Snowball stemming tokenizer for Dutch." - }, - { - "name": "English", - "value": "english", - "description": "Selects the Lucene Snowball stemming tokenizer for English." - }, - { - "name": "Finnish", - "value": "finnish", - "description": "Selects the Lucene Snowball stemming tokenizer for Finnish." - }, - { - "name": "French", - "value": "french", - "description": "Selects the Lucene Snowball stemming tokenizer for French." - }, - { - "name": "German", - "value": "german", - "description": "Selects the Lucene Snowball stemming tokenizer for German." - }, - { - "name": "German2", - "value": "german2", - "description": "Selects the Lucene Snowball stemming tokenizer that uses the German variant\nalgorithm." - }, - { - "name": "Hungarian", - "value": "hungarian", - "description": "Selects the Lucene Snowball stemming tokenizer for Hungarian." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the Lucene Snowball stemming tokenizer for Italian." - }, - { - "name": "Kp", - "value": "kp", - "description": "Selects the Lucene Snowball stemming tokenizer for Dutch that uses the\nKraaij-Pohlmann stemming algorithm." - }, - { - "name": "Lovins", - "value": "lovins", - "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins\nstemming algorithm." - }, - { - "name": "Norwegian", - "value": "norwegian", - "description": "Selects the Lucene Snowball stemming tokenizer for Norwegian." - }, - { - "name": "Porter", - "value": "porter", - "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Porter\nstemming algorithm." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the Lucene Snowball stemming tokenizer for Portuguese." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the Lucene Snowball stemming tokenizer for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the Lucene Snowball stemming tokenizer for Russian." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the Lucene Snowball stemming tokenizer for Spanish." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the Lucene Snowball stemming tokenizer for Swedish." - }, - { - "name": "Turkish", - "value": "turkish", - "description": "Selects the Lucene Snowball stemming tokenizer for Turkish." - } - ] - } - }, - "SoftDeleteColumnDeletionDetectionPolicy": { - "type": "object", - "description": "Defines a data deletion detection policy that implements a soft-deletion\nstrategy. It determines whether an item should be deleted based on the value of\na designated 'soft delete' column.", - "properties": { - "softDeleteColumnName": { - "type": "string", - "description": "The name of the column to use for soft-deletion detection." - }, - "softDeleteMarkerValue": { - "type": "string", - "description": "The marker value that identifies an item as deleted." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DataDeletionDetectionPolicy" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy" - }, - "SplitSkill": { - "type": "object", - "description": "A skill to split a string into chunks of text.", - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/SplitSkillLanguage", - "description": "A value indicating which language code to use. Default is `en`." - }, - "textSplitMode": { - "$ref": "#/definitions/TextSplitMode", - "description": "A value indicating which split mode to perform." - }, - "maximumPageLength": { - "type": "integer", - "format": "int32", - "description": "The desired maximum page length. Default is 10000." - }, - "pageOverlapLength": { - "type": "integer", - "format": "int32", - "description": "Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk\nwill start with this number of characters/tokens from the end of the nth chunk." - }, - "maximumPagesToTake": { - "type": "integer", - "format": "int32", - "description": "Only applicable when textSplitMode is set to 'pages'. If specified, the\nSplitSkill will discontinue splitting after processing the first\n'maximumPagesToTake' pages, in order to improve performance when only a few\ninitial pages are needed from each document." - } - }, - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill" - }, - "SplitSkillLanguage": { - "type": "string", - "description": "The language codes supported for input text by SplitSkill.", - "enum": [ - "am", - "bs", - "cs", - "da", - "de", - "en", - "es", - "et", - "fi", - "fr", - "he", - "hi", - "hr", - "hu", - "id", - "is", - "it", - "ja", - "ko", - "lv", - "nb", - "nl", - "pl", - "pt", - "pt-br", - "ru", - "sk", - "sl", - "sr", - "sv", - "tr", - "ur", - "zh" - ], - "x-ms-enum": { - "name": "SplitSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "am", - "value": "am", - "description": "Amharic" - }, - { - "name": "bs", - "value": "bs", - "description": "Bosnian" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "et", - "value": "et", - "description": "Estonian" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "he", - "value": "he", - "description": "Hebrew" - }, - { - "name": "hi", - "value": "hi", - "description": "Hindi" - }, - { - "name": "hr", - "value": "hr", - "description": "Croatian" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "id", - "value": "id", - "description": "Indonesian" - }, - { - "name": "is", - "value": "is", - "description": "Icelandic" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "lv", - "value": "lv", - "description": "Latvian" - }, - { - "name": "nb", - "value": "nb", - "description": "Norwegian" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese (Portugal)" - }, - { - "name": "pt-br", - "value": "pt-br", - "description": "Portuguese (Brazil)" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "sk", - "value": "sk", - "description": "Slovak" - }, - { - "name": "sl", - "value": "sl", - "description": "Slovenian" - }, - { - "name": "sr", - "value": "sr", - "description": "Serbian" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - }, - { - "name": "ur", - "value": "ur", - "description": "Urdu" - }, - { - "name": "zh", - "value": "zh", - "description": "Chinese (Simplified)" - } - ] - } - }, - "SqlIntegratedChangeTrackingPolicy": { - "type": "object", - "description": "Defines a data change detection policy that captures changes using the\nIntegrated Change Tracking feature of Azure SQL Database.", - "allOf": [ - { - "$ref": "#/definitions/DataChangeDetectionPolicy" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" - }, - "StemmerOverrideTokenFilter": { - "type": "object", - "description": "Provides the ability to override other stemming filters with custom\ndictionary-based stemming. Any dictionary-stemmed terms will be marked as\nkeywords so that they will not be stemmed with stemmers down the chain. Must be\nplaced before any stemming filters. This token filter is implemented using\nApache Lucene.", - "properties": { - "rules": { - "type": "array", - "description": "A list of stemming rules in the following format: \"word => stem\", for example:\n\"ran => run\".", - "items": { - "type": "string" - } - } - }, - "required": [ - "rules" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter" - }, - "StemmerTokenFilter": { - "type": "object", - "description": "Language specific stemming filter. This token filter is implemented using\nApache Lucene.", - "properties": { - "language": { - "$ref": "#/definitions/StemmerTokenFilterLanguage", - "description": "The language to use." - } - }, - "required": [ - "language" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter" - }, - "StemmerTokenFilterLanguage": { - "type": "string", - "description": "The language to use for a stemmer token filter.", - "enum": [ - "arabic", - "armenian", - "basque", - "brazilian", - "bulgarian", - "catalan", - "czech", - "danish", - "dutch", - "dutchKp", - "english", - "lightEnglish", - "minimalEnglish", - "possessiveEnglish", - "porter2", - "lovins", - "finnish", - "lightFinnish", - "french", - "lightFrench", - "minimalFrench", - "galician", - "minimalGalician", - "german", - "german2", - "lightGerman", - "minimalGerman", - "greek", - "hindi", - "hungarian", - "lightHungarian", - "indonesian", - "irish", - "italian", - "lightItalian", - "sorani", - "latvian", - "norwegian", - "lightNorwegian", - "minimalNorwegian", - "lightNynorsk", - "minimalNynorsk", - "portuguese", - "lightPortuguese", - "minimalPortuguese", - "portugueseRslp", - "romanian", - "russian", - "lightRussian", - "spanish", - "lightSpanish", - "swedish", - "lightSwedish", - "turkish" - ], - "x-ms-enum": { - "name": "StemmerTokenFilterLanguage", - "modelAsString": true, - "values": [ - { - "name": "Arabic", - "value": "arabic", - "description": "Selects the Lucene stemming tokenizer for Arabic." - }, - { - "name": "Armenian", - "value": "armenian", - "description": "Selects the Lucene stemming tokenizer for Armenian." - }, - { - "name": "Basque", - "value": "basque", - "description": "Selects the Lucene stemming tokenizer for Basque." - }, - { - "name": "Brazilian", - "value": "brazilian", - "description": "Selects the Lucene stemming tokenizer for Portuguese (Brazil)." - }, - { - "name": "Bulgarian", - "value": "bulgarian", - "description": "Selects the Lucene stemming tokenizer for Bulgarian." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the Lucene stemming tokenizer for Catalan." - }, - { - "name": "Czech", - "value": "czech", - "description": "Selects the Lucene stemming tokenizer for Czech." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the Lucene stemming tokenizer for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the Lucene stemming tokenizer for Dutch." - }, - { - "name": "DutchKp", - "value": "dutchKp", - "description": "Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann\nstemming algorithm." - }, - { - "name": "English", - "value": "english", - "description": "Selects the Lucene stemming tokenizer for English." - }, - { - "name": "LightEnglish", - "value": "lightEnglish", - "description": "Selects the Lucene stemming tokenizer for English that does light stemming." - }, - { - "name": "MinimalEnglish", - "value": "minimalEnglish", - "description": "Selects the Lucene stemming tokenizer for English that does minimal stemming." - }, - { - "name": "PossessiveEnglish", - "value": "possessiveEnglish", - "description": "Selects the Lucene stemming tokenizer for English that removes trailing\npossessives from words." - }, - { - "name": "Porter2", - "value": "porter2", - "description": "Selects the Lucene stemming tokenizer for English that uses the Porter2\nstemming algorithm." - }, - { - "name": "Lovins", - "value": "lovins", - "description": "Selects the Lucene stemming tokenizer for English that uses the Lovins stemming\nalgorithm." - }, - { - "name": "Finnish", - "value": "finnish", - "description": "Selects the Lucene stemming tokenizer for Finnish." - }, - { - "name": "LightFinnish", - "value": "lightFinnish", - "description": "Selects the Lucene stemming tokenizer for Finnish that does light stemming." - }, - { - "name": "French", - "value": "french", - "description": "Selects the Lucene stemming tokenizer for French." - }, - { - "name": "LightFrench", - "value": "lightFrench", - "description": "Selects the Lucene stemming tokenizer for French that does light stemming." - }, - { - "name": "MinimalFrench", - "value": "minimalFrench", - "description": "Selects the Lucene stemming tokenizer for French that does minimal stemming." - }, - { - "name": "Galician", - "value": "galician", - "description": "Selects the Lucene stemming tokenizer for Galician." - }, - { - "name": "MinimalGalician", - "value": "minimalGalician", - "description": "Selects the Lucene stemming tokenizer for Galician that does minimal stemming." - }, - { - "name": "German", - "value": "german", - "description": "Selects the Lucene stemming tokenizer for German." - }, - { - "name": "German2", - "value": "german2", - "description": "Selects the Lucene stemming tokenizer that uses the German variant algorithm." - }, - { - "name": "LightGerman", - "value": "lightGerman", - "description": "Selects the Lucene stemming tokenizer for German that does light stemming." - }, - { - "name": "MinimalGerman", - "value": "minimalGerman", - "description": "Selects the Lucene stemming tokenizer for German that does minimal stemming." - }, - { - "name": "Greek", - "value": "greek", - "description": "Selects the Lucene stemming tokenizer for Greek." - }, - { - "name": "Hindi", - "value": "hindi", - "description": "Selects the Lucene stemming tokenizer for Hindi." - }, - { - "name": "Hungarian", - "value": "hungarian", - "description": "Selects the Lucene stemming tokenizer for Hungarian." - }, - { - "name": "LightHungarian", - "value": "lightHungarian", - "description": "Selects the Lucene stemming tokenizer for Hungarian that does light stemming." - }, - { - "name": "Indonesian", - "value": "indonesian", - "description": "Selects the Lucene stemming tokenizer for Indonesian." - }, - { - "name": "Irish", - "value": "irish", - "description": "Selects the Lucene stemming tokenizer for Irish." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the Lucene stemming tokenizer for Italian." - }, - { - "name": "LightItalian", - "value": "lightItalian", - "description": "Selects the Lucene stemming tokenizer for Italian that does light stemming." - }, - { - "name": "Sorani", - "value": "sorani", - "description": "Selects the Lucene stemming tokenizer for Sorani." - }, - { - "name": "Latvian", - "value": "latvian", - "description": "Selects the Lucene stemming tokenizer for Latvian." - }, - { - "name": "Norwegian", - "value": "norwegian", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål)." - }, - { - "name": "LightNorwegian", - "value": "lightNorwegian", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light\nstemming." - }, - { - "name": "MinimalNorwegian", - "value": "minimalNorwegian", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal\nstemming." - }, - { - "name": "LightNynorsk", - "value": "lightNynorsk", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light\nstemming." - }, - { - "name": "MinimalNynorsk", - "value": "minimalNynorsk", - "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal\nstemming." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the Lucene stemming tokenizer for Portuguese." - }, - { - "name": "LightPortuguese", - "value": "lightPortuguese", - "description": "Selects the Lucene stemming tokenizer for Portuguese that does light stemming." - }, - { - "name": "MinimalPortuguese", - "value": "minimalPortuguese", - "description": "Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming." - }, - { - "name": "PortugueseRslp", - "value": "portugueseRslp", - "description": "Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP\nstemming algorithm." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the Lucene stemming tokenizer for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the Lucene stemming tokenizer for Russian." - }, - { - "name": "LightRussian", - "value": "lightRussian", - "description": "Selects the Lucene stemming tokenizer for Russian that does light stemming." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the Lucene stemming tokenizer for Spanish." - }, - { - "name": "LightSpanish", - "value": "lightSpanish", - "description": "Selects the Lucene stemming tokenizer for Spanish that does light stemming." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the Lucene stemming tokenizer for Swedish." - }, - { - "name": "LightSwedish", - "value": "lightSwedish", - "description": "Selects the Lucene stemming tokenizer for Swedish that does light stemming." - }, - { - "name": "Turkish", - "value": "turkish", - "description": "Selects the Lucene stemming tokenizer for Turkish." - } - ] - } - }, - "StopAnalyzer": { - "type": "object", - "description": "Divides text at non-letters; Applies the lowercase and stopword token filters.\nThis analyzer is implemented using Apache Lucene.", - "properties": { - "stopwords": { - "type": "array", - "description": "A list of stopwords.", - "items": { - "type": "string" - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalAnalyzer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer" - }, - "StopwordsList": { - "type": "string", - "description": "Identifies a predefined list of language-specific stopwords.", - "enum": [ - "arabic", - "armenian", - "basque", - "brazilian", - "bulgarian", - "catalan", - "czech", - "danish", - "dutch", - "english", - "finnish", - "french", - "galician", - "german", - "greek", - "hindi", - "hungarian", - "indonesian", - "irish", - "italian", - "latvian", - "norwegian", - "persian", - "portuguese", - "romanian", - "russian", - "sorani", - "spanish", - "swedish", - "thai", - "turkish" - ], - "x-ms-enum": { - "name": "StopwordsList", - "modelAsString": true, - "values": [ - { - "name": "Arabic", - "value": "arabic", - "description": "Selects the stopword list for Arabic." - }, - { - "name": "Armenian", - "value": "armenian", - "description": "Selects the stopword list for Armenian." - }, - { - "name": "Basque", - "value": "basque", - "description": "Selects the stopword list for Basque." - }, - { - "name": "Brazilian", - "value": "brazilian", - "description": "Selects the stopword list for Portuguese (Brazil)." - }, - { - "name": "Bulgarian", - "value": "bulgarian", - "description": "Selects the stopword list for Bulgarian." - }, - { - "name": "Catalan", - "value": "catalan", - "description": "Selects the stopword list for Catalan." - }, - { - "name": "Czech", - "value": "czech", - "description": "Selects the stopword list for Czech." - }, - { - "name": "Danish", - "value": "danish", - "description": "Selects the stopword list for Danish." - }, - { - "name": "Dutch", - "value": "dutch", - "description": "Selects the stopword list for Dutch." - }, - { - "name": "English", - "value": "english", - "description": "Selects the stopword list for English." - }, - { - "name": "Finnish", - "value": "finnish", - "description": "Selects the stopword list for Finnish." - }, - { - "name": "French", - "value": "french", - "description": "Selects the stopword list for French." - }, - { - "name": "Galician", - "value": "galician", - "description": "Selects the stopword list for Galician." - }, - { - "name": "German", - "value": "german", - "description": "Selects the stopword list for German." - }, - { - "name": "Greek", - "value": "greek", - "description": "Selects the stopword list for Greek." - }, - { - "name": "Hindi", - "value": "hindi", - "description": "Selects the stopword list for Hindi." - }, - { - "name": "Hungarian", - "value": "hungarian", - "description": "Selects the stopword list for Hungarian." - }, - { - "name": "Indonesian", - "value": "indonesian", - "description": "Selects the stopword list for Indonesian." - }, - { - "name": "Irish", - "value": "irish", - "description": "Selects the stopword list for Irish." - }, - { - "name": "Italian", - "value": "italian", - "description": "Selects the stopword list for Italian." - }, - { - "name": "Latvian", - "value": "latvian", - "description": "Selects the stopword list for Latvian." - }, - { - "name": "Norwegian", - "value": "norwegian", - "description": "Selects the stopword list for Norwegian." - }, - { - "name": "Persian", - "value": "persian", - "description": "Selects the stopword list for Persian." - }, - { - "name": "Portuguese", - "value": "portuguese", - "description": "Selects the stopword list for Portuguese." - }, - { - "name": "Romanian", - "value": "romanian", - "description": "Selects the stopword list for Romanian." - }, - { - "name": "Russian", - "value": "russian", - "description": "Selects the stopword list for Russian." - }, - { - "name": "Sorani", - "value": "sorani", - "description": "Selects the stopword list for Sorani." - }, - { - "name": "Spanish", - "value": "spanish", - "description": "Selects the stopword list for Spanish." - }, - { - "name": "Swedish", - "value": "swedish", - "description": "Selects the stopword list for Swedish." - }, - { - "name": "Thai", - "value": "thai", - "description": "Selects the stopword list for Thai." - }, - { - "name": "Turkish", - "value": "turkish", - "description": "Selects the stopword list for Turkish." - } - ] - } - }, - "StopwordsTokenFilter": { - "type": "object", - "description": "Removes stop words from a token stream. This token filter is implemented using\nApache Lucene.", - "properties": { - "stopwords": { - "type": "array", - "description": "The list of stopwords. This property and the stopwords list property cannot\nboth be set.", - "items": { - "type": "string" - } - }, - "stopwordsList": { - "$ref": "#/definitions/StopwordsList", - "description": "A predefined list of stopwords to use. This property and the stopwords property\ncannot both be set. Default is English." - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether to ignore case. If true, all words are converted to\nlower case first. Default is false." - }, - "removeTrailing": { - "type": "boolean", - "description": "A value indicating whether to ignore the last search term if it's a stop word.\nDefault is true.", - "default": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter" - }, - "SynonymMap": { - "type": "object", - "description": "Represents a synonym map definition.", - "properties": { - "name": { - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "description": "The format of the synonym map. Only the 'solr' format is currently supported.", - "enum": [ - "solr" - ], - "x-ms-enum": { - "modelAsString": false - } - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must\nbe separated by newlines." - }, - "encryptionKey": { - "$ref": "#/definitions/SearchResourceEncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key\nis used to provide an additional level of encryption-at-rest for your data when\nyou want full assurance that no one, not even Microsoft, can decrypt your data.\nOnce you have encrypted your data, it will always remain encrypted. The search\nservice will ignore attempts to set this property to null. You can change this\nproperty as needed if you want to rotate your encryption key; Your data will be\nunaffected. Encryption with customer-managed keys is not available for free\nsearch services, and is only available for paid services created on or after\nJanuary 1, 2019." - }, - "@odata.etag": { - "type": "string", - "description": "The ETag of the synonym map.", - "x-ms-client-name": "eTag" - } - }, - "required": [ - "name", - "format", - "synonyms" - ] - }, - "SynonymTokenFilter": { - "type": "object", - "description": "Matches single or multi-word synonyms in a token stream. This token filter is\nimplemented using Apache Lucene.", - "properties": { - "synonyms": { - "type": "array", - "description": "A list of synonyms in following one of two formats: 1. incredible,\nunbelievable, fabulous => amazing - all terms on the left side of => symbol\nwill be replaced with all terms on its right side; 2. incredible, unbelievable,\nfabulous, amazing - comma separated list of equivalent words. Set the expand\noption to change how this list is interpreted.", - "items": { - "type": "string" - } - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether to case-fold input for matching. Default is false." - }, - "expand": { - "type": "boolean", - "description": "A value indicating whether all words in the list of synonyms (if => notation is\nnot used) will map to one another. If true, all words in the list of synonyms\n(if => notation is not used) will map to one another. The following list:\nincredible, unbelievable, fabulous, amazing is equivalent to: incredible,\nunbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing.\nIf false, the following list: incredible, unbelievable, fabulous, amazing will\nbe equivalent to: incredible, unbelievable, fabulous, amazing => incredible.\nDefault is true.", - "default": true - } - }, - "required": [ - "synonyms" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter" - }, - "TagScoringFunction": { - "type": "object", - "description": "Defines a function that boosts scores of documents with string values matching\na given list of tags.", - "properties": { - "tag": { - "$ref": "#/definitions/TagScoringParameters", - "description": "Parameter values for the tag scoring function." - } - }, - "required": [ - "tag" - ], - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "x-ms-discriminator-value": "tag" - }, - "TagScoringParameters": { - "type": "object", - "description": "Provides parameter values to a tag scoring function.", - "properties": { - "tagsParameter": { - "type": "string", - "description": "The name of the parameter passed in search queries to specify the list of tags\nto compare against the target field." - } - }, - "required": [ - "tagsParameter" - ] - }, - "TextSplitMode": { - "type": "string", - "description": "A value indicating which split mode to perform.", - "enum": [ - "pages", - "sentences" - ], - "x-ms-enum": { - "name": "TextSplitMode", - "modelAsString": true, - "values": [ - { - "name": "Pages", - "value": "pages", - "description": "Split the text into individual pages." - }, - { - "name": "Sentences", - "value": "sentences", - "description": "Split the text into individual sentences." - } - ] - } - }, - "TextTranslationSkill": { - "type": "object", - "description": "A skill to translate text from one language to another.", - "properties": { - "defaultToLanguageCode": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents into for documents that don't specify\nthe to language explicitly." - }, - "defaultFromLanguageCode": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents from for documents that don't specify\nthe from language explicitly." - }, - "suggestedFrom": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents from when neither the fromLanguageCode\ninput nor the defaultFromLanguageCode parameter are provided, and the automatic\nlanguage detection is unsuccessful. Default is `en`." - } - }, - "required": [ - "defaultToLanguageCode" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill" - }, - "TextTranslationSkillLanguage": { - "type": "string", - "description": "The language codes supported for input text by TextTranslationSkill.", - "enum": [ - "af", - "ar", - "bn", - "bs", - "bg", - "yue", - "ca", - "zh-Hans", - "zh-Hant", - "hr", - "cs", - "da", - "nl", - "en", - "et", - "fj", - "fil", - "fi", - "fr", - "de", - "el", - "ht", - "he", - "hi", - "mww", - "hu", - "is", - "id", - "it", - "ja", - "sw", - "tlh", - "tlh-Latn", - "tlh-Piqd", - "ko", - "lv", - "lt", - "mg", - "ms", - "mt", - "nb", - "fa", - "pl", - "pt", - "pt-br", - "pt-PT", - "otq", - "ro", - "ru", - "sm", - "sr-Cyrl", - "sr-Latn", - "sk", - "sl", - "es", - "sv", - "ty", - "ta", - "te", - "th", - "to", - "tr", - "uk", - "ur", - "vi", - "cy", - "yua", - "ga", - "kn", - "mi", - "ml", - "pa" - ], - "x-ms-enum": { - "name": "TextTranslationSkillLanguage", - "modelAsString": true, - "values": [ - { - "name": "af", - "value": "af", - "description": "Afrikaans" - }, - { - "name": "ar", - "value": "ar", - "description": "Arabic" - }, - { - "name": "bn", - "value": "bn", - "description": "Bangla" - }, - { - "name": "bs", - "value": "bs", - "description": "Bosnian (Latin)" - }, - { - "name": "bg", - "value": "bg", - "description": "Bulgarian" - }, - { - "name": "yue", - "value": "yue", - "description": "Cantonese (Traditional)" - }, - { - "name": "ca", - "value": "ca", - "description": "Catalan" - }, - { - "name": "zh-Hans", - "value": "zh-Hans", - "description": "Chinese Simplified" - }, - { - "name": "zh-Hant", - "value": "zh-Hant", - "description": "Chinese Traditional" - }, - { - "name": "hr", - "value": "hr", - "description": "Croatian" - }, - { - "name": "cs", - "value": "cs", - "description": "Czech" - }, - { - "name": "da", - "value": "da", - "description": "Danish" - }, - { - "name": "nl", - "value": "nl", - "description": "Dutch" - }, - { - "name": "en", - "value": "en", - "description": "English" - }, - { - "name": "et", - "value": "et", - "description": "Estonian" - }, - { - "name": "fj", - "value": "fj", - "description": "Fijian" - }, - { - "name": "fil", - "value": "fil", - "description": "Filipino" - }, - { - "name": "fi", - "value": "fi", - "description": "Finnish" - }, - { - "name": "fr", - "value": "fr", - "description": "French" - }, - { - "name": "de", - "value": "de", - "description": "German" - }, - { - "name": "el", - "value": "el", - "description": "Greek" - }, - { - "name": "ht", - "value": "ht", - "description": "Haitian Creole" - }, - { - "name": "he", - "value": "he", - "description": "Hebrew" - }, - { - "name": "hi", - "value": "hi", - "description": "Hindi" - }, - { - "name": "mww", - "value": "mww", - "description": "Hmong Daw" - }, - { - "name": "hu", - "value": "hu", - "description": "Hungarian" - }, - { - "name": "is", - "value": "is", - "description": "Icelandic" - }, - { - "name": "id", - "value": "id", - "description": "Indonesian" - }, - { - "name": "it", - "value": "it", - "description": "Italian" - }, - { - "name": "ja", - "value": "ja", - "description": "Japanese" - }, - { - "name": "sw", - "value": "sw", - "description": "Kiswahili" - }, - { - "name": "tlh", - "value": "tlh", - "description": "Klingon" - }, - { - "name": "tlh-Latn", - "value": "tlh-Latn", - "description": "Klingon (Latin script)" - }, - { - "name": "tlh-Piqd", - "value": "tlh-Piqd", - "description": "Klingon (Klingon script)" - }, - { - "name": "ko", - "value": "ko", - "description": "Korean" - }, - { - "name": "lv", - "value": "lv", - "description": "Latvian" - }, - { - "name": "lt", - "value": "lt", - "description": "Lithuanian" - }, - { - "name": "mg", - "value": "mg", - "description": "Malagasy" - }, - { - "name": "ms", - "value": "ms", - "description": "Malay" - }, - { - "name": "mt", - "value": "mt", - "description": "Maltese" - }, - { - "name": "nb", - "value": "nb", - "description": "Norwegian" - }, - { - "name": "fa", - "value": "fa", - "description": "Persian" - }, - { - "name": "pl", - "value": "pl", - "description": "Polish" - }, - { - "name": "pt", - "value": "pt", - "description": "Portuguese" - }, - { - "name": "pt-br", - "value": "pt-br", - "description": "Portuguese (Brazil)" - }, - { - "name": "pt-PT", - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "name": "otq", - "value": "otq", - "description": "Queretaro Otomi" - }, - { - "name": "ro", - "value": "ro", - "description": "Romanian" - }, - { - "name": "ru", - "value": "ru", - "description": "Russian" - }, - { - "name": "sm", - "value": "sm", - "description": "Samoan" - }, - { - "name": "sr-Cyrl", - "value": "sr-Cyrl", - "description": "Serbian (Cyrillic)" - }, - { - "name": "sr-Latn", - "value": "sr-Latn", - "description": "Serbian (Latin)" - }, - { - "name": "sk", - "value": "sk", - "description": "Slovak" - }, - { - "name": "sl", - "value": "sl", - "description": "Slovenian" - }, - { - "name": "es", - "value": "es", - "description": "Spanish" - }, - { - "name": "sv", - "value": "sv", - "description": "Swedish" - }, - { - "name": "ty", - "value": "ty", - "description": "Tahitian" - }, - { - "name": "ta", - "value": "ta", - "description": "Tamil" - }, - { - "name": "te", - "value": "te", - "description": "Telugu" - }, - { - "name": "th", - "value": "th", - "description": "Thai" - }, - { - "name": "to", - "value": "to", - "description": "Tongan" - }, - { - "name": "tr", - "value": "tr", - "description": "Turkish" - }, - { - "name": "uk", - "value": "uk", - "description": "Ukrainian" - }, - { - "name": "ur", - "value": "ur", - "description": "Urdu" - }, - { - "name": "vi", - "value": "vi", - "description": "Vietnamese" - }, - { - "name": "cy", - "value": "cy", - "description": "Welsh" - }, - { - "name": "yua", - "value": "yua", - "description": "Yucatec Maya" - }, - { - "name": "ga", - "value": "ga", - "description": "Irish" - }, - { - "name": "kn", - "value": "kn", - "description": "Kannada" - }, - { - "name": "mi", - "value": "mi", - "description": "Maori" - }, - { - "name": "ml", - "value": "ml", - "description": "Malayalam" - }, - { - "name": "pa", - "value": "pa", - "description": "Punjabi" - } - ] - } - }, - "TextWeights": { - "type": "object", - "description": "Defines weights on index fields for which matches should boost scoring in\nsearch queries.", - "properties": { - "weights": { - "type": "object", - "description": "The dictionary of per-field weights to boost document scoring. The keys are\nfield names and the values are the weights for each field.", - "additionalProperties": { - "format": "double", - "type": "number" - } - } - }, - "required": [ - "weights" - ] - }, - "TokenCharacterKind": { - "type": "string", - "description": "Represents classes of characters on which a token filter can operate.", - "enum": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "x-ms-enum": { - "name": "TokenCharacterKind", - "modelAsString": true, - "values": [ - { - "name": "Letter", - "value": "letter", - "description": "Keeps letters in tokens." - }, - { - "name": "Digit", - "value": "digit", - "description": "Keeps digits in tokens." - }, - { - "name": "Whitespace", - "value": "whitespace", - "description": "Keeps whitespace in tokens." - }, - { - "name": "Punctuation", - "value": "punctuation", - "description": "Keeps punctuation in tokens." - }, - { - "name": "Symbol", - "value": "symbol", - "description": "Keeps symbols in tokens." - } - ] - } - }, - "TokenFilter": { - "type": "object", - "description": "Base type for token filters.", - "properties": { - "@odata.type": { - "type": "string", - "description": "The discriminator for derived types." - }, - "name": { - "type": "string", - "description": "The name of the token filter. It must only contain letters, digits, spaces,\ndashes or underscores, can only start and end with alphanumeric characters, and\nis limited to 128 characters." - } - }, - "discriminator": "@odata.type", - "required": [ - "@odata.type", - "name" - ] - }, - "TokenFilterName": { - "type": "string", - "description": "Defines the names of all token filters supported by the search engine.", - "enum": [ - "arabic_normalization", - "apostrophe", - "asciifolding", - "cjk_bigram", - "cjk_width", - "classic", - "common_grams", - "edgeNGram_v2", - "elision", - "german_normalization", - "hindi_normalization", - "indic_normalization", - "keyword_repeat", - "kstem", - "length", - "limit", - "lowercase", - "nGram_v2", - "persian_normalization", - "phonetic", - "porter_stem", - "reverse", - "scandinavian_normalization", - "scandinavian_folding", - "shingle", - "snowball", - "sorani_normalization", - "stemmer", - "stopwords", - "trim", - "truncate", - "unique", - "uppercase", - "word_delimiter" - ], - "x-ms-enum": { - "name": "TokenFilterName", - "modelAsString": true, - "values": [ - { - "name": "ArabicNormalization", - "value": "arabic_normalization", - "description": "A token filter that applies the Arabic normalizer to normalize the orthography.\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" - }, - { - "name": "Apostrophe", - "value": "apostrophe", - "description": "Strips all characters after an apostrophe (including the apostrophe itself).\nSee\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" - }, - { - "name": "AsciiFolding", - "value": "asciifolding", - "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in\nthe first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their\nASCII equivalents, if such equivalents exist. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" - }, - { - "name": "CjkBigram", - "value": "cjk_bigram", - "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" - }, - { - "name": "CjkWidth", - "value": "cjk_width", - "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the\nequivalent basic Latin, and half-width Katakana variants into the equivalent\nKana. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" - }, - { - "name": "Classic", - "value": "classic", - "description": "Removes English possessives, and dots from acronyms. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" - }, - { - "name": "CommonGram", - "value": "common_grams", - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" - }, - { - "name": "EdgeNGram", - "value": "edgeNGram_v2", - "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" - }, - { - "name": "Elision", - "value": "elision", - "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to\n\"avion\" (plane). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" - }, - { - "name": "GermanNormalization", - "value": "german_normalization", - "description": "Normalizes German characters according to the heuristics of the German2\nsnowball algorithm. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" - }, - { - "name": "HindiNormalization", - "value": "hindi_normalization", - "description": "Normalizes text in Hindi to remove some differences in spelling variations. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" - }, - { - "name": "IndicNormalization", - "value": "indic_normalization", - "description": "Normalizes the Unicode representation of text in Indian languages. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" - }, - { - "name": "KeywordRepeat", - "value": "keyword_repeat", - "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" - }, - { - "name": "KStem", - "value": "kstem", - "description": "A high-performance kstem filter for English. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" - }, - { - "name": "Length", - "value": "length", - "description": "Removes words that are too long or too short. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" - }, - { - "name": "Limit", - "value": "limit", - "description": "Limits the number of tokens while indexing. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" - }, - { - "name": "Lowercase", - "value": "lowercase", - "description": "Normalizes token text to lower case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.html" - }, - { - "name": "NGram", - "value": "nGram_v2", - "description": "Generates n-grams of the given size(s). See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" - }, - { - "name": "PersianNormalization", - "value": "persian_normalization", - "description": "Applies normalization for Persian. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" - }, - { - "name": "Phonetic", - "value": "phonetic", - "description": "Create tokens for phonetic matches. See\nhttps://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" - }, - { - "name": "PorterStem", - "value": "porter_stem", - "description": "Uses the Porter stemming algorithm to transform the token stream. See\nhttp://tartarus.org/~martin/PorterStemmer" - }, - { - "name": "Reverse", - "value": "reverse", - "description": "Reverses the token string. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" - }, - { - "name": "ScandinavianNormalization", - "value": "scandinavian_normalization", - "description": "Normalizes use of the interchangeable Scandinavian characters. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" - }, - { - "name": "ScandinavianFoldingNormalization", - "value": "scandinavian_folding", - "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also\ndiscriminates against use of double vowels aa, ae, ao, oe and oo, leaving just\nthe first one. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" - }, - { - "name": "Shingle", - "value": "shingle", - "description": "Creates combinations of tokens as a single token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" - }, - { - "name": "Snowball", - "value": "snowball", - "description": "A filter that stems words using a Snowball-generated stemmer. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" - }, - { - "name": "SoraniNormalization", - "value": "sorani_normalization", - "description": "Normalizes the Unicode representation of Sorani text. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" - }, - { - "name": "Stemmer", - "value": "stemmer", - "description": "Language specific stemming filter. See\nhttps://learn.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" - }, - { - "name": "Stopwords", - "value": "stopwords", - "description": "Removes stop words from a token stream. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" - }, - { - "name": "Trim", - "value": "trim", - "description": "Trims leading and trailing whitespace from tokens. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" - }, - { - "name": "Truncate", - "value": "truncate", - "description": "Truncates the terms to a specific length. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" - }, - { - "name": "Unique", - "value": "unique", - "description": "Filters out tokens with same text as the previous token. See\nhttp://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" - }, - { - "name": "Uppercase", - "value": "uppercase", - "description": "Normalizes token text to upper case. See\nhttps://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" - }, - { - "name": "WordDelimiter", - "value": "word_delimiter", - "description": "Splits words into subwords and performs optional transformations on subword\ngroups." - } - ] - } - }, - "TruncateTokenFilter": { - "type": "object", - "description": "Truncates the terms to a specific length. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "length": { - "type": "integer", - "format": "int32", - "description": "The length at which terms will be truncated. Default and maximum is 300.", - "default": 300, - "maximum": 300 - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter" - }, - "UaxUrlEmailTokenizer": { - "type": "object", - "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using\nApache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split. The maximum token length that can be used is 300 characters.", - "default": 255, - "maximum": 300 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer" - }, - "UniqueTokenFilter": { - "type": "object", - "description": "Filters out tokens with same text as the previous token. This token filter is\nimplemented using Apache Lucene.", - "properties": { - "onlyOnSamePosition": { - "type": "boolean", - "description": "A value indicating whether to remove duplicates only at the same position.\nDefault is false." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter" - }, - "VectorEncodingFormat": { - "type": "string", - "description": "The encoding format for interpreting vector field contents.", - "enum": [ - "packedBit" - ], - "x-ms-enum": { - "name": "VectorEncodingFormat", - "modelAsString": true, - "values": [ - { - "name": "PackedBit", - "value": "packedBit", - "description": "Encoding format representing bits packed into a wider data type." - } - ] - } - }, - "VectorSearch": { - "type": "object", - "description": "Contains configuration options related to vector search.", - "properties": { - "profiles": { - "type": "array", - "description": "Defines combinations of configurations to use with vector search.", - "items": { - "$ref": "#/definitions/VectorSearchProfile" - }, - "x-ms-identifiers": [] - }, - "algorithms": { - "type": "array", - "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", - "items": { - "$ref": "#/definitions/VectorSearchAlgorithmConfiguration" - }, - "x-ms-identifiers": [] - }, - "vectorizers": { - "type": "array", - "description": "Contains configuration options on how to vectorize text vector queries.", - "items": { - "$ref": "#/definitions/VectorSearchVectorizer" - }, - "x-ms-identifiers": [] - }, - "compressions": { - "type": "array", - "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", - "items": { - "$ref": "#/definitions/VectorSearchCompression" - }, - "x-ms-identifiers": [] - } - } - }, - "VectorSearchAlgorithmConfiguration": { - "type": "object", - "description": "Contains configuration options specific to the algorithm used during indexing\nor querying.", - "properties": { - "name": { - "type": "string", - "description": "The name to associate with this particular configuration." - }, - "kind": { - "$ref": "#/definitions/VectorSearchAlgorithmKind", - "description": "Type of VectorSearchAlgorithmConfiguration." - } - }, - "discriminator": "kind", - "required": [ - "name", - "kind" - ] - }, - "VectorSearchAlgorithmKind": { - "type": "string", - "description": "The algorithm used for indexing and querying.", - "enum": [ - "hnsw", - "exhaustiveKnn" - ], - "x-ms-enum": { - "name": "VectorSearchAlgorithmKind", - "modelAsString": true, - "values": [ - { - "name": "Hnsw", - "value": "hnsw", - "description": "HNSW (Hierarchical Navigable Small World), a type of approximate nearest\nneighbors algorithm." - }, - { - "name": "ExhaustiveKnn", - "value": "exhaustiveKnn", - "description": "Exhaustive KNN algorithm which will perform brute-force search." - } - ] - } - }, - "VectorSearchAlgorithmMetric": { - "type": "string", - "description": "The similarity metric to use for vector comparisons. It is recommended to\nchoose the same similarity metric as the embedding model was trained on.", - "enum": [ - "cosine", - "euclidean", - "dotProduct", - "hamming" - ], - "x-ms-enum": { - "name": "VectorSearchAlgorithmMetric", - "modelAsString": true, - "values": [ - { - "name": "Cosine", - "value": "cosine", - "description": "Measures the angle between vectors to quantify their similarity, disregarding\nmagnitude. The smaller the angle, the closer the similarity." - }, - { - "name": "Euclidean", - "value": "euclidean", - "description": "Computes the straight-line distance between vectors in a multi-dimensional\nspace. The smaller the distance, the closer the similarity." - }, - { - "name": "DotProduct", - "value": "dotProduct", - "description": "Calculates the sum of element-wise products to gauge alignment and magnitude\nsimilarity. The larger and more positive, the closer the similarity." - }, - { - "name": "Hamming", - "value": "hamming", - "description": "Only applicable to bit-packed binary data types. Determines dissimilarity by\ncounting differing positions in binary vectors. The fewer differences, the\ncloser the similarity." - } - ] - } - }, - "VectorSearchCompression": { - "type": "object", - "description": "Contains configuration options specific to the compression method used during\nindexing or querying.", - "properties": { - "name": { - "type": "string", - "description": "The name to associate with this particular configuration." - }, - "rerankWithOriginalVectors": { - "type": "boolean", - "description": "If set to true, once the ordered set of results calculated using compressed\nvectors are obtained, they will be reranked again by recalculating the\nfull-precision similarity scores. This will improve recall at the expense of\nlatency.", - "default": true - }, - "defaultOversampling": { - "type": "number", - "format": "double", - "description": "Default oversampling factor. Oversampling will internally request more\ndocuments (specified by this multiplier) in the initial search. This increases\nthe set of results that will be reranked using recomputed similarity scores\nfrom full-precision vectors. Minimum value is 1, meaning no oversampling (1x).\nThis parameter can only be set when rerankWithOriginalVectors is true. Higher\nvalues improve recall at the expense of latency." - }, - "kind": { - "$ref": "#/definitions/VectorSearchCompressionKind", - "description": "Type of VectorSearchCompression." - } - }, - "discriminator": "kind", - "required": [ - "name", - "kind" - ] - }, - "VectorSearchCompressionKind": { - "type": "string", - "description": "The compression method used for indexing and querying.", - "enum": [ - "scalarQuantization", - "binaryQuantization" - ], - "x-ms-enum": { - "name": "VectorSearchCompressionKind", - "modelAsString": true, - "values": [ - { - "name": "ScalarQuantization", - "value": "scalarQuantization", - "description": "Scalar Quantization, a type of compression method. In scalar quantization, the\noriginal vectors values are compressed to a narrower type by discretizing and\nrepresenting each component of a vector using a reduced set of quantized\nvalues, thereby reducing the overall data size." - }, - { - "name": "BinaryQuantization", - "value": "binaryQuantization", - "description": "Binary Quantization, a type of compression method. In binary quantization, the\noriginal vectors values are compressed to the narrower binary type by discretizing\nand representing each component of a vector using binary values,\nthereby reducing the overall data size." - } - ] - } - }, - "VectorSearchCompressionTarget": { - "type": "string", - "description": "The quantized data type of compressed vector values.", - "enum": [ - "int8" - ], - "x-ms-enum": { - "name": "VectorSearchCompressionTarget", - "modelAsString": true, - "values": [ - { - "name": "Int8", - "value": "int8", - "description": "8-bit signed integer." - } - ] - } - }, - "VectorSearchProfile": { - "type": "object", - "description": "Defines a combination of configurations to use with vector search.", - "properties": { - "name": { - "type": "string", - "description": "The name to associate with this particular vector search profile." - }, - "algorithm": { - "type": "string", - "description": "The name of the vector search algorithm configuration that specifies the\nalgorithm and optional parameters." - }, - "vectorizer": { - "type": "string", - "description": "The name of the vectorization being configured for use with vector search." - }, - "compression": { - "type": "string", - "description": "The name of the compression method configuration that specifies the compression\nmethod and optional parameters." - } - }, - "required": [ - "name", - "algorithm" - ] - }, - "VectorSearchVectorizer": { - "type": "object", - "description": "Specifies the vectorization method to be used during query time.", - "properties": { - "name": { - "type": "string", - "description": "The name to associate with this particular vectorization method." - }, - "kind": { - "$ref": "#/definitions/VectorSearchVectorizerKind", - "description": "Type of VectorSearchVectorizer." - } - }, - "discriminator": "kind", - "required": [ - "name", - "kind" - ] - }, - "VectorSearchVectorizerKind": { - "type": "string", - "description": "The vectorization method to be used during query time.", - "enum": [ - "azureOpenAI", - "customWebApi" - ], - "x-ms-enum": { - "name": "VectorSearchVectorizerKind", - "modelAsString": true, - "values": [ - { - "name": "AzureOpenAI", - "value": "azureOpenAI", - "description": "Generate embeddings using an Azure OpenAI resource at query time." - }, - { - "name": "CustomWebApi", - "value": "customWebApi", - "description": "Generate embeddings using a custom web endpoint at query time." - } - ] - } - }, - "VisualFeature": { - "type": "string", - "description": "The strings indicating what visual feature types to return.", - "enum": [ - "adult", - "brands", - "categories", - "description", - "faces", - "objects", - "tags" - ], - "x-ms-enum": { - "name": "VisualFeature", - "modelAsString": true, - "values": [ - { - "name": "Adult", - "value": "adult", - "description": "Visual features recognized as adult persons." - }, - { - "name": "Brands", - "value": "brands", - "description": "Visual features recognized as commercial brands." - }, - { - "name": "Categories", - "value": "categories", - "description": "Categories." - }, - { - "name": "Description", - "value": "description", - "description": "Description." - }, - { - "name": "Faces", - "value": "faces", - "description": "Visual features recognized as people faces." - }, - { - "name": "Objects", - "value": "objects", - "description": "Visual features recognized as objects." - }, - { - "name": "Tags", - "value": "tags", - "description": "Tags." - } - ] - } - }, - "WebApiSkill": { - "type": "object", - "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by\nhaving it call your custom code.", - "properties": { - "uri": { - "type": "string", - "description": "The url for the Web API." - }, - "httpHeaders": { - "type": "object", - "description": "The headers required to make the http request.", - "additionalProperties": { - "type": "string" - } - }, - "httpMethod": { - "type": "string", - "description": "The method for the http request." - }, - "timeout": { - "type": "string", - "format": "duration", - "description": "The desired timeout for the request. Default is 30 seconds." - }, - "batchSize": { - "type": "integer", - "format": "int32", - "description": "The desired batch size which indicates number of documents." - }, - "degreeOfParallelism": { - "type": "integer", - "format": "int32", - "description": "If set, the number of parallel calls that can be made to the Web API." - }, - "authResourceId": { - "type": "string", - "description": "Applies to custom skills that connect to external code in an Azure function or\nsome other application that provides the transformations. This value should be\nthe application ID created for the function or app when it was registered with\nAzure Active Directory. When specified, the custom skill connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." - }, - "authIdentity": { - "$ref": "#/definitions/SearchIndexerDataIdentity", - "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." - } - }, - "required": [ - "uri" - ], - "allOf": [ - { - "$ref": "#/definitions/SearchIndexerSkill" - } - ], - "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill" - }, - "WebApiVectorizer": { - "type": "object", - "description": "Specifies a user-defined vectorizer for generating the vector embedding of a\nquery string. Integration of an external vectorizer is achieved using the\ncustom Web API interface of a skillset.", - "properties": { - "customWebApiParameters": { - "$ref": "#/definitions/WebApiVectorizerParameters", - "description": "Specifies the properties of the user-defined vectorizer." - } - }, - "allOf": [ - { - "$ref": "#/definitions/VectorSearchVectorizer" - } - ], - "x-ms-discriminator-value": "customWebApi" - }, - "WebApiVectorizerParameters": { - "type": "object", - "description": "Specifies the properties for connecting to a user-defined vectorizer.", - "properties": { - "uri": { - "type": "string", - "format": "uri", - "description": "The URI of the Web API providing the vectorizer." - }, - "httpHeaders": { - "type": "object", - "description": "The headers required to make the HTTP request.", - "additionalProperties": { - "type": "string" - } - }, - "httpMethod": { - "type": "string", - "description": "The method for the HTTP request." - }, - "timeout": { - "type": "string", - "format": "duration", - "description": "The desired timeout for the request. Default is 30 seconds." - }, - "authResourceId": { - "type": "string", - "description": "Applies to custom endpoints that connect to external code in an Azure function\nor some other application that provides the transformations. This value should\nbe the application ID created for the function or app when it was registered\nwith Azure Active Directory. When specified, the vectorization connects to the\nfunction or app using a managed ID (either system or user-assigned) of the\nsearch service and the access token of the function or app, using this value as\nthe resource id for creating the scope of the access token." - }, - "authIdentity": { - "$ref": "#/definitions/SearchIndexerDataIdentity", - "description": "The user-assigned managed identity used for outbound connections. If an\nauthResourceId is provided and it's not specified, the system-assigned managed\nidentity is used. On updates to the indexer, if the identity is unspecified,\nthe value remains unchanged. If set to \"none\", the value of this property is\ncleared." - } - } - }, - "WordDelimiterTokenFilter": { - "type": "object", - "description": "Splits words into subwords and performs optional transformations on subword\ngroups. This token filter is implemented using Apache Lucene.", - "properties": { - "generateWordParts": { - "type": "boolean", - "description": "A value indicating whether to generate part words. If set, causes parts of\nwords to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\".\nDefault is true.", - "default": true - }, - "generateNumberParts": { - "type": "boolean", - "description": "A value indicating whether to generate number subwords. Default is true.", - "default": true - }, - "catenateWords": { - "type": "boolean", - "description": "A value indicating whether maximum runs of word parts will be catenated. For\nexample, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default\nis false." - }, - "catenateNumbers": { - "type": "boolean", - "description": "A value indicating whether maximum runs of number parts will be catenated. For\nexample, if this is set to true, \"1-2\" becomes \"12\". Default is false." - }, - "catenateAll": { - "type": "boolean", - "description": "A value indicating whether all subword parts will be catenated. For example, if\nthis is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." - }, - "splitOnCaseChange": { - "type": "boolean", - "description": "A value indicating whether to split words on caseChange. For example, if this\nis set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true.", - "default": true - }, - "preserveOriginal": { - "type": "boolean", - "description": "A value indicating whether original words will be preserved and added to the\nsubword list. Default is false." - }, - "splitOnNumerics": { - "type": "boolean", - "description": "A value indicating whether to split on numbers. For example, if this is set to\ntrue, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true.", - "default": true - }, - "stemEnglishPossessive": { - "type": "boolean", - "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is\ntrue.", - "default": true - }, - "protectedWords": { - "type": "array", - "description": "A list of tokens to protect from being delimited.", - "items": { - "type": "string" - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter" - } - }, - "parameters": { - "Azure.Core.ClientRequestIdHeader": { - "name": "x-ms-client-request-id", - "in": "header", - "description": "An opaque, globally-unique, client-generated string identifier for the request.", - "required": false, - "type": "string", - "format": "uuid", - "x-ms-parameter-location": "method", - "x-ms-client-name": "clientRequestId" - }, - "Azure.Core.Foundations.ApiVersionParameter": { - "name": "api-version", - "in": "query", - "description": "The API version to use for this operation.", - "required": true, - "type": "string", - "minLength": 1, - "x-ms-parameter-location": "method", - "x-ms-client-name": "apiVersion" - } - } -} From 50a2233170c9b5021f2bed79e47907f2e09b44dc Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 16:35:23 -0800 Subject: [PATCH 64/78] update --- specification/search/Azure.Search.Index/main.tsp | 6 ------ specification/search/Azure.Search.Service/main.tsp | 6 ------ 2 files changed, 12 deletions(-) diff --git a/specification/search/Azure.Search.Index/main.tsp b/specification/search/Azure.Search.Index/main.tsp index 74400efd8b04..fa091c2fbad0 100644 --- a/specification/search/Azure.Search.Index/main.tsp +++ b/specification/search/Azure.Search.Index/main.tsp @@ -39,10 +39,4 @@ enum Versions { */ @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2024_07_01: "2024-07-01", - - /** - * The 2024-11-01-preview API version. - */ - @useDependency(Azure.Core.Versions.v1_0_Preview_2) - v2024_11_01_preview: "2024-11-01-preview", } diff --git a/specification/search/Azure.Search.Service/main.tsp b/specification/search/Azure.Search.Service/main.tsp index 1cdae5f17bfb..00561388c060 100644 --- a/specification/search/Azure.Search.Service/main.tsp +++ b/specification/search/Azure.Search.Service/main.tsp @@ -39,10 +39,4 @@ enum Versions { */ @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2024_07_01: "2024-07-01", - - /** - * The 2024-11-01-preview API version. - */ - @useDependency(Azure.Core.Versions.v1_0_Preview_2) - v2024_11_01_preview: "2024-11-01-preview", } From bafb92505dc07d2b7da0820e524deb2d7440cef2 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 16:45:14 -0800 Subject: [PATCH 65/78] add readme --- .../search/data-plane/Search/readme.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/specification/search/data-plane/Search/readme.md b/specification/search/data-plane/Search/readme.md index 1146440ca0fb..e5dc3fefe5a0 100644 --- a/specification/search/data-plane/Search/readme.md +++ b/specification/search/data-plane/Search/readme.md @@ -42,6 +42,32 @@ suppressions: reason: Legacy swagger file ``` +### Tag: package-searchindex-2024-07-01 + +These settings apply only when `--tag=package-searchindex-2024-07-01` is specified on the command line. + +``` yaml $(tag) == 'package-searchindex-2024-07-01' +input-file: +- stable/2024-07-01/searchindex.json +suppressions: + - code: LroExtension + from: searchindex.json + reason: Legacy swagger file +``` + +### Tag: package-searchservice-2024-07-01 + +These settings apply only when `--tag=package-searchservice-2024-07-01` is specified on the command line. + +``` yaml $(tag) == 'package-searchservice-2024-07-01' +input-file: +- stable/2024-07-01/searchservice.json +suppressions: + - code: LroExtension + from: searchservice.json + reason: Legacy swagger file +``` + ### Suppression ``` yaml directive: From 338106468948bf51767facb3f87dc90efcfed800 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 17:06:57 -0800 Subject: [PATCH 66/78] update --- specification/search/Azure.Search/models-index.tsp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/specification/search/Azure.Search/models-index.tsp b/specification/search/Azure.Search/models-index.tsp index 9452bf7c771f..eaece8ce9d53 100644 --- a/specification/search/Azure.Search/models-index.tsp +++ b/specification/search/Azure.Search/models-index.tsp @@ -331,7 +331,7 @@ model SearchDocumentsResult { * requested results in a single response. You can use this JSON along with * @odata.nextLink to formulate another POST Search request to get the next part * of the search response. - * / + */ @encodedName("application/json", "@search.nextPageParameters") nextPageParameters?: SearchRequest; @@ -465,7 +465,7 @@ model SearchRequest { * $orderby is specified, the default sort order is descending by document match * score. There can be at most 32 $orderby clauses. */ - $orderby?: string; + orderby?: string; /** * A value that specifies the syntax of the search query. The default is 'simple'. @@ -789,7 +789,7 @@ model SuggestRequest { * $orderby is specified, the default sort order is descending by document match * score. There can be at most 32 $orderby clauses. */ - $orderby?: string; + orderby?: string; /** * The search text to use to suggest documents. Must be at least 1 character, and From ad5786cd5391b9ba0820bbb1524412291c1ba2f9 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 17:17:01 -0800 Subject: [PATCH 67/78] update --- specification/search/Azure.Search/client.tsp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index ac256be0f828..0b73c7eb2611 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -18,10 +18,10 @@ namespace Customizations; @@clientName(SearchRequest.count, "includeTotalResultCount"); @@clientName(SearchRequest.highlight, "highlightFields"); @@clientName(SearchRequest.search, "searchText"); -@@clientName(SearchRequest.$orderby, "$orderBy"); +@@clientName(SearchRequest.orderby, "orderBy"); @@clientName(SuggestDocumentsResult.value, "results"); @@clientName(SuggestRequest.fuzzy, "useFuzzyMatching"); -@@clientName(SuggestRequest.$orderby, "$orderBy"); +@@clientName(SuggestRequest.orderby, "orderBy"); @@clientName(SuggestRequest.search, "searchText"); @@clientName(IndexBatch.value, "actions"); @@clientName(IndexDocumentsResult.value, "results"); From a4dcde64058c13380afbf2e1f740906807fba9fa Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 17:19:34 -0800 Subject: [PATCH 68/78] update --- .../Search/stable/2024-07-01/searchindex.json | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json index 622b5b66c682..975fa65418ce 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json @@ -1499,9 +1499,14 @@ "x-ms-client-name": "answers", "x-ms-identifiers": [] }, + "@search.nextPageParameters": { + "$ref": "#/definitions/SearchRequest", + "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with", + "x-ms-client-name": "nextPageParameters" + }, "value": { "type": "array", - "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with", + "description": "The sequence of results returned by the query.", "items": { "$ref": "#/definitions/SearchResult" }, @@ -1587,7 +1592,7 @@ "format": "double", "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100." }, - "$orderby": { + "orderby": { "type": "string", "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." }, @@ -1848,7 +1853,7 @@ "format": "double", "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestion query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." }, - "$orderby": { + "orderby": { "type": "string", "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." }, From 8145c23fb8f747dc315945785c081b42ab6eb390 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Tue, 28 Jan 2025 17:39:43 -0800 Subject: [PATCH 69/78] update --- .../data-plane/Search/stable/2024-07-01/search.json | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/search.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json index 1cade1cff147..f6da5b510121 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/search.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -9090,9 +9090,14 @@ "x-ms-client-name": "answers", "x-ms-identifiers": [] }, + "@search.nextPageParameters": { + "$ref": "#/definitions/SearchRequest", + "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with", + "x-ms-client-name": "nextPageParameters" + }, "value": { "type": "array", - "description": "Continuation JSON payload returned when the query can't return all the\nrequested results in a single response. You can use this JSON along with", + "description": "The sequence of results returned by the query.", "items": { "$ref": "#/definitions/SearchResult" }, @@ -10098,7 +10103,7 @@ "format": "double", "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a search query in order for the query to be reported as a success.\nThis parameter can be useful for ensuring search availability even for services\nwith only one replica. The default is 100." }, - "$orderby": { + "orderby": { "type": "string", "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." }, @@ -11865,7 +11870,7 @@ "format": "double", "description": "A number between 0 and 100 indicating the percentage of the index that must be\ncovered by a suggestion query in order for the query to be reported as a\nsuccess. This parameter can be useful for ensuring search availability even for\nservices with only one replica. The default is 80." }, - "$orderby": { + "orderby": { "type": "string", "description": "The comma-separated list of OData $orderby expressions by which to sort the\nresults. Each expression can be either a field name or a call to either the\ngeo.distance() or the search.score() functions. Each expression can be followed\nby asc to indicate ascending, or desc to indicate descending. The default is\nascending order. Ties will be broken by the match scores of documents. If no\n$orderby is specified, the default sort order is descending by document match\nscore. There can be at most 32 $orderby clauses." }, From 3f76191fa925e562f49799940518a5617d90b05c Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 29 Jan 2025 09:13:25 -0800 Subject: [PATCH 70/78] updates --- specification/search/Azure.Search.Index/tspconfig.yaml | 3 ++- specification/search/Azure.Search.Service/tspconfig.yaml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/specification/search/Azure.Search.Index/tspconfig.yaml b/specification/search/Azure.Search.Index/tspconfig.yaml index ce7a43516107..7b880aee3726 100644 --- a/specification/search/Azure.Search.Index/tspconfig.yaml +++ b/specification/search/Azure.Search.Index/tspconfig.yaml @@ -2,7 +2,8 @@ parameters: "service-dir": default: "sdk/search" "dependencies": - "additionalDirectories": [] + "additionalDirectories": + - "specification/search/Azure.Search/" default: "" emit: - "@azure-tools/typespec-autorest" diff --git a/specification/search/Azure.Search.Service/tspconfig.yaml b/specification/search/Azure.Search.Service/tspconfig.yaml index d4670e13ec60..1ce373fc201b 100644 --- a/specification/search/Azure.Search.Service/tspconfig.yaml +++ b/specification/search/Azure.Search.Service/tspconfig.yaml @@ -2,7 +2,8 @@ parameters: "service-dir": default: "sdk/search" "dependencies": - "additionalDirectories": [] + "additionalDirectories": + - "specification/search/Azure.Search/" default: "" emit: - "@azure-tools/typespec-autorest" From cdd6d7d64cba432b45d0715d7168da429b2fc7b5 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 30 Jan 2025 17:03:27 -0800 Subject: [PATCH 71/78] updates --- .../search/Azure.Search.Index/main.tsp | 2 +- .../search/Azure.Search.Service/main.tsp | 2 +- .../search/Azure.Search/routes-index.tsp | 2 +- .../search/Azure.Search/routes-service.tsp | 10 +- .../Search/stable/2024-07-01/search.json | 279 +++--------------- .../Search/stable/2024-07-01/searchindex.json | 71 +---- .../stable/2024-07-01/searchservice.json | 212 ++----------- 7 files changed, 88 insertions(+), 490 deletions(-) diff --git a/specification/search/Azure.Search.Index/main.tsp b/specification/search/Azure.Search.Index/main.tsp index fa091c2fbad0..8810d5dd66d8 100644 --- a/specification/search/Azure.Search.Index/main.tsp +++ b/specification/search/Azure.Search.Index/main.tsp @@ -25,7 +25,7 @@ using TypeSpec.Versioning; ]> ) @service({ - title: "Azure AI Search", + title: "Search Index Client", }) @versioned(Versions) namespace Search; diff --git a/specification/search/Azure.Search.Service/main.tsp b/specification/search/Azure.Search.Service/main.tsp index 00561388c060..2f0380b25a85 100644 --- a/specification/search/Azure.Search.Service/main.tsp +++ b/specification/search/Azure.Search.Service/main.tsp @@ -25,7 +25,7 @@ using TypeSpec.Versioning; ]> ) @service({ - title: "Azure AI Search", + title: "Search Service Client", }) @versioned(Versions) namespace Search; diff --git a/specification/search/Azure.Search/routes-index.tsp b/specification/search/Azure.Search/routes-index.tsp index d4b94f708ba3..cd119ba60cb4 100644 --- a/specification/search/Azure.Search/routes-index.tsp +++ b/specification/search/Azure.Search/routes-index.tsp @@ -9,7 +9,7 @@ using Azure.Core; namespace Search; @route("/indexes('{indexName}')") -interface DocumentsOperations { +interface Documents { /** * Queries the number of documents in the index. */ diff --git a/specification/search/Azure.Search/routes-service.tsp b/specification/search/Azure.Search/routes-service.tsp index 3d031af310fb..c20b63fee9d9 100644 --- a/specification/search/Azure.Search/routes-service.tsp +++ b/specification/search/Azure.Search/routes-service.tsp @@ -7,7 +7,7 @@ using TypeSpec.Http; namespace Search; -interface DataSourcesOperations { +interface DataSources { /** * Creates a new datasource or updates a datasource if it already exists. */ @@ -97,7 +97,7 @@ interface DataSourcesOperations { >; } -interface IndexersOperations { +interface Indexers { /** * Resets the change tracking state associated with an indexer. */ @@ -231,7 +231,7 @@ interface IndexersOperations { getStatus is SearchIndexerOperation<{}, SearchIndexerStatus>; } -interface SkillsetsOperations { +interface Skillsets { /** * Creates a new skillset in a search service or updates the skillset if it * already exists. @@ -324,7 +324,7 @@ interface SkillsetsOperations { >; } -interface SynonymMapsOperations { +interface SynonymMaps { /** * Creates a new synonym map or updates a synonym map if it already exists. */ @@ -415,7 +415,7 @@ interface SynonymMapsOperations { >; } -interface IndexesOperations { +interface Indexes { /** * Creates a new search index. */ diff --git a/specification/search/data-plane/Search/stable/2024-07-01/search.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json index f6da5b510121..6af13939d761 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/search.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -48,7 +48,7 @@ "paths": { "/datasources": { "get": { - "operationId": "DataSourcesOperations_List", + "operationId": "DataSources_List", "description": "Lists all datasources available for a search service.", "parameters": [ { @@ -78,15 +78,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListDataSources": { - "$ref": "./examples/SearchServiceListDataSources.json" - } } }, "post": { - "operationId": "DataSourcesOperations_Create", + "operationId": "DataSources_Create", "description": "Creates a new datasource.", "parameters": [ { @@ -118,17 +113,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateDataSource": { - "$ref": "./examples/SearchServiceCreateDataSource.json" - } } } }, "/datasources('{dataSourceName}')": { "get": { - "operationId": "DataSourcesOperations_Get", + "operationId": "DataSources_Get", "description": "Retrieves a datasource definition.", "parameters": [ { @@ -158,15 +148,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetDataSource": { - "$ref": "./examples/SearchServiceGetDataSource.json" - } } }, "put": { - "operationId": "DataSourcesOperations_CreateOrUpdate", + "operationId": "DataSources_CreateOrUpdate", "description": "Creates a new datasource or updates a datasource if it already exists.", "parameters": [ { @@ -241,15 +226,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateDataSource": { - "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" - } } }, "delete": { - "operationId": "DataSourcesOperations_Delete", + "operationId": "DataSources_Delete", "description": "Deletes a datasource.", "parameters": [ { @@ -295,17 +275,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteDataSource": { - "$ref": "./examples/SearchServiceDeleteDataSource.json" - } } } }, "/indexers": { "get": { - "operationId": "IndexersOperations_List", + "operationId": "Indexers_List", "description": "Lists all indexers available for a search service.", "parameters": [ { @@ -335,15 +310,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListIndexers": { - "$ref": "./examples/SearchServiceListIndexers.json" - } } }, "post": { - "operationId": "IndexersOperations_Create", + "operationId": "Indexers_Create", "description": "Creates a new indexer.", "parameters": [ { @@ -375,17 +345,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateIndexer": { - "$ref": "./examples/SearchServiceCreateIndexer.json" - } } } }, "/indexers('{indexerName}')": { "get": { - "operationId": "IndexersOperations_Get", + "operationId": "Indexers_Get", "description": "Retrieves an indexer definition.", "parameters": [ { @@ -415,15 +380,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetIndexer": { - "$ref": "./examples/SearchServiceGetIndexer.json" - } } }, "put": { - "operationId": "IndexersOperations_CreateOrUpdate", + "operationId": "Indexers_CreateOrUpdate", "description": "Creates a new indexer or updates an indexer if it already exists.", "parameters": [ { @@ -498,15 +458,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateIndexer": { - "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" - } } }, "delete": { - "operationId": "IndexersOperations_Delete", + "operationId": "Indexers_Delete", "description": "Deletes an indexer.", "parameters": [ { @@ -552,17 +507,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteIndexer": { - "$ref": "./examples/SearchServiceDeleteIndexer.json" - } } } }, "/indexers('{indexerName}')/search.reset": { "post": { - "operationId": "IndexersOperations_Reset", + "operationId": "Indexers_Reset", "description": "Resets the change tracking state associated with an indexer.", "parameters": [ { @@ -589,17 +539,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceResetIndexer": { - "$ref": "./examples/SearchServiceResetIndexer.json" - } } } }, "/indexers('{indexerName}')/search.run": { "post": { - "operationId": "IndexersOperations_Run", + "operationId": "Indexers_Run", "description": "Runs an indexer on-demand.", "parameters": [ { @@ -626,17 +571,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceRunIndexer": { - "$ref": "./examples/SearchServiceRunIndexer.json" - } } } }, "/indexers('{indexerName}')/search.status": { "get": { - "operationId": "IndexersOperations_GetStatus", + "operationId": "Indexers_GetStatus", "description": "Returns the current status and execution history of an indexer.", "parameters": [ { @@ -666,17 +606,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetIndexerStatus": { - "$ref": "./examples/SearchServiceGetIndexerStatus.json" - } } } }, "/indexes": { "get": { - "operationId": "IndexesOperations_List", + "operationId": "Indexes_List", "description": "Lists all indexes available for a search service.", "parameters": [ { @@ -706,15 +641,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListIndexes": { - "$ref": "./examples/SearchServiceListIndexes.json" - } } }, "post": { - "operationId": "IndexesOperations_Create", + "operationId": "Indexes_Create", "description": "Creates a new search index.", "parameters": [ { @@ -746,17 +676,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateIndex": { - "$ref": "./examples/SearchServiceCreateIndex.json" - } } } }, "/indexes('{indexName}')": { "get": { - "operationId": "IndexesOperations_Get", + "operationId": "Indexes_Get", "description": "Retrieves an index definition.", "parameters": [ { @@ -786,15 +711,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetIndex": { - "$ref": "./examples/SearchServiceGetIndex.json" - } } }, "put": { - "operationId": "IndexesOperations_CreateOrUpdate", + "operationId": "Indexes_CreateOrUpdate", "description": "Creates a new search index or updates an index if it already exists.", "parameters": [ { @@ -876,15 +796,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateIndex": { - "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" - } } }, "delete": { - "operationId": "IndexesOperations_Delete", + "operationId": "Indexes_Delete", "description": "Deletes a search index and all the documents it contains. This operation is\npermanent, with no recovery option. Make sure you have a master copy of your\nindex definition, data ingestion code, and a backup of the primary data source\nin case you need to re-build the index.", "parameters": [ { @@ -930,17 +845,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteIndex": { - "$ref": "./examples/SearchServiceDeleteIndex.json" - } } } }, "/indexes('{indexName}')/docs": { "get": { - "operationId": "DocumentsOperations_SearchGet", + "operationId": "Documents_SearchGet", "description": "Searches for documents in the index.", "parameters": [ { @@ -1306,20 +1216,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexSearchDocumentsGet": { - "$ref": "./examples/SearchIndexSearchDocumentsGet.json" - }, - "SearchIndexSearchDocumentsSemanticGet": { - "$ref": "./examples/SearchIndexSearchDocumentsSemanticGet.json" - } } } }, "/indexes('{indexName}')/docs/$count": { "get": { - "operationId": "DocumentsOperations_Count", + "operationId": "Documents_Count", "description": "Queries the number of documents in the index.", "parameters": [ { @@ -1350,17 +1252,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexCountDocuments": { - "$ref": "./examples/SearchIndexCountDocuments.json" - } } } }, "/indexes('{indexName}')/docs/search.autocomplete": { "get": { - "operationId": "DocumentsOperations_AutocompleteGet", + "operationId": "Documents_AutocompleteGet", "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", "parameters": [ { @@ -1494,17 +1391,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexAutocompleteDocumentsGet": { - "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" - } } } }, "/indexes('{indexName}')/docs/search.index": { "post": { - "operationId": "DocumentsOperations_Index", + "operationId": "Documents_Index", "description": "Sends a batch of document write actions to the index.", "parameters": [ { @@ -1549,17 +1441,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexIndexDocuments": { - "$ref": "./examples/SearchIndexIndexDocuments.json" - } } } }, "/indexes('{indexName}')/docs/search.post.autocomplete": { "post": { - "operationId": "DocumentsOperations_AutocompletePost", + "operationId": "Documents_AutocompletePost", "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", "parameters": [ { @@ -1598,17 +1485,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexAutocompleteDocumentsPost": { - "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" - } } } }, "/indexes('{indexName}')/docs/search.post.search": { "post": { - "operationId": "DocumentsOperations_SearchPost", + "operationId": "Documents_SearchPost", "description": "Searches for documents in the index.", "parameters": [ { @@ -1647,20 +1529,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexSearchDocumentsPost": { - "$ref": "./examples/SearchIndexSearchDocumentsPost.json" - }, - "SearchIndexSearchDocumentsSemanticPost": { - "$ref": "./examples/SearchIndexSearchDocumentsSemanticPost.json" - } } } }, "/indexes('{indexName}')/docs/search.post.suggest": { "post": { - "operationId": "DocumentsOperations_SuggestPost", + "operationId": "Documents_SuggestPost", "description": "Suggests documents in the index that match the given partial query text.", "parameters": [ { @@ -1699,17 +1573,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexSuggestDocumentsPost": { - "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" - } } } }, "/indexes('{indexName}')/docs/search.suggest": { "get": { - "operationId": "DocumentsOperations_SuggestGet", + "operationId": "Documents_SuggestGet", "description": "Suggests documents in the index that match the given partial query text.", "parameters": [ { @@ -1833,17 +1702,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexSuggestDocumentsGet": { - "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" - } } } }, "/indexes('{indexName}')/docs('{key}')": { "get": { - "operationId": "DocumentsOperations_Get", + "operationId": "Documents_Get", "description": "Retrieves a document from the index.", "parameters": [ { @@ -1892,17 +1756,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexGetDocument": { - "$ref": "./examples/SearchIndexGetDocument.json" - } } } }, "/indexes('{indexName}')/search.analyze": { "post": { - "operationId": "IndexesOperations_Analyze", + "operationId": "Indexes_Analyze", "description": "Shows how an analyzer breaks text into tokens.", "parameters": [ { @@ -1941,17 +1800,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceIndexAnalyze": { - "$ref": "./examples/SearchServiceIndexAnalyze.json" - } } } }, "/indexes('{indexName}')/search.stats": { "get": { - "operationId": "IndexesOperations_GetStatistics", + "operationId": "Indexes_GetStatistics", "description": "Returns statistics for the given index, including a document count and storage\nusage.", "parameters": [ { @@ -1981,11 +1835,6 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetIndexStatistics": { - "$ref": "./examples/SearchServiceGetIndexStatistics.json" - } } } }, @@ -2024,7 +1873,7 @@ }, "/skillsets": { "get": { - "operationId": "SkillsetsOperations_List", + "operationId": "Skillsets_List", "description": "List all skillsets in a search service.", "parameters": [ { @@ -2054,15 +1903,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListSkillsets": { - "$ref": "./examples/SearchServiceListSkillsets.json" - } } }, "post": { - "operationId": "SkillsetsOperations_Create", + "operationId": "Skillsets_Create", "description": "Creates a new skillset in a search service.", "parameters": [ { @@ -2094,17 +1938,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateSkillset": { - "$ref": "./examples/SearchServiceCreateSkillset.json" - } } } }, "/skillsets('{skillsetName}')": { "get": { - "operationId": "SkillsetsOperations_Get", + "operationId": "Skillsets_Get", "description": "Retrieves a skillset in a search service.", "parameters": [ { @@ -2134,15 +1973,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetSkillset": { - "$ref": "./examples/SearchServiceGetSkillset.json" - } } }, "put": { - "operationId": "SkillsetsOperations_CreateOrUpdate", + "operationId": "Skillsets_CreateOrUpdate", "description": "Creates a new skillset in a search service or updates the skillset if it\nalready exists.", "parameters": [ { @@ -2217,15 +2051,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateSkillset": { - "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" - } } }, "delete": { - "operationId": "SkillsetsOperations_Delete", + "operationId": "Skillsets_Delete", "description": "Deletes a skillset in a search service.", "parameters": [ { @@ -2271,17 +2100,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteSkillset": { - "$ref": "./examples/SearchServiceDeleteSkillset.json" - } } } }, "/synonymmaps": { "get": { - "operationId": "SynonymMapsOperations_List", + "operationId": "SynonymMaps_List", "description": "Lists all synonym maps available for a search service.", "parameters": [ { @@ -2311,15 +2135,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListSynonymMaps": { - "$ref": "./examples/SearchServiceListSynonymMaps.json" - } } }, "post": { - "operationId": "SynonymMapsOperations_Create", + "operationId": "SynonymMaps_Create", "description": "Creates a new synonym map.", "parameters": [ { @@ -2351,17 +2170,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateSynonymMap": { - "$ref": "./examples/SearchServiceCreateSynonymMap.json" - } } } }, "/synonymmaps('{synonymMapName}')": { "get": { - "operationId": "SynonymMapsOperations_Get", + "operationId": "SynonymMaps_Get", "description": "Retrieves a synonym map definition.", "parameters": [ { @@ -2391,15 +2205,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetSynonymMap": { - "$ref": "./examples/SearchServiceGetSynonymMap.json" - } } }, "put": { - "operationId": "SynonymMapsOperations_CreateOrUpdate", + "operationId": "SynonymMaps_CreateOrUpdate", "description": "Creates a new synonym map or updates a synonym map if it already exists.", "parameters": [ { @@ -2474,15 +2283,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateSynonymMap": { - "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" - } } }, "delete": { - "operationId": "SynonymMapsOperations_Delete", + "operationId": "SynonymMaps_Delete", "description": "Deletes a synonym map.", "parameters": [ { @@ -2528,11 +2332,6 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteSynonymMap": { - "$ref": "./examples/SearchServiceDeleteSynonymMap.json" - } } } } diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json index 975fa65418ce..d1313b630fe9 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "title": "Azure AI Search", + "title": "Search Index Client", "version": "2024-07-01", "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", "x-typespec-generated": [ @@ -48,7 +48,7 @@ "paths": { "/indexes('{indexName}')/docs": { "get": { - "operationId": "DocumentsOperations_SearchGet", + "operationId": "Documents_SearchGet", "description": "Searches for documents in the index.", "parameters": [ { @@ -414,20 +414,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexSearchDocumentsGet": { - "$ref": "./examples/SearchIndexSearchDocumentsGet.json" - }, - "SearchIndexSearchDocumentsSemanticGet": { - "$ref": "./examples/SearchIndexSearchDocumentsSemanticGet.json" - } } } }, "/indexes('{indexName}')/docs/$count": { "get": { - "operationId": "DocumentsOperations_Count", + "operationId": "Documents_Count", "description": "Queries the number of documents in the index.", "parameters": [ { @@ -458,17 +450,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexCountDocuments": { - "$ref": "./examples/SearchIndexCountDocuments.json" - } } } }, "/indexes('{indexName}')/docs/search.autocomplete": { "get": { - "operationId": "DocumentsOperations_AutocompleteGet", + "operationId": "Documents_AutocompleteGet", "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", "parameters": [ { @@ -602,17 +589,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexAutocompleteDocumentsGet": { - "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" - } } } }, "/indexes('{indexName}')/docs/search.index": { "post": { - "operationId": "DocumentsOperations_Index", + "operationId": "Documents_Index", "description": "Sends a batch of document write actions to the index.", "parameters": [ { @@ -657,17 +639,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexIndexDocuments": { - "$ref": "./examples/SearchIndexIndexDocuments.json" - } } } }, "/indexes('{indexName}')/docs/search.post.autocomplete": { "post": { - "operationId": "DocumentsOperations_AutocompletePost", + "operationId": "Documents_AutocompletePost", "description": "Autocompletes incomplete query terms based on input text and matching terms in\nthe index.", "parameters": [ { @@ -706,17 +683,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexAutocompleteDocumentsPost": { - "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" - } } } }, "/indexes('{indexName}')/docs/search.post.search": { "post": { - "operationId": "DocumentsOperations_SearchPost", + "operationId": "Documents_SearchPost", "description": "Searches for documents in the index.", "parameters": [ { @@ -755,20 +727,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexSearchDocumentsPost": { - "$ref": "./examples/SearchIndexSearchDocumentsPost.json" - }, - "SearchIndexSearchDocumentsSemanticPost": { - "$ref": "./examples/SearchIndexSearchDocumentsSemanticPost.json" - } } } }, "/indexes('{indexName}')/docs/search.post.suggest": { "post": { - "operationId": "DocumentsOperations_SuggestPost", + "operationId": "Documents_SuggestPost", "description": "Suggests documents in the index that match the given partial query text.", "parameters": [ { @@ -807,17 +771,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexSuggestDocumentsPost": { - "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" - } } } }, "/indexes('{indexName}')/docs/search.suggest": { "get": { - "operationId": "DocumentsOperations_SuggestGet", + "operationId": "Documents_SuggestGet", "description": "Suggests documents in the index that match the given partial query text.", "parameters": [ { @@ -941,17 +900,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexSuggestDocumentsGet": { - "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" - } } } }, "/indexes('{indexName}')/docs('{key}')": { "get": { - "operationId": "DocumentsOperations_Get", + "operationId": "Documents_Get", "description": "Retrieves a document from the index.", "parameters": [ { @@ -1000,11 +954,6 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchIndexGetDocument": { - "$ref": "./examples/SearchIndexGetDocument.json" - } } } } diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json index 0bdb3160f96c..b1f2bba48a0a 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "title": "Azure AI Search", + "title": "Search Service Client", "version": "2024-07-01", "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", "x-typespec-generated": [ @@ -48,7 +48,7 @@ "paths": { "/datasources": { "get": { - "operationId": "DataSourcesOperations_List", + "operationId": "DataSources_List", "description": "Lists all datasources available for a search service.", "parameters": [ { @@ -78,15 +78,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListDataSources": { - "$ref": "./examples/SearchServiceListDataSources.json" - } } }, "post": { - "operationId": "DataSourcesOperations_Create", + "operationId": "DataSources_Create", "description": "Creates a new datasource.", "parameters": [ { @@ -118,17 +113,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateDataSource": { - "$ref": "./examples/SearchServiceCreateDataSource.json" - } } } }, "/datasources('{dataSourceName}')": { "get": { - "operationId": "DataSourcesOperations_Get", + "operationId": "DataSources_Get", "description": "Retrieves a datasource definition.", "parameters": [ { @@ -158,15 +148,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetDataSource": { - "$ref": "./examples/SearchServiceGetDataSource.json" - } } }, "put": { - "operationId": "DataSourcesOperations_CreateOrUpdate", + "operationId": "DataSources_CreateOrUpdate", "description": "Creates a new datasource or updates a datasource if it already exists.", "parameters": [ { @@ -241,15 +226,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateDataSource": { - "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" - } } }, "delete": { - "operationId": "DataSourcesOperations_Delete", + "operationId": "DataSources_Delete", "description": "Deletes a datasource.", "parameters": [ { @@ -295,17 +275,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteDataSource": { - "$ref": "./examples/SearchServiceDeleteDataSource.json" - } } } }, "/indexers": { "get": { - "operationId": "IndexersOperations_List", + "operationId": "Indexers_List", "description": "Lists all indexers available for a search service.", "parameters": [ { @@ -335,15 +310,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListIndexers": { - "$ref": "./examples/SearchServiceListIndexers.json" - } } }, "post": { - "operationId": "IndexersOperations_Create", + "operationId": "Indexers_Create", "description": "Creates a new indexer.", "parameters": [ { @@ -375,17 +345,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateIndexer": { - "$ref": "./examples/SearchServiceCreateIndexer.json" - } } } }, "/indexers('{indexerName}')": { "get": { - "operationId": "IndexersOperations_Get", + "operationId": "Indexers_Get", "description": "Retrieves an indexer definition.", "parameters": [ { @@ -415,15 +380,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetIndexer": { - "$ref": "./examples/SearchServiceGetIndexer.json" - } } }, "put": { - "operationId": "IndexersOperations_CreateOrUpdate", + "operationId": "Indexers_CreateOrUpdate", "description": "Creates a new indexer or updates an indexer if it already exists.", "parameters": [ { @@ -498,15 +458,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateIndexer": { - "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" - } } }, "delete": { - "operationId": "IndexersOperations_Delete", + "operationId": "Indexers_Delete", "description": "Deletes an indexer.", "parameters": [ { @@ -552,17 +507,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteIndexer": { - "$ref": "./examples/SearchServiceDeleteIndexer.json" - } } } }, "/indexers('{indexerName}')/search.reset": { "post": { - "operationId": "IndexersOperations_Reset", + "operationId": "Indexers_Reset", "description": "Resets the change tracking state associated with an indexer.", "parameters": [ { @@ -589,17 +539,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceResetIndexer": { - "$ref": "./examples/SearchServiceResetIndexer.json" - } } } }, "/indexers('{indexerName}')/search.run": { "post": { - "operationId": "IndexersOperations_Run", + "operationId": "Indexers_Run", "description": "Runs an indexer on-demand.", "parameters": [ { @@ -626,17 +571,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceRunIndexer": { - "$ref": "./examples/SearchServiceRunIndexer.json" - } } } }, "/indexers('{indexerName}')/search.status": { "get": { - "operationId": "IndexersOperations_GetStatus", + "operationId": "Indexers_GetStatus", "description": "Returns the current status and execution history of an indexer.", "parameters": [ { @@ -666,17 +606,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetIndexerStatus": { - "$ref": "./examples/SearchServiceGetIndexerStatus.json" - } } } }, "/indexes": { "get": { - "operationId": "IndexesOperations_List", + "operationId": "Indexes_List", "description": "Lists all indexes available for a search service.", "parameters": [ { @@ -706,15 +641,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListIndexes": { - "$ref": "./examples/SearchServiceListIndexes.json" - } } }, "post": { - "operationId": "IndexesOperations_Create", + "operationId": "Indexes_Create", "description": "Creates a new search index.", "parameters": [ { @@ -746,17 +676,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateIndex": { - "$ref": "./examples/SearchServiceCreateIndex.json" - } } } }, "/indexes('{indexName}')": { "get": { - "operationId": "IndexesOperations_Get", + "operationId": "Indexes_Get", "description": "Retrieves an index definition.", "parameters": [ { @@ -786,15 +711,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetIndex": { - "$ref": "./examples/SearchServiceGetIndex.json" - } } }, "put": { - "operationId": "IndexesOperations_CreateOrUpdate", + "operationId": "Indexes_CreateOrUpdate", "description": "Creates a new search index or updates an index if it already exists.", "parameters": [ { @@ -876,15 +796,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateIndex": { - "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" - } } }, "delete": { - "operationId": "IndexesOperations_Delete", + "operationId": "Indexes_Delete", "description": "Deletes a search index and all the documents it contains. This operation is\npermanent, with no recovery option. Make sure you have a master copy of your\nindex definition, data ingestion code, and a backup of the primary data source\nin case you need to re-build the index.", "parameters": [ { @@ -930,17 +845,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteIndex": { - "$ref": "./examples/SearchServiceDeleteIndex.json" - } } } }, "/indexes('{indexName}')/search.analyze": { "post": { - "operationId": "IndexesOperations_Analyze", + "operationId": "Indexes_Analyze", "description": "Shows how an analyzer breaks text into tokens.", "parameters": [ { @@ -979,17 +889,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceIndexAnalyze": { - "$ref": "./examples/SearchServiceIndexAnalyze.json" - } } } }, "/indexes('{indexName}')/search.stats": { "get": { - "operationId": "IndexesOperations_GetStatistics", + "operationId": "Indexes_GetStatistics", "description": "Returns statistics for the given index, including a document count and storage\nusage.", "parameters": [ { @@ -1019,11 +924,6 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetIndexStatistics": { - "$ref": "./examples/SearchServiceGetIndexStatistics.json" - } } } }, @@ -1062,7 +962,7 @@ }, "/skillsets": { "get": { - "operationId": "SkillsetsOperations_List", + "operationId": "Skillsets_List", "description": "List all skillsets in a search service.", "parameters": [ { @@ -1092,15 +992,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListSkillsets": { - "$ref": "./examples/SearchServiceListSkillsets.json" - } } }, "post": { - "operationId": "SkillsetsOperations_Create", + "operationId": "Skillsets_Create", "description": "Creates a new skillset in a search service.", "parameters": [ { @@ -1132,17 +1027,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateSkillset": { - "$ref": "./examples/SearchServiceCreateSkillset.json" - } } } }, "/skillsets('{skillsetName}')": { "get": { - "operationId": "SkillsetsOperations_Get", + "operationId": "Skillsets_Get", "description": "Retrieves a skillset in a search service.", "parameters": [ { @@ -1172,15 +1062,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetSkillset": { - "$ref": "./examples/SearchServiceGetSkillset.json" - } } }, "put": { - "operationId": "SkillsetsOperations_CreateOrUpdate", + "operationId": "Skillsets_CreateOrUpdate", "description": "Creates a new skillset in a search service or updates the skillset if it\nalready exists.", "parameters": [ { @@ -1255,15 +1140,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateSkillset": { - "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" - } } }, "delete": { - "operationId": "SkillsetsOperations_Delete", + "operationId": "Skillsets_Delete", "description": "Deletes a skillset in a search service.", "parameters": [ { @@ -1309,17 +1189,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteSkillset": { - "$ref": "./examples/SearchServiceDeleteSkillset.json" - } } } }, "/synonymmaps": { "get": { - "operationId": "SynonymMapsOperations_List", + "operationId": "SynonymMaps_List", "description": "Lists all synonym maps available for a search service.", "parameters": [ { @@ -1349,15 +1224,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceListSynonymMaps": { - "$ref": "./examples/SearchServiceListSynonymMaps.json" - } } }, "post": { - "operationId": "SynonymMapsOperations_Create", + "operationId": "SynonymMaps_Create", "description": "Creates a new synonym map.", "parameters": [ { @@ -1389,17 +1259,12 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateSynonymMap": { - "$ref": "./examples/SearchServiceCreateSynonymMap.json" - } } } }, "/synonymmaps('{synonymMapName}')": { "get": { - "operationId": "SynonymMapsOperations_Get", + "operationId": "SynonymMaps_Get", "description": "Retrieves a synonym map definition.", "parameters": [ { @@ -1429,15 +1294,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceGetSynonymMap": { - "$ref": "./examples/SearchServiceGetSynonymMap.json" - } } }, "put": { - "operationId": "SynonymMapsOperations_CreateOrUpdate", + "operationId": "SynonymMaps_CreateOrUpdate", "description": "Creates a new synonym map or updates a synonym map if it already exists.", "parameters": [ { @@ -1512,15 +1372,10 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceCreateOrUpdateSynonymMap": { - "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" - } } }, "delete": { - "operationId": "SynonymMapsOperations_Delete", + "operationId": "SynonymMaps_Delete", "description": "Deletes a synonym map.", "parameters": [ { @@ -1566,11 +1421,6 @@ "$ref": "#/definitions/ErrorResponse" } } - }, - "x-ms-examples": { - "SearchServiceDeleteSynonymMap": { - "$ref": "./examples/SearchServiceDeleteSynonymMap.json" - } } } } From 5de571e2b69d0417ffb940465477f33d9308a2aa Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 30 Jan 2025 17:15:26 -0800 Subject: [PATCH 72/78] updates --- .../SearchIndexAutocompleteDocumentsGet.json | 2 +- .../SearchIndexAutocompleteDocumentsPost.json | 2 +- .../2024-07-01/SearchIndexCountDocuments.json | 2 +- .../2024-07-01/SearchIndexGetDocument.json | 2 +- .../2024-07-01/SearchIndexIndexDocuments.json | 2 +- .../SearchIndexSearchDocumentsGet.json | 2 +- .../SearchIndexSearchDocumentsPost.json | 2 +- ...SearchIndexSearchDocumentsSemanticGet.json | 2 +- ...earchIndexSearchDocumentsSemanticPost.json | 2 +- .../SearchIndexSuggestDocumentsGet.json | 2 +- .../SearchIndexSuggestDocumentsPost.json | 2 +- .../SearchServiceCreateDataSource.json | 2 +- .../2024-07-01/SearchServiceCreateIndex.json | 2 +- .../SearchServiceCreateIndexer.json | 2 +- ...SearchServiceCreateOrUpdateDataSource.json | 2 +- .../SearchServiceCreateOrUpdateIndex.json | 2 +- .../SearchServiceCreateOrUpdateIndexer.json | 2 +- .../SearchServiceCreateOrUpdateSkillset.json | 2 +- ...SearchServiceCreateOrUpdateSynonymMap.json | 2 +- .../SearchServiceCreateSkillset.json | 2 +- .../SearchServiceCreateSynonymMap.json | 2 +- .../SearchServiceDeleteDataSource.json | 2 +- .../2024-07-01/SearchServiceDeleteIndex.json | 2 +- .../SearchServiceDeleteIndexer.json | 2 +- .../SearchServiceDeleteSkillset.json | 2 +- .../SearchServiceDeleteSynonymMap.json | 2 +- .../SearchServiceGetDataSource.json | 2 +- .../2024-07-01/SearchServiceGetIndex.json | 2 +- .../SearchServiceGetIndexStatistics.json | 2 +- .../2024-07-01/SearchServiceGetIndexer.json | 2 +- .../SearchServiceGetIndexerStatus.json | 2 +- .../2024-07-01/SearchServiceGetSkillset.json | 2 +- .../SearchServiceGetSynonymMap.json | 2 +- .../2024-07-01/SearchServiceIndexAnalyze.json | 2 +- .../SearchServiceListDataSources.json | 2 +- .../2024-07-01/SearchServiceListIndexers.json | 2 +- .../2024-07-01/SearchServiceListIndexes.json | 2 +- .../SearchServiceListSkillsets.json | 2 +- .../SearchServiceListSynonymMaps.json | 2 +- .../2024-07-01/SearchServiceResetIndexer.json | 2 +- .../2024-07-01/SearchServiceRunIndexer.json | 2 +- .../SearchIndexAutocompleteDocumentsGet.json | 2 +- .../SearchIndexAutocompleteDocumentsPost.json | 2 +- .../2024-07-01/SearchIndexCountDocuments.json | 2 +- .../2024-07-01/SearchIndexGetDocument.json | 2 +- .../2024-07-01/SearchIndexIndexDocuments.json | 2 +- .../SearchIndexSearchDocumentsGet.json | 2 +- .../SearchIndexSearchDocumentsPost.json | 2 +- ...SearchIndexSearchDocumentsSemanticGet.json | 2 +- ...earchIndexSearchDocumentsSemanticPost.json | 2 +- .../SearchIndexSuggestDocumentsGet.json | 2 +- .../SearchIndexSuggestDocumentsPost.json | 2 +- .../SearchServiceCreateDataSource.json | 2 +- .../2024-07-01/SearchServiceCreateIndex.json | 2 +- .../SearchServiceCreateIndexer.json | 2 +- ...SearchServiceCreateOrUpdateDataSource.json | 2 +- .../SearchServiceCreateOrUpdateIndex.json | 2 +- .../SearchServiceCreateOrUpdateIndexer.json | 2 +- .../SearchServiceCreateOrUpdateSkillset.json | 2 +- ...SearchServiceCreateOrUpdateSynonymMap.json | 2 +- .../SearchServiceCreateSkillset.json | 2 +- .../SearchServiceCreateSynonymMap.json | 2 +- .../SearchServiceDeleteDataSource.json | 2 +- .../2024-07-01/SearchServiceDeleteIndex.json | 2 +- .../SearchServiceDeleteIndexer.json | 2 +- .../SearchServiceDeleteSkillset.json | 2 +- .../SearchServiceDeleteSynonymMap.json | 2 +- .../SearchServiceGetDataSource.json | 2 +- .../2024-07-01/SearchServiceGetIndex.json | 2 +- .../SearchServiceGetIndexStatistics.json | 2 +- .../2024-07-01/SearchServiceGetIndexer.json | 2 +- .../SearchServiceGetIndexerStatus.json | 2 +- .../2024-07-01/SearchServiceGetSkillset.json | 2 +- .../SearchServiceGetSynonymMap.json | 2 +- .../2024-07-01/SearchServiceIndexAnalyze.json | 2 +- .../SearchServiceListDataSources.json | 2 +- .../2024-07-01/SearchServiceListIndexers.json | 2 +- .../2024-07-01/SearchServiceListIndexes.json | 2 +- .../SearchServiceListSkillsets.json | 2 +- .../SearchServiceListSynonymMaps.json | 2 +- .../2024-07-01/SearchServiceResetIndexer.json | 2 +- .../2024-07-01/SearchServiceRunIndexer.json | 2 +- .../SearchIndexAutocompleteDocumentsGet.json | 2 +- .../SearchIndexAutocompleteDocumentsPost.json | 2 +- .../examples/SearchIndexCountDocuments.json | 2 +- .../examples/SearchIndexGetDocument.json | 2 +- .../examples/SearchIndexIndexDocuments.json | 2 +- .../SearchIndexSearchDocumentsGet.json | 2 +- .../SearchIndexSearchDocumentsPost.json | 2 +- ...SearchIndexSearchDocumentsSemanticGet.json | 2 +- ...earchIndexSearchDocumentsSemanticPost.json | 2 +- .../SearchIndexSuggestDocumentsGet.json | 2 +- .../SearchIndexSuggestDocumentsPost.json | 2 +- .../SearchServiceCreateDataSource.json | 2 +- .../examples/SearchServiceCreateIndex.json | 2 +- .../examples/SearchServiceCreateIndexer.json | 2 +- ...SearchServiceCreateOrUpdateDataSource.json | 2 +- .../SearchServiceCreateOrUpdateIndex.json | 2 +- .../SearchServiceCreateOrUpdateIndexer.json | 2 +- .../SearchServiceCreateOrUpdateSkillset.json | 2 +- ...SearchServiceCreateOrUpdateSynonymMap.json | 2 +- .../examples/SearchServiceCreateSkillset.json | 2 +- .../SearchServiceCreateSynonymMap.json | 2 +- .../SearchServiceDeleteDataSource.json | 2 +- .../examples/SearchServiceDeleteIndex.json | 2 +- .../examples/SearchServiceDeleteIndexer.json | 2 +- .../examples/SearchServiceDeleteSkillset.json | 2 +- .../SearchServiceDeleteSynonymMap.json | 2 +- .../examples/SearchServiceGetDataSource.json | 2 +- .../examples/SearchServiceGetIndex.json | 2 +- .../SearchServiceGetIndexStatistics.json | 2 +- .../examples/SearchServiceGetIndexer.json | 2 +- .../SearchServiceGetIndexerStatus.json | 2 +- .../examples/SearchServiceGetSkillset.json | 2 +- .../examples/SearchServiceGetSynonymMap.json | 2 +- .../examples/SearchServiceIndexAnalyze.json | 2 +- .../SearchServiceListDataSources.json | 2 +- .../examples/SearchServiceListIndexers.json | 2 +- .../examples/SearchServiceListIndexes.json | 2 +- .../examples/SearchServiceListSkillsets.json | 2 +- .../SearchServiceListSynonymMaps.json | 2 +- .../examples/SearchServiceResetIndexer.json | 2 +- .../examples/SearchServiceRunIndexer.json | 2 +- .../Search/stable/2024-07-01/search.json | 201 ++++++++++++++++++ .../Search/stable/2024-07-01/searchindex.json | 51 +++++ .../stable/2024-07-01/searchservice.json | 150 +++++++++++++ 126 files changed, 525 insertions(+), 123 deletions(-) diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json index da2054924fcc..ca5accd63f79 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_AutocompleteGet", + "operationId": "Documents_AutocompleteGet", "title": "SearchIndexAutocompleteDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json index b8251df3fd83..5dc7c1199628 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_AutocompletePost", + "operationId": "Documents_AutocompletePost", "title": "SearchIndexAutocompleteDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexCountDocuments.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexCountDocuments.json index 9e860ca33e9a..621dc03072cd 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexCountDocuments.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexCountDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_Count", + "operationId": "Documents_Count", "title": "SearchIndexCountDocuments", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexGetDocument.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexGetDocument.json index 4c3a27feb142..64cf2c3e326b 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexGetDocument.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexGetDocument.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_Get", + "operationId": "Documents_Get", "title": "SearchIndexGetDocument", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexIndexDocuments.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexIndexDocuments.json index 15f3d7781789..6f976253c7ca 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexIndexDocuments.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexIndexDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_Index", + "operationId": "Documents_Index", "title": "SearchIndexIndexDocuments", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsGet.json index dbb98fecc80e..cf4c460b14fe 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsGet.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchGet", + "operationId": "Documents_SearchGet", "title": "SearchIndexSearchDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsPost.json index 65f518cea193..62ae47083a03 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsPost.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchPost", + "operationId": "Documents_SearchPost", "title": "SearchIndexSearchDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json index e520c69d94f5..83e8d7fa7e2b 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchGet", + "operationId": "Documents_SearchGet", "title": "SearchIndexSearchDocumentsSemanticGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json index f28437d390df..9506db57bb42 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchPost", + "operationId": "Documents_SearchPost", "title": "SearchIndexSearchDocumentsSemanticPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json index de0013953f7c..ac8008f302c4 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SuggestGet", + "operationId": "Documents_SuggestGet", "title": "SearchIndexSuggestDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json index b80b58298472..14b666f9c370 100644 --- a/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json +++ b/specification/search/Azure.Search.Index/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SuggestPost", + "operationId": "Documents_SuggestPost", "title": "SearchIndexSuggestDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateDataSource.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateDataSource.json index 882fae5767e5..c47453c875fa 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateDataSource.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_Create", + "operationId": "DataSources_Create", "title": "SearchServiceCreateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndex.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndex.json index 85f8fcc39e6f..67c4475161eb 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndex.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Create", + "operationId": "Indexes_Create", "title": "SearchServiceCreateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndexer.json index 88c81c4060da..989e4eb30e1c 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndexer.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Create", + "operationId": "Indexers_Create", "title": "SearchServiceCreateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json index 5601c4b456a0..4983398e94a7 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_CreateOrUpdate", + "operationId": "DataSources_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json index bf9f68a28622..51d427966053 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_CreateOrUpdate", + "operationId": "Indexes_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json index 6090c4bcaafb..bb527e473a27 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_CreateOrUpdate", + "operationId": "Indexers_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json index b510c95a8df8..1be059c20e5c 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_CreateOrUpdate", + "operationId": "Skillsets_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json index cf8f6c9d07af..22335427cce9 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_CreateOrUpdate", + "operationId": "SynonymMaps_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSkillset.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSkillset.json index 3feeca88e25d..57407ac1e44d 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSkillset.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_Create", + "operationId": "Skillsets_Create", "title": "SearchServiceCreateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSynonymMap.json index 7146356cd274..1d57d1ffc733 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSynonymMap.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceCreateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_Create", + "operationId": "SynonymMaps_Create", "title": "SearchServiceCreateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteDataSource.json index af932181bab3..38013e5de9d5 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteDataSource.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_Delete", + "operationId": "DataSources_Delete", "title": "SearchServiceDeleteDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndex.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndex.json index 633ed9d4d6c8..f8697d9ae36c 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndex.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Delete", + "operationId": "Indexes_Delete", "title": "SearchServiceDeleteIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndexer.json index 404fdf7f7d04..8e918c13a31c 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndexer.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Delete", + "operationId": "Indexers_Delete", "title": "SearchServiceDeleteIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSkillset.json index 56b8da5d8118..b0f8df4fe46f 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSkillset.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_Delete", + "operationId": "Skillsets_Delete", "title": "SearchServiceDeleteSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSynonymMap.json index d9e27a8e60a5..d20702ed7849 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSynonymMap.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceDeleteSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_Delete", + "operationId": "SynonymMaps_Delete", "title": "SearchServiceDeleteSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetDataSource.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetDataSource.json index 48017bfdd32e..4a436cc92340 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetDataSource.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_Get", + "operationId": "DataSources_Get", "title": "SearchServiceGetDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndex.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndex.json index 23d3c2e2fb78..e635d2cf8371 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndex.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Get", + "operationId": "Indexes_Get", "title": "SearchServiceGetIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexStatistics.json index 252d25544656..f215a0bc60c4 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexStatistics.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexStatistics.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_GetStatistics", + "operationId": "Indexes_GetStatistics", "title": "SearchServiceGetIndexStatistics", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexer.json index 532bc68f6ce6..306433370b72 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexer.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Get", + "operationId": "Indexers_Get", "title": "SearchServiceGetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexerStatus.json index 8b369c8eea0c..f44067393cb1 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexerStatus.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetIndexerStatus.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_GetStatus", + "operationId": "Indexers_GetStatus", "title": "SearchServiceGetIndexerStatus", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSkillset.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSkillset.json index cee2ffba575e..106f8c674565 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSkillset.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_Get", + "operationId": "Skillsets_Get", "title": "SearchServiceGetSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSynonymMap.json index b1bb6b5c71d9..030050079a6c 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSynonymMap.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceGetSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_Get", + "operationId": "SynonymMaps_Get", "title": "SearchServiceGetSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceIndexAnalyze.json index 32d8385754e8..520c2e40b744 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceIndexAnalyze.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceIndexAnalyze.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Analyze", + "operationId": "Indexes_Analyze", "title": "SearchServiceIndexAnalyze", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListDataSources.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListDataSources.json index 6a8611843e0a..170226614bab 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListDataSources.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListDataSources.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_List", + "operationId": "DataSources_List", "title": "SearchServiceListDataSources", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexers.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexers.json index d853b67419ac..4012a60399cf 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexers.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexers.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_List", + "operationId": "Indexers_List", "title": "SearchServiceListIndexers", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexes.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexes.json index b89b350a43ca..46e43da41883 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexes.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListIndexes.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_List", + "operationId": "Indexes_List", "title": "SearchServiceListIndexes", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSkillsets.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSkillsets.json index b4bdd7cd81e5..d7f37920b2d9 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSkillsets.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSkillsets.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_List", + "operationId": "Skillsets_List", "title": "SearchServiceListSkillsets", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSynonymMaps.json index 53c8134271c4..6e8026bf26e1 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSynonymMaps.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceListSynonymMaps.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_List", + "operationId": "SynonymMaps_List", "title": "SearchServiceListSynonymMaps", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceResetIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceResetIndexer.json index a9d763f69655..3e7d6f2b555b 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceResetIndexer.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceResetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Reset", + "operationId": "Indexers_Reset", "title": "SearchServiceResetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceRunIndexer.json b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceRunIndexer.json index 97604abf06b3..e1e2ed5f7ab6 100644 --- a/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceRunIndexer.json +++ b/specification/search/Azure.Search.Service/examples/2024-07-01/SearchServiceRunIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Run", + "operationId": "Indexers_Run", "title": "SearchServiceRunIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json index da2054924fcc..ca5accd63f79 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_AutocompleteGet", + "operationId": "Documents_AutocompleteGet", "title": "SearchIndexAutocompleteDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json index b8251df3fd83..5dc7c1199628 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexAutocompleteDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_AutocompletePost", + "operationId": "Documents_AutocompletePost", "title": "SearchIndexAutocompleteDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json index 9e860ca33e9a..621dc03072cd 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexCountDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_Count", + "operationId": "Documents_Count", "title": "SearchIndexCountDocuments", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json index 4c3a27feb142..64cf2c3e326b 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexGetDocument.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_Get", + "operationId": "Documents_Get", "title": "SearchIndexGetDocument", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json index 15f3d7781789..6f976253c7ca 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexIndexDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_Index", + "operationId": "Documents_Index", "title": "SearchIndexIndexDocuments", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json index dbb98fecc80e..cf4c460b14fe 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchGet", + "operationId": "Documents_SearchGet", "title": "SearchIndexSearchDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json index 65f518cea193..62ae47083a03 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchPost", + "operationId": "Documents_SearchPost", "title": "SearchIndexSearchDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json index e520c69d94f5..83e8d7fa7e2b 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchGet", + "operationId": "Documents_SearchGet", "title": "SearchIndexSearchDocumentsSemanticGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json index f28437d390df..9506db57bb42 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSearchDocumentsSemanticPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchPost", + "operationId": "Documents_SearchPost", "title": "SearchIndexSearchDocumentsSemanticPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json index de0013953f7c..ac8008f302c4 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SuggestGet", + "operationId": "Documents_SuggestGet", "title": "SearchIndexSuggestDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json index b80b58298472..14b666f9c370 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchIndexSuggestDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SuggestPost", + "operationId": "Documents_SuggestPost", "title": "SearchIndexSuggestDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json index 882fae5767e5..c47453c875fa 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_Create", + "operationId": "DataSources_Create", "title": "SearchServiceCreateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json index 85f8fcc39e6f..67c4475161eb 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Create", + "operationId": "Indexes_Create", "title": "SearchServiceCreateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json index 88c81c4060da..989e4eb30e1c 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Create", + "operationId": "Indexers_Create", "title": "SearchServiceCreateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json index 5601c4b456a0..4983398e94a7 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_CreateOrUpdate", + "operationId": "DataSources_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json index bf9f68a28622..51d427966053 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_CreateOrUpdate", + "operationId": "Indexes_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json index 6090c4bcaafb..bb527e473a27 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_CreateOrUpdate", + "operationId": "Indexers_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json index b510c95a8df8..1be059c20e5c 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_CreateOrUpdate", + "operationId": "Skillsets_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json index cf8f6c9d07af..22335427cce9 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateOrUpdateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_CreateOrUpdate", + "operationId": "SynonymMaps_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json index 3feeca88e25d..57407ac1e44d 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_Create", + "operationId": "Skillsets_Create", "title": "SearchServiceCreateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json index 7146356cd274..1d57d1ffc733 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceCreateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_Create", + "operationId": "SynonymMaps_Create", "title": "SearchServiceCreateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json index af932181bab3..38013e5de9d5 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_Delete", + "operationId": "DataSources_Delete", "title": "SearchServiceDeleteDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json index 633ed9d4d6c8..f8697d9ae36c 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Delete", + "operationId": "Indexes_Delete", "title": "SearchServiceDeleteIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json index 404fdf7f7d04..8e918c13a31c 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Delete", + "operationId": "Indexers_Delete", "title": "SearchServiceDeleteIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json index 56b8da5d8118..b0f8df4fe46f 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_Delete", + "operationId": "Skillsets_Delete", "title": "SearchServiceDeleteSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json index d9e27a8e60a5..d20702ed7849 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceDeleteSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_Delete", + "operationId": "SynonymMaps_Delete", "title": "SearchServiceDeleteSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json index 48017bfdd32e..4a436cc92340 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_Get", + "operationId": "DataSources_Get", "title": "SearchServiceGetDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json index 23d3c2e2fb78..e635d2cf8371 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Get", + "operationId": "Indexes_Get", "title": "SearchServiceGetIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json index 252d25544656..f215a0bc60c4 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexStatistics.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_GetStatistics", + "operationId": "Indexes_GetStatistics", "title": "SearchServiceGetIndexStatistics", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json index 532bc68f6ce6..306433370b72 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Get", + "operationId": "Indexers_Get", "title": "SearchServiceGetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json index 8b369c8eea0c..f44067393cb1 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetIndexerStatus.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_GetStatus", + "operationId": "Indexers_GetStatus", "title": "SearchServiceGetIndexerStatus", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json index cee2ffba575e..106f8c674565 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_Get", + "operationId": "Skillsets_Get", "title": "SearchServiceGetSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json index b1bb6b5c71d9..030050079a6c 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceGetSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_Get", + "operationId": "SynonymMaps_Get", "title": "SearchServiceGetSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json index 32d8385754e8..520c2e40b744 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceIndexAnalyze.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Analyze", + "operationId": "Indexes_Analyze", "title": "SearchServiceIndexAnalyze", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json index 6a8611843e0a..170226614bab 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListDataSources.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_List", + "operationId": "DataSources_List", "title": "SearchServiceListDataSources", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json index d853b67419ac..4012a60399cf 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexers.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_List", + "operationId": "Indexers_List", "title": "SearchServiceListIndexers", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json index b89b350a43ca..46e43da41883 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListIndexes.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_List", + "operationId": "Indexes_List", "title": "SearchServiceListIndexes", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json index b4bdd7cd81e5..d7f37920b2d9 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSkillsets.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_List", + "operationId": "Skillsets_List", "title": "SearchServiceListSkillsets", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json index 53c8134271c4..6e8026bf26e1 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceListSynonymMaps.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_List", + "operationId": "SynonymMaps_List", "title": "SearchServiceListSynonymMaps", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json index a9d763f69655..3e7d6f2b555b 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceResetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Reset", + "operationId": "Indexers_Reset", "title": "SearchServiceResetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json index 97604abf06b3..e1e2ed5f7ab6 100644 --- a/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json +++ b/specification/search/Azure.Search/examples/2024-07-01/SearchServiceRunIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Run", + "operationId": "Indexers_Run", "title": "SearchServiceRunIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsGet.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsGet.json index da2054924fcc..ca5accd63f79 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsGet.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_AutocompleteGet", + "operationId": "Documents_AutocompleteGet", "title": "SearchIndexAutocompleteDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsPost.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsPost.json index b8251df3fd83..5dc7c1199628 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsPost.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexAutocompleteDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_AutocompletePost", + "operationId": "Documents_AutocompletePost", "title": "SearchIndexAutocompleteDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexCountDocuments.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexCountDocuments.json index 9e860ca33e9a..621dc03072cd 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexCountDocuments.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexCountDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_Count", + "operationId": "Documents_Count", "title": "SearchIndexCountDocuments", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexGetDocument.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexGetDocument.json index 4c3a27feb142..64cf2c3e326b 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexGetDocument.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexGetDocument.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_Get", + "operationId": "Documents_Get", "title": "SearchIndexGetDocument", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexIndexDocuments.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexIndexDocuments.json index 15f3d7781789..6f976253c7ca 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexIndexDocuments.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexIndexDocuments.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_Index", + "operationId": "Documents_Index", "title": "SearchIndexIndexDocuments", "parameters": { "endpoint": "https://exampleservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsGet.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsGet.json index dbb98fecc80e..cf4c460b14fe 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsGet.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchGet", + "operationId": "Documents_SearchGet", "title": "SearchIndexSearchDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsPost.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsPost.json index 65f518cea193..62ae47083a03 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsPost.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchPost", + "operationId": "Documents_SearchPost", "title": "SearchIndexSearchDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticGet.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticGet.json index e520c69d94f5..83e8d7fa7e2b 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticGet.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchGet", + "operationId": "Documents_SearchGet", "title": "SearchIndexSearchDocumentsSemanticGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticPost.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticPost.json index f28437d390df..9506db57bb42 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticPost.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSearchDocumentsSemanticPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SearchPost", + "operationId": "Documents_SearchPost", "title": "SearchIndexSearchDocumentsSemanticPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsGet.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsGet.json index de0013953f7c..ac8008f302c4 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsGet.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsGet.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SuggestGet", + "operationId": "Documents_SuggestGet", "title": "SearchIndexSuggestDocumentsGet", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsPost.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsPost.json index b80b58298472..14b666f9c370 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsPost.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchIndexSuggestDocumentsPost.json @@ -1,5 +1,5 @@ { - "operationId": "DocumentsOperations_SuggestPost", + "operationId": "Documents_SuggestPost", "title": "SearchIndexSuggestDocumentsPost", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateDataSource.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateDataSource.json index 882fae5767e5..c47453c875fa 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateDataSource.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_Create", + "operationId": "DataSources_Create", "title": "SearchServiceCreateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndex.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndex.json index 85f8fcc39e6f..67c4475161eb 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Create", + "operationId": "Indexes_Create", "title": "SearchServiceCreateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndexer.json index 88c81c4060da..989e4eb30e1c 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndexer.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Create", + "operationId": "Indexers_Create", "title": "SearchServiceCreateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateDataSource.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateDataSource.json index 5601c4b456a0..4983398e94a7 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateDataSource.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_CreateOrUpdate", + "operationId": "DataSources_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndex.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndex.json index bf9f68a28622..51d427966053 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_CreateOrUpdate", + "operationId": "Indexes_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndexer.json index 6090c4bcaafb..bb527e473a27 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndexer.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_CreateOrUpdate", + "operationId": "Indexers_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSkillset.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSkillset.json index b510c95a8df8..1be059c20e5c 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSkillset.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_CreateOrUpdate", + "operationId": "Skillsets_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSynonymMap.json index cf8f6c9d07af..22335427cce9 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSynonymMap.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateOrUpdateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_CreateOrUpdate", + "operationId": "SynonymMaps_CreateOrUpdate", "title": "SearchServiceCreateOrUpdateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSkillset.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSkillset.json index 3feeca88e25d..57407ac1e44d 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSkillset.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_Create", + "operationId": "Skillsets_Create", "title": "SearchServiceCreateSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSynonymMap.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSynonymMap.json index 7146356cd274..1d57d1ffc733 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSynonymMap.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceCreateSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_Create", + "operationId": "SynonymMaps_Create", "title": "SearchServiceCreateSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteDataSource.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteDataSource.json index af932181bab3..38013e5de9d5 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteDataSource.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_Delete", + "operationId": "DataSources_Delete", "title": "SearchServiceDeleteDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndex.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndex.json index 633ed9d4d6c8..f8697d9ae36c 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Delete", + "operationId": "Indexes_Delete", "title": "SearchServiceDeleteIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndexer.json index 404fdf7f7d04..8e918c13a31c 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndexer.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Delete", + "operationId": "Indexers_Delete", "title": "SearchServiceDeleteIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSkillset.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSkillset.json index 56b8da5d8118..b0f8df4fe46f 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSkillset.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_Delete", + "operationId": "Skillsets_Delete", "title": "SearchServiceDeleteSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSynonymMap.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSynonymMap.json index d9e27a8e60a5..d20702ed7849 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSynonymMap.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceDeleteSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_Delete", + "operationId": "SynonymMaps_Delete", "title": "SearchServiceDeleteSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetDataSource.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetDataSource.json index 48017bfdd32e..4a436cc92340 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetDataSource.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetDataSource.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_Get", + "operationId": "DataSources_Get", "title": "SearchServiceGetDataSource", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndex.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndex.json index 23d3c2e2fb78..e635d2cf8371 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndex.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Get", + "operationId": "Indexes_Get", "title": "SearchServiceGetIndex", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexStatistics.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexStatistics.json index 252d25544656..f215a0bc60c4 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexStatistics.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexStatistics.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_GetStatistics", + "operationId": "Indexes_GetStatistics", "title": "SearchServiceGetIndexStatistics", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexer.json index 532bc68f6ce6..306433370b72 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexer.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Get", + "operationId": "Indexers_Get", "title": "SearchServiceGetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexerStatus.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexerStatus.json index 8b369c8eea0c..f44067393cb1 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexerStatus.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetIndexerStatus.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_GetStatus", + "operationId": "Indexers_GetStatus", "title": "SearchServiceGetIndexerStatus", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSkillset.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSkillset.json index cee2ffba575e..106f8c674565 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSkillset.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSkillset.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_Get", + "operationId": "Skillsets_Get", "title": "SearchServiceGetSkillset", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSynonymMap.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSynonymMap.json index b1bb6b5c71d9..030050079a6c 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSynonymMap.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceGetSynonymMap.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_Get", + "operationId": "SynonymMaps_Get", "title": "SearchServiceGetSynonymMap", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceIndexAnalyze.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceIndexAnalyze.json index 32d8385754e8..520c2e40b744 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceIndexAnalyze.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceIndexAnalyze.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_Analyze", + "operationId": "Indexes_Analyze", "title": "SearchServiceIndexAnalyze", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListDataSources.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListDataSources.json index 6a8611843e0a..170226614bab 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListDataSources.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListDataSources.json @@ -1,5 +1,5 @@ { - "operationId": "DataSourcesOperations_List", + "operationId": "DataSources_List", "title": "SearchServiceListDataSources", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexers.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexers.json index d853b67419ac..4012a60399cf 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexers.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexers.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_List", + "operationId": "Indexers_List", "title": "SearchServiceListIndexers", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexes.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexes.json index b89b350a43ca..46e43da41883 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexes.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListIndexes.json @@ -1,5 +1,5 @@ { - "operationId": "IndexesOperations_List", + "operationId": "Indexes_List", "title": "SearchServiceListIndexes", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSkillsets.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSkillsets.json index b4bdd7cd81e5..d7f37920b2d9 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSkillsets.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSkillsets.json @@ -1,5 +1,5 @@ { - "operationId": "SkillsetsOperations_List", + "operationId": "Skillsets_List", "title": "SearchServiceListSkillsets", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSynonymMaps.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSynonymMaps.json index 53c8134271c4..6e8026bf26e1 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSynonymMaps.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceListSynonymMaps.json @@ -1,5 +1,5 @@ { - "operationId": "SynonymMapsOperations_List", + "operationId": "SynonymMaps_List", "title": "SearchServiceListSynonymMaps", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceResetIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceResetIndexer.json index a9d763f69655..3e7d6f2b555b 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceResetIndexer.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceResetIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Reset", + "operationId": "Indexers_Reset", "title": "SearchServiceResetIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceRunIndexer.json b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceRunIndexer.json index 97604abf06b3..e1e2ed5f7ab6 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceRunIndexer.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/examples/SearchServiceRunIndexer.json @@ -1,5 +1,5 @@ { - "operationId": "IndexersOperations_Run", + "operationId": "Indexers_Run", "title": "SearchServiceRunIndexer", "parameters": { "endpoint": "https://myservice.search.windows.net", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/search.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json index 6af13939d761..0fe84a0a864c 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/search.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -78,6 +78,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListDataSources": { + "$ref": "./examples/SearchServiceListDataSources.json" + } } }, "post": { @@ -113,6 +118,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateDataSource": { + "$ref": "./examples/SearchServiceCreateDataSource.json" + } } } }, @@ -148,6 +158,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetDataSource": { + "$ref": "./examples/SearchServiceGetDataSource.json" + } } }, "put": { @@ -226,6 +241,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateDataSource": { + "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" + } } }, "delete": { @@ -275,6 +295,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteDataSource": { + "$ref": "./examples/SearchServiceDeleteDataSource.json" + } } } }, @@ -310,6 +335,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListIndexers": { + "$ref": "./examples/SearchServiceListIndexers.json" + } } }, "post": { @@ -345,6 +375,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateIndexer": { + "$ref": "./examples/SearchServiceCreateIndexer.json" + } } } }, @@ -380,6 +415,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexer": { + "$ref": "./examples/SearchServiceGetIndexer.json" + } } }, "put": { @@ -458,6 +498,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndexer": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" + } } }, "delete": { @@ -507,6 +552,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteIndexer": { + "$ref": "./examples/SearchServiceDeleteIndexer.json" + } } } }, @@ -539,6 +589,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceResetIndexer": { + "$ref": "./examples/SearchServiceResetIndexer.json" + } } } }, @@ -571,6 +626,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceRunIndexer": { + "$ref": "./examples/SearchServiceRunIndexer.json" + } } } }, @@ -606,6 +666,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexerStatus": { + "$ref": "./examples/SearchServiceGetIndexerStatus.json" + } } } }, @@ -641,6 +706,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListIndexes": { + "$ref": "./examples/SearchServiceListIndexes.json" + } } }, "post": { @@ -676,6 +746,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateIndex": { + "$ref": "./examples/SearchServiceCreateIndex.json" + } } } }, @@ -711,6 +786,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndex": { + "$ref": "./examples/SearchServiceGetIndex.json" + } } }, "put": { @@ -796,6 +876,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndex": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" + } } }, "delete": { @@ -845,6 +930,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteIndex": { + "$ref": "./examples/SearchServiceDeleteIndex.json" + } } } }, @@ -1216,6 +1306,14 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsGet": { + "$ref": "./examples/SearchIndexSearchDocumentsGet.json" + }, + "SearchIndexSearchDocumentsSemanticGet": { + "$ref": "./examples/SearchIndexSearchDocumentsSemanticGet.json" + } } } }, @@ -1252,6 +1350,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexCountDocuments": { + "$ref": "./examples/SearchIndexCountDocuments.json" + } } } }, @@ -1391,6 +1494,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsGet": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" + } } } }, @@ -1441,6 +1549,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexIndexDocuments": { + "$ref": "./examples/SearchIndexIndexDocuments.json" + } } } }, @@ -1485,6 +1598,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsPost": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" + } } } }, @@ -1529,6 +1647,14 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsPost": { + "$ref": "./examples/SearchIndexSearchDocumentsPost.json" + }, + "SearchIndexSearchDocumentsSemanticPost": { + "$ref": "./examples/SearchIndexSearchDocumentsSemanticPost.json" + } } } }, @@ -1573,6 +1699,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsPost": { + "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" + } } } }, @@ -1702,6 +1833,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsGet": { + "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" + } } } }, @@ -1756,6 +1892,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexGetDocument": { + "$ref": "./examples/SearchIndexGetDocument.json" + } } } }, @@ -1800,6 +1941,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceIndexAnalyze": { + "$ref": "./examples/SearchServiceIndexAnalyze.json" + } } } }, @@ -1835,6 +1981,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexStatistics": { + "$ref": "./examples/SearchServiceGetIndexStatistics.json" + } } } }, @@ -1903,6 +2054,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListSkillsets": { + "$ref": "./examples/SearchServiceListSkillsets.json" + } } }, "post": { @@ -1938,6 +2094,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateSkillset": { + "$ref": "./examples/SearchServiceCreateSkillset.json" + } } } }, @@ -1973,6 +2134,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetSkillset": { + "$ref": "./examples/SearchServiceGetSkillset.json" + } } }, "put": { @@ -2051,6 +2217,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateSkillset": { + "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" + } } }, "delete": { @@ -2100,6 +2271,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteSkillset": { + "$ref": "./examples/SearchServiceDeleteSkillset.json" + } } } }, @@ -2135,6 +2311,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListSynonymMaps": { + "$ref": "./examples/SearchServiceListSynonymMaps.json" + } } }, "post": { @@ -2170,6 +2351,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateSynonymMap": { + "$ref": "./examples/SearchServiceCreateSynonymMap.json" + } } } }, @@ -2205,6 +2391,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetSynonymMap": { + "$ref": "./examples/SearchServiceGetSynonymMap.json" + } } }, "put": { @@ -2283,6 +2474,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateSynonymMap": { + "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" + } } }, "delete": { @@ -2332,6 +2528,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteSynonymMap": { + "$ref": "./examples/SearchServiceDeleteSynonymMap.json" + } } } } diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json index d1313b630fe9..3612790ced5e 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json @@ -414,6 +414,14 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsGet": { + "$ref": "./examples/SearchIndexSearchDocumentsGet.json" + }, + "SearchIndexSearchDocumentsSemanticGet": { + "$ref": "./examples/SearchIndexSearchDocumentsSemanticGet.json" + } } } }, @@ -450,6 +458,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexCountDocuments": { + "$ref": "./examples/SearchIndexCountDocuments.json" + } } } }, @@ -589,6 +602,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsGet": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" + } } } }, @@ -639,6 +657,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexIndexDocuments": { + "$ref": "./examples/SearchIndexIndexDocuments.json" + } } } }, @@ -683,6 +706,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsPost": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" + } } } }, @@ -727,6 +755,14 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsPost": { + "$ref": "./examples/SearchIndexSearchDocumentsPost.json" + }, + "SearchIndexSearchDocumentsSemanticPost": { + "$ref": "./examples/SearchIndexSearchDocumentsSemanticPost.json" + } } } }, @@ -771,6 +807,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsPost": { + "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" + } } } }, @@ -900,6 +941,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsGet": { + "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" + } } } }, @@ -954,6 +1000,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchIndexGetDocument": { + "$ref": "./examples/SearchIndexGetDocument.json" + } } } } diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json index b1f2bba48a0a..a8f0e2e5808e 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json @@ -78,6 +78,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListDataSources": { + "$ref": "./examples/SearchServiceListDataSources.json" + } } }, "post": { @@ -113,6 +118,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateDataSource": { + "$ref": "./examples/SearchServiceCreateDataSource.json" + } } } }, @@ -148,6 +158,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetDataSource": { + "$ref": "./examples/SearchServiceGetDataSource.json" + } } }, "put": { @@ -226,6 +241,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateDataSource": { + "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" + } } }, "delete": { @@ -275,6 +295,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteDataSource": { + "$ref": "./examples/SearchServiceDeleteDataSource.json" + } } } }, @@ -310,6 +335,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListIndexers": { + "$ref": "./examples/SearchServiceListIndexers.json" + } } }, "post": { @@ -345,6 +375,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateIndexer": { + "$ref": "./examples/SearchServiceCreateIndexer.json" + } } } }, @@ -380,6 +415,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexer": { + "$ref": "./examples/SearchServiceGetIndexer.json" + } } }, "put": { @@ -458,6 +498,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndexer": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" + } } }, "delete": { @@ -507,6 +552,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteIndexer": { + "$ref": "./examples/SearchServiceDeleteIndexer.json" + } } } }, @@ -539,6 +589,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceResetIndexer": { + "$ref": "./examples/SearchServiceResetIndexer.json" + } } } }, @@ -571,6 +626,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceRunIndexer": { + "$ref": "./examples/SearchServiceRunIndexer.json" + } } } }, @@ -606,6 +666,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexerStatus": { + "$ref": "./examples/SearchServiceGetIndexerStatus.json" + } } } }, @@ -641,6 +706,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListIndexes": { + "$ref": "./examples/SearchServiceListIndexes.json" + } } }, "post": { @@ -676,6 +746,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateIndex": { + "$ref": "./examples/SearchServiceCreateIndex.json" + } } } }, @@ -711,6 +786,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndex": { + "$ref": "./examples/SearchServiceGetIndex.json" + } } }, "put": { @@ -796,6 +876,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndex": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" + } } }, "delete": { @@ -845,6 +930,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteIndex": { + "$ref": "./examples/SearchServiceDeleteIndex.json" + } } } }, @@ -889,6 +979,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceIndexAnalyze": { + "$ref": "./examples/SearchServiceIndexAnalyze.json" + } } } }, @@ -924,6 +1019,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetIndexStatistics": { + "$ref": "./examples/SearchServiceGetIndexStatistics.json" + } } } }, @@ -992,6 +1092,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListSkillsets": { + "$ref": "./examples/SearchServiceListSkillsets.json" + } } }, "post": { @@ -1027,6 +1132,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateSkillset": { + "$ref": "./examples/SearchServiceCreateSkillset.json" + } } } }, @@ -1062,6 +1172,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetSkillset": { + "$ref": "./examples/SearchServiceGetSkillset.json" + } } }, "put": { @@ -1140,6 +1255,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateSkillset": { + "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" + } } }, "delete": { @@ -1189,6 +1309,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteSkillset": { + "$ref": "./examples/SearchServiceDeleteSkillset.json" + } } } }, @@ -1224,6 +1349,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceListSynonymMaps": { + "$ref": "./examples/SearchServiceListSynonymMaps.json" + } } }, "post": { @@ -1259,6 +1389,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateSynonymMap": { + "$ref": "./examples/SearchServiceCreateSynonymMap.json" + } } } }, @@ -1294,6 +1429,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceGetSynonymMap": { + "$ref": "./examples/SearchServiceGetSynonymMap.json" + } } }, "put": { @@ -1372,6 +1512,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceCreateOrUpdateSynonymMap": { + "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" + } } }, "delete": { @@ -1421,6 +1566,11 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "SearchServiceDeleteSynonymMap": { + "$ref": "./examples/SearchServiceDeleteSynonymMap.json" + } } } } From 3722469471f23ee528c3d1041eb9687edb5971bb Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 3 Feb 2025 08:44:43 -0800 Subject: [PATCH 73/78] updates --- .../search/Azure.Search.Index/main.tsp | 12 +-------- .../search/Azure.Search.Service/main.tsp | 12 +-------- .../Search/stable/2024-07-01/searchindex.json | 27 +------------------ .../stable/2024-07-01/searchservice.json | 27 +------------------ 4 files changed, 4 insertions(+), 74 deletions(-) diff --git a/specification/search/Azure.Search.Index/main.tsp b/specification/search/Azure.Search.Index/main.tsp index 8810d5dd66d8..e88f583a4ac7 100644 --- a/specification/search/Azure.Search.Index/main.tsp +++ b/specification/search/Azure.Search.Index/main.tsp @@ -12,18 +12,8 @@ using TypeSpec.Rest; using TypeSpec.Http; using TypeSpec.Versioning; /** - * Client that can be used to manage and query indexes and documents, as well as - * manage other resources, on a search service. + * Client that can be used to query an index and upload, merge, or delete documents. */ -@useAuth( - ApiKeyAuth | OAuth2Auth<[ - { - type: OAuth2FlowType.implicit, - authorizationUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", - scopes: ["https://search.azure.com/.default"], - } - ]> -) @service({ title: "Search Index Client", }) diff --git a/specification/search/Azure.Search.Service/main.tsp b/specification/search/Azure.Search.Service/main.tsp index 2f0380b25a85..de49a5e7c386 100644 --- a/specification/search/Azure.Search.Service/main.tsp +++ b/specification/search/Azure.Search.Service/main.tsp @@ -12,18 +12,8 @@ using TypeSpec.Rest; using TypeSpec.Http; using TypeSpec.Versioning; /** - * Client that can be used to manage and query indexes and documents, as well as - * manage other resources, on a search service. + * Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service. */ -@useAuth( - ApiKeyAuth | OAuth2Auth<[ - { - type: OAuth2FlowType.implicit, - authorizationUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", - scopes: ["https://search.azure.com/.default"], - } - ]> -) @service({ title: "Search Service Client", }) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json index 3612790ced5e..bc07d729c22b 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json @@ -3,7 +3,7 @@ "info": { "title": "Search Index Client", "version": "2024-07-01", - "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", + "description": "Client that can be used to query an index and upload, merge, or delete documents.", "x-typespec-generated": [ { "emitter": "@azure-tools/typespec-autorest" @@ -19,31 +19,6 @@ "consumes": [ "application/json" ], - "security": [ - { - "ApiKeyAuth": [] - }, - { - "OAuth2Auth": [ - "https://search.azure.com/.default" - ] - } - ], - "securityDefinitions": { - "ApiKeyAuth": { - "type": "apiKey", - "name": "api-key", - "in": "header" - }, - "OAuth2Auth": { - "type": "oauth2", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", - "scopes": { - "https://search.azure.com/.default": "" - } - } - }, "tags": [], "paths": { "/indexes('{indexName}')/docs": { diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json index a8f0e2e5808e..68d5cbfe68d7 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json @@ -3,7 +3,7 @@ "info": { "title": "Search Service Client", "version": "2024-07-01", - "description": "Client that can be used to manage and query indexes and documents, as well as\nmanage other resources, on a search service.", + "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", "x-typespec-generated": [ { "emitter": "@azure-tools/typespec-autorest" @@ -19,31 +19,6 @@ "consumes": [ "application/json" ], - "security": [ - { - "ApiKeyAuth": [] - }, - { - "OAuth2Auth": [ - "https://search.azure.com/.default" - ] - } - ], - "securityDefinitions": { - "ApiKeyAuth": { - "type": "apiKey", - "name": "api-key", - "in": "header" - }, - "OAuth2Auth": { - "type": "oauth2", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", - "scopes": { - "https://search.azure.com/.default": "" - } - } - }, "tags": [], "paths": { "/datasources": { From f4d3f5ba9bd85ca3f2ec1889d1c92dceebeae353 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Mon, 3 Feb 2025 08:51:23 -0800 Subject: [PATCH 74/78] updates --- .../search/Azure.Search.Index/main.tsp | 9 +++++++ .../search/Azure.Search.Service/main.tsp | 9 +++++++ .../Search/stable/2024-07-01/searchindex.json | 25 +++++++++++++++++++ .../stable/2024-07-01/searchservice.json | 25 +++++++++++++++++++ 4 files changed, 68 insertions(+) diff --git a/specification/search/Azure.Search.Index/main.tsp b/specification/search/Azure.Search.Index/main.tsp index e88f583a4ac7..d7cb2a75a64f 100644 --- a/specification/search/Azure.Search.Index/main.tsp +++ b/specification/search/Azure.Search.Index/main.tsp @@ -14,6 +14,15 @@ using TypeSpec.Versioning; /** * Client that can be used to query an index and upload, merge, or delete documents. */ +@useAuth( + ApiKeyAuth | OAuth2Auth<[ + { + type: OAuth2FlowType.implicit, + authorizationUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + scopes: ["https://search.azure.com/.default"], + } + ]> +) @service({ title: "Search Index Client", }) diff --git a/specification/search/Azure.Search.Service/main.tsp b/specification/search/Azure.Search.Service/main.tsp index de49a5e7c386..ce5533d2ade3 100644 --- a/specification/search/Azure.Search.Service/main.tsp +++ b/specification/search/Azure.Search.Service/main.tsp @@ -14,6 +14,15 @@ using TypeSpec.Versioning; /** * Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service. */ +@useAuth( + ApiKeyAuth | OAuth2Auth<[ + { + type: OAuth2FlowType.implicit, + authorizationUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + scopes: ["https://search.azure.com/.default"], + } + ]> +) @service({ title: "Search Service Client", }) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json index bc07d729c22b..f9776f2ff86c 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchindex.json @@ -19,6 +19,31 @@ "consumes": [ "application/json" ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://search.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "type": "apiKey", + "name": "api-key", + "in": "header" + }, + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": { + "https://search.azure.com/.default": "" + } + } + }, "tags": [], "paths": { "/indexes('{indexName}')/docs": { diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json index 68d5cbfe68d7..6a4efa6983d1 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json @@ -19,6 +19,31 @@ "consumes": [ "application/json" ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://search.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "type": "apiKey", + "name": "api-key", + "in": "header" + }, + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": { + "https://search.azure.com/.default": "" + } + } + }, "tags": [], "paths": { "/datasources": { From 1dafca082f6b93739c75f3ae0ee6464f2f8c657b Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 5 Feb 2025 08:59:42 -0800 Subject: [PATCH 75/78] update --- specification/search/Azure.Search/client.tsp | 2 +- .../search/Azure.Search/models-service.tsp | 32 +++++++++---------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 0b73c7eb2611..63be260231f8 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -120,7 +120,7 @@ namespace Customizations; @@clientName(StopAnalyzer.`@odata.type`, "odataType"); @@clientName(ClassicTokenizer.`@odata.type`, "odataType"); @@clientName(EdgeNGramTokenizer.`@odata.type`, "odataType"); -@@clientName(KeywordTokenizer.`@odata.type`, "odataType"); +// @@clientName(KeywordTokenizer.`@odata.type`, "odataType"); @@clientName(KeywordTokenizerV2.`@odata.type`, "odataType"); @@clientName(MicrosoftLanguageTokenizer.`@odata.type`, "odataType"); @@clientName(MicrosoftLanguageStemmingTokenizer.`@odata.type`, "odataType"); diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 464a155b9b48..3b93c73ad988 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -6769,22 +6769,22 @@ model EdgeNGramTokenizer extends LexicalTokenizer { `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenizer"; } -/** - * Emits the entire input as a single token. This tokenizer is implemented using - * Apache Lucene. - */ -model KeywordTokenizer extends LexicalTokenizer { - /** - * The read buffer size in bytes. Default is 256. - */ - bufferSize?: int32 = 256; - - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." - `@odata.type`: "#Microsoft.Azure.Search.KeywordTokenizer"; -} +// /** +// * Emits the entire input as a single token. This tokenizer is implemented using +// * Apache Lucene. +// */ +// model KeywordTokenizer extends LexicalTokenizer { +// /** +// * The read buffer size in bytes. Default is 256. +// */ +// bufferSize?: int32 = 256; + +// /** +// * A URI fragment specifying the type of tokenizer. +// */ +// #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." +// `@odata.type`: "#Microsoft.Azure.Search.KeywordTokenizer"; +// } /** * Emits the entire input as a single token. This tokenizer is implemented using From 9aa4e94673ae5e9c05820e85363b6a77a248be62 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Wed, 5 Feb 2025 09:08:29 -0800 Subject: [PATCH 76/78] update --- .../Search/stable/2024-07-01/search.json | 18 ------------------ .../stable/2024-07-01/searchservice.json | 18 ------------------ 2 files changed, 36 deletions(-) diff --git a/specification/search/data-plane/Search/stable/2024-07-01/search.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json index 0fe84a0a864c..4da2b51d7972 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/search.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -5495,24 +5495,6 @@ ], "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" }, - "KeywordTokenizer": { - "type": "object", - "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", - "properties": { - "bufferSize": { - "type": "integer", - "format": "int32", - "description": "The read buffer size in bytes. Default is 256.", - "default": 256 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer" - }, "KeywordTokenizerV2": { "type": "object", "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json index 6a4efa6983d1..21f15b45dd64 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json @@ -4288,24 +4288,6 @@ ], "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter" }, - "KeywordTokenizer": { - "type": "object", - "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", - "properties": { - "bufferSize": { - "type": "integer", - "format": "int32", - "description": "The read buffer size in bytes. Default is 256.", - "default": 256 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer" - }, "KeywordTokenizerV2": { "type": "object", "description": "Emits the entire input as a single token. This tokenizer is implemented using\nApache Lucene.", From b3f28509dfede41f7b4df3118bf3605e0bac6db8 Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 6 Feb 2025 17:44:04 -0800 Subject: [PATCH 77/78] update --- specification/search/Azure.Search/client.tsp | 6 +- .../search/Azure.Search/models-service.tsp | 136 +++++++++--------- .../Search/stable/2024-07-01/search.json | 76 ---------- .../stable/2024-07-01/searchservice.json | 76 ---------- 4 files changed, 71 insertions(+), 223 deletions(-) diff --git a/specification/search/Azure.Search/client.tsp b/specification/search/Azure.Search/client.tsp index 63be260231f8..bf026901379e 100644 --- a/specification/search/Azure.Search/client.tsp +++ b/specification/search/Azure.Search/client.tsp @@ -126,21 +126,21 @@ namespace Customizations; @@clientName(MicrosoftLanguageStemmingTokenizer.`@odata.type`, "odataType"); @@clientName(NGramTokenizer.`@odata.type`, "odataType"); @@clientName(PatternTokenizer.`@odata.type`, "odataType"); -@@clientName(LuceneStandardTokenizer.`@odata.type`, "odataType"); +// @@clientName(LuceneStandardTokenizer.`@odata.type`, "odataType"); @@clientName(LuceneStandardTokenizerV2.`@odata.type`, "odataType"); @@clientName(UaxUrlEmailTokenizer.`@odata.type`, "odataType"); @@clientName(AsciiFoldingTokenFilter.`@odata.type`, "odataType"); @@clientName(CjkBigramTokenFilter.`@odata.type`, "odataType"); @@clientName(CommonGramTokenFilter.`@odata.type`, "odataType"); @@clientName(DictionaryDecompounderTokenFilter.`@odata.type`, "odataType"); -@@clientName(EdgeNGramTokenFilter.`@odata.type`, "odataType"); +// @@clientName(EdgeNGramTokenFilter.`@odata.type`, "odataType"); @@clientName(EdgeNGramTokenFilterV2.`@odata.type`, "odataType"); @@clientName(ElisionTokenFilter.`@odata.type`, "odataType"); @@clientName(KeepTokenFilter.`@odata.type`, "odataType"); @@clientName(KeywordMarkerTokenFilter.`@odata.type`, "odataType"); @@clientName(LengthTokenFilter.`@odata.type`, "odataType"); @@clientName(LimitTokenFilter.`@odata.type`, "odataType"); -@@clientName(NGramTokenFilter.`@odata.type`, "odataType"); +// @@clientName(NGramTokenFilter.`@odata.type`, "odataType"); @@clientName(NGramTokenFilterV2.`@odata.type`, "odataType"); @@clientName(PatternCaptureTokenFilter.`@odata.type`, "odataType"); @@clientName(PatternReplaceTokenFilter.`@odata.type`, "odataType"); diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index 3b93c73ad988..c1cb0a16c738 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -6968,23 +6968,23 @@ model PatternTokenizer extends LexicalTokenizer { `@odata.type`: "#Microsoft.Azure.Search.PatternTokenizer"; } -/** - * Breaks text following the Unicode Text Segmentation rules. This tokenizer is - * implemented using Apache Lucene. - */ -model LuceneStandardTokenizer extends LexicalTokenizer { - /** - * The maximum token length. Default is 255. Tokens longer than the maximum length - * are split. - */ - maxTokenLength?: int32 = 255; +// /** +// * Breaks text following the Unicode Text Segmentation rules. This tokenizer is +// * implemented using Apache Lucene. +// */ +// model LuceneStandardTokenizer extends LexicalTokenizer { +// /** +// * The maximum token length. Default is 255. Tokens longer than the maximum length +// * are split. +// */ +// maxTokenLength?: int32 = 255; - /** - * A URI fragment specifying the type of tokenizer. - */ - #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." - `@odata.type`: "#Microsoft.Azure.Search.StandardTokenizer"; -} +// /** +// * A URI fragment specifying the type of tokenizer. +// */ +// #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." +// `@odata.type`: "#Microsoft.Azure.Search.StandardTokenizer"; +// } /** * Breaks text following the Unicode Text Segmentation rules. This tokenizer is @@ -7066,36 +7066,36 @@ model CjkBigramTokenFilter extends TokenFilter { `@odata.type`: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; } -/** - * Construct bigrams for frequently occurring terms while indexing. Single terms - * are still indexed too, with bigrams overlaid. This token filter is implemented - * using Apache Lucene. - */ -model CommonGramTokenFilter extends TokenFilter { - /** - * The set of common words. - */ - commonWords: string[]; +// /** +// * Construct bigrams for frequently occurring terms while indexing. Single terms +// * are still indexed too, with bigrams overlaid. This token filter is implemented +// * using Apache Lucene. +// */ +// model CommonGramTokenFilter extends TokenFilter { +// /** +// * The set of common words. +// */ +// commonWords: string[]; - /** - * A value indicating whether common words matching will be case insensitive. - * Default is false. - */ - ignoreCase?: boolean; +// /** +// * A value indicating whether common words matching will be case insensitive. +// * Default is false. +// */ +// ignoreCase?: boolean; - /** - * A value that indicates whether the token filter is in query mode. When in query - * mode, the token filter generates bigrams and then removes common words and - * single terms followed by a common word. Default is false. - */ - queryMode?: boolean; +// /** +// * A value that indicates whether the token filter is in query mode. When in query +// * mode, the token filter generates bigrams and then removes common words and +// * single terms followed by a common word. Default is false. +// */ +// queryMode?: boolean; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." - `@odata.type`: "#Microsoft.Azure.Search.CommonGramTokenFilter"; -} +// /** +// * A URI fragment specifying the type of token filter. +// */ +// #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." +// `@odata.type`: "#Microsoft.Azure.Search.CommonGramTokenFilter"; +// } /** * Decomposes compound words found in many Germanic languages. This token filter @@ -7141,34 +7141,34 @@ model DictionaryDecompounderTokenFilter extends TokenFilter { `@odata.type`: "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter"; } -/** - * Generates n-grams of the given size(s) starting from the front or the back of - * an input token. This token filter is implemented using Apache Lucene. - */ -#suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." -model EdgeNGramTokenFilter extends TokenFilter { - /** - * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. - */ - minGram?: int32 = 1; +// /** +// * Generates n-grams of the given size(s) starting from the front or the back of +// * an input token. This token filter is implemented using Apache Lucene. +// */ +// #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." +// model EdgeNGramTokenFilter extends TokenFilter { +// /** +// * The minimum n-gram length. Default is 1. Must be less than the value of maxGram. +// */ +// minGram?: int32 = 1; - /** - * The maximum n-gram length. Default is 2. - */ - maxGram?: int32 = 2; +// /** +// * The maximum n-gram length. Default is 2. +// */ +// maxGram?: int32 = 2; - /** - * Specifies which side of the input the n-gram should be generated from. Default - * is "front". - */ - side?: EdgeNGramTokenFilterSide; +// /** +// * Specifies which side of the input the n-gram should be generated from. Default +// * is "front". +// */ +// side?: EdgeNGramTokenFilterSide; - /** - * A URI fragment specifying the type of token filter. - */ - #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." - `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; -} +// /** +// * A URI fragment specifying the type of token filter. +// */ +// #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." +// `@odata.type`: "#Microsoft.Azure.Search.EdgeNGramTokenFilter"; +// } /** * Generates n-grams of the given size(s) starting from the front or the back of diff --git a/specification/search/data-plane/Search/stable/2024-07-01/search.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json index 4da2b51d7972..823b7afa9be0 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/search.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -3214,36 +3214,6 @@ ], "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" }, - "CommonGramTokenFilter": { - "type": "object", - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "commonWords": { - "type": "array", - "description": "The set of common words.", - "items": { - "type": "string" - } - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." - }, - "queryMode": { - "type": "boolean", - "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false." - } - }, - "required": [ - "commonWords" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" - }, "ConditionalSkill": { "type": "object", "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", @@ -3661,34 +3631,6 @@ ], "x-ms-discriminator-value": "#Microsoft.Skills.Util.DocumentExtractionSkill" }, - "EdgeNGramTokenFilter": { - "type": "object", - "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", - "default": 1 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2.", - "default": 2 - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter" - }, "EdgeNGramTokenFilterSide": { "type": "string", "description": "Specifies which side of the input an n-gram should be generated from.", @@ -6395,24 +6337,6 @@ ], "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer" }, - "LuceneStandardTokenizer": { - "type": "object", - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split.", - "default": 255 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer" - }, "LuceneStandardTokenizerV2": { "type": "object", "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json index 21f15b45dd64..839bdc4b5f5a 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json @@ -2129,36 +2129,6 @@ ], "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" }, - "CommonGramTokenFilter": { - "type": "object", - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", - "properties": { - "commonWords": { - "type": "array", - "description": "The set of common words.", - "items": { - "type": "string" - } - }, - "ignoreCase": { - "type": "boolean", - "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." - }, - "queryMode": { - "type": "boolean", - "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false." - } - }, - "required": [ - "commonWords" - ], - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" - }, "ConditionalSkill": { "type": "object", "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", @@ -2576,34 +2546,6 @@ ], "x-ms-discriminator-value": "#Microsoft.Skills.Util.DocumentExtractionSkill" }, - "EdgeNGramTokenFilter": { - "type": "object", - "description": "Generates n-grams of the given size(s) starting from the front or the back of\nan input token. This token filter is implemented using Apache Lucene.", - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram.", - "default": 1 - }, - "maxGram": { - "type": "integer", - "format": "int32", - "description": "The maximum n-gram length. Default is 2.", - "default": 2 - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "description": "Specifies which side of the input the n-gram should be generated from. Default\nis \"front\"." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter" - }, "EdgeNGramTokenFilterSide": { "type": "string", "description": "Specifies which side of the input an n-gram should be generated from.", @@ -5183,24 +5125,6 @@ ], "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer" }, - "LuceneStandardTokenizer": { - "type": "object", - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length\nare split.", - "default": 255 - } - }, - "allOf": [ - { - "$ref": "#/definitions/LexicalTokenizer" - } - ], - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer" - }, "LuceneStandardTokenizerV2": { "type": "object", "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is\nimplemented using Apache Lucene.", From f69181a233b48f9d2533358d46fe5cd8ba22796b Mon Sep 17 00:00:00 2001 From: Xiang Yan Date: Thu, 6 Feb 2025 18:04:14 -0800 Subject: [PATCH 78/78] update --- .../search/Azure.Search/models-service.tsp | 54 +++++++++---------- .../Search/stable/2024-07-01/search.json | 30 +++++++++++ .../stable/2024-07-01/searchservice.json | 30 +++++++++++ 3 files changed, 87 insertions(+), 27 deletions(-) diff --git a/specification/search/Azure.Search/models-service.tsp b/specification/search/Azure.Search/models-service.tsp index c1cb0a16c738..545bdc71e1d9 100644 --- a/specification/search/Azure.Search/models-service.tsp +++ b/specification/search/Azure.Search/models-service.tsp @@ -7066,36 +7066,36 @@ model CjkBigramTokenFilter extends TokenFilter { `@odata.type`: "#Microsoft.Azure.Search.CjkBigramTokenFilter"; } -// /** -// * Construct bigrams for frequently occurring terms while indexing. Single terms -// * are still indexed too, with bigrams overlaid. This token filter is implemented -// * using Apache Lucene. -// */ -// model CommonGramTokenFilter extends TokenFilter { -// /** -// * The set of common words. -// */ -// commonWords: string[]; +/** + * Construct bigrams for frequently occurring terms while indexing. Single terms + * are still indexed too, with bigrams overlaid. This token filter is implemented + * using Apache Lucene. + */ +model CommonGramTokenFilter extends TokenFilter { + /** + * The set of common words. + */ + commonWords: string[]; -// /** -// * A value indicating whether common words matching will be case insensitive. -// * Default is false. -// */ -// ignoreCase?: boolean; + /** + * A value indicating whether common words matching will be case insensitive. + * Default is false. + */ + ignoreCase?: boolean; -// /** -// * A value that indicates whether the token filter is in query mode. When in query -// * mode, the token filter generates bigrams and then removes common words and -// * single terms followed by a common word. Default is false. -// */ -// queryMode?: boolean; + /** + * A value that indicates whether the token filter is in query mode. When in query + * mode, the token filter generates bigrams and then removes common words and + * single terms followed by a common word. Default is false. + */ + queryMode?: boolean; -// /** -// * A URI fragment specifying the type of token filter. -// */ -// #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." -// `@odata.type`: "#Microsoft.Azure.Search.CommonGramTokenFilter"; -// } + /** + * A URI fragment specifying the type of token filter. + */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Maintain compatibility with existing models." + `@odata.type`: "#Microsoft.Azure.Search.CommonGramTokenFilter"; +} /** * Decomposes compound words found in many Germanic languages. This token filter diff --git a/specification/search/data-plane/Search/stable/2024-07-01/search.json b/specification/search/data-plane/Search/stable/2024-07-01/search.json index 823b7afa9be0..8c49ad895856 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/search.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/search.json @@ -3214,6 +3214,36 @@ ], "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" }, + "CommonGramTokenFilter": { + "type": "object", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "commonWords": { + "type": "array", + "description": "The set of common words.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." + }, + "queryMode": { + "type": "boolean", + "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false." + } + }, + "required": [ + "commonWords" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" + }, "ConditionalSkill": { "type": "object", "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.", diff --git a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json index 839bdc4b5f5a..f9b312d372e6 100644 --- a/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json +++ b/specification/search/data-plane/Search/stable/2024-07-01/searchservice.json @@ -2129,6 +2129,36 @@ ], "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey" }, + "CommonGramTokenFilter": { + "type": "object", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms\nare still indexed too, with bigrams overlaid. This token filter is implemented\nusing Apache Lucene.", + "properties": { + "commonWords": { + "type": "array", + "description": "The set of common words.", + "items": { + "type": "string" + } + }, + "ignoreCase": { + "type": "boolean", + "description": "A value indicating whether common words matching will be case insensitive.\nDefault is false." + }, + "queryMode": { + "type": "boolean", + "description": "A value that indicates whether the token filter is in query mode. When in query\nmode, the token filter generates bigrams and then removes common words and\nsingle terms followed by a common word. Default is false." + } + }, + "required": [ + "commonWords" + ], + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter" + }, "ConditionalSkill": { "type": "object", "description": "A skill that enables scenarios that require a Boolean operation to determine\nthe data to assign to an output.",