> 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.

# Resolve

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

Resolves a single MEDCIN finding (by MEDCIN ID) into a fully built note term, the way it would appear as a line item in a clinical note. The Resolve API (GET /Quippe/NoteBuilder/Resolve) expands the bare MEDCIN ID and its optional qualifiers into a rendered term with display text, node key, term type, and phrasing, driven through the same NoteBuilder pipeline used when building a full note. 

 Common uses include previewing how a single finding will read before adding it to a note, resolving a term picked from search or autocomplete, and re-resolving a term after its qualifiers (prefix, result, value) change. 

 GET /Quippe/NoteBuilder/Resolve 

Use this endpoint to resolve one finding at a time. To resolve a whole list of MEDCIN IDs in one call, use [/Quippe/NoteBuilder/ResolveTerms](/api-reference/rest/get-quippe-note-builder-resolve-terms). To resolve an entire chart document instead of a single finding, use [/Quippe/NoteBuilder/ResolveDocument](/api-reference/rest/post-quippe-note-builder-resolve-document).

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

## 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

- `MedcinId` (integer, required) — The MEDCIN finding to resolve, identified by its numeric MEDCIN ID (the Resolve endpoint's primary key for the term).
- `Prefix` (string, optional) — Optional MEDCIN prefix qualifier applied to `MedcinId` — the prefix positions the finding in context, such as a family-history or "history of" framing.
- `Result` (string, optional) — Optional MEDCIN result qualifier applied to `MedcinId` — for example to indicate a positive vs. negative finding.
- `Value` (string, optional) — Optional test or measurement value for the finding, carried through to the resolved term (for example a lab result or vital sign reading associated with `MedcinId`).
- `Tags` (string, optional) — Comma separated list of term tags that should be applied to search results
- `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

- `term` (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
{
  "term": {
    "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/Resolve"

querystring = {"MedcinId":"1"}

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

print(response.json())
```

```javascript
const url = 'https://quippe.medicomp.com/api/Quippe/NoteBuilder/Resolve?MedcinId=1';
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/Resolve?MedcinId=1"

	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/Resolve?MedcinId=1")

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/Resolve?MedcinId=1")
  .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/Resolve?MedcinId=1', [
  'headers' => [
  ],
    'auth' => ['<username>', '<password>'],
]);

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

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

var client = new RestClient("https://quippe.medicomp.com/api/Quippe/NoteBuilder/Resolve?MedcinId=1");
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/Resolve?MedcinId=1")! 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()
```