# Node js ngram api

**URL:** <https://discuss.elastic.co/t/node-js-ngram-api/88875>\
**Category:** Вопросы на русском языке\
**Created:** [June 9, 2017, 6:22pm UTC](https://discuss.elastic.co/t/node-js-ngram-api/88875 "2017-06-09T18:22:49Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![whispersofdew](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/whispersofdew/32/11067_2.png) [@whispersofdew](https://discuss.elastic.co/u/whispersofdew)\
**Post date:** [June 9, 2017, 6:22pm UTC](https://discuss.elastic.co/t/node-js-ngram-api/88875/1 "2017-06-09T18:22:49Z")

</div>

Доброго времени суток!

У меня вопрос по node js + ngram + analyzer.

В спеке по node js не нашел как добавлять ngram + вопрос можно ли сразу при создании индекса добавлять и все сеттингс через апи node js?  
Или надо делать цепочку из промисов и после create вызывать indices.putSettings ?

Хочу на node.js сделать следующее:

```
PUT /test23
    {
        "settings" : {
            "analysis" : {
                "analyzer" : {
                    "ngram_analyzer" : {
                        "tokenizer" : "ngram_tokenizer"
                    }
                },
                "tokenizer" : {
                    "ngram_tokenizer" : {
                        "type" : "nGram",
                        "min_gram" : "3",
                        "max_gram" : "8"
                    }
                }
            }
        }
    }
    
PUT /test23/_mapping/pet
{
    "pet": {
        "properties": {
            "name": {
                "type": "string",
                "analyzer": "ngram_analyzer"
            }
        }
    }
}
    
    
    PUT /test23/pet/1
{
    "name" : "Raven"
}

GET test23/pet/_search
{
    "query": {
        "match": {
          "name" : "Rav"
        }
    }
}
```

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [June 9, 2017, 10:17pm UTC](https://discuss.elastic.co/t/node-js-ngram-api/88875/2 "2017-06-09T22:17:12Z")

</div>

И settings и mappings можно задать при создании индекса.

---

<div class="post-metadata">

**Author:** ![whispersofdew](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/whispersofdew/32/11067_2.png) [@whispersofdew](https://discuss.elastic.co/u/whispersofdew)\
**Post date:** [June 14, 2017, 10:21am UTC](https://discuss.elastic.co/t/node-js-ngram-api/88875/3 "2017-06-14T10:21:11Z")

</div>

Получилось! Спасибо!

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 12, 2017, 10:21am UTC](https://discuss.elastic.co/t/node-js-ngram-api/88875/4 "2017-07-12T10:21:37Z")

</div>

Closed on July 12, 2017, 10:21am UTC

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
