Finance API
This page covers the methods and endpoints associated with finance operations. With the Finance API you can access and manage VLD Insights report fees.
| Type | Vertical |
|---|---|
| Voter Level Data (VLD) Insights report | Political vertical |
| Provider Level Data (PLD) Insights report | Healthcare vertical |
| Script Lift Study (SLS) Insights report | Healthcare vertical |
| AQ Insights report | Healthcare vertical |
| Integrated Care Team (ICT) Insights report | Healthcare vertical |
| Nurse Level Data (NLD) Insights report | Both Political and Healthcare verticals |
More resources
- Insights API guidelines
- Add or manage a margin Help Center article
Authentication
Use the following header parameters for all requests:
| Headers | |
|---|---|
Authentication string required | Authentication bearer token See Sign up and authenticate |
X-IAA-OW-ID integer required | Organization Workspace ID header |
Finance details
Get Customer Insights fees details
GETGet Insights fees details for a Customer. If type is provided, fetches for that specific report type; otherwise, fetches for all types.
| Path parameters | |
|---|---|
customerOwId integer | Customer Organization Workspace ID. |
| Query parameters | |
|---|---|
type string optional | Insights report type, supported values: vld, pld, sls, aqs, ict, nld. If not provided, returns all applicable types for the Customer's vertical. |
Response properties
owId integer | Customer Organization Workspace ID. | |||||||||||
categories object | Map of Insights category names to their fee details. | |||||||||||
| ||||||||||||
rate number | Rate for the Insights report. |
enabled boolean | Whether the category is enabled. |
markupType string | Markup type: Absolute or Percentage. |
markupTypeId integer | Markup type ID. |
markupValue number | Markup value. |
- JSON
- TypeScript
Response 200
{
"success": true,
"data": {
"owId": 201427,
"categories": {
"nld": {
"rate": 5.5,
"enabled": true,
"markupType": "Percentage",
"markupTypeId": 2,
"markupValue": 55.5
},
"ict": {
"rate": 5.5,
"enabled": true,
"markupType": "Percentage",
"markupTypeId": 2,
"markupValue": 55.5
},
"pld": {
"rate": 5.5,
"enabled": true,
"markupType": "Percentage",
"markupTypeId": 2,
"markupValue": 55.5
},
"vld": {
"rate": 5.5,
"enabled": true,
"markupType": "Percentage",
"markupTypeId": 2,
"markupValue": 55.5
},
"sls": {
"rate": 5.5,
"enabled": true,
"markupType": "Percentage",
"markupTypeId": 2,
"markupValue": 55.5
},
"aqs": {
"rate": 5.5,
"enabled": true,
"markupType": "Percentage",
"markupTypeId": 2,
"markupValue": 55.5
}
}
}
}
See TypeScript prerequisites for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface InsightCategoryDetails {
rate: number;
enabled: boolean;
markupType: string;
markupTypeId: number;
markupValue: number;
}
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
owId: number;
categories: Record<string, InsightCategoryDetails>;
}
}
};
};
}
function getInsightFees(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://api.iqm.com/api/v3/fa/customer/{customerOwId}/insight-fees',
params: {
path: {
customerOwId: `number`
},
query: {
type: `string`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Update Customer Insights fees details
PATCHUpdate Insights fees for a specific category for a Customer.
| Path parameters | |
|---|---|
customerOwId integer | Customer Organization Workspace ID. |
| Request schema | |
|---|---|
category string required | Insights report type category. Valid values: pld, vld, ict, sls, aqs, nld. |
rate number | Rate for the Insights report. |
enabled boolean | Enable or disable the report. |
markupType string | Markup type: Absolute or Percentage. |
markupTypeId integer | Markup type ID. |
markupValue number | Markup value. |
Response properties
id integer | Updated record ID. |
message string | Success message. |
- JSON
- TypeScript
Request sample
{
"category": "pld",
"rate": 11,
"enabled": true,
"markupType": "Percentage",
"markupTypeId": 2,
"markupValue": 55.5
}
Response 200
{
"success": true,
"data": {
"id": 1,
"message": "Rate updated successfully. The new rate applies only to newly created reports"
}
}
See TypeScript prerequisites for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
id: number;
message: string;
}
}
};
};
}
function updateInsightFees(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://api.iqm.com/api/v3/fa/customer/{customerOwId}/insight-fees',
params: {
path: {
customerOwId: `number`
}
},
requestBody: {
content: {
"application/json": {
category: `string`,
rate?: `number`,
enabled?: `boolean`,
markupType?: `string`,
markupTypeId?: `number`,
markupValue?: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Have a question?
Was this page helpful?