Melakukan polling untuk item yang belum dipesan dari antrean pengindeksan dan menandai kumpulan sebagai dipesan, dimulai dengan item yang memiliki stempel waktu terlama dari ItemStatus prioritas tertinggi. Urutan prioritasnya adalah sebagai berikut:
Dengan memesan item, polling dari thread lain tidak dapat membuat set yang tumpang-tindih.
Setelah menangani item yang direservasi, klien harus mengembalikan item ke status yang tidak direservasi, baik dengan memanggil index, maupun dengan memanggil push dengan jenis REQUEUE.
Item akan otomatis tersedia (tidak direservasi) setelah 4 jam meskipun tidak ada metode update atau push yang dipanggil.
API ini memerlukan admin atau akun layanan untuk dieksekusi. Akun layanan yang digunakan adalah akun yang diizinkan di sumber data yang sesuai.
Permintaan HTTP
POST https://cloudsearch.googleapis.com/v1/indexing/{name=datasources/*}/items:poll
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-07-25 UTC."],[],[],null,["# Method: indexing.datasources.items.poll\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Request body](#body.request_body)\n - [JSON representation](#body.request_body.SCHEMA_REPRESENTATION)\n- [Response body](#body.response_body)\n - [JSON representation](#body.PollItemsResponse.SCHEMA_REPRESENTATION)\n- [Authorization scopes](#body.aspect)\n- [Try it!](#try-it)\n\nPolls 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](/workspace/cloud-search/docs/reference/rest/v1/ItemStatus.Code). The priority order is as follows:\n\n[ERROR](/workspace/cloud-search/docs/reference/rest/v1/ItemStatus.Code#ENUM_VALUES.ERROR)\n\n[MODIFIED](/workspace/cloud-search/docs/reference/rest/v1/ItemStatus.Code#ENUM_VALUES.MODIFIED)\n\n[NEW_ITEM](/workspace/cloud-search/docs/reference/rest/v1/ItemStatus.Code#ENUM_VALUES.NEW_ITEM)\n\n[ACCEPTED](/workspace/cloud-search/docs/reference/rest/v1/ItemStatus.Code#ENUM_VALUES.ACCEPTED)\n\nReserving items ensures that polling from other threads cannot create overlapping sets.\n\nAfter handling the reserved items, the client should put items back into the unreserved state, either by calling [index,](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items/index_#google.apps.search.v1.ItemsService.IndexItem) or by calling [push](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items/push#google.apps.search.v1.ItemsService.PushItem) with the type [REQUEUE.](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items/push#PushItem.Type.ENUM_VALUES.REQUEUE)\n\nItems automatically become available (unreserved) after 4 hours even if no update or push method is called.\n\nThis API requires an admin or service account to execute. The service account used is the one whitelisted in the corresponding data source.\n\n### HTTP request\n\n`POST https://cloudsearch.googleapis.com/v1/indexing/{name=datasources/*}/items:poll`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|--------|------------------------------------------------------------------------------------|\n| `name` | `string` The name of the data Source to poll items. Format: datasources/{sourceId} |\n\n### Request body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"connectorName\": string, \"statusCodes\": [ enum (/workspace/cloud-search/docs/reference/rest/v1/ItemStatus.Code) ], \"limit\": integer, \"queue\": string, \"debugOptions\": { object (/workspace/cloud-search/docs/reference/rest/v1/DebugOptions) } } ``` |\n\n| Fields ||\n|-----------------|------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `connectorName` | `string` The name of connector making this call. Format: datasources/{sourceId}/connectors/{id} |\n| `statusCodes[]` | `enum (`[ItemStatus.Code](/workspace/cloud-search/docs/reference/rest/v1/ItemStatus.Code)`)` Limit the items polled to the ones with these statuses. |\n| `limit` | `integer` Maximum number of items to return. The maximum value is 100 and the default value is 20. |\n| `queue` | `string` Queue name to fetch items from. If unspecified, items.poll will fetch from 'default' queue. The maximum length is 100 characters. |\n| `debugOptions` | `object (`[DebugOptions](/workspace/cloud-search/docs/reference/rest/v1/DebugOptions)`)` Common debug options. |\n\n### Response body\n\nIf successful, the response body contains data with the following structure:\n\n| JSON representation |\n|----------------------------------------------------------------------------------------------------------------------|\n| ``` { \"items\": [ { object (/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items#Item) } ] } ``` |\n\n| Fields ||\n|-----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `items[]` | `object (`[Item](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items#Item)`)` Set of items from the queue available for connector to process. These items have the following subset of fields populated: [version](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items#Item.FIELDS.version) [metadata.hash](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items#ItemMetadata.FIELDS.hash) [structuredData.hash](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items#ItemStructuredData.FIELDS.hash) [content.hash](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items#ItemContent.FIELDS.hash) [payload](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items#Item.FIELDS.payload) [status](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items#Item.FIELDS.status) [queue](/workspace/cloud-search/docs/reference/rest/v1/indexing.datasources.items#Item.FIELDS.queue) |\n\n### Authorization scopes\n\nRequires one of the following OAuth scopes:\n\n- `https://www.googleapis.com/auth/cloud_search.indexing`\n- `https://www.googleapis.com/auth/cloud_search`\n\nFor more information, see the [Authorization guide](/workspace/guides/configure-oauth-consent)."]]