# Oz API Configuration

The configuration settings are contained in the`config.py` file.

## **Initial Configuration**

These parameters are mandatory. Please note: if you require the Instant API mode (with no data saved anywhere), set `OZ_APP_COMPONENTS=stateless`. Otherwise, to save data for orders and analyses, set `OZ_APP_COMPONENTS=auth,stateful,oz_collections`, where:

* `auth` is an authentication module,
* `stateful` is a module for full API,
* `oz_collections` is a module for the blacklist analysis (remove if you don't use it).

```python
# application components list
OZ_APP_COMPONENTS=auth,stateful,oz_collections
# enable local storage support
OZ_LOCAL_STORAGE_SUPPORT_ENABLE=false
# tfss service host
OZ_SERVICE_TFSS_HOST=http://xxx.xxx.xxx.xxx:xxxx
# allowed hosts
APP_ALLOWED_HOSTS=example-host1.com,example-host2.com
# secret key
OZ_API_SECRET_KEY=long_secret_key
```

## **Postgres Connection**

This is needed only if you use the full API version.

```python
DB_USER = 'user name'
DB_HOST = 'Postgres server address'
DB_PASS = 'user password'
DB_NAME = 'database name'
```

## Path to Media Files

All incoming media files are saved in the local directory mounted to one of possible endpoints depending of the installation method:

* host server or Docker container: `/opt/gateway/static`
* in case of standalone installer: `/var/lib/docker/volumes/api_oz-api-static-vol/_data`
* any path specified via configuration

In most of the integration cases, the media files can be accessed in web using the direct links to randomly generated filenames.

To access the media, you need to specify in the configuration file their external host name or IP address, port, and connection protocol.

```python
PORT = 443
SCHEME = 'https'
HOST = 'api.globalbank.com'
```

## Connection to Oz Bio / Liveness

```python
OZ_SERVICE_TFSS_HOST = 'http://bio-server-name:8501/v1/'
```

## Timing and Limits

{% hint style="warning" %}
Please note: we stopped supporting Celery in 6.5.0.
{% endhint %}

```python
# amount of retries to perform analyses to Oz Bio
OZ_CELERY_RETRY_MAX_COUNT = 7
# delay between tries
OZ_CELERY_RETRY_STEP = 30

# maximum wait time of one analyse
OZ_ANALYSE_PROCESSING_EXPIRE_TIMEOUT = 15 * 60  # 15 minutes
# maximum wait time of analyse from API
OZ_ANALYSE_DELIVERY_EXPIRE_TIMEOUT = 60 * 60  # 1 hour
# frequency for check analyse expiration
OZ_ANALYSE_EXPIRE_BEAT_PERIOD = 1 * 60  # every minute

# maximum amount of attached media
OZ_ATTACHMENT_MAX_COUNT = 10
# maximum size of one media file
OZ_ATTACHMENT_MAX_SIZE = 24 * 1024 * 1024  # 24 Mb

# amount of seconds until access token expiration
OZ_SESSION_TTL = 60 * 15  # 15 minutes
# amount of seconds until service access token expiration
OZ_SESSION_LONGLIVE_TTL = 60 * 60 * 24 * 365 * 5  # 5 years

# maximum size of thumbnail in bytes
OZ_IMAGE_SIZE_THUMBNAIL = 300
# maximum duration of video file
OZ_VIDEO_DURATION_MAX = 30
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.ozforensics.com/oz-knowledge/guides/administrator-guide/configuration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
