Search cash offers
curl --request POST \
--url https://test-instockrx-api.azurewebsites.net/api/v1/cash-offers/search \
--header 'Content-Type: application/json' \
--header 'X-INVIEW-AUTH: <api-key>' \
--data '
{
"pharmacyNpi": 1234567890,
"nationalDrugCodes": [
"01234567890"
],
"requireIntactPackageLabel": true,
"requireFullPackage": true,
"requireSealedPackage": true,
"requireOriginalPackage": true,
"isGroupOnly": true,
"allowedStatuses": [
0
],
"searchingContext": 1,
"buyingPharmacyNPIs": [
987654321
],
"sellingPharmacyNPIs": [
1122334455
],
"requestedDate": {
"start": "2026-01-01T00:00:00Z",
"end": "2026-01-31T23:59:59Z"
},
"searchTerm": "Rexulti",
"sortDirection": "desc",
"sortName": "price",
"start": 0,
"take": 10
}
'const options = {
method: 'POST',
headers: {'X-INVIEW-AUTH': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
pharmacyNpi: 1234567890,
nationalDrugCodes: ['01234567890'],
requireIntactPackageLabel: true,
requireFullPackage: true,
requireSealedPackage: true,
requireOriginalPackage: true,
isGroupOnly: true,
allowedStatuses: [0],
searchingContext: 1,
buyingPharmacyNPIs: [987654321],
sellingPharmacyNPIs: [1122334455],
requestedDate: {start: '2026-01-01T00:00:00Z', end: '2026-01-31T23:59:59Z'},
searchTerm: 'Rexulti',
sortDirection: 'desc',
sortName: 'price',
start: 0,
take: 10
})
};
fetch('https://test-instockrx-api.azurewebsites.net/api/v1/cash-offers/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://test-instockrx-api.azurewebsites.net/api/v1/cash-offers/search"
payload = {
"pharmacyNpi": 1234567890,
"nationalDrugCodes": ["01234567890"],
"requireIntactPackageLabel": True,
"requireFullPackage": True,
"requireSealedPackage": True,
"requireOriginalPackage": True,
"isGroupOnly": True,
"allowedStatuses": [0],
"searchingContext": 1,
"buyingPharmacyNPIs": [987654321],
"sellingPharmacyNPIs": [1122334455],
"requestedDate": {
"start": "2026-01-01T00:00:00Z",
"end": "2026-01-31T23:59:59Z"
},
"searchTerm": "Rexulti",
"sortDirection": "desc",
"sortName": "price",
"start": 0,
"take": 10
}
headers = {
"X-INVIEW-AUTH": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"data": [
{
"buyerPharmacyName": "<string>",
"buyerPharmacyNationalProviderIdentifier": 123,
"buyingPharmacyAddress": {
"city": "<string>",
"line1": "<string>",
"line2": "<string>",
"postalCode": "<string>",
"stateAcronym": "<string>"
},
"buyingPharmacyName": "<string>",
"buyingPharmacyDBA": "<string>",
"buyingPharmacyPhone": 123,
"drugPackageForm": "<string>",
"drugPackageStrength": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"labelerName": "<string>",
"nationalDrugCode": "<string>",
"nationalDrugCodeNormalized": "<string>",
"packageName": "<string>",
"price": 123,
"quantityUnitQualifier": "<string>",
"requireSealedPackage": true,
"sellerPharmacyName": "<string>",
"sellerPharmacyDBA": "<string>",
"sellerPharmacyNationalProviderIdentifier": 123,
"sellerPharmacyPhone": 123,
"requireIntactPackageLabel": true,
"requireFullPackage": true,
"requireOriginalPackage": true,
"sellerPharmacyAddress": {
"city": "<string>",
"line1": "<string>",
"line2": "<string>",
"postalCode": "<string>",
"stateAcronym": "<string>"
},
"status": 0,
"shipByDate": "2023-11-07T05:31:56Z",
"branded": true,
"generic": true,
"isColdChain": true,
"requestedDate": "2023-11-07T05:31:56Z",
"requestedQuantity": 123,
"minimalExpirationDate": "2023-11-07T05:31:56Z",
"inStockRxUrl": "<string>",
"createdByGroupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"shippingRequestMethod": 0,
"maxShippingPrice": 123,
"nadacPercentage": 123,
"requireCertificationFile": true
}
],
"recordsFiltered": 123,
"recordsTotal": 123,
"writePagedSearch": {
"columns": [
"<string>"
],
"searchTerm": "<string>",
"sortDirection": "<string>",
"sortName": "<string>",
"start": 123,
"take": 123,
"columnFilters": [
{
"column": "<string>",
"operator": 1,
"value": "<string>",
"valueTo": "<string>"
}
]
}
}{
"error": "<string>",
"statusCode": 123,
"message": "<string>"
}{
"error": "<string>",
"statusCode": 123,
"message": "<string>"
}Search
Search cash offers
Flexible search across InStockRx cash offers with filtering, sorting, and pagination.
Validation Rules
| Field | Required | Type | Rules |
|---|---|---|---|
| PharmacyNpi | Yes | long | Must be a valid NPI |
| SearchingContext | Yes | enum | Marketplace (1), BuyingActivity (2), SellingActivity (3) |
| NationalDrugCodes | No | string[] | Filter by NDC codes |
| BuyingPharmacyNPIs | No | long[] | Filter by buying pharmacy NPIs. Not allowed when SearchingContext is BuyingActivity (2) or SellingActivity (3) |
| SellingPharmacyNPIs | No | long[] | Filter by selling pharmacy NPIs. Not allowed when SearchingContext is Marketplace (1) |
| AllowedStatuses | No | enum[] | Pending (0), Declined (1), Cancelled (2), Accepted (3) |
| RequestedDate | No | DateRange | Object with start and end (ISO 8601) |
| RequireFullPackage | No | bool | Filter by full package requirement |
| RequireSealedPackage | No | bool | Filter by sealed package requirement |
| RequireIntactPackageLabel | No | bool | Filter by intact package label requirement |
| RequireOriginalPackage | No | bool | Filter by original package requirement |
| IsGroupOnly | No | bool | Filter by group membership |
| SearchTerm | No | string | Free-text search |
| SortName | No | string | Allowed: nationalDrugCode, minimalExpirationDate, price, packageName, requestedDate, requestedQuantity |
| SortDirection | No | string | asc or desc |
| Start | No | int | Pagination offset (default: 0) |
| Take | No | int | Page size (default: 10) |
POST
/
api
/
v1
/
cash-offers
/
search
Search cash offers
curl --request POST \
--url https://test-instockrx-api.azurewebsites.net/api/v1/cash-offers/search \
--header 'Content-Type: application/json' \
--header 'X-INVIEW-AUTH: <api-key>' \
--data '
{
"pharmacyNpi": 1234567890,
"nationalDrugCodes": [
"01234567890"
],
"requireIntactPackageLabel": true,
"requireFullPackage": true,
"requireSealedPackage": true,
"requireOriginalPackage": true,
"isGroupOnly": true,
"allowedStatuses": [
0
],
"searchingContext": 1,
"buyingPharmacyNPIs": [
987654321
],
"sellingPharmacyNPIs": [
1122334455
],
"requestedDate": {
"start": "2026-01-01T00:00:00Z",
"end": "2026-01-31T23:59:59Z"
},
"searchTerm": "Rexulti",
"sortDirection": "desc",
"sortName": "price",
"start": 0,
"take": 10
}
'const options = {
method: 'POST',
headers: {'X-INVIEW-AUTH': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
pharmacyNpi: 1234567890,
nationalDrugCodes: ['01234567890'],
requireIntactPackageLabel: true,
requireFullPackage: true,
requireSealedPackage: true,
requireOriginalPackage: true,
isGroupOnly: true,
allowedStatuses: [0],
searchingContext: 1,
buyingPharmacyNPIs: [987654321],
sellingPharmacyNPIs: [1122334455],
requestedDate: {start: '2026-01-01T00:00:00Z', end: '2026-01-31T23:59:59Z'},
searchTerm: 'Rexulti',
sortDirection: 'desc',
sortName: 'price',
start: 0,
take: 10
})
};
fetch('https://test-instockrx-api.azurewebsites.net/api/v1/cash-offers/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://test-instockrx-api.azurewebsites.net/api/v1/cash-offers/search"
payload = {
"pharmacyNpi": 1234567890,
"nationalDrugCodes": ["01234567890"],
"requireIntactPackageLabel": True,
"requireFullPackage": True,
"requireSealedPackage": True,
"requireOriginalPackage": True,
"isGroupOnly": True,
"allowedStatuses": [0],
"searchingContext": 1,
"buyingPharmacyNPIs": [987654321],
"sellingPharmacyNPIs": [1122334455],
"requestedDate": {
"start": "2026-01-01T00:00:00Z",
"end": "2026-01-31T23:59:59Z"
},
"searchTerm": "Rexulti",
"sortDirection": "desc",
"sortName": "price",
"start": 0,
"take": 10
}
headers = {
"X-INVIEW-AUTH": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"data": [
{
"buyerPharmacyName": "<string>",
"buyerPharmacyNationalProviderIdentifier": 123,
"buyingPharmacyAddress": {
"city": "<string>",
"line1": "<string>",
"line2": "<string>",
"postalCode": "<string>",
"stateAcronym": "<string>"
},
"buyingPharmacyName": "<string>",
"buyingPharmacyDBA": "<string>",
"buyingPharmacyPhone": 123,
"drugPackageForm": "<string>",
"drugPackageStrength": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"labelerName": "<string>",
"nationalDrugCode": "<string>",
"nationalDrugCodeNormalized": "<string>",
"packageName": "<string>",
"price": 123,
"quantityUnitQualifier": "<string>",
"requireSealedPackage": true,
"sellerPharmacyName": "<string>",
"sellerPharmacyDBA": "<string>",
"sellerPharmacyNationalProviderIdentifier": 123,
"sellerPharmacyPhone": 123,
"requireIntactPackageLabel": true,
"requireFullPackage": true,
"requireOriginalPackage": true,
"sellerPharmacyAddress": {
"city": "<string>",
"line1": "<string>",
"line2": "<string>",
"postalCode": "<string>",
"stateAcronym": "<string>"
},
"status": 0,
"shipByDate": "2023-11-07T05:31:56Z",
"branded": true,
"generic": true,
"isColdChain": true,
"requestedDate": "2023-11-07T05:31:56Z",
"requestedQuantity": 123,
"minimalExpirationDate": "2023-11-07T05:31:56Z",
"inStockRxUrl": "<string>",
"createdByGroupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"shippingRequestMethod": 0,
"maxShippingPrice": 123,
"nadacPercentage": 123,
"requireCertificationFile": true
}
],
"recordsFiltered": 123,
"recordsTotal": 123,
"writePagedSearch": {
"columns": [
"<string>"
],
"searchTerm": "<string>",
"sortDirection": "<string>",
"sortName": "<string>",
"start": 123,
"take": 123,
"columnFilters": [
{
"column": "<string>",
"operator": 1,
"value": "<string>",
"valueTo": "<string>"
}
]
}
}{
"error": "<string>",
"statusCode": 123,
"message": "<string>"
}{
"error": "<string>",
"statusCode": 123,
"message": "<string>"
}Authorizations
Custom API Key authentication. Default header: X-INVIEW-AUTH.
Body
application/jsonapplication/json-patch+jsontext/jsonapplication/*+json
Available options:
1, 2, 3 Available options:
0, 1, 2, 3, 4, 10 Show child attributes
Show child attributes
Maximum string length:
256Maximum string length:
20Maximum string length:
100