---
title: OpenICF interfaces
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-reference:interfaces
canonical_url: https://docs.pingidentity.com/pingidm/7.2/connector-reference/interfaces.html
---

# OpenICF interfaces

|   |                                                                                                                                                                                   |
| - | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|   | 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 OpenICF framework supports the following interfaces:

|   |                                                            |
| - | ---------------------------------------------------------- |
|   | Some connectors support only a subset of these interfaces. |

* AttributeNormalizer

  Normalize attributes to ensure consistent filtering.

- Authenticate

  Provides simple authentication with two parameters, presumed to be a username and password. IDM requires the connector to implement the `AuthenticateOp` interface in order to provide pass-through authentication.

* Batch

  Execute a series of operations in a single request. If a resource does not support batch operations, the connector will not implement the batch operation interface. The OpenICF framework will still support batched requests but the operations will be executed iteratively through the connector.

- Connector Event

  Subscribe for notification of any specified event on the target resource. This operation can be used in the context of IoT device reports, to receive notification of events such as low battery signals, inactive devices, and so on.

* Create

  Create an object and return its UID.

- Delete

  Delete an object by its UID.

* Get

  Get an object by its UID.

- PoolableConnector

  Use pools of target resources.

* Resolve Username

  Resolve an object to its UID based on its username.

- Schema

  Describe supported object types, operations, and options.

* Script on Connector

  Allow script execution on the connector.

- Script On Resource

  Allow script execution on the resource.

* Search

  Allow searches for resource objects.

  Connectors that implement *only* this interface can only be used for reconciliation operations.

- Sync

  Poll for synchronization events, which are native changes to target objects.

* Sync Event

  Subscribe for notification of synchronization events, which are native changes to target objects.

- Test

  Test the connection configuration, including connecting to the resource.

* Update

  Allows an authorized caller to update (modify or replace) objects on the target resource.

- Update Attribute Values

  Allows an authorized caller to update (modify or replace) attribute values on the target resource. This operation is more advanced than the `UpdateOp` operation, and provides better performance and atomicity semantics.
