> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qonto.com/llms.txt
> Use this file to discover all available pages before exploring further.

# OperationSettings

[@qonto/embed-sdk](../../README) / [\<internal>](../README) / OperationSettings

# Interface: OperationSettings

Optional settings to configure the SDK's operations that will be performed
after the initialization. This can be also provided when calling the
operation functions themselves.

## Properties

### accessToken?

> `optional` **accessToken**: `string`

Optional access token to use for the operation. If not provided, the
SDK will use the access token set during initialization.

***

### debugMode?

> `optional` **debugMode**: `boolean`

Whether to enable debug mode for the SDK. If not provided, the SDK will
default to false.
If debug mode is enabled, it will print extra logging to the console
during the execution of the SDK functions in which an iframe is involved.

***

### idempotencyKey?

> `optional` **idempotencyKey**: `string`

Optional idempotency key to use for the operation. If not provided, the
SDK will generate a random key for the functions that require it.

***

### locale?

> `optional` **locale**: `string`

The locale to use for the SDK. This is optional, and if not provided, it will
default to English. Setting the locale will make the SDK render its UI in the
specified language.

***

### mfaPreference?

> `optional` **mfaPreference**: `string`

The Multifactor Authentication (MFA) preference to use for the operations.
This can be either `MFA_METHODS.PASSKEY`, `MFA_METHODS.PAIRED_DEVICE` or
`MFA_METHODS.SMS_OTP`. If not provided, the SDK will default to 'PASSKEY'.

***

### paginationSettings?

> `optional` **paginationSettings**: [`PaginationSettings`](./PaginationSettings)

Optional pagination settings to use for the operation. If the called function
is not subject to pagination, this parameter will be ignored.

***

### proxyEndpointDescriptor?

> `optional` **proxyEndpointDescriptor**: [`ProxyEndpointDescriptor`](./ProxyEndpointDescriptor)

`proxyEndpointDescriptor` is a mechanism to avoid operating with sensitive
information, like the access token and the staging token, in client side
environments. Using them in client side could lead to data leak. It works as
follows:

Qonto Embed exposes a proxy endpoint in its API that is capable of getting
requests prepared by the SDK. In your web application, you must implement a
backend endpoint that receives a string value in the body,
adds the access token in the `Authorization` header and calls the Qonto
Embed proxy endpoint with the string payload you received. The `proxyEndpointDescriptor`
the SDK expects is an object in which you will describe the call to your
backend endpoint.

When the SDK needs to perform an operation that involves a call to the Embed
API which needs to include the access token, it will use the `proxyEndpointDescriptor`
to call your backend endpoint.

The `proxyEndpointDescriptor` must at least include:

* `path`: A string representing the endpoint in your web app the SDK will call.
* `method`: (optional) The HTTP method to use when calling your endpoint. Defaults to 'POST'.
* `options.headers`: (optional) An object including a set of key value pairs
  which will be sent as headers to your web app's endpoint.

***

### stagingToken?

> `optional` **stagingToken**: `string`

Optional staging token to use for the operation. The staging token is only
needed when working in the staging environment, and it is irrelevant and not
needed in production. If not provided, the SDK will use the staging token
set during initialization.

***

### uiParentElementId?

> `optional` **uiParentElementId**: [`UIParentElementId`](../type-aliases/UIParentElementId)

The id of the element where the SDK UI for sensitive operations will be
rendered.
