# Command Suggestions

Lets you get suggestions for the currently entered command.
|  Resource  |     ```GENERIC /api/commands/assist ```    |
| --- | --- |
|  Returned entity  |  [CommandList](api-entity-CommandList.html). For the description of the entity attributes, see [Supported Fields](#CommandList-supported-fields) section.  |
|  Supported methods  |      * `POST`: [Command Suggestions](#create-CommandList-method).    |

## CommandList attributes

Represents list of command and related comment in YouTrack. Can be used to either apply a command or get command suggestions.

### Related Resources

Below you can find the list of resources that let you work with this entity.

* [Commands](resource-api-commands.html)

* [Command Suggestions]()

### Attributes

This table describes attributes of the `CommandList` entity.

* To receive an attribute in the response from the server, specify it explicitly in the `fields` request parameter.

* To update an attribute, provide it in the body of a POST request.

|  Field  |  Type  |  Description  |
| --- | --- | --- |
|  id  |  String  |  The ID of the command list. `Read-only`.  |
|  comment  |  String  |  A comment to add to an issue. `Can be null`.  |
|  visibility  |  [CommandVisibility](api-entity-CommandVisibility.html)  |  Stores visibility settings for a comment added with the command.  |
|  query  |  String  |  Stores a command to apply. `Can be null`.  |
|  caret  |  Int  |  Current caret position. End of current command by default.  |
|  silent  |  Boolean  |  If true, the command is applied without notification. The default value is false.  |
|  runAs  |  String  |  Login for a user on whose behalf the command is executed. To use the runAs parameter, you must have the Low-level Administration permission. `Can be null`.  |
|  commands  |  [Array of ParsedCommands](api-entity-ParsedCommand.html)  |  Stores a collection of commands parsed from the provided query. `Read-only`.  |
|  issues  |  [Array of Issues](api-entity-Issue.html)  |  Stores a collection of issues to which the current command applies.  |
|  suggestions  |  [Array of Suggestions](api-entity-Suggestion.html)  |  Stores a collection of possible command suggestions. `Read-only`.  |

## Read Command Suggestions

Get command suggestions for the specified query. Enter the command in the request body.

Required fields: `query` - the command that you'll get suggestions for.

### Request syntax

```GENERIC
POST /api/commands/assist?{fields}
```

|  null  |  The database ID of CommandList  |
| --- | --- |

### Request parameters

|  Parameter  |  Type  |  Description  |
| --- | --- | --- |
|  fields  |  String  |  A list of CommandList attributes that should be returned in the response. If no field is specified, only the `entityID` is returned.  |

### Sample

#### Sample request

```CURL
https://example.youtrack.cloud/api/commands/assist?fields=caret,commands%28delete,description,error%29,query,styleRanges%28end,length,start,style%29,suggestions%28caret,className,comment,completionEnd,completionStart,description,group,icon,id,matchingEnd,matchingStart,option,prefix,suffix%29
```

#### Sample request body

```JSON
{
"query": "sta",
"caret": 3,
"issues": [ { "idReadable": "SP-32" } ]
}
```

#### Sample response body

```JSON
{
  "query": "sta",
  "suggestions": [
    {
      "group": null,
      "suffix": " ",
      "option": "star",
      "description": "change star",
      "prefix": null,
      "icon": null,
      "caret": 5,
      "completionStart": 0,
      "completionEnd": 3,
      "matchingStart": 0,
      "matchingEnd": 3,
      "id": "star",
      "className": null,
      "$type": "Suggestion"
    },
    {
      "group": null,
      "suffix": " ",
      "option": "State",
      "description": "change State",
      "prefix": null,
      "icon": null,
      "caret": 6,
      "completionStart": 0,
      "completionEnd": 3,
      "matchingStart": 0,
      "matchingEnd": 3,
      "id": "State",
      "className": null,
      "$type": "Suggestion"
    },
    {
      "group": null,
      "suffix": " ",
      "option": "tag Star",
      "description": "tag",
      "prefix": null,
      "icon": null,
      "caret": 9,
      "completionStart": 0,
      "completionEnd": 3,
      "matchingStart": 4,
      "matchingEnd": 7,
      "id": "tag Star",
      "className": null,
      "$type": "Suggestion"
    },
    {
      "group": "Recent Commands",
      "suffix": " ",
      "option": "State In Progress",
      "description": "at 14:04",
      "prefix": null,
      "icon": null,
      "caret": 18,
      "completionStart": 0,
      "completionEnd": 3,
      "matchingStart": 0,
      "matchingEnd": 3,
      "id": "State In Progress",
      "className": null,
      "$type": "Suggestion"
    },
    {
      "group": "Recent Commands",
      "suffix": " ",
      "option": "State Open",
      "description": "at 14:04",
      "prefix": null,
      "icon": null,
      "caret": 11,
      "completionStart": 0,
      "completionEnd": 3,
      "matchingStart": 0,
      "matchingEnd": 3,
      "id": "State Open",
      "className": null,
      "$type": "Suggestion"
    }
  ],
  "caret": 3,
  "commands": [
    {
      "error": true,
      "description": "Unknown command: sta",
      "delete": false,
      "$type": "ParsedCommand"
    }
  ],
  "styleRanges": [
    {
      "start": 0,
      "style": "error",
      "length": 3,
      "$type": "StyleRange"
    }
  ]
}
```

