Condividi tramite


Documents - Index

Invia un batch di azioni di scrittura di documenti all'indice.

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

Parametri dell'URI

Nome In Necessario Tipo Descrizione
endpoint
path True

string

URL dell'endpoint del servizio di ricerca.

indexName
path True

string

Nome dell'indice.

api-version
query True

string

Versione dell'API client.

Intestazione della richiesta

Nome Necessario Tipo Descrizione
x-ms-client-request-id

string (uuid)

ID di rilevamento inviato con la richiesta per facilitare il debug.

Corpo della richiesta

Nome Necessario Tipo Descrizione
value True

IndexAction[]

Azioni nel batch.

Risposte

Nome Tipo Descrizione
200 OK

IndexDocumentsResult

Risposta contenente lo stato delle operazioni per tutte le azioni nel batch.

Other Status Codes

IndexDocumentsResult

Risposta contenente lo stato delle operazioni per tutte le azioni nel batch.

Other Status Codes

SearchError

Risposta di errore.

Esempio

SearchIndexIndexDocuments

Esempio di richiesta

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

Risposta di esempio

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

Definizioni

Nome Descrizione
IndexAction

Rappresenta un'azione di indice che opera su un documento.

IndexActionType

Operazione da eseguire su un documento in un batch di indicizzazione.

IndexBatch

Contiene un batch di azioni di scrittura di documenti da inviare all'indice.

IndexDocumentsResult

Risposta contenente lo stato delle operazioni per tutti i documenti nella richiesta di indicizzazione.

IndexingResult

Stato di un'operazione di indicizzazione per un singolo documento.

SearchError

Descrive una condizione di errore per l'API.

IndexAction

Rappresenta un'azione di indice che opera su un documento.

Nome Tipo Descrizione
@search.action

IndexActionType

Operazione da eseguire su un documento in un batch di indicizzazione.

IndexActionType

Operazione da eseguire su un documento in un batch di indicizzazione.

Valore Descrizione
delete

Rimuove il documento specificato dall'indice. Qualsiasi campo specificato in un'operazione di eliminazione diverso dal campo chiave verrà ignorato. Se si desidera rimuovere un singolo campo da un documento, utilizzare unisci e impostare il campo in modo esplicito su Null.

merge

Unisce i valori di campo specificati a un documento esistente. Se il documento non esiste, l'unione avrà esito negativo. Qualsiasi campo specificato in un'unione sostituirà il campo esistente nel documento. Questo vale anche per le raccolte di tipi primitivi e complessi.

mergeOrUpload

Si comporta come unisci se un documento con la chiave specificata esiste già nell'indice. Se il documento non esiste, si comporta come il caricamento con un nuovo documento.

upload

Inserisce il documento nell'indice se è nuovo e lo aggiorna se esiste. Tutti i campi vengono sostituiti nel caso di aggiornamento.

IndexBatch

Contiene un batch di azioni di scrittura di documenti da inviare all'indice.

Nome Tipo Descrizione
value

IndexAction[]

Azioni nel batch.

IndexDocumentsResult

Risposta contenente lo stato delle operazioni per tutti i documenti nella richiesta di indicizzazione.

Nome Tipo Descrizione
value

IndexingResult[]

Elenco di informazioni sullo stato per ogni documento nella richiesta di indicizzazione.

IndexingResult

Stato di un'operazione di indicizzazione per un singolo documento.

Nome Tipo Descrizione
errorMessage

string

Messaggio di errore che spiega perché l'operazione di indicizzazione non è riuscita per il documento identificato dalla chiave; Null se l'indicizzazione ha avuto esito positivo.

key

string

Chiave di un documento incluso nella richiesta di indicizzazione.

status

boolean

Valore che indica se l'operazione di indicizzazione è riuscita per il documento identificato dalla chiave.

statusCode

integer (int32)

Codice di stato dell'operazione di indicizzazione. I valori possibili includono: 200 per un aggiornamento o un'eliminazione corretta, 201 per la creazione corretta del documento, 400 per un documento di input in formato non valido, 404 per il documento non trovato, 409 per un conflitto di versione, 422 quando l'indice è temporaneamente non disponibile o 503 per quando il servizio è troppo occupato.

SearchError

Descrive una condizione di errore per l'API.

Nome Tipo Descrizione
code

string

Uno di un set definito dal server di codici di errore.

details

SearchError[]

Matrice di dettagli sugli errori specifici che hanno causato l'errore segnalato.

message

string

Rappresentazione leggibile dell'errore.