REST Resource: indexing.datasources.items

Ressource: Item

Représente un objet unique qui constitue un élément de l'index de recherche, tel qu'un fichier, un dossier ou un enregistrement de base de données.

Représentation JSON
{
  "name": string,
  "acl": {
    object (ItemAcl)
  },
  "metadata": {
    object (ItemMetadata)
  },
  "structuredData": {
    object (ItemStructuredData)
  },
  "content": {
    object (ItemContent)
  },
  "version": string,
  "status": {
    object (ItemStatus)
  },
  "queue": string,
  "payload": string,
  "itemType": enum (Item.ItemType)
}
Champs
name

string

Nom de l'élément. Format: datasources/{sourceId}/items/{itemId}

Champ obligatoire. Il ne doit pas dépasser 1 536 caractères.

acl

object (ItemAcl)

Liste de contrôle d'accès pour cet élément.

metadata

object (ItemMetadata)

Informations sur les métadonnées.

structuredData

object (ItemStructuredData)

Données structurées de l'élément qui doivent être conformes à une définition d'objet enregistrée dans le schéma de la source de données.

content

object (ItemContent)

Contenu des éléments à indexer et à inclure dans l'index de recherche dans le texte

version

string (bytes format)

Obligatoire. Le système d'indexation stocke la version de la source de données sous forme de chaîne d'octets et compare la version de l'élément dans l'index à celle de l'élément en file d'attente en utilisant l'ordre lexical.

Cloud Search Indexing n'indexe ni ne supprime aucun élément en file d'attente dont la valeur de version est inférieure ou égale à celle de l'élément actuellement indexé. La longueur maximale de ce champ est de 1 024 octets.

Pour en savoir plus sur l'impact de la version de l'élément sur le processus de suppression, consultez Gérer les révisions après une suppression manuelle.

Chaîne encodée en base64.

status

object (ItemStatus)

État de l'article. Champ de sortie uniquement.

queue

string

Ajouter cet élément à la file d'attente. La longueur ne doit pas dépasser 100 caractères.

payload

string (bytes format)

Le connecteur d'état supplémentaire peut stocker pour cet élément. La longueur maximale est de 10 000 octets.

Chaîne encodée en base64.

itemType

enum (Item.ItemType)

Type de cet élément.

ItemAcl

Informations sur la liste de contrôle d'accès pour l'élément. Pour en savoir plus, consultez la section Mapper les LCA.

Représentation JSON
{
  "inheritAclFrom": string,
  "aclInheritanceType": enum (ItemAcl.AclInheritanceType),
  "readers": [
    {
      object (Principal)
    }
  ],
  "deniedReaders": [
    {
      object (Principal)
    }
  ],
  "owners": [
    {
      object (Principal)
    }
  ]
}
Champs
inheritAclFrom

string

Nom de l'élément dont il doit hériter de la liste d'autorisations d'accès (LCA). Remarque: L'héritage des LCA ne fournit que des autorisations d'accès aux éléments enfants. Il ne définit pas de relations structurelles et ne fournit pas de moyen pratique de supprimer de grands groupes d'éléments. La suppression d'un parent de LCA n'affecte que les autorisations d'accès des éléments enfants qui référencent le parent dans le champ inheritAclFrom. L'élément figure toujours dans l'index, mais il risque de ne plus être visible dans les résultats de recherche. En revanche, la suppression d'un élément de conteneur supprime également tous les éléments qui font référence au conteneur via le champ containerName. La longueur maximale de ce champ est de 1 536 caractères.

aclInheritanceType

enum (ItemAcl.AclInheritanceType)

Définit le type de règles d'accès à appliquer lorsqu'un élément hérite sa LCA d'un parent. Il doit toujours être défini conjointement avec le champ inheritAclFrom. De plus, lorsque le champ inheritAclFrom est défini, ce champ doit être défini sur un AclInheritanceType valide.

readers[]

object (Principal)

Liste des comptes principaux autorisés à voir l'élément dans les résultats de recherche. Facultatif si l'élément hérite des autorisations d'un autre élément ou si l'élément n'est pas censé être visible (virtual containers, par exemple). Le nombre d'éléments est limité à 1 000.

deniedReaders[]

object (Principal)

Liste des comptes principaux auxquels l'accès à l'élément est explicitement refusé dans les résultats de recherche. Bien que l'accès soit refusé par défaut aux comptes principaux, utilisez les lecteurs refusés pour gérer les exceptions et ignorer les lecteurs autorisés de la liste. Le nombre d'éléments est limité à 100.

owners[]

object (Principal)

Facultatif. Liste des propriétaires de l'élément. Ce champ n'a aucune incidence sur les autorisations d'accès aux documents. En revanche, il présente un léger effet d'optimisation du classement des éléments dont l'utilisateur à l'origine de la requête est propriétaire. Le nombre maximal d'éléments est de cinq.

ItemAcl.AclInheritanceType

Types d'héritage des LCA.

Enums
NOT_APPLICABLE Valeur par défaut lorsque cet élément n'hérite pas d'une LCA. Utilisez NOT_APPLICABLE lorsque inheritAclFrom est vide. Un élément sans héritage LCA peut tout de même avoir des LCA fournies par ses propres champs readers et deniedReaders.
CHILD_OVERRIDE En cas de conflit d'autorisation, la LCA de l'élément enfant détermine son accès en lecture.
PARENT_OVERRIDE En cas de conflit d'autorisation, la LCA de l'élément parent spécifié dans le champ inheritAclFrom détermine l'accès en lecture.
BOTH_PERMIT L'accès n'est accordé que si cet élément et l'élément parent spécifié dans le champ inheritAclFrom autorisent l'accès en lecture.

Compte principal

Référence à un utilisateur, un groupe ou un domaine.

Représentation JSON
{

  // Union field principal can be only one of the following:
  "gsuitePrincipal": {
    object (GSuitePrincipal)
  },
  "userResourceName": string,
  "groupResourceName": string
  // End of list of possible types for union field principal.
}
Champs

Champ d'union principal.

principal ne peut être qu'un des éléments suivants :

gsuitePrincipal

object (GSuitePrincipal)

Ce compte principal est un utilisateur, un groupe ou un domaine Google Workspace.

userResourceName

string

Ce compte principal est un utilisateur identifié à l'aide d'une identité externe. Le champ "name" doit spécifier le nom de la ressource utilisateur au format suivant: identitysources/{sourceId}/users/{ID}

groupResourceName

string

Ce compte principal est un groupe identifié à l'aide d'une identité externe. Le champ "name" doit spécifier le nom de la ressource du groupe au format suivant: identitysources/{sourceId}/groups/{ID}

ItemMetadata

Champs de métadonnées disponibles pour l'élément

Représentation JSON
{
  "title": string,
  "sourceRepositoryUrl": string,
  "containerName": string,
  "objectType": string,
  "createTime": string,
  "updateTime": string,
  "interactions": [
    {
      object (Interaction)
    }
  ],
  "contentLanguage": string,
  "mimeType": string,
  "searchQualityMetadata": {
    object (SearchQualityMetadata)
  },
  "keywords": [
    string
  ],
  "hash": string,
  "contextAttributes": [
    {
      object (ContextAttribute)
    }
  ]
}
Champs
title

string

Titre de l'article. Si ce champ est défini, il s'agit du titre affiché du résultat query.search. La longueur maximale est de 2 048 caractères.

sourceRepositoryUrl

string

Lien vers le dépôt source diffusant les données. Dans les résultats de recherche, ce lien est appliqué au titre. Les espaces blancs ou les caractères spéciaux peuvent entraîner le déclenchement d'une notification de redirection par les liens des résultats Cloud Search. Pour éviter cela, encodez l'URL. La longueur maximale est de 2 048 caractères.

containerName

string

Nom du conteneur de cet élément. La suppression de l'élément de conteneur entraîne sa suppression automatique. Remarque: Les LCA ne sont pas héritées d'un élément de conteneur. Pour définir l'héritage des LCA pour un élément, utilisez le champ inheritAclFrom. Il ne doit pas dépasser 1 536 caractères.

objectType

string

Type de l'article. Il doit correspondre au nom d'une définition d'objet dans le schéma enregistré pour la source de données. Par exemple, si le schéma de la source de données contient une définition d'objet nommée "document", les requêtes d'indexation d'éléments pour des objets de ce type doivent définir "objectType" sur "document". Il ne doit pas dépasser 256 caractères.

createTime

string (Timestamp format)

Date et heure de création de l'élément dans le dépôt source.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Date et heure de la dernière modification de l'élément dans le dépôt source.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

interactions[]

object (Interaction)

Liste des interactions pour l'élément. Les interactions permettent d'améliorer la qualité de query.search, mais elles ne sont pas visibles par les utilisateurs finaux. Le nombre d'éléments est limité à 1 000.

contentLanguage

string

Code de langue BCP-47 de l'élément, tel que "en-US" ou "sr-Latn". Pour en savoir plus, consultez la page http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. La longueur ne doit pas dépasser 32 caractères.

mimeType

string

Type MIME d'origine de ItemContent.content dans le dépôt source. Il ne doit pas dépasser 256 caractères.

searchQualityMetadata

object (SearchQualityMetadata)

Métadonnées supplémentaires sur la qualité de la recherche de l'article

keywords[]

string

Mots clés ou expressions supplémentaires qui doivent correspondre à l'élément. Utilisé en interne pour le contenu généré par l'utilisateur. Le nombre d'éléments est limité à 100. La longueur maximale est de 8 192 caractères.

hash

string

Valeur de hachage fournie par l'appelant de l'API. Vous pouvez l'utiliser avec la méthode items.push pour calculer l'état modifié. La longueur maximale est de 2 048 caractères.

contextAttributes[]

object (ContextAttribute)

Ensemble d'attributs nommés associés à l'article. Cela peut permettre d'influencer le classement de l'élément en fonction du contexte de la demande. Le nombre d'éléments est limité à 10.

Interaction

Représente une interaction entre un utilisateur et un élément.

Représentation JSON
{
  "type": enum (Interaction.InteractionType),
  "principal": {
    object (Principal)
  },
  "interactionTime": string
}
Champs
type

enum (Interaction.InteractionType)

principal

object (Principal)

Utilisateur ayant interagi avec l'élément.

interactionTime

string (Timestamp format)

Heure à laquelle l'utilisateur a interagi sur l'élément. Si plusieurs actions du même type existent pour un même utilisateur, seule l'action la plus récente est enregistrée.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

Interaction.InteractionType

Type d'activité effectuée par l'utilisateur sur l'élément.

Enums
UNSPECIFIED Valeur incorrecte.
VIEW Cette interaction indique que l'utilisateur a consulté l'article.
EDIT Cette interaction indique que l'utilisateur a modifié l'élément.

SearchQualityMetadata

Métadonnées supplémentaires sur la qualité de la recherche de l'article.

Représentation JSON
{
  "quality": number
}
Champs
quality

number

Indication de la qualité de l'article, utilisée pour influencer la qualité de la recherche. La valeur doit être comprise entre 0,0 (qualité la plus faible) et 1,0 (qualité la plus élevée). La valeur par défaut est 0.0.

ContextAttribute

Attribut nommé associé à un élément qui peut être utilisé pour influencer le classement de l'élément en fonction du contexte de la demande.

Représentation JSON
{
  "name": string,
  "values": [
    string
  ]
}
Champs
name

string

Nom de l'attribut. Ce champ ne doit pas être vide. La longueur ne doit pas dépasser 32 caractères. Le nom doit commencer par une lettre et ne peut contenir que des lettres (A-Z, a-z) ou des chiffres (0-9). Le nom sera normalisé (en minuscules) avant d'être mis en correspondance.

values[]

string

Valeurs textuelles de l'attribut. Le nombre d'éléments est limité à 10. La longueur maximale d'un élément du tableau est de 32 caractères. La valeur sera normalisée (en minuscules) avant d'être mise en correspondance.

ItemStructuredData

Champs de données structurées disponibles pour l'élément.

Représentation JSON
{
  "object": {
    object (StructuredDataObject)
  },
  "hash": string
}
Champs
object

object (StructuredDataObject)

Objet de données structurées qui doit respecter une définition d'objet enregistrée dans le schéma de la source de données.

hash

string

Valeur de hachage fournie par l'appelant de l'API. Vous pouvez l'utiliser avec la méthode items.push pour calculer l'état modifié. La longueur maximale est de 2 048 caractères.

StructuredDataObject

Objet de données structurées composé de propriétés nommées.

Représentation JSON
{
  "properties": [
    {
      object (NamedProperty)
    }
  ]
}
Champs
properties[]

object (NamedProperty)

Propriétés de l'objet Le nombre d'éléments est limité à 1 000.

NamedProperty

Paire nom-valeur typée pour les données structurées. Le type de la valeur doit être identique à celui enregistré pour la propriété name dans la définition d'objet de objectType.

Représentation JSON
{
  "name": string,

  // Union field value can be only one of the following:
  "integerValues": {
    object (NamedProperty.IntegerValues)
  },
  "doubleValues": {
    object (NamedProperty.DoubleValues)
  },
  "timestampValues": {
    object (NamedProperty.TimestampValues)
  },
  "booleanValue": boolean,
  "objectValues": {
    object (NamedProperty.ObjectValues)
  },
  "enumValues": {
    object (NamedProperty.EnumValues)
  },
  "dateValues": {
    object (NamedProperty.DateValues)
  },
  "textValues": {
    object (NamedProperty.TextValues)
  },
  "htmlValues": {
    object (NamedProperty.HtmlValues)
  }
  // End of list of possible types for union field value.
}
Champs
name

string

Nom de la propriété. Ce nom doit correspondre à celui de la propriété enregistrée pour la définition d'objet dans le schéma. La longueur maximale autorisée pour cette propriété est de 256 caractères.

Champ d'union value. Valeur(s) de la propriété nommée. Notez qu'une propriété ne peut contenir que des valeurs d'un seul type. value ne peut être qu'un des éléments suivants :
integerValues

object (NamedProperty.IntegerValues)

doubleValues

object (NamedProperty.DoubleValues)

timestampValues

object (NamedProperty.TimestampValues)

booleanValue

boolean

objectValues

object (NamedProperty.ObjectValues)

enumValues

object (NamedProperty.EnumValues)

dateValues

object (NamedProperty.DateValues)

textValues

object (NamedProperty.TextValues)

htmlValues

object (NamedProperty.HtmlValues)

NamedProperty.IntegerValues

Liste de valeurs entières.

Représentation JSON
{
  "values": [
    string
  ]
}
Champs
values[]

string (int64 format)

NamedProperty.DoubleValues

Liste de valeurs doubles.

Représentation JSON
{
  "values": [
    number
  ]
}
Champs
values[]

number

NamedProperty.TimestampValues

Liste des valeurs d'horodatage.

Représentation JSON
{
  "values": [
    string
  ]
}
Champs
values[]

string (Timestamp format)

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

NamedProperty.ObjectValues

Liste des valeurs d'objets.

Représentation JSON
{
  "values": [
    {
      object (StructuredDataObject)
    }
  ]
}
Champs
values[]

object (StructuredDataObject)

NamedProperty.EnumValues

Liste de valeurs d'énumération.

Représentation JSON
{
  "values": [
    string
  ]
}
Champs
values[]

string

La longueur maximale autorisée pour les valeurs de chaîne est de 32 caractères.

NamedProperty.DateValues

Liste de valeurs de date.

Représentation JSON
{
  "values": [
    {
      object (Date)
    }
  ]
}
Champs
values[]

object (Date)

NamedProperty.TextValues

Liste de valeurs textuelles.

Représentation JSON
{
  "values": [
    string
  ]
}
Champs
values[]

string

La longueur maximale autorisée des valeurs textuelles est de 2 048 caractères.

NamedProperty.HtmlValues

Liste de valeurs HTML.

Représentation JSON
{
  "values": [
    string
  ]
}
Champs
values[]

string

La longueur maximale autorisée pour les valeurs HTML est de 2 048 caractères.

ItemContent

Contenu d'un élément à indexer et à afficher par Cloud Search. Seules les chaînes encodées au format UTF-8 sont autorisées au format inlineContent. Si le contenu est importé et qu'il n'est pas binaire, il doit être encodé au format UTF-8.

Représentation JSON
{
  "contentFormat": enum (ItemContent.ContentFormat),
  "hash": string,

  // Union field content can be only one of the following:
  "inlineContent": string,
  "contentDataRef": {
    object (UploadItemRef)
  }
  // End of list of possible types for union field content.
}
Champs
contentFormat

enum (ItemContent.ContentFormat)

hash

string

Informations de hachage calculées et fournies par le client API pour le contenu. Peut être utilisé avec la méthode items.push pour calculer l'état modifié. La longueur maximale est de 2 048 caractères.

Champ d'union content.

content ne peut être qu'un des éléments suivants :

inlineContent

string (bytes format)

Le contenu fourni est intégré à la méthode de mise à jour. La longueur maximale est de 102 400 octets (100 Kio).

Chaîne encodée en base64.

contentDataRef

object (UploadItemRef)

Importez l'ID de référence d'un contenu déjà importé via la méthode d'écriture.

ItemContent.ContentFormat

Format du contenu. Si le format est RAW, le contenu doit être au format spécifié par mimeType.

Enums
UNSPECIFIED Valeur incorrecte.
HTML contentFormat est HTML.
TEXT contentFormat est un texte libre.
RAW contentFormat correspond à des octets bruts.

UploadItemRef

Représente une référence de session d'importation. Cette référence est créée via upload method. Cette référence est valide pendant 30 jours après sa création. La mise à jour du contenu des éléments peut faire référence à ce contenu importé via contentDataRef.

Représentation JSON
{
  "name": string
}
Champs
name

string

Nom de la référence de contenu. La longueur maximale est de 2 048 caractères.

ItemStatus

Il contient l'état de l'élément et les éventuelles erreurs.

Représentation JSON
{
  "code": enum (ItemStatus.Code),
  "processingErrors": [
    {
      object (ProcessingError)
    }
  ],
  "repositoryErrors": [
    {
      object (RepositoryError)
    }
  ]
}
Champs
code

enum (ItemStatus.Code)

Code d'état.

processingErrors[]

object (ProcessingError)

Détails de l'erreur si l'état de l'élément est ERROR.

repositoryErrors[]

object (RepositoryError)

Erreur de dépôt signalée par le connecteur.

ProcessingError

Représentation JSON
{
  "code": enum (ProcessingErrorCode),
  "errorMessage": string,
  "fieldViolations": [
    {
      object (FieldViolation)
    }
  ]
}
Champs
code

enum (ProcessingErrorCode)

Code d'erreur indiquant la nature de l'erreur.

errorMessage

string

Description de l'erreur.

fieldViolations[]

object (FieldViolation)

Si les champs de l'article ne sont pas valides, ce champ contient des informations sur les erreurs de validation.

ProcessingErrorCode

Codes indiquant l'erreur rencontrée lors du traitement des articles par le serveur Cloud Search. Un même article peut comporter plusieurs erreurs de traitement.

Enums
PROCESSING_ERROR_CODE_UNSPECIFIED Valeur saisie uniquement. Utilisez cette valeur dans "Éléments".
MALFORMED_REQUEST Le format de la LCA, des métadonnées ou du contenu de l'élément est incorrect, ou son état n'est pas valide. FieldViolations contient plus d'informations sur l'origine du problème.
UNSUPPORTED_CONTENT_FORMAT Le format de décompte n'est pas accepté.
INDIRECT_BROKEN_ACL Éléments présentant des informations de LCA incomplètes en raison de l'héritage d'autres éléments présentant une LCA non fonctionnelle ou de groupes avec des descendants non mappés.
ACL_CYCLE Le graphique d'héritage des LCA formait un cycle.

FieldViolation

Représentation JSON
{
  "field": string,
  "description": string
}
Champs
field

string

Chemin d'accès au champ non conforme.

description

string

Description de l'erreur.

RepositoryError

Erreurs lorsque le connecteur communique avec le dépôt source.

Représentation JSON
{
  "type": enum (RepositoryError.Type),
  "httpStatusCode": integer,
  "errorMessage": string
}
Champs
type

enum (RepositoryError.Type)

Type d'erreur.

httpStatusCode

integer

Codes d'erreur. Correspond à la définition des codes d'état HTTP.

errorMessage

string

Message décrivant l'erreur. La longueur maximale autorisée pour le message est de 8 192 caractères.

RepositoryError.Type

Liste des codes d'erreur liés à des problèmes de communication avec le dépôt.

Enums
UNKNOWN Erreur inconnue.
NETWORK_ERROR Hôte inconnu ou inaccessible.
DNS_ERROR problème de DNS. Par exemple, le serveur DNS ne répond pas.
CONNECTION_ERROR Impossible de se connecter au serveur de dépôt.
AUTHENTICATION_ERROR Échec de l'authentification en raison d'identifiants incorrects.
AUTHORIZATION_ERROR Le compte de service n'est pas autorisé pour le dépôt.
SERVER_ERROR Erreur du serveur de dépôt.
QUOTA_EXCEEDED Quota dépassé.
SERVICE_UNAVAILABLE Serveur temporairement indisponible.
CLIENT_ERROR Erreur liée au client, telle qu'une requête incorrecte du connecteur au serveur de dépôt.

Item.ItemType

Enums
UNSPECIFIED
CONTENT_ITEM Élément indexé dans le seul but de diffuser des informations. Ces éléments ne peuvent pas être mentionnés dans les champs containerName ou inheritAclFrom.
CONTAINER_ITEM Élément indexé et dont le but est de fournir des LCA à d'autres éléments et/ou de contenir d'autres éléments.
VIRTUAL_CONTAINER_ITEM Élément qui n'est pas indexé, mais qui a par ailleurs la même fonction que CONTAINER_ITEM.

Méthodes

delete

Supprime Item resource pour le nom de ressource spécifié.

deleteQueueItems

Supprime tous les éléments d'une file d'attente.

get

Récupère Item resource par nom d'élément.

index

Met à jour la LCA, les métadonnées et le contenu Item.

list

Liste l'intégralité ou un sous-ensemble de Item resources.

poll

Interroge les éléments non réservés de la file d'attente d'indexation et marque un ensemble comme réservé, en commençant par les éléments dont l'horodatage le plus ancien est associé à la priorité ItemStatus la plus élevée.

push

Ajoute un élément à la file d'attente pour une interrogation et une mise à jour ultérieures.

unreserve

Annule la réservation de tous les éléments de la file d'attente, de sorte qu'ils puissent tous être interrogés.

upload

Crée une session d'importation pour importer le contenu des éléments.