# Languages

Languages are the localizations of which data can exist in the PIM installation. If users shall be able to enter data in a specific culture, that language must be added to the system. All languages in the system are based on ISO Culture codes. Each ISO culture code can only be added once, meaning no two languages can use the same culture code

## GET /v1/Languages

> Get all languages added to the system

```json
{"openapi":"3.0.1","info":{"title":"Struct PIM Public API","version":"1.0"},"tags":[{"name":"Languages","description":"Languages are the localizations of which data can exist in the PIM installation. If users shall be able to enter data in a specific culture, that language must be added to the system.\r\nAll languages in the system are based on ISO Culture codes. Each ISO culture code can only be added once, meaning no two languages can use the same culture code"}],"security":[{"ApiKey":[]}],"components":{"securitySchemes":{"ApiKey":{"type":"apiKey","description":"","name":"Authorization","in":"header"}},"schemas":{"Struct.App.Api.Models.Language.LanguageModel":{"type":"object","properties":{"Id":{"type":"integer","description":"Unique id of language","format":"int32"},"CultureCode":{"type":"string","description":"Culture code of language","nullable":true},"Name":{"type":"string","description":"Presented name of language","nullable":true},"SortOrder":{"type":"integer","description":"Sort order of language","format":"int32"}},"additionalProperties":false,"description":"Represents a language"}}},"paths":{"/v1/Languages":{"get":{"tags":["Languages"],"summary":"Get all languages added to the system","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Struct.App.Api.Models.Language.LanguageModel"}}}}}}}}}}
```

## POST /v1/Languages

> Add language to system

```json
{"openapi":"3.0.1","info":{"title":"Struct PIM Public API","version":"1.0"},"tags":[{"name":"Languages","description":"Languages are the localizations of which data can exist in the PIM installation. If users shall be able to enter data in a specific culture, that language must be added to the system.\r\nAll languages in the system are based on ISO Culture codes. Each ISO culture code can only be added once, meaning no two languages can use the same culture code"}],"security":[{"ApiKey":[]}],"components":{"securitySchemes":{"ApiKey":{"type":"apiKey","description":"","name":"Authorization","in":"header"}},"schemas":{"Struct.App.Api.Models.Language.AddLanguageModel":{"type":"object","properties":{"CultureCode":{"type":"string","description":"ISO 639-1 culture code","nullable":true},"Name":{"type":"string","description":"Presented name of language","nullable":true},"SortOrder":{"type":"integer","description":"Sort order of language","format":"int32"}},"additionalProperties":false,"description":"Model to add a language"},"Microsoft.AspNetCore.Mvc.ProblemDetails":{"type":"object","properties":{"Type":{"type":"string","nullable":true},"Title":{"type":"string","nullable":true},"Status":{"type":"integer","format":"int32","nullable":true},"Detail":{"type":"string","nullable":true},"Instance":{"type":"string","nullable":true}},"additionalProperties":{}}}},"paths":{"/v1/Languages":{"post":{"tags":["Languages"],"summary":"Add language to system","requestBody":{"description":"Language to add","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Struct.App.Api.Models.Language.AddLanguageModel"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"integer","format":"int32"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"}}}}}}}}}
```

## PUT /v1/Languages

> Update a language in the system

```json
{"openapi":"3.0.1","info":{"title":"Struct PIM Public API","version":"1.0"},"tags":[{"name":"Languages","description":"Languages are the localizations of which data can exist in the PIM installation. If users shall be able to enter data in a specific culture, that language must be added to the system.\r\nAll languages in the system are based on ISO Culture codes. Each ISO culture code can only be added once, meaning no two languages can use the same culture code"}],"security":[{"ApiKey":[]}],"components":{"securitySchemes":{"ApiKey":{"type":"apiKey","description":"","name":"Authorization","in":"header"}},"schemas":{"Struct.App.Api.Models.Language.LanguageModel":{"type":"object","properties":{"Id":{"type":"integer","description":"Unique id of language","format":"int32"},"CultureCode":{"type":"string","description":"Culture code of language","nullable":true},"Name":{"type":"string","description":"Presented name of language","nullable":true},"SortOrder":{"type":"integer","description":"Sort order of language","format":"int32"}},"additionalProperties":false,"description":"Represents a language"},"Microsoft.AspNetCore.Mvc.ProblemDetails":{"type":"object","properties":{"Type":{"type":"string","nullable":true},"Title":{"type":"string","nullable":true},"Status":{"type":"integer","format":"int32","nullable":true},"Detail":{"type":"string","nullable":true},"Instance":{"type":"string","nullable":true}},"additionalProperties":{}}}},"paths":{"/v1/Languages":{"put":{"tags":["Languages"],"summary":"Update a language in the system","requestBody":{"description":"Updated language","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Struct.App.Api.Models.Language.LanguageModel"}}}},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"}}}}}}}}}
```

## DELETE /v1/Languages

> Delete a language in the system

```json
{"openapi":"3.0.1","info":{"title":"Struct PIM Public API","version":"1.0"},"tags":[{"name":"Languages","description":"Languages are the localizations of which data can exist in the PIM installation. If users shall be able to enter data in a specific culture, that language must be added to the system.\r\nAll languages in the system are based on ISO Culture codes. Each ISO culture code can only be added once, meaning no two languages can use the same culture code"}],"security":[{"ApiKey":[]}],"components":{"securitySchemes":{"ApiKey":{"type":"apiKey","description":"","name":"Authorization","in":"header"}},"schemas":{"Microsoft.AspNetCore.Mvc.ProblemDetails":{"type":"object","properties":{"Type":{"type":"string","nullable":true},"Title":{"type":"string","nullable":true},"Status":{"type":"integer","format":"int32","nullable":true},"Detail":{"type":"string","nullable":true},"Instance":{"type":"string","nullable":true}},"additionalProperties":{}}}},"paths":{"/v1/Languages":{"delete":{"tags":["Languages"],"summary":"Delete a language in the system","parameters":[{"name":"id","in":"query","description":"Id of language","schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"}}}}}}}}}
```

## GET /v1/Languages/{id}

> Get a specific language in the system

```json
{"openapi":"3.0.1","info":{"title":"Struct PIM Public API","version":"1.0"},"tags":[{"name":"Languages","description":"Languages are the localizations of which data can exist in the PIM installation. If users shall be able to enter data in a specific culture, that language must be added to the system.\r\nAll languages in the system are based on ISO Culture codes. Each ISO culture code can only be added once, meaning no two languages can use the same culture code"}],"security":[{"ApiKey":[]}],"components":{"securitySchemes":{"ApiKey":{"type":"apiKey","description":"","name":"Authorization","in":"header"}},"schemas":{"Struct.App.Api.Models.Language.LanguageModel":{"type":"object","properties":{"Id":{"type":"integer","description":"Unique id of language","format":"int32"},"CultureCode":{"type":"string","description":"Culture code of language","nullable":true},"Name":{"type":"string","description":"Presented name of language","nullable":true},"SortOrder":{"type":"integer","description":"Sort order of language","format":"int32"}},"additionalProperties":false,"description":"Represents a language"}}},"paths":{"/v1/Languages/{id}":{"get":{"tags":["Languages"],"summary":"Get a specific language in the system","parameters":[{"name":"id","in":"path","description":"Id of language","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Struct.App.Api.Models.Language.LanguageModel"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Struct.App.Api.Models.Language.LanguageModel"}}}}}}}}}
```
