---
title: "Deprecation: #89718 - Legacy PageTSconfig parsing lowlevel API"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:deprecation-89718"
source: "Changelog/10.2/Deprecation-89718-LegacyPageTSconfigParsingLowlevelAPI.rst"
typo3-version: "10.2"
typo3-major: 10
type: "deprecation"
issue: 89718
forge: "https://forge.typo3.org/issues/89718"
tags: ["PHP-API", "TSConfig", "FullyScanned", "ext:core"]
rendered: "2026-09-20T18:31:11+00:00"
---

# Deprecation: #89718 - Legacy PageTSconfig parsing lowlevel API {#deprecation-89718}

See [forge#89718](https://forge.typo3.org/issues/89718)

## Description {#description}

Two new PHP API classes for retrieving and parsing TsConfig are
introduced:

-   `\TYPO3\CMS\Core\Configuration\Loader\PageTsConfigLoader`
-   `\TYPO3\CMS\Core\Configuration\Parser\PageTsConfigParser`

As this API is more consistent, and flexible, as well as agnostic
of the current Context of backend or frontend, the following
functionality has been marked as deprecated:

-   `\TYPO3\CMS\Core\Configuration\TsConfigParser`
-   `TYPO3\CMS\Backend\Utility\BackendUtility::getRawPagesTSconfig()`

## Impact {#impact}

Instantiating the PHP class or the mentioned PHP method will trigger
a deprecation message.

## Affected Installations {#affected-installations}

TYPO3 Installations with extensions using the lowlevel API for handling PageTSconfig.

## Migration {#migration}

Loading and parsing PageTSconfig on a low-level should be done via the new PHP classes:

-   `\TYPO3\CMS\Core\Configuration\Loader\PageTsConfigLoader`
-   `\TYPO3\CMS\Core\Configuration\Parser\PageTsConfigParser`

Usages for fetching all available PageTS of a page/rootline in one large string:

```php
$loader = GeneralUtility::makeInstance(PageTsConfigLoader::class);
$tsConfigString = $loader->load($rootLine);
```

The string is parsed (and conditions are applied) with the Parser:

```php
   $parser = GeneralUtility::makeInstance(
    PageTsConfigParser::class,
    $typoScriptParser,
    $hashCache
);
$pagesTSconfig = $parser->parse(
    $tsConfigString,
    $conditionMatcher
);
```

Extension developers should rely on this syntax rather than
on `$GLOBALS['TSFE']->getPagesTSconfig()` or `BackendUtility::getPagesTsConfig()`, or the deprecated method / class.
