共用方式為


Documents - Index

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

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

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://exampleservice.search.windows.net/indexes('indexdocumentsexample')/docs/search.index?api-version=2024-07-01


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

定義

名稱 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。