.. include:: ../../Includes.txt .. _customization_expression-language: Expression Language ===================== `Symfony expression language `__ is `widely used in TYPO3 core `__. T3api also uses it in two places: - :ref:`Serialization (and deserialization) ` - :ref:`Security (checking access to operations and filters) ` T3api utilizes TYPO3 core expression language feature. So, if you would like to extend expression language used in t3api core, you need to register new provider in `the same way as you do it e.g. for TS `__. Just notice that appropriate context has to be specified as array key (in this case it's ``t3api``). Code below shows how to register ``MyCustomProvider`` in ``t3api`` context. .. code-block:: php :caption: typo3conf/ext/my_ext/Configuration/ExpressionLanguage.php return [ 't3api' => [ \Vendor\MyExt\ExpressionLanguage\MyCustomProvider::class, ], ]; After registration of custom provider follow TYPO3 documentation how to `add additional variables `__ and `additional functions `__ into expression language. Now you can use your custom variables and functions inside t3api security check or serialization and deserialization expressions.