2022-10-18 17:25:00 -04:00
---
layout: default
title: Get Script Language
parent: Script APIs
nav_order: 6
---
2023-10-23 10:53:52 -04:00
# Get script language
**Introduced 1.0**
{: .label .label-purple }
2022-10-18 17:25:00 -04:00
The get script language API operation retrieves all supported script languages and their contexts.
2023-02-20 11:34:20 -05:00
#### Example request
2022-10-18 17:25:00 -04:00
```json
GET _script_language
```
2023-01-30 17:09:38 -05:00
{% include copy-curl.html %}
2022-10-18 17:25:00 -04:00
2023-02-20 11:34:20 -05:00
#### Example response
2022-10-18 17:25:00 -04:00
The `GET _script_language` request returns the available contexts for each language:
```json
{
"types_allowed" : [
"inline",
"stored"
],
"language_contexts" : [
{
"language" : "expression",
"contexts" : [
"aggregation_selector",
"aggs",
"bucket_aggregation",
"field",
"filter",
"number_sort",
"score",
"terms_set"
]
},
{
"language" : "mustache",
"contexts" : [
"template"
]
},
{
"language" : "opensearch_query_expression",
"contexts" : [
"aggs",
"filter"
]
},
{
"language" : "painless",
"contexts" : [
"aggregation_selector",
"aggs",
"aggs_combine",
"aggs_init",
"aggs_map",
"aggs_reduce",
"analysis",
"bucket_aggregation",
"field",
"filter",
"ingest",
"interval",
"moving-function",
"number_sort",
"painless_test",
"processor_conditional",
"score",
"script_heuristic",
"similarity",
"similarity_weight",
"string_sort",
"template",
"terms_set",
"trigger",
"update"
]
}
]
}
```
2023-10-23 10:53:52 -04:00
## Response fields
2022-10-18 17:25:00 -04:00
The request contains the following response fields.
2022-11-18 15:25:06 -05:00
Field | Data type | Description |
2022-10-18 17:25:00 -04:00
:--- | :--- | :---
types_allowed | List of strings | The types of scripts that are enabled, determined by the `script.allowed_types` setting. May contain `inline` and/or `stored` .
language_contexts | List of objects | A list of objects, each of which maps a supported language to its available contexts.
language_contexts.language | String | The name of the registered scripting language.
language_contexts.contexts | List of strings | A list of all contexts for the language, determined by the `script.allowed_contexts` setting.