# Indexing data source (version 2) (IRPCIndexingDataSource2)

Location: [gRPC API](https://developer.m-files.com/APIs/gRPC-API/index.md) > [Server integration API](https://developer.m-files.com/APIs/gRPC-API/integration/index.md)

HTML version: https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/

More methods for search indexers, continuing
[IRPCIndexingDataSource](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource/index.md).

- **gRPC service:** `MFiles.IRPCIndexingDataSource2`
- **Book and level:** [Server integration API](https://developer.m-files.com/APIs/gRPC-API/integration/index.md), specialized
- **Methods:** 5
- **Proto file:** [`mfiles/IRPCIndexingDataSource2.proto`](https://developer.m-files.com/APIs/gRPC-API/downloads/proto/mfiles/IRPCIndexingDataSource2.proto)

<a id="overview"></a>

## Overview

**For M-Files components only.** M-Files' cloud search indexing services use these methods
together with the combined enumerator of IRPCIndexingDataSource
([GetNextObjectsForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource/GetNextObjectsForIX/index.md)). Applications
should not call them; to search, use [IRPCSearch](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCSearch/index.md).

- **Rights:** a vault session with the vault rights `see_all_objects` and `see_deleted_objects`; no
  server role is needed. A normal user is denied. The data is returned
  regardless of the caller's object permissions; the objects' own permissions are included for
  the index.
- **Tasks:** value list items for the index
  ([GetValueListItemsForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetValueListItemsForIX/index.md)), one
  object by ID ([GetObjectForIXById](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetObjectForIXById/index.md)),
  the extracted text of a file
  ([GetTextContentForFileForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetTextContentForFileForIX/index.md)),
  the index configuration
  ([GetIndexConfigurationsForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetIndexConfigurationsForIX/index.md)),
  and the current crawl position
  ([GetCurrentTimestampForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetCurrentTimestampForIX/index.md)).
- Only for vaults that the server hosts itself; external (unmanaged) objects and files are not
  supported and fail with "Not implemented." (0x80004001).

<a id="methods"></a>

## Methods

| Method | Summary | Facts |
|---|---|---|
| [GetCurrentTimestampForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetCurrentTimestampForIX/index.md) | Gets the vault's current crawl position for the combined enumerator: a crawl that starts there sees every change committed after the call and none committed before it. | `internal: not for applications` `read` `session` `idempotent` |
| [GetIndexConfigurationsForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetIndexConfigurationsForIX/index.md) | Gets the vault's search index configuration as JSON, without secrets, plus the vault settings that an index built from it must agree on. | `internal: not for applications` `read` `session` `idempotent` |
| [GetObjectForIXById](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetObjectForIXById/index.md) | Gets the index data of one object by its ID: the same data that [GetNextObjectsForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource/GetNextObjectsForIX/index.md) returns for the latest checked-in version and, if requested, the checked-out version. | `internal: not for applications` `read` `session` `idempotent` |
| [GetTextContentForFileForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetTextContentForFileForIX/index.md) | Gets the text that the server extracts from a file version for indexing, in the response. | `internal: not for applications` `read` `session` `idempotent` |
| [GetValueListItemsForIX](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCIndexingDataSource2/GetValueListItemsForIX/index.md) | Gets the items of one value list for a search index: all items page by page, or the changes since a known version. | `internal: not for applications` `read` `session` `idempotent` |
