# Add a language

Adds a language to your environment, so you can create content and build websites in that language. You can choose from the language supported by SitecoreAI. If you do not know the language code of the language, first retrieve the list of languages supported in SitecoreAI.
            To add a language to the system, you must provide the language code. You can optionally input additional parameters, such as region code and spell checker.
            If you want to add a custom language not in the default cultures, register it as a custom culture (as described in .NET CultureInfo class) and update the LanguageDefinitions.config file.

Endpoint: POST /api/v1/languages
Version: v1
Security: Bearer

## Query parameters:

  - `environmentId` (string)
    The identifier of the environment.

## Request fields (application/json):

  - `languageCode` (string, required)
    The ISO code for the language.
Example value: en
    Example: "en"

  - `charset` (string,null)
    The character encoding, that specifies how characters are represented in a document or web page.
Example value: iso-8859-1
    Example: "iso-8859-1"

  - `codePage` (string,null)
    Code Page
Example value: 65001
    Example: "65001"

  - `customCode` (string,null)
    If you wish to support a nonstandard country or region code, you can provide a custom language code.
Example value: en-EU
    Example: "en-EU"

  - `database` (string,null)
    Database
Example value: master
    Example: "master"

  - `encoding` (string,null)
    Encoding
Example value: utf-8
    Example: "utf-8"

  - `name` (string,null)
    The name that will be used for the language.
Example value: en-US
    Example: "en-US"

  - `regionCode` (string,null)
    The regional ISO code of the language. Example values: US for the USA, or DK for Denmark.
Example value: US
    Example: "US"

  - `fallbackLanguage` (string,null)
    If you wish to configure fallback for the new language, add the ISO language code for the fallback language.
Example value: en
    Example: "en"

  - `spellChecker` (string,null)
    A reference to the dictionary file name that you want to use to spellcheck in the new language.
Example value: en-US.tdf
    Example: "en-US.tdf"

## Response 200 fields (application/json):

  - `id` (string,null)
    The identifier of the language.
Example value: af58419145c9420187405409f4cf8bdd
    Example: "af58419145c9420187405409f4cf8bdd"

  - `iso` (string,null)
    The ISO code of the language.
Example value: en
    Example: "en"

  - `regionalIsoCode` (string,null)
    The regional ISO code of the language, for example, US for the USA, or DK for Denmark.
Example value: en-US
    Example: "en-US"

  - `fallbackLanguageIso` (string,null)
    The ISO code of the fallback language
Example value: en
    Example: "en"

  - `name` (string,null)
    The ISO language code (e.g., "en" for English, "es" for Spanish).
Example value: en-US
    Example: "en-US"

  - `displayName` (string,null)
    The human-readable name of the language as it appears in the user interface, for example, "English" or "Español."
Example value: English (United States) : English (United States)
    Example: "English (United States) : English (United States)"

  - `nativeName` (string,null)
    The language name in its original script or characters. For instance, "English" would be displayed as "English" itself, but "日本語" would appear as "日本語."
Example value: English (United States)
    Example: "English (United States)"

  - `englishName` (string,null)
    The language name in English, regardless of the language being described. For example, "Deutsch" would be displayed as "German."
Example value: English (United States)
    Example: "English (United States)"

  - `baseIsoCultureCode` (string,null)
    Base ISO culture code. If this is a custom language, this ISO culture code will represent the language code used as the base of this language.
For example, if the custom language uses the same writing system, calendar, and date format as American English, the value would be 'en-US'.
Example value: en-US
    Example: "en-US"

  - `fallbackRegionDisplayName` (string,null)
    If this is a custom language, the Fallback Region Display Name respresents the region name that should be displayed.
Example value: North America
    Example: "North America"

  - `permissions` (object)
    The access rights of the current user to the site.

  - `permissions.canAdmin` (boolean)
    Whether the current user has admin rights. Being an admin means that you control access permissions for other users, and have full read and write rights.
Example value: False

  - `permissions.canWrite` (boolean)
    Whether the current user has permissions to edit values. Users with write access also have read access.
Example value: False

  - `permissions.canCreate` (boolean)
    Whether the current user has permission to create entities.
Example value: False

  - `permissions.canDelete` (boolean)
    Whether the current user has permission to delete entities.
Example value: False

  - `permissions.canRename` (boolean)
    Whether the current user has permission to rename entities.
Example value: False

  - `permissions.canRead` (boolean)
    Whether the current user has permission to see entities, including all their parameters.
Example value: False

  - `permissions.canPublish` (boolean)
    Whether the current user has permission to publish sites in this environment.
Example value: False

  - `permissions.canDuplicate` (boolean)
    Whether the current user has permission to duplicate entities.
Example value: False

  - `permissions.canWriteLanguage` (boolean)
    Whether the current user has permission to write item language entities.
Example value: False

## Response 400 fields (application/json):

  - `type` (string,null)
    The type of the error response entity.

  - `title` (string,null)
    The title of the error response entity.

  - `status` (integer,null)
    The response status code.

  - `detail` (string,null)
    A detailed explanation, specific to this occurrence of the problem.

  - `instance` (string,null)
    If available, a URI reference that identifies the specific occurrence of the problem.


