# PHP Client Suggestion BadRequest400Exception

**URL:** <https://discuss.elastic.co/t/php-client-suggestion-badrequest400exception/69691>\
**Category:** Elasticsearch\
**Created:** [December 21, 2016, 6:02pm UTC](https://discuss.elastic.co/t/php-client-suggestion-badrequest400exception/69691 "2016-12-21T18:02:19Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![mc1392](https://avatars.discourse-cdn.com/v4/letter/m/57b2e6/32.png) [@mc1392](https://discuss.elastic.co/u/mc1392)\
**Post date:** [December 21, 2016, 6:02pm UTC](https://discuss.elastic.co/t/php-client-suggestion-badrequest400exception/69691/1 "2016-12-21T18:02:19Z")

</div>

I'm using the PHP client.  
I can search no problem.

My problem is getting suggestions.  
Here is my code:

```
$json = '
POST /my_search_engine/_suggest
{
  "my_engine":{
    "text":"'.$keyword.'",
    "completion":{
      "field":"title_suggest"
    }
  }
}';

$params ['body'] = $json;
$response = $client->suggest ( $params );

```

Here is the stack trace:

```
<b>Fatal error</b>: Uncaught exception 'Elasticsearch\Common\Exceptions\BadRequest400Exception' with message '{&quot;error&quot;:{&quot;root_cause&quot;:[{&quot;type&quot;:&quot;parse_exception&quot;,&quot;reason&quot;:&quot;Failed to derive xcontent&quot;}],&quot;type&quot;:&quot;parse_exception&quot;,&quot;reason&quot;:&quot;Failed to derive xcontent&quot;},&quot;status&quot;:400}' in /var/www/ats-site-lib/ats-site-thoracic/web/app/es_search/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php:681
Stack trace:
#0 /var/www/ats-site-lib/ats-site-thoracic/web/app/es_search/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php(659): Elasticsearch\Connections\Connection-&gt;tryDeserializeError(Array, 'Elasticsearch\C...')
#1 /var/www/ats-site-lib/ats-site-thoracic/web/app/es_search/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php(579): Elasticsearch\Connections\Connection-&gt;tryDeserialize400Error(Array)
#2 /var/www/ats-site-lib/ats-site-thoracic/web/app/es_search/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php(261): Elasticsearch in <b>/var/www/ats-site-lib/ats-site-thoracic/web/app/es_search/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php</b> on line <b>682</b><br />

```

Here is how a document's "title\_suggest" completion field looks. I am storing an array of keywords. maybe this is the problem? :

> "title\_suggest": [  
> "Membership",  
> "Renewal"  
> ]

Any help would be appreciated!

---

<div class="post-metadata">

**Author:** ![mc1392](https://avatars.discourse-cdn.com/v4/letter/m/57b2e6/32.png) [@mc1392](https://discuss.elastic.co/u/mc1392)\
**Post date:** [December 22, 2016, 5:35pm UTC](https://discuss.elastic.co/t/php-client-suggestion-badrequest400exception/69691/2 "2016-12-22T17:35:40Z")

</div>

Here is the solution:

```
$json = '
{
  "thoracic":{
    "text":"'.$keyword.'",
    "completion":{
      "field":"title_suggest"
    }
  }
}';
```

---

<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:** [January 19, 2017, 5:36pm UTC](https://discuss.elastic.co/t/php-client-suggestion-badrequest400exception/69691/3 "2017-01-19T17:36:09Z")

</div>

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