[[indexed-scripts]] == Indexed Scripts API The indexed script API allows one to interact with scripts and templates stored in an elasticsearch index. It can be used to create, update, get, and delete indexed scripts and templates. [source,java] -------------------------------------------------- PutIndexedScriptResponse = client.preparePutIndexedScript() .setScriptLang("painless") .setId("script1") .setSource("script", "_score * doc['my_numeric_field'].value") .execute() .actionGet(); GetIndexedScriptResponse = client.prepareGetIndexedScript() .setScriptLang("painless") .setId("script1") .execute() .actionGet(); DeleteIndexedScriptResponse = client.prepareDeleteIndexedScript() .setScriptLang("painless") .setId("script1") .execute() .actionGet(); -------------------------------------------------- To store templates simply use "mustache" for the scriptLang. === Script Language The API allows one to set the language of the indexed script being interacted with. If one is not provided the default scripting language will be used.