---
title: API configuration object
description: Connectors continue to be released outside the IDM release. For the latest documentation, refer to the OpenICF documentation.
component: pingidm
version: 7.2
page_id: pingidm:connector-dev-guide:api-config-object
canonical_url: https://docs.pingidentity.com/pingidm/7.2/connector-dev-guide/api-config-object.html
---

# API configuration object

|   |                                                                                                                                                                                   |
| - | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|   | Connectors continue to be released outside the IDM release. For the latest documentation, refer to the [OpenICF documentation](https://docs.pingidentity.com/openicf/index.html). |

The API configuration object holds the runtime configuration of the connector facade instance. The OpenICF framework creates a default API configuration object inside the Connector Info object. The application creates a copy of the API configuration object and customizes it according to its requirements. The API configuration object includes the following components:

* Object Pool Configuration

  The object pool configuration specifies the pool configuration for poolable connectors only. Non-poolable connectors ignore this parameter. The object pool configuration includes the following parameters:

  * maxObjects

    The maximum number of idle and active instances of the connector.

  * maxIdle

    The maximum number of idle instances of the connector.

  * maxWait

    The maximum time, in milliseconds, that the pool waits for an object before timing out. A value of `0` means that there is no timeout.

  * minEvictableIdleTimeMillis

    The maximum time, in milliseconds, that an object can be idle before it is removed. A value of `0` means that there is no idle timeout.

  * minIdle

    The minimum number of idle instances of the connector.

* Results Handler Configuration

  The results handler configuration defines how the OpenICF framework chains together the different results handlers to filter search results.

  * enableNormalizingResultsHandler

    boolean

    If the connector implements the attribute normalizer interface, you can enable this interface by setting this configuration property to `true`. If the connector does not implement the attribute normalizer interface, the value of this property has no effect.

  * enableFilteredResultsHandler

    boolean

    If the connector uses the filtering and search capabilities of the remote connected system, you can set this property to `false`. If the connector does not use the remote system's filtering and search capabilities (for example, the CSV file connector), you *must* set this property to `true`, otherwise the connector performs an additional, case-sensitive search, which can cause problems.

  * enableCaseInsensitiveFilter

    boolean

    By default, the filtered results handler (described previously) is case sensitive. If the filtered results handler is enabled this property lets you enable case-insensitive filtering. When case-insensitive filtering is not enabled, a search will not return results unless the case matches exactly. For example, a search for `lastName = "Jensen"` will not match a stored user with `lastName : jensen`.

  * enableAttributesToGetSearchResultsHandler

    boolean

    By default, IDM determines which attributes that should be retrieved in a search. If the `enableAttributesToGetSearchResultsHandler` property is set to `true`, the OpenICF framework removes all attributes from the READ/QUERY response, except for those that are specifically requested. For performance reasons, it is recommended that you set this property to `false` for local connectors, and to `true` for remote connectors.

* Configuration Properties

  The Configuration Properties object is built and populated by the framework as it parses the connectors configuration class.

* Timeout Configuration

  The timeout configuration enables you to configure timeout values per operation type. By default, there is no timeout configured for any operation type.
