Documents - Index
문서 쓰기 작업의 일괄 처리를 인덱스에 보냅니다.
POST {endpoint}/indexes('{indexName}')/docs/search.index?api-version=2023-11-01
URI 매개 변수
| Name | In(다음 안에) | 필수 | 형식 | Description |
|---|---|---|---|---|
|
endpoint
|
path | True |
string |
검색 서비스의 엔드포인트 URL입니다. |
|
index
|
path | True |
string |
인덱스의 이름입니다. |
|
api-version
|
query | True |
string |
클라이언트 API 버전입니다. |
요청 헤더
| Name | 필수 | 형식 | Description |
|---|---|---|---|
| x-ms-client-request-id |
string (uuid) |
디버깅에 도움이 되도록 요청과 함께 전송된 추적 ID입니다. |
요청 본문
| Name | 필수 | 형식 | Description |
|---|---|---|---|
| value | True |
일괄 처리의 작업입니다. |
응답
| Name | 형식 | Description |
|---|---|---|
| 200 OK |
일괄 처리의 모든 작업에 대한 작업 상태를 포함하는 응답입니다. |
|
| Other Status Codes |
일괄 처리의 모든 작업에 대한 작업 상태를 포함하는 응답입니다. |
|
| Other Status Codes |
오류 응답입니다. |
예제
SearchIndexIndexDocuments
샘플 요청
POST https://myservice.search.windows.net/indexes('myindex')/docs/search.index?api-version=2023-11-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": 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
}
]
}
정의
| Name | Description |
|---|---|
|
Index |
문서에서 작동하는 인덱스 동작을 나타냅니다. |
|
Index |
인덱싱 일괄 처리의 문서에서 수행할 작업입니다. |
|
Index |
인덱스에 보낼 문서 쓰기 작업의 일괄 처리를 포함합니다. |
|
Index |
인덱싱 요청의 모든 문서에 대한 작업 상태를 포함하는 응답입니다. |
|
Indexing |
단일 문서에 대한 인덱싱 작업의 상태입니다. |
|
Search |
API에 대한 오류 조건을 설명합니다. |
IndexAction
문서에서 작동하는 인덱스 동작을 나타냅니다.
| Name | 형식 | Description |
|---|---|---|
| @search.action |
인덱싱 일괄 처리의 문서에서 수행할 작업입니다. |
IndexActionType
인덱싱 일괄 처리의 문서에서 수행할 작업입니다.
| 값 | Description |
|---|---|
| upload |
문서가 새 문서인 경우 인덱스에 삽입하고 인덱스가 있는 경우 업데이트합니다. 업데이트 사례에서 모든 필드가 대체됩니다. |
| merge |
지정된 필드 값을 기존 문서와 병합합니다. 문서가 없으면 병합이 실패합니다. 병합에서 지정하는 모든 필드는 문서의 기존 필드를 대체합니다. 기본 형식과 복합 형식의 컬렉션에도 적용됩니다. |
| mergeOrUpload |
지정된 키가 있는 문서가 인덱스에 이미 있는 경우 병합처럼 동작합니다. 문서가 없으면 새 문서를 업로드하는 것처럼 동작합니다. |
| delete |
인덱스에서 지정된 문서를 제거합니다. 키 필드 이외의 삭제 작업에서 지정한 모든 필드는 무시됩니다. 문서에서 개별 필드를 제거하려면 병합을 대신 사용하고 필드를 명시적으로 null로 설정합니다. |
IndexBatch
인덱스에 보낼 문서 쓰기 작업의 일괄 처리를 포함합니다.
| Name | 형식 | Description |
|---|---|---|
| value |
일괄 처리의 작업입니다. |
IndexDocumentsResult
인덱싱 요청의 모든 문서에 대한 작업 상태를 포함하는 응답입니다.
| Name | 형식 | Description |
|---|---|---|
| value |
인덱싱 요청의 각 문서에 대한 상태 정보 목록입니다. |
IndexingResult
단일 문서에 대한 인덱싱 작업의 상태입니다.
| Name | 형식 | Description |
|---|---|---|
| errorMessage |
string |
키로 식별된 문서에 대해 인덱싱 작업이 실패한 이유를 설명하는 오류 메시지입니다. 인덱싱에 성공하면 null입니다. |
| key |
string |
인덱싱 요청에 있던 문서의 키입니다. |
| status |
boolean |
키로 식별된 문서에 대해 인덱싱 작업이 성공했는지 여부를 나타내는 값입니다. |
| statusCode |
integer (int32) |
인덱싱 작업의 상태 코드입니다. 가능한 값은 성공적인 업데이트 또는 삭제의 경우 200, 성공적인 문서 만들기를 위한 201, 잘못된 형식의 입력 문서의 경우 400, 문서를 찾을 수 없는 경우 404, 버전 충돌의 경우 409, 인덱스가 일시적으로 사용할 수 없는 경우 422, 서비스가 너무 많은 경우 503입니다. |
SearchError
API에 대한 오류 조건을 설명합니다.
| Name | 형식 | Description |
|---|---|---|
| code |
string |
서버에서 정의한 오류 코드 집합 중 하나입니다. |
| details |
이 보고된 오류로 이어진 특정 오류에 대한 세부 정보 배열입니다. |
|
| message |
string |
사람이 읽을 수 있는 오류 표현입니다. |