- Resource: Item
- ItemAcl
- ItemAcl.AclInheritanceType
- Principal
- ItemMetadata
- Interaction
- Interaction.InteractionType
- SearchQualityMetadata
- ContextAttribute
- ItemStructuredData
- StructuredDataObject
- NamedProperty
- NamedProperty.IntegerValues
- NamedProperty.DoubleValues
- NamedProperty.TimestampValues
- NamedProperty.ObjectValues
- NamedProperty.EnumValues
- NamedProperty.DateValues
- NamedProperty.TextValues
- NamedProperty.HtmlValues
- ItemContent
- ItemContent.ContentFormat
- UploadItemRef
- ItemStatus
- ProcessingError
- ProcessingErrorCode
- FieldViolation
- RepositoryError
- RepositoryError.Type
- Item.ItemType
- Methods
Resource: Item
Represents a single object that is an item in the search index, such as a file, folder, or a database record.
JSON representation |
---|
{ "name": string, "acl": { object ( |
Fields | |
---|---|
name |
The name of the Item. Format: datasources/{sourceId}/items/{itemId} This is a required field. The maximum length is 1536 characters. |
acl |
Access control list for this item. |
metadata |
The metadata information. |
structuredData |
The structured data for the item that should conform to a registered object definition in the schema for the data source. |
content |
Item content to be indexed and made text searchable. |
version |
Required. The indexing system stores the version from the datasource as a byte string and compares the Item version in the index to the version of the queued Item using lexical ordering. Cloud Search Indexing won't index or delete any queued item with a version value that is less than or equal to the version of the currently indexed item. The maximum length for this field is 1024 bytes. For information on how item version affects the deletion process, refer to Handle revisions after manual deletes. A base64-encoded string. |
status |
Status of the item. Output only field. |
queue |
Queue this item belongs to. The maximum length is 100 characters. |
payload |
Additional state connector can store for this item. The maximum length is 10000 bytes. A base64-encoded string. |
itemType |
The type for this item. |
ItemAcl
Access control list information for the item. For more information see Map ACLs.
JSON representation |
---|
{ "inheritAclFrom": string, "aclInheritanceType": enum ( |
Fields | |
---|---|
inheritAclFrom |
The name of the item to inherit the Access Permission List (ACL) from. Note: ACL inheritance only provides access permissions to child items and does not define structural relationships, nor does it provide convenient ways to delete large groups of items. Deleting an ACL parent from the index only alters the access permissions of child items that reference the parent in the |
aclInheritanceType |
Sets the type of access rules to apply when an item inherits its ACL from a parent. This should always be set in tandem with the |
readers[] |
List of principals who are allowed to see the item in search results. Optional if inheriting permissions from another item or if the item is not intended to be visible, such as |
deniedReaders[] |
List of principals who are explicitly denied access to the item in search results. While principals are denied access by default, use denied readers to handle exceptions and override the list allowed readers. The maximum number of elements is 100. |
owners[] |
Optional. List of owners for the item. This field has no bearing on document access permissions. It does, however, offer a slight ranking boosts items where the querying user is an owner. The maximum number of elements is 5. |
ItemAcl.AclInheritanceType
The types of ACL inheritance.
Enums | |
---|---|
NOT_APPLICABLE |
The default value when this item does not inherit an ACL. Use NOT_APPLICABLE when inheritAclFrom is empty. An item without ACL inheritance can still have ACLs supplied by its own readers and deniedReaders fields. |
CHILD_OVERRIDE |
During an authorization conflict, the ACL of the child item determines its read access. |
PARENT_OVERRIDE |
During an authorization conflict, the ACL of the parent item specified in the inheritAclFrom field determines read access. |
BOTH_PERMIT |
Access is granted only if this item and the parent item specified in the inheritAclFrom field both permit read access. |
Principal
Reference to a user, group, or domain.
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field
|
|
gsuitePrincipal |
This principal is a Google Workspace user, group or domain. |
userResourceName |
This principal is a user identified using an external identity. The name field must specify the user resource name with this format: identitysources/{sourceId}/users/{ID} |
groupResourceName |
This principal is a group identified using an external identity. The name field must specify the group resource name with this format: identitysources/{sourceId}/groups/{ID} |
ItemMetadata
Available metadata fields for the item.
JSON representation |
---|
{ "title": string, "sourceRepositoryUrl": string, "containerName": string, "objectType": string, "createTime": string, "updateTime": string, "interactions": [ { object ( |
Fields | |
---|---|
title |
The title of the item. If given, this will be the displayed title of the query.search result. The maximum length is 2048 characters. |
sourceRepositoryUrl |
Link to the source repository serving the data. Seach results apply this link to the title. Whitespace or special characters may cause Cloud Seach result links to trigger a redirect notice; to avoid this, encode the URL. The maximum length is 2048 characters. |
containerName |
The name of the container for this item. Deletion of the container item leads to automatic deletion of this item. Note: ACLs are not inherited from a container item. To provide ACL inheritance for an item, use the |
objectType |
The type of the item. This should correspond to the name of an object definition in the schema registered for the data source. For example, if the schema for the data source contains an object definition with name 'document', then item indexing requests for objects of that type should set objectType to 'document'. The maximum length is 256 characters. |
createTime |
The time when the item was created in the source repository. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
updateTime |
The time when the item was last modified in the source repository. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
interactions[] |
A list of interactions for the item. Interactions are used to improve query.search quality, but are not exposed to end users. The maximum number of elements is 1000. |
contentLanguage |
The BCP-47 language code for the item, such as "en-US" or "sr-Latn". For more information, see http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. The maximum length is 32 characters. |
mimeType |
The original mime-type of |
searchQualityMetadata |
Additional search quality metadata of the item |
keywords[] |
Additional keywords or phrases that should match the item. Used internally for user generated content. The maximum number of elements is 100. The maximum length is 8192 characters. |
hash |
Hashing value provided by the API caller. This can be used with the |
contextAttributes[] |
A set of named attributes associated with the item. This can be used for influencing the ranking of the item based on the context in the request. The maximum number of elements is 10. |
Interaction
Represents an interaction between a user and an item.
JSON representation |
---|
{ "type": enum ( |
Fields | |
---|---|
type |
|
principal |
The user that acted on the item. |
interactionTime |
The time when the user acted on the item. If multiple actions of the same type exist for a single user, only the most recent action is recorded. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
Interaction.InteractionType
The type of activity the user performed on the item.
Enums | |
---|---|
UNSPECIFIED |
Invalid value. |
VIEW |
This interaction indicates the user viewed the item. |
EDIT |
This interaction indicates the user edited the item. |
SearchQualityMetadata
Additional search quality metadata of the item.
JSON representation |
---|
{ "quality": number } |
Fields | |
---|---|
quality |
An indication of the quality of the item, used to influence search quality. value should be between 0.0 (lowest quality) and 1.0 (highest quality). The default value is 0.0. |
ContextAttribute
A named attribute associated with an item which can be used for influencing the ranking of the item based on the context in the request.
JSON representation |
---|
{ "name": string, "values": [ string ] } |
Fields | |
---|---|
name |
The name of the attribute. It should not be empty. The maximum length is 32 characters. The name must start with a letter and can only contain letters (A-Z, a-z) or numbers (0-9). The name will be normalized (lower-cased) before being matched. |
values[] |
Text values of the attribute. The maximum number of elements is 10. The maximum length of an element in the array is 32 characters. The value will be normalized (lower-cased) before being matched. |
ItemStructuredData
Available structured data fields for the item.
JSON representation |
---|
{
"object": {
object ( |
Fields | |
---|---|
object |
The structured data object that should conform to a registered object definition in the schema for the data source. |
hash |
Hashing value provided by the API caller. This can be used with the |
StructuredDataObject
A structured data object consisting of named properties.
JSON representation |
---|
{
"properties": [
{
object ( |
Fields | |
---|---|
properties[] |
The properties for the object. The maximum number of elements is 1000. |
NamedProperty
A typed name-value pair for structured data. The type of the value should be the same as the registered type for the name
property in the object definition of objectType
.
JSON representation |
---|
{ "name": string, // Union field |
Fields | |
---|---|
name |
The name of the property. This name should correspond to the name of the property that was registered for object definition in the schema. The maximum allowable length for this property is 256 characters. |
Union field value . The value(s) of the named property. Note that a property can only hold values of one type. value can be only one of the following: |
|
integerValues |
|
doubleValues |
|
timestampValues |
|
booleanValue |
|
objectValues |
|
enumValues |
|
dateValues |
|
textValues |
|
htmlValues |
|
NamedProperty.IntegerValues
List of integer values.
JSON representation |
---|
{ "values": [ string ] } |
Fields | |
---|---|
values[] |
|
NamedProperty.DoubleValues
List of double values.
JSON representation |
---|
{ "values": [ number ] } |
Fields | |
---|---|
values[] |
|
NamedProperty.TimestampValues
List of timestamp values.
JSON representation |
---|
{ "values": [ string ] } |
Fields | |
---|---|
values[] |
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
NamedProperty.ObjectValues
List of object values.
JSON representation |
---|
{
"values": [
{
object ( |
Fields | |
---|---|
values[] |
|
NamedProperty.EnumValues
List of enum values.
JSON representation |
---|
{ "values": [ string ] } |
Fields | |
---|---|
values[] |
The maximum allowable length for string values is 32 characters. |
NamedProperty.DateValues
List of date values.
JSON representation |
---|
{
"values": [
{
object ( |
Fields | |
---|---|
values[] |
|
NamedProperty.TextValues
List of text values.
JSON representation |
---|
{ "values": [ string ] } |
Fields | |
---|---|
values[] |
The maximum allowable length for text values is 2048 characters. |
NamedProperty.HtmlValues
List of html values.
JSON representation |
---|
{ "values": [ string ] } |
Fields | |
---|---|
values[] |
The maximum allowable length for html values is 2048 characters. |
ItemContent
Content of an item to be indexed and surfaced by Cloud Search. Only UTF-8 encoded strings are allowed as inlineContent
. If the content is uploaded and not binary, it must be UTF-8 encoded.
JSON representation |
---|
{ "contentFormat": enum ( |
Fields | |
---|---|
contentFormat |
|
hash |
Hashing info calculated and provided by the API client for content. Can be used with the items.push method to calculate modified state. The maximum length is 2048 characters. |
Union field
|
|
inlineContent |
Content that is supplied inlined within the update method. The maximum length is 102400 bytes (100 KiB). A base64-encoded string. |
contentDataRef |
Upload reference ID of a previously uploaded content via write method. |
ItemContent.ContentFormat
The format of the content. If the format is RAW the content should be in the format specified by mimeType
.
Enums | |
---|---|
UNSPECIFIED |
Invalid value. |
HTML |
contentFormat is HTML. |
TEXT |
contentFormat is free text. |
RAW |
contentFormat is raw bytes. |
UploadItemRef
Represents an upload session reference. This reference is created via upload method
. This reference is valid for 30 days after its creation. Updating of item content may refer to this uploaded content via contentDataRef
.
JSON representation |
---|
{ "name": string } |
Fields | |
---|---|
name |
The name of the content reference. The maximum length is 2048 characters. |
ItemStatus
This contains item's status and any errors.
JSON representation |
---|
{ "code": enum ( |
Fields | |
---|---|
code |
Status code. |
processingErrors[] |
Error details in case the item is in ERROR state. |
repositoryErrors[] |
Repository error reported by connector. |
ProcessingError
JSON representation |
---|
{ "code": enum ( |
Fields | |
---|---|
code |
Error code indicating the nature of the error. |
errorMessage |
The description of the error. |
fieldViolations[] |
In case the item fields are invalid, this field contains the details about the validation errors. |
ProcessingErrorCode
Codes for indicating the error encountered during the processing of items by the Cloud Search server. A single item may contain multiple processing errors.
Enums | |
---|---|
PROCESSING_ERROR_CODE_UNSPECIFIED |
Input only value. Use this value in Items. |
MALFORMED_REQUEST |
Item's ACL, metadata, or content is malformed or in invalid state. FieldViolations contains more details on where the problem is. |
UNSUPPORTED_CONTENT_FORMAT |
Countent format is unsupported. |
INDIRECT_BROKEN_ACL |
Items with incomplete ACL information due to inheriting other items with broken ACL or having groups with unmapped descendants. |
ACL_CYCLE |
ACL inheritance graph formed a cycle. |
FieldViolation
JSON representation |
---|
{ "field": string, "description": string } |
Fields | |
---|---|
field |
Path of field with violation. |
description |
The description of the error. |
RepositoryError
Errors when the connector is communicating to the source repository.
JSON representation |
---|
{
"type": enum ( |
Fields | |
---|---|
type |
The type of error. |
httpStatusCode |
Error codes. Matches the definition of HTTP status codes. |
errorMessage |
Message that describes the error. The maximum allowable length of the message is 8192 characters. |
RepositoryError.Type
List of error codes for communication problems with the repository.
Enums | |
---|---|
UNKNOWN |
Unknown error. |
NETWORK_ERROR |
Unknown or unreachable host. |
DNS_ERROR |
DNS problem, such as the DNS server is not responding. |
CONNECTION_ERROR |
Cannot connect to the repository server. |
AUTHENTICATION_ERROR |
Failed authentication due to incorrect credentials. |
AUTHORIZATION_ERROR |
Service account is not authorized for the repository. |
SERVER_ERROR |
Repository server error. |
QUOTA_EXCEEDED |
Quota exceeded. |
SERVICE_UNAVAILABLE |
Server temporarily unavailable. |
CLIENT_ERROR |
Client-related error, such as an invalid request from the connector to the repository server. |
Item.ItemType
Enums | |
---|---|
UNSPECIFIED |
|
CONTENT_ITEM |
An item that is indexed for the only purpose of serving information. These items cannot be referred in containerName or inheritAclFrom fields. |
CONTAINER_ITEM |
An item that gets indexed and whose purpose is to supply other items with ACLs and/or contain other items. |
VIRTUAL_CONTAINER_ITEM |
An item that does not get indexed, but otherwise has the same purpose as CONTAINER_ITEM. |
Methods |
|
---|---|
|
Deletes Item resource for the specified resource name. |
|
Deletes all items in a queue. |
|
Gets Item resource by item name. |
|
Updates Item ACL, metadata, and content. |
|
Lists all or a subset of Item resources . |
|
Polls for unreserved items from the indexing queue and marks a set as reserved, starting with items that have the oldest timestamp from the highest priority ItemStatus . |
|
Pushes an item onto a queue for later polling and updating. |
|
Unreserves all items from a queue, making them all eligible to be polled. |
|
Creates an upload session for uploading item content. |