# Language API

> For the complete documentation index, see [llms.txt](https://doc.ibexa.co/en/saas/llms.txt).

You can add languages to the system and get information about existing languages via the PHP API.

You can manage languages configured in the system with PHP API by using `LanguageService`.

## Getting language information

To get a list of all languages in the system use `LanguageService::loadLanguages`:

```php
$languageList = $this->languageService->loadLanguages();

foreach ($languageList as $language) {
    $output->writeln($language->languageCode . ': ' . $language->name);
}
```

## Creating a language

To create a new language, you need to create a `LanguageCreateStruct` and provide it with the language code and language name. Then, use `LanguageService::createLanguage` and pass the `LanguageCreateStruct` to it:

```php
$languageCreateStruct = $this->languageService->newLanguageCreateStruct();
$languageCreateStruct->languageCode = 'pol-PL';
$languageCreateStruct->name = 'Polish';
$this->languageService->createLanguage($languageCreateStruct);
$output->writeln('Added language Polish with language code pol-PL.');
```
