共用方式為


Documents - Index

將檔寫入動作批次傳送至索引。

POST {endpoint}/indexes('{indexName}')/docs/search.index?api-version=2024-05-01-preview

URI 參數

名稱 位於 必要 類型 Description
endpoint
path True

string

搜尋服務的端點 URL。

indexName
path True

string

索引的名稱。

api-version
query True

string

用戶端 API 版本。

要求標頭

名稱 必要 類型 Description
x-ms-client-request-id

string

uuid

使用要求傳送的追蹤標識碼,以協助偵錯。

要求本文

名稱 必要 類型 Description
value True

IndexAction[]

批次中的動作。

回應

名稱 類型 Description
200 OK

IndexDocumentsResult

回應,其中包含批次中所有動作的作業狀態。

Other Status Codes

IndexDocumentsResult

回應,其中包含批次中所有動作的作業狀態。

Other Status Codes

ErrorResponse

錯誤回應。

範例

SearchIndexIndexDocuments

範例要求

POST https://myservice.search.windows.net/indexes('myindex')/docs/search.index?api-version=2024-05-01-preview

{
  "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"
    }
  ]
}

範例回覆

{
  "value": [
    {
      "key": "1",
      "status": true,
      "errorMessage": null,
      "statusCode": 201
    },
    {
      "key": "2",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    },
    {
      "key": "3",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    },
    {
      "key": "4",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    }
  ]
}
{
  "value": [
    {
      "key": "1",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    },
    {
      "key": "2",
      "status": false,
      "errorMessage": "Document not found.",
      "statusCode": 404
    },
    {
      "key": "3",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    },
    {
      "key": "4",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    }
  ]
}

定義

名稱 Description
ErrorAdditionalInfo

資源管理錯誤其他資訊。

ErrorDetail

錯誤詳細數據。

ErrorResponse

錯誤回應

IndexAction

表示在文件上運作的索引動作。

IndexActionType

在索引批次中對文件執行的作業。

IndexBatch

包含要傳送至索引的檔寫入動作批次。

IndexDocumentsResult

回應,其中包含索引要求中所有文件的作業狀態。

IndexingResult

單一檔的索引作業狀態。

ErrorAdditionalInfo

資源管理錯誤其他資訊。

名稱 類型 Description
info

object

其他資訊。

type

string

其他信息類型。

ErrorDetail

錯誤詳細數據。

名稱 類型 Description
additionalInfo

ErrorAdditionalInfo[]

錯誤其他資訊。

code

string

錯誤碼。

details

ErrorDetail[]

錯誤詳細資料。

message

string

錯誤訊息。

target

string

錯誤目標。

ErrorResponse

錯誤回應

名稱 類型 Description
error

ErrorDetail

error 物件。

IndexAction

表示在文件上運作的索引動作。

名稱 類型 Description
@search.action

IndexActionType

在索引批次中對文件執行的作業。

IndexActionType

在索引批次中對文件執行的作業。

名稱 類型 Description
delete

string

從索引中移除指定的文件。 在索引鍵欄位以外的刪除作業中指定的任何欄位都會被忽略。 如果您想要從檔中移除個別欄位,請改用合併,並將字段明確設定為 null。

merge

string

將指定的域值與現有的檔案合併。 如果檔不存在,合併將會失敗。 您在合併中指定的任何欄位將取代文件中現有的欄位。 這也適用於基本型別和複雜類型的集合。

mergeOrUpload

string

如果具有指定索引鍵的檔已存在於索引中,則行為就像合併一樣。 如果檔不存在,其行為就像是使用新文件上傳一樣。

upload

string

如果檔是新的,請將檔插入索引,並在存在時加以更新。 更新案例中會取代所有欄位。

IndexBatch

包含要傳送至索引的檔寫入動作批次。

名稱 類型 Description
value

IndexAction[]

批次中的動作。

IndexDocumentsResult

回應,其中包含索引要求中所有文件的作業狀態。

名稱 類型 Description
value

IndexingResult[]

索引要求中每個檔案的狀態信息清單。

IndexingResult

單一檔的索引作業狀態。

名稱 類型 Description
errorMessage

string

錯誤訊息,說明索引編製作業為何因索引鍵所識別的文件而失敗;如果索引成功,則為 null。

key

string

索引要求中檔索引鍵。

status

boolean

值,指出索引鍵所識別檔是否成功編製索引作業。

statusCode

integer

索引作業的狀態代碼。 可能的值包括:200 代表成功更新或刪除、成功建立檔 201、400 表示格式不正確的輸入檔、找不到檔的 404、版本衝突的 409、當索引暫時無法使用時為 422,或當服務太忙碌時為 503。