| GET POST | /sherpaLtd | Returns a comprehensive dataset with concept and code information | |
|---|---|---|---|
| GET POST | /sherpaLtd/{search} | Returns a comprehensive dataset with concept and code information | Search string can be directly within the URL as part of the path |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| codeSet | path | string | No | Code set to search; allows "ICD-10 CM", "ICD-10 PCS", or "ICD-9 CM"; defaults to "ICD-10 CM" |
| includeIndex | path | bool | No | True to include the ICD index when performing searches (expands results) |
| search | path,query | string | Yes | Primary search phrase |
| conceptIdList | path | int[] | No | Array of concept ID's to further limit the primary search phrase |
| dateOfService | path | date | No | Returns code specific information valid as of this date (defaults to the current date) |
| startRow | path | int | No | Controls the start row of the code results, typically used in pagination scenarios |
| endRow | path | int | No | Controls the maximum number of codes returned, defaults to 10 |
| callerUid | path | string | No | Client controlled unique identifier, can be anything even embedded JSON, XML, CSV, or anything else. Typically used to tie async responses to some object at the caller. |
| includeUnspecifiedConcepts | path | string | No | Include the unspecified concepts |
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsv/reply/SherpaSearch HTTP/1.1
Host: api.vitalware.com
Content-Type: text/jsv
Content-Length: length
{
codeSet: String,
includeIndex: False,
search: String,
conceptIdList:
[
0
],
dateOfService: "0001-01-01T12:00:00.0000000-08:00",
startRow: 0,
endRow: 0,
callerUid: String,
includeUnspecifiedConcepts: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
request:
{
codeSet: String,
includeIndex: False,
search: String,
conceptIdList:
[
0
],
dateOfService: "0001-01-01T12:00:00.0000000-08:00",
startRow: 0,
endRow: 0,
callerUid: String,
includeUnspecifiedConcepts: False
},
result:
{
parameters:
{
param:
[
{
type: String,
value: String,
hasInfo: False,
isAlias: False,
isDIndex: False,
position: 0
}
]
},
messages:
[
{
message: String
}
],
results:
{
selectedDiagnosisTotal:
{
count: 0
},
selectedDiagnosisPageset:
{
diagnosis:
[
{
id: 0,
code: String,
codeAlt: String,
desc: String
}
]
},
selectedConcepts:
{
conceptType:
[
{
type: String,
typeID: 0,
count: 0,
concepts:
{
concept:
[
{
id: 0,
desc: String,
count: 0,
hasInfo: False
}
]
}
}
]
},
infoNodes:
{
info:
[
{
typeID: 0,
type: String,
label: String,
title: String,
description: String
}
]
},
instructions:
{
type: String,
instructionType:
[
{
type: String,
instruction:
[
{
instruction: String,
codeRanges: String
}
]
}
]
}
}
},
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String
}
]
}
}