> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.medicomp.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.medicomp.com/_mcp/server.

# Multi Quick Prompt

GET https://quippe.medicomp.com/api/Quippe/NoteBuilder/MultiQuickPrompt

Generates a MEDCIN "quick prompt" (nomenclature/differential list) for several findings at once — the combined list of related MEDCIN terms (associated symptoms, tests, therapies, and diagnoses) that clinicians pick from to build out a note after entering multiple diagnoses or symptoms. The MultiQuickPrompt API (GET /Quippe/NoteBuilder/MultiQuickPrompt) takes an array of MEDCIN IDs and returns a single list of related terms sized and filtered for interactive charting. 

 Common uses include populating the pick-list shown after a user selects several diagnoses or chief complaints together, structured symptom review across multiple findings, and driving point-of-care documentation workflows that prompt the clinician for related findings from more than one starting term. 

 GET /Quippe/NoteBuilder/MultiQuickPrompt 

This is the multi-finding counterpart of [/Quippe/NoteBuilder/QuickPrompt](/api-reference/rest/get-quippe-note-builder-quick-prompt): it activates every ID in `Quippe.MultiQuickPromptHandler.MedcinIds` against the MEDCIN knowledge base and returns one merged prompt list. For a single-finding prompt, use [/Quippe/NoteBuilder/QuickPrompt](/api-reference/rest/get-quippe-note-builder-quick-prompt) instead.

Reference: https://docs.medicomp.com/api-reference/rest/get-quippe-note-builder-multi-quick-prompt

## Authentication

- `Authorization` header (basic auth, required) — Login and password used to access quippe.medicomp.com. On-premise Quippe deployments can be configured to use whatever authentication and authorization your application is configured for, so basic authentication is used here to access the Quippe sandbox and is not a product requirement.
- `Authorization` header (bearer token, required) — JSON web token generated by a request to the [/Quippe/Security/Token](/api-reference/rest/get-quippe-security-token) web service endpoint in Quippe.

## Request

### Query parameters

- `MedcinIds` (string, required) — The MEDCIN ids of the findings (diagnoses, symptoms, or other terms) to prompt from. The returned list contains the terms that the MEDCIN knowledge base associates with all of these findings combined.
- `ListSize` (enum, optional) — Controls how many related terms are returned in the prompt list. Values: `Small`, `Medium` (default), `Large`. `Small` provides the hallmark findings for a given diagnosis or term, while other values will cast a progressively wider net when looking for related terms.
  - Allowed values: `Small`, `Medium`, `Large`
- `Role` (enum, optional) — The clinician role (e.g. physician, nurse) recording the findings. When set to a value other than `medNoneEntering`, the MEDCIN knowledge base's active doctor ID is switched to this role before the prompt list is built, which can change which terms are returned.
  - Allowed values: `medNoneEntering`, `medDocEntering`, `medNurseEntering`
- `TermProperties` (string, optional) — Comma-separated list of additional term properties to be included with each term in the result list.
- `PatientId` (string, optional) — The patient's identifier in the EHR.
- `EncounterTime` (string, optional) — The date of the encounter that this operation is for.
- `GroupingFlags` (enum, optional) — Options to control default group assignments for findings.
  - Allowed values: `None`, `NoTestResults`, `TestsToResults`, `SymptomsToHPI`
- `ResolvePhrases` (boolean, optional) — Flag indicating whether the text phrases used to render a given finding for the user should be returned.
- `BuilderVersion` (integer, optional) — Controls how the note builder is instantiated to resolve terms. 1 will always use a `Quippe.NoteBuilder` object, while other values will instatiate a `Quippe.INoteBuilderService` instance from the list of registered data services, allowing for customization of the term resolution process.
- `DataFormat` (enum, optional) — Specifies how objects are encoded in the output
  - Allowed values: `Default`, `XML`, `JSON`, `JSF`
- `RequestId` (string, optional) — Optional value that can be used by clients to track multiple requests.
- `Culture` (string, optional) — Culture to use when handling the request. If not specified the default value configured on the server will be used.

## Response

### 200

Successful response

- `list` (object or object, optional)
  - object
    - `item` (list of object, optional)
      - `phrasing` (object, optional)
        - `ctnk` (string, optional)
        - `ip` (string, optional)
        - `in` (string, optional)
        - `startContext` (string, optional)
        - `dp` (string, optional)
        - `dn` (string, optional)
        - `cp` (string, optional)
        - `cn` (string, optional)
      - `entryId` (integer, optional)
      - `type` (string, optional)
      - `medcinId` (integer, optional)
      - `nodeKey` (string, optional)
      - `termType` (integer, optional)
      - `subs` (string, optional)
      - `text` (string, optional)
      - `specialty` (string, optional)
      - `sectionId` (string, optional)
      - `groupId` (string, optional)
      - `result` (string, optional)
      - `value` (string, optional)
      - `unit` (string, optional)
      - `flag` (integer, optional)
      - `prefix` (string, optional)
      - `rxCode` (string, optional)
      - `hasHistory` (boolean, optional)
      - `status` (string, optional)
      - `rangeNormalHigh` (double, optional)
      - `rangeNormalLow` (double, optional)
      - `tags` (string, optional)
      - `qflags` (integer, optional)
  - object
    - `term` (list of object, optional)
      - `phrasing` (object, optional)
        - `ctnk` (string, optional)
        - `ip` (string, optional)
        - `in` (string, optional)
        - `startContext` (string, optional)
        - `dp` (string, optional)
        - `dn` (string, optional)
        - `cp` (string, optional)
        - `cn` (string, optional)
      - `entryId` (integer, optional)
      - `type` (string, optional)
      - `medcinId` (integer, optional)
      - `nodeKey` (string, optional)
      - `termType` (integer, optional)
      - `subs` (string, optional)
      - `text` (string, optional)
      - `specialty` (string, optional)
      - `sectionId` (string, optional)
      - `groupId` (string, optional)
      - `result` (string, optional)
      - `value` (string, optional)
      - `unit` (string, optional)
      - `flag` (integer, optional)
      - `prefix` (string, optional)
      - `rxCode` (string, optional)
      - `hasHistory` (boolean, optional)
      - `status` (string, optional)
      - `rangeNormalHigh` (double, optional)
      - `rangeNormalLow` (double, optional)
      - `tags` (string, optional)
      - `qflags` (integer, optional)

## Examples

**Response**

```json
{
  "list": {
    "item": [
      {
        "phrasing": {
          "ctnk": "string",
          "ip": "string",
          "in": "string",
          "startContext": "string",
          "dp": "string",
          "dn": "string",
          "cp": "string",
          "cn": "string"
        },
        "entryId": 1,
        "type": "string",
        "medcinId": 1,
        "nodeKey": "string",
        "termType": 1,
        "subs": "string",
        "text": "string",
        "specialty": "string",
        "sectionId": "string",
        "groupId": "string",
        "result": "string",
        "value": "string",
        "unit": "string",
        "flag": 1,
        "prefix": "string",
        "rxCode": "string",
        "hasHistory": true,
        "status": "string",
        "rangeNormalHigh": 1.1,
        "rangeNormalLow": 1.1,
        "tags": "string",
        "qflags": 1
      }
    ]
  }
}
```

**SDK Code**

```python
import requests

url = "https://quippe.medicomp.com/api/Quippe/NoteBuilder/MultiQuickPrompt"

querystring = {"MedcinIds":"MedcinIds"}

response = requests.get(url, params=querystring, auth=("<username>", "<password>"))

print(response.json())
```

```javascript
const url = 'https://quippe.medicomp.com/api/Quippe/NoteBuilder/MultiQuickPrompt?MedcinIds=MedcinIds';
const credentials = btoa("<username>:<password>");

const options = {method: 'GET', headers: {Authorization: `Basic ${credentials}`}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://quippe.medicomp.com/api/Quippe/NoteBuilder/MultiQuickPrompt?MedcinIds=MedcinIds"

	req, _ := http.NewRequest("GET", url, nil)

	req.SetBasicAuth("<username>", "<password>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://quippe.medicomp.com/api/Quippe/NoteBuilder/MultiQuickPrompt?MedcinIds=MedcinIds")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request.basic_auth("<username>", "<password>")

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://quippe.medicomp.com/api/Quippe/NoteBuilder/MultiQuickPrompt?MedcinIds=MedcinIds")
  .basicAuth("<username>", "<password>")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://quippe.medicomp.com/api/Quippe/NoteBuilder/MultiQuickPrompt?MedcinIds=MedcinIds', [
  'headers' => [
  ],
    'auth' => ['<username>', '<password>'],
]);

echo $response->getBody();
```

```csharp
using RestSharp;
using RestSharp.Authenticators;

var client = new RestClient("https://quippe.medicomp.com/api/Quippe/NoteBuilder/MultiQuickPrompt?MedcinIds=MedcinIds");
client.Authenticator = new HttpBasicAuthenticator("<username>", "<password>");
var request = new RestRequest(Method.GET);

IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let credentials = Data("<username>:<password>".utf8).base64EncodedString()

let headers = ["Authorization": "Basic \(credentials)"]

let request = NSMutableURLRequest(url: NSURL(string: "https://quippe.medicomp.com/api/Quippe/NoteBuilder/MultiQuickPrompt?MedcinIds=MedcinIds")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```