---
name: "mongoc_collection_find_indexes"
section: "3"
platform: "linux"
package: "libmongoc-doc"
version: "1.30.4-1+deb13u3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/mongoc_collection_find_indexes"
---

# mongoc\_collection\_find\_indexes(3)

**WARNING:**

Deprecated since version 1.9.0: Use *mongoc\_collection\_find\_indexes\_with\_opts()* instead.

## SYNOPSIS

```
mongoc_cursor_t *
mongoc_collection_find_indexes (mongoc_collection_t *collection,
                                bson_error_t *error);
```

Fetches a cursor containing documents, each corresponding to an index on this collection.

This function is considered a retryable read operation. Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once. If **retryreads** is false in the URI (see *mongoc\_uri\_t*) the retry behavior does not apply.

## PARAMETERS

- •

  **collection**: A *mongoc\_collection\_t*.

- •

  **error**: An optional location for a *bson\_error\_t* or **NULL**.

## ERRORS

Errors are propagated via the **error** parameter.

## RETURNS

This function returns a newly allocated *mongoc\_cursor\_t* that should be freed with *mongoc\_cursor\_destroy()* when no longer in use. The returned *mongoc\_cursor\_t* is never **NULL**, even on error. The user must call *mongoc\_cursor\_next()* on the returned *mongoc\_cursor\_t* to execute the initial command.

Cursor errors can be checked with *mongoc\_cursor\_error\_document()*. It always fills out the *bson\_error\_t* if an error occurred, and optionally includes a server reply document if the error occurred server-side.

**WARNING:**

Failure to handle the result of this function is a programming error.

In the returned cursor each result corresponds to the server's representation of an index on this collection. If the collection does not exist on the server, the cursor will be empty.

The cursor functions *mongoc\_cursor\_set\_limit()*, *mongoc\_cursor\_set\_batch\_size()*, and *mongoc\_cursor\_set\_max\_await\_time\_ms()* have no use on the returned cursor.

## AUTHOR

MongoDB, Inc

## COPYRIGHT

2009-present, MongoDB, Inc.
