---
title: "Configuration"
version: "1.4"
source: "Configuration.md"
modified: "2026-09-16T12:46:44+00:00"
---

# Configuration

## Update database structure

Use the "Analyze Database Structure" in the "Maintenance" Admin Tools section to update the database structure.

## Web service

### API endpoint

To access the Algolia API, store the corresponding configuration in the file `additional.php` within the global structure "TYPO3_CONF_VARS" under "EXTENSIONS" and "typo3_search_algolia" (note the spelling) of your TYPO3 installation.

```php
// The universal messenger API endpoint
$GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['typo3_search_algolia'] = array_merge(
    $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['typo3_search_algolia'] ?? [],
    [
        'appId' => 'YOUR-APP-ID',
        'apiKey' => 'YOUR-API-KEY',
    ]
);

```

| Field | Description |
| --- | --- |
| appId | Your Algolia application ID. |
| apiKey | An API key with the necessary permissions to make the request. The required access control list (ACL) to make a request is listed in each endpoint's reference. |

You can find your application ID and API key in the Algolia dashboard.

## Basics

Next, create a data directory to store the configured index services, search engines, and, if applicable, file collections. To do this, switch to the list view in the TYPO3 backend and add a new "Folder" element to the page tree, then select the created data folder.

## Setting up index services and search engine

### Search engine

Create a new record of type "Search Engine".

![configuration-search-engine-1](Images/Configuration-001.png)

*Fig. 1: Create a new record of type "Search Engine"*

Add a title, an optional description to the new record, and select the search engine service to use (the default available one is "Algolia Search Service"). To create a custom search engine service, refer to: [Custom Search Engine](CustomSearchEngine.html)

Add a search engine dependent configuration into the "index_name" field. In the case of Algolia searches, this is the name of an index within Algolia in which the indexed data will ultimately be stored.

![configuration-search-engine-2](Images/Configuration-002.png)

*Fig. 2: Configuration TCA of type "Search Engine"*

### Indexing Service

In the next step, the respective indexing services are created. These define which data will be indexed.

To do this, create a new record of type "Indexing Service".

![configuration-indexing-service-1](Images/Configuration-003.png)

*Fig. 3: Create a new record of type "Indexing Service"*

Give the indexing service a meaningful title, an optional description, and select the type of indexer to be used. By default, the following are available:

-   Content elements
-   Pages
-   Messages
-   Files

The display updates depending on your selection and offers additional configuration options.

Then select one of the previously created search engine configurations.

![configuration-indexing-service-1](Images/Configuration-004.png)

*Fig. 4: Configuration TCA of type "Indexing Service"*

#### Page Indexer Configuration

The following additional options are available for the page indexer:

-   Include content elements \[include_content_elements\]

    -   Enable this option to index the page's content elements in addition to the page properties. Alternatively, you can use the content element indexer, especially if the search engine has a record size limit.
    -   With this option, the content element fields stored in the TypoScript configuration  `module.tx_typo3searchalgolia.indexer.tt_content.fields` are read and stored directly in the page's index entry in the `content` attribute. A separate indexing service for the content elements is then no longer necessary. However, a data set for a page can become very large, so it's important to check whether the search engine supports this.
-   Page type \[pages_doktype\]

    -   Select the page types by which the pages selected below for indexing should be filtered. If no selection is made here, all page types will be included.
-   Single pages \[pages_single\]

    -   Select individual pages to be indexed here. Indexing will only occur for pages whose "Include in Search" option is enabled in the page properties.
-   Pages (recursively) \[pages_recursive\]

    -   Select the pages you want to recursively index, including all their subpages. Indexing will only occur for pages whose "Include in Search" option is enabled in the page properties.

#### Content Element Indexer Configuration

The following additional options are available for the content item indexer:

-   Single pages \[pages_single\]

    -   Select individual pages to be indexed here. Indexing will only occur for pages whose "Include in Search" option is enabled in the page properties.
-   Pages (recursively) \[pages_recursive\]

    -   Select the pages you want to recursively index, including all their subpages. Indexing will only occur for pages whose "Include in Search" option is enabled in the page properties.

#### File Indexer Configuration

The following additional options are available for the file indexer:

-   File collections \[file_collections\]

    -   Select the file collections that should be used for indexing. Indexing will only occur for files whose "Include in Search" option is enabled in the metadata properties.
