# API

**Kind**: interface | **Module**: [Interception](https://docs.interop.io/desktop/reference/javascript/interception/index.md) | **Access**: `io.interception`

**Source**: https://docs.interop.io/desktop/reference/javascript/interception/api/index.html

Interception API.

*Since: io.Connect Desktop 9.6, @interopio/desktop 6.9.0*

## Methods

### register

Registers an interception handler. It's possible to register only a single interception handler per platform operation within an API domain.

```ts
(config: InterceptionRegistrationConfig) => Promise<void>
```

**Parameters**

- **`config`** (`InterceptionRegistrationConfig`, required)
  Object containing the interception handler to register and settings describing the platform operations to intercept.

**Returns**: `Promise<void>`

### unregister

Unregisters all interception handlers for the specified platform operations.

```ts
(config: InterceptionUnregistrationConfig) => Promise<void>
```

**Parameters**

- **`config`** (`InterceptionUnregistrationConfig`, required)
  Object specifying the platform operations which to stop intercepting.

**Returns**: `Promise<void>`

## Related types

- [InterceptionRegistrationConfig](https://docs.interop.io/desktop/reference/javascript/interception/interceptionregistrationconfig/index.md)
- [InterceptionUnregistrationConfig](https://docs.interop.io/desktop/reference/javascript/interception/interceptionunregistrationconfig/index.md)
