Workspace API
Overview
This page covers the common methods and endpoints for managing Organizations, Workspaces, Customers and Advertisers:
- Organizations are top-level descriptions of a company's profile, including its name, website, and location details.
- Workspaces operate within organizations and can be Customers or Advertisers.
- Users operate within Workspaces and can be assigned Customers.
More resources:
- IQM Platform Overview
- Manage your Organization Help Center Article
Authentication
Use the following header parameters for all requests:
Headers | |
---|---|
Authentication string required | Authentication bearer token See Authentication Guide |
X-IAA-OW-ID integer required | Organization Worskpace ID Header |
Organization Details
An organization is any company that places advertisements. An organization is created on customer invite, with details including its name, website, and location details. This section covers the methods and endpoints for getting organization lists and details.
Organization Resource Properties
Properties | |
---|---|
organizationName string | Organization Name |
email string | Organization email |
website string | Organization website |
contactNumber string | Organization phone number |
address string | Organization address |
city string | Organization city location |
state integer | State ID of organization location |
country integer | Country ID or organization location |
zipcode string | Zipcode |
isAvatarUrl boolean | Indicates whether organization has uploaded a logo. If true, a default avatar logo is generated when one hasn't been uploaded |
organizationLogo string | Logo image file |
industry string | Industry category See Static Details List for supported values |
companySize integer | Number of employees at organization See Static Details List for supported values |
companyId string | Company ID |
taxId string | Tax ID |
currency string | Currency type |
dateFormat string | Date format, e.g. "MM/DD/YYYY" |
description string | Description of organization |
expertize string | See Static Details List for supported values |
Get List of Allowed Organizations
GET /api/v3/ua/user/allowed-organizationsGet a list of allowed organizations by customer type.
Query Parameters | |
---|---|
customerType string | Comma separated customer type IDs See Static Details List for supported values |
searchField string | Search results by keyword |
limit integer | Maximum number of entries returned, default: 10 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-), default: lastActive Supported values: organizationName, title, dateOfJoining, lastActive |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"owId": 200001,
"organizationName": "Super IQM Org",
"ownerUserEmail": "pratik.t+ihp@iqm.com",
"workspaceDomain": "app.stage.inhousebuying.com",
"customerType": "Workspace",
"logoUrl": "https://d3jme5si7t6llb.cloudfront.net/logo/ihb_logo_scaled.png",
"dateOfJoining": null,
"title": null
},
{
"owId": 200002,
"organizationName": "IQM Corporation",
"ownerUserEmail": "kartik.g@iqm.com",
"workspaceDomain": "iqm.stage.inhousebuying.com",
"customerType": "Workspace",
"logoUrl": "https://d3jme5si7t6llb.cloudfront.net/logo/iqm.png",
"dateOfJoining": "2021-09-28",
"title": null
}
],
"totalRecords": 2,
"filteredRecords": 2
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
owId: number;
organizationName: string;
ownerUserEmail: string;
workspaceDomain: string;
customerType: string;
logoUrl: string;
dateOfJoining: string | null;
title: string | null;
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
};
function GetallowedOrganizationsList(): Promise < Responses > {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/user/allowed-organizations',
params: {
query: {
customerType: `string`,
searchField: `string`,
pageNo: `number`,
limit: `number`,
sortBy: `string`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Organization Details
GET /api/v3/ua/organization/view-profileGet the profile information of an organization for logged in organization.
- JSON
- TypeScript
{
"success": true,
"data": {
"organizationName": "JP test org1",
"email": "jinesh.p+jptest1@iqm.com",
"website": "www.jptest1.com",
"contactNumber": "+91 123987456",
"address": "A-123, ABC complex",
"city": "Ahmedabad",
"state": 1672,
"country": 113,
"zipcode": "382418",
"isAvatarUrl": false,
"organizationLogo": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/organization-profile/391.png",
"industry": "Advertising",
"companySize": 2,
"companyId": "A-123456",
"taxId": "JP123456",
"currency": "Dollar ($)",
"dateFormat": "DD/MM/YYYY",
"description": "",
"verticalId": 1,
"expertize": "1,2,3"
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
organizationName: string;
email: string;
website: string;
contactNumber: string;
address: string;
city: string;
state: number;
country: number;
zipcode: string;
isAvatarUrl: boolean;
organizationLogo: string;
industry: string;
companySize: number;
companyId: string;
taxId: string;
currency: string;
dateFormat: string;
description: string;
verticalId: number;
expertize: string;
}
}
};
};
};
function getOrganizationProfile(): Promise < Responses > {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/organization/view-profile',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Check for Available Domain
GET /api/v3/ua/organization/available-domainCheck if a workspace domain is available.
Query Parameters | |
---|---|
workspaceSubDomain string | Name of domain to check |
- JSON
- TypeScript
{
"success": true,
"data": {
"isAvailable": true
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
isAvailable: boolean;
};
};
};
};
}
function GetavailableDomain(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/organization/available-domain',
parms: {
query: {
workspaceSubDomain: `string`
}
},
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Organization Management
Update Organization Profile
PATCH /api/v3/ua/organization/update-profileUpdate organization profile details.
Refer to the Organization Resource Properties for schema. Include any properties to update in request body.
- JSON
- TypeScript
{
"organizationName": "New Org Name",
"email": "neworgemail@org.com",
"website": "neworgwebsite.com"
}
{
"success": true,
"data": {
"organizationLogo": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/organization-profile/391/1633180356403.png",
"message": "Profile updated successfully."
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
organizationLogo: string;
message: string;
};
};
};
};
};
function UpdateOrganizationprofile(): Promise < Responses > {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/organization/update-profile',
requestBody?: {
content: {
"application/x-www-form-urlencoded": {
organizationName: `string`,
email: `string`,
website: `string`,
contactNumber: `string`,
address: `string`,
city: `string`,
state: `number`,
country: `number`,
zipcode: `number`,
industry: `string`,
companySize: `number`,
companyId: `string`,
taxId: `string`,
currency: `string`,
dateFormat: `string`,
expertize: `string`,
description: `string`,
organizationLogo: `string`,
removeOrganizationLogo: `boolean`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Update Organization Email
PATCH /api/v3/ua/organization/update-email- JSON
- TypeScript
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
isVerified: boolean;
message: string;
};
};
};
};
}
function Add/Updateorganizationsupportemail(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/organization/update-email',
requestBody: {
content: {
"application/json": {
email: `string`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Workspace Management
A workspace provides DSP service to another company, meaning it can have 'child' workspaces known as Customers (see Multi-level Customers List). This section covers the methods and endpoints for managing workspace details.
Create a Workspace
POST /api/v3/ua/workspaceCreate a workspace by providing an invitation hash, workspace domain, and creator details.
Request Schema | |
---|---|
domain string | Domain name of workspace |
creatorEmail string | Creator email |
inviteHash string | Invite Hash |
- JSON
- TypeScript
{
"domain": "app",
"creatorEmail": "kartik.g@iqm.com",
"inviteHash": "37KgCLieN6s/JxRgqYqeIV0UiAp3OWHdTjPUq8tVEilibQ9Bpo6ky+ZZeg8Wf3L9A0a3uBboKrijwXq0YZ0Qq3WXImlKQOgjYyZ7w5J6SPVwkvHTwe8yyHI2MIyR11URBlgOwoGnLtV8G4Cab+K4orlNjTnxLN+KFsYALpv0JDQkhvjRVxO8CJKhHahxu3rXZ3w6154n7PKTMZJs1ZR3r73dwHd8Ug0c/q7xB1ilGWIFnVVDb1gt1k8S5gYRNsxo9vESo0n8otr5/ha0SgW/qCZjxypIvO/59FXbjQ=="
}
{
"success": true,
"message": "Workspace created successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
message: string;
};
};
};
}
function CreateWorkspace(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/workspace',
requestBody: {
content: {
"application/json": {
domain: `string`,
creatorEmail: `string`,
inviteHash: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Update Workspace Domain
PATCH /api/v3/ua/organization/workspace-domainUpdate a workspace domain.
Request Schema | |
---|---|
workspaceSubDomain string | New workspace domain name |
- JSON
- TypeScript
{
"workspaceSubDomain": "jptest"
}
{
"success": true,
"data": "Workspace domain update successfully."
}
More Responses
{
"success": false,
"errorObjects": [
{
"error": "A workspace with this URL already exists, please try a different one"
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function Updateworkspacedomain(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/organization/workspace-domain',
requestBody: {
content: {
"application/json": {
workspaceSubDomain: `string`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Validate Workspace Domain
POST /api/v3/ua/user/workspace/validateValidate a workspace for a given email.
Request Schema | |
---|---|
email string | |
workspaceDomain string | Workspace domain name |
- JSON
- TypeScript
{
"email": "user@ihp.com",
"workspaceDomain": "app.stage.inhousebuying.com"
}
{
"success": true
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
};
};
};
403: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
};
};
};
}
function Validateworkspacedomain(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/user/workspace/validate',
requestBody: {
content: {
"application/json": {
email: `string`,
workspaceDomain: `string`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get List of Workspaces
GET /api/v3/ua/customers/workspaces/listGet a list of workspaces.
Query Parameters | |
---|---|
searchField string | Filter results by keyword |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"owId": 202373,
"workspaceName": "Workspace 1",
"logoUrl": "https://iqm-web-assets/avatar/WS.png",
"statusId": 1,
"status": "Active",
"ownerUserName": "Workspace User 1",
"ownerUserEmail": "workspaceUser1@iqm.com"
},
{
"owId": 200002,
"workspaceName": "Workspace 2",
"logoUrl": "https://iqm-web-assets/avatar/IC.png",
"statusId": 1,
"status": "Active",
"ownerUserName": "Workspace User 2",
"ownerUserEmail": "WorkspaceUser2@iqm.com"
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
owId: number;
workspaceName: string;
logoUrl: string;
statusId: number;
status: string;
ownerUserName: string;
ownerUserEmail: string;
}[];
};
};
};
}
function getWorkspaces(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customers/workspaces/list',
params: {
query: {
searchField?: `string`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Customer Details
A customer is an advertiser or workspace in a financial agreement with another workspace. For any given workspace, an advertiser is a customer. This section covers the methods and endpoints for getting lists and details of customers.
Customer Resource Properties
Properties | |
---|---|
isUserAllowed boolean | Specifies if the organization is permitted (true) to log in for the currently logged-in user |
isWorkspaceOwner boolean | Specifies if the organization owns the workspace; meaning, the org owner and the current org are the same |
owId integer | Organization Workspace ID |
organizationName string | Organization Name |
workspaceName string | Workspace Name |
workspaceDomain string | Worskpace Domain |
owStatus string | Organization Worskpace status type |
owStatusId integer | OW status type ID See Static Details List for supported values |
createdAt string | Creation timestamp |
modifiedAt string | Modification timestamp |
parentOrganizationName string | Parent organization name |
tags array of strings | Customer type tags See Static Details List for supported values |
customersCount integer | Customer count |
balance integer | Budget balance |
contactPersonName string | Name of contact |
contactPersonEmail string | Email of contact |
approvedBy string | Name |
approvedByEmail string | |
logoUrl string | Logo URL |
activeCampaignsCount integer | Number of active Campaigns associated with customer |
industry integer | Industry type See Static Details List for supported values |
companySize integer | Company size See Static Details List for supported values |
mediaBudget integer | Media Budget See Static Details List for supported values |
budgetSpent integer | Budget Spent |
showFinance boolean | Show financial information |
workspaceId integer | Workspace ID |
lastAccess integer | Records the last time the org was accessed |
verticalTypeId integer | Vertical type ID See Static Details List for supported values |
onHoldReason string | Description of reason why Customer is in 'on-hold' status |
Get Customer Details
GET /api/v3/ua/customers/listGet a list of customers and their details.
Query Parameters | |
---|---|
owIds string | Comma separated Organization Workspace IDs whose customers need to be retrieved If owId of advertiser is passed, endpoint will return advertiser details If owId of workspace is passed, endpoint will return workspace and its advertisers details |
childOwIds string | Comma separated OW IDs of organization which will only be provided in response (to filter second level customers only) |
status string | Comma separated owId status IDs See Static Details List for supported values |
customerType string | Comma separated customer type IDs See Static Details List for supported values |
searchField string | Filters results by keyword |
limit integer | Maximum number of entries returned, default: 10 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-), default: -runningCampaigns |
customerAccountType string | Customer account type ID See Static Details List for supported values |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"isUserAllowed": false,
"isWorkspaceOwner": false,
"owId": 100404,
"organizationName": "AdAgencyABC 1",
"workspaceName": "AdAgencyABC 1",
"workspaceDomain": "yourworkspace1.iqm.com",
"owStatus": "active",
"owStatusId": 1,
"createdAt": "2021-10-01T22:20:46.000+00:00",
"modifiedAt": "2021-10-01T22:20:46.000+00:00",
"parentOrganizationName": "AdAgencyABC 1",
"tags": [
"Self Service",
"Advertiser"
],
"customersCount": 0,
"balance": 1000000,
"contactPersonName": "yourname 1",
"contactPersonEmail": "yourname@yourcompany1.com",
"approvedBy": "yourname 3",
"approvedByEmail": "yourname@yourcompany3.com",
"logoUrl": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/TA.svg",
"activeCampaignsCount": 28,
"industry": 1,
"companySize": 2,
"mediaBudget": 3,
"budgetSpent": 1000,
"showFinance": false,
"workspaceId": 632,
"lastAccess": 0,
"verticalTypeId": 1,
"onHoldReason": null
},
{
"isUserAllowed": false,
"isWorkspaceOwner": false,
"owId": 100431,
"organizationName": "AdAgencyABC 2",
"workspaceName": "AdAgencyABC 1",
"workspaceDomain": "yourworkspace1.iqm.com",
"owStatus": "active",
"owStatusId": 1,
"createdAt": "2021-10-01T22:20:46.000+00:00",
"modifiedAt": "2021-10-01T22:20:46.000+00:00",
"parentOrganizationName": "AdAgencyABC 1",
"tags": [
"Self Service",
"Advertiser"
],
"customersCount": 0,
"balance": 0,
"contactPersonName": "yourname 2",
"contactPersonEmail": "yourname@yourcompany2.com",
"approvedBy": "yourname 3",
"approvedByEmail": "yourname@yourcompany3.com",
"logoUrl": "https://iqm-web-assets-c92d6b6cbde1-stage.s3.amazonaws.com/avatar/IQ.svg",
"activeCampaignsCount": 23,
"industry": 1,
"companySize": 2,
"mediaBudget": 3,
"budgetSpent": 1000,
"showFinance": false,
"workspaceId": 632,
"lastAccess": 0,
"verticalTypeId": null,
"onHoldReason": null
}
],
"totalRecords": 2,
"filteredRecords": 2
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
data: {
isUserAllowed: boolean;
isWorkspaceUser: boolean;
owId: number;
organizationName: string;
workspaceName: string;
workspaceDomain: string;
owStatus: string;
owStatusId: number;
createdAt: string;
modifiedAt: string;
parentOrganizationName: string;
tags: string[];
customerscount: number;
balance: number;
contactPersonName: string;
contactPersonEmail: string;
approvedBy: string;
approvedEmail: string;
logoUrl: string;
activeCampaignsCount: number;
industry: number;
companySize: number;
mediaBudget: number;
budgetSpent: number;
showFinance: boolean;
workspaceId: number;
lastAccess: number;
verticalTypeId: number;
onHoldReason: string;
}[];
totalRecords: number;
filteredRecords: number;
}
};
};
};
}
function getCustomersList(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customers/workspaces/list',
params: {
query: {
owIds?: `string`,
childOWIds?: `string`,
status?: `string`,
customerType?: `string`,
customerAccountType?: `string`,
countryId?: `number`,
verticalId?: `number`,
adOpsAssigneeUserIds?: `string`,
sellerAssigneeUserIds?: `string`,
labelIds?: `string`,
customerPaymentTypeIds?: `string`,
searchField?: `string`,
limit?: `number`,
pageNo?: `number`,
sortBy?: `string`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Basic Customer Details
POST /api/v3/ua/customer/basic/listRequest Schema | |
---|---|
searchField string | Search results by keyword |
noOfEntries integer | Maximum number of entries returned, default: 20 |
pageNo integer | Page number for the data, default: 1 |
owIds array of integers | Organization Workspace IDs |
owStatusIds array of integers | Filter by OW Status type IDs See Static Details List for supported values |
provideRunningCampaigns boolean | Get running Campaign count (true), default: false |
- JSON
- TypeScript
{
"owStatusIds": [
1,
2
],
"pageNo": 1,
"noOfEntries": 20,
"owIds": [
20001
],
"searchField": "Agency",
"provideRunningCampaigns": false
}
{
"success": true,
"data": {
"data": [
{
"owId": 20001,
"organizationName": "AdAgencyABC 1",
"organizationLogo": "https://logo-bucket/avatar/123456.png",
"owStatus": "Active",
"owStatusId": 1,
"wsId": 2,
"runningCampaigns": 0,
"ownerUserName": "yourname 1",
"ownerUserEmail": "yourname@yourcompany1.com"
}
],
"totalRecords": 2,
"filteredRecords": 1
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
data: {
owId: number;
organizationName: string;
organizationLogo: string;
owStatus: string;
owStatusId: number;
wsId: number;
runningCampaigns: number;
ownerUserName: string;
ownerUserEmail: string;
}[];
totalRecords: number;
filteredRecords: number;
}
};
};
};
}
function getCustomerBasicDetails(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/customer/basic/list',
requestBody: {
content: {
"application/json": {
searchBy?: `array of strings`,
owIds?: `array of numbers`,
owStatusIds?: `array of numbers`,
ids?: `array of numbers`,
provideRunningCampaigns?: `boolean`,
pagination?: `string`,
pageNo?: `number`,
noOfEntries?: `number`,
sortBy?: `string`,
searchField?: `string`,
order?: `string`,
offset?: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Multi-level Customers List
GET /api/v3/ua/customers/list/multi-levelQuery Parameters | |
---|---|
owIds string | Comma separated OW IDs of organizations whose customers need to be retrieved |
status string | Comma separated owId status IDs See Static Details List for supported values |
searchField string | Filters results by keyword |
limit integer | Maximum number of entries returned, default: 10 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-), default: +superParentOrganizationId |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"owId": 200129,
"organizationName": "AdAgencyABC 1",
"isAccess": true,
"logoUrl": "https://logo-bucket/avatar/123456.png",
"status": "Active",
"statusId": 1,
"activeCampaignsCount": 17,
"ownerUserName": "yourname 1",
"ownerUserEmail": "yourname@yourcompany1.com",
"customers": [
{
"owId": 200176,
"organizationName": "AdAgencyABC 4",
"logoUrl": "https://logo-bucket/avatar/123456.png",
"status": "Active",
"statusId": 1,
"activeCampaignsCount": 0,
"ownerUserName": "yourname 4",
"ownerUserEmail": "yourname@yourcompany4.com"
},
{
"owId": 200177,
"organizationName": "AdAgencyABC 5",
"logoUrl": "https://logo-bucket/avatar/123456.png",
"status": "Active",
"statusId": 1,
"activeCampaignsCount": 0,
"ownerUserName": "yourname 5",
"ownerUserEmail": "yourname@yourcompany5.com"
}
]
},
{
"owId": 200422,
"organizationName": "AdAgencyABC 2",
"isAccess": false,
"logoUrl": "https://logo-bucket/avatar/123456.png",
"status": "Active",
"statusId": 1,
"activeCampaignsCount": 0,
"ownerUserName": "yourname 2",
"ownerUserEmail": "jp@iqm.com",
"customers": [
{
"owId": 200425,
"organizationName": "AdAgencyABC 6",
"logoUrl": "https://logo-bucket/avatar/123456.png",
"status": "Active",
"statusId": 1,
"activeCampaignsCount": 17,
"ownerUserName": "yourname 6",
"ownerUserEmail": "yourname@yourcompany6.com"
},
{
"owId": 200495,
"organizationName": "AdAgencyABC 7",
"logoUrl": "https://logo-bucket/avatar/123456.png",
"status": "Active",
"statusId": 1,
"activeCampaignsCount": 17,
"ownerUserName": "yourname 7",
"ownerUserEmail": "yourname@yourcompany7.com"
}
]
},
{
"owId": 200424,
"organizationName": "AdAgencyABC 3",
"isAccess": true,
"customers": [],
"logoUrl": "https://logo-bucket/avatar/123456.png",
"status": "Active",
"statusId": 1,
"activeCampaignsCount": 17,
"ownerUserName": "yourname 3",
"ownerUserEmail": "yourname@yourcompany3.com"
}
],
"totalRecords": 3,
"filteredRecords": 3
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
data: {
owId: number;
organizationName: string;
isAccess: boolean;
logoUrl: string;
status: string;
statusId: number;
activeCampaignsCount: number;
ownerUserName: string;
ownerUserEmail: string;
customers: {
owId: number;
organizationName: string;
logoUrl: string;
status: string;
statusId: number;
activeCampaignsCount: number;
ownerUserName: string;
ownerUserEmail: string;
}[];
}[];
totalRecords: number;
filteredRecords: number;
}
};
};
};
}
function getMultiLevelOrganizations(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customers/list/multi-level',
params: {
query?: {
owIds?: `string`,
searchField?: `string`,
sortBy?: `string`,
status?: `string`,
limit?: `number`,
pageNo?: `number`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Immediate Customers List
GET /api/v3/ua/immediate/customers/listGet only immediate customers of provided OW IDs (if owId is not provided then the OW ID in the header will be passed).
Query Parameters | |
---|---|
owIds string | Comma separated Organization Workspace IDs whose immediate customers need to be retrieved |
childOwIds string | Comma separated OW IDs of organization which will only be provided in response (to filter second level customers only) |
status string | Comma separated owId status IDs See Static Details List for supported values |
customerType string | Comma separated customer type IDs See Static Details List for supported values |
searchField string | Filters results by keyword |
limit integer | Maximum number of entries returned, default: 10 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-), default: |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"isUserAllowed": false,
"owId": 500,
"organizationName": "Walmart Non IHB 1",
"workspaceName": "walmart1.stage.inhousebuying.com",
"workspaceDomain": "walmart1.stage.inhousebuying.com",
"owStatus": "Active",
"createdAt": "2021-09-05T22:55:10.000+00:00",
"parentOrganizationName": "Walmart 1",
"tags": [
"Self Service",
"Advertiser"
],
"customersCount": 0,
"balance": 0,
"contactPersonName": null,
"contactPersonEmail": "kartik.g+wni1@iqm.com",
"approvedBy": "Walmart 1",
"logoUrl": "https://d3jme5si7t6llb.cloudfront.net/logo/iqm.png",
"activeCampaignsCount": 0
}
],
"totalRecords": 1,
"filteredRecords": 1
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
data: {
isUserAllowed: boolean;
owId: number;
organizationName: string;
workspaceName: string;
workspaceDomain: string;
owStatus: string;
createdAt: string;
parentOrganizationName: string;
tags: string[];
customersCount: number;
balance: number;
contactPersonName: string;
contactPersonEmail: string;
approvedBy: string;
logoUrl: string;
activeCampaignsCount: number;
}[];
totalRecords: number;
filteredRecords: number;
}
};
};
};
}
function getImmediateCustomers(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/immediate/customers/list',
params: {
query?: {
owIds?: `string`,
childOwIds?: `string`,
searchField?: `string`,
sortBy?: `string`,
status?: `string`,
limit?: `number`,
pageNo?: `number`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Customer Operations Resource Properties
Resource Properties | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
email string | Customer email | |||||||||||||
name string | Customer name | |||||||||||||
password string | Customer password | |||||||||||||
onwerUserName string | Customer owner | |||||||||||||
verticalId integer | Vertical type ID See Static Details List for supported values | |||||||||||||
logoUrl string | Logo URL | |||||||||||||
customerOperationDetails object | (Workspace only) contains all following properties | |||||||||||||
|
customerTypeId integer | Customer type ID See Static Details List for supported values |
customerPaymentTypeId integer | Customer payment type ID See Static Details List for supported values |
countryId integer | Country ID |
adOpsAssigneeUserIds array of integers | User IDs assigned by the IQM AdOps Team |
sellerAssigneeUserIds array of integers | User IDs assigned by the client/seller team |
labelIds array of integers | Label ID |
Get Customer Operations Details
GET /api/v3/ua/customer-operations/details/{owId}Path Parameters | |
---|---|
owId integer | Organization Workspace ID |
- JSON
- TypeScript
{
"success": true,
"data": {
"workspaceCustomerOperationDetails": {
"customerTypeId": 1,
"owId": 202879,
"customerPaymentTypeId": 2,
"countryId": 30100001,
"adOpsAssigneeUserIds": [
7184
],
"sellerAssigneeUserIds": [
6900
],
"labelIds": [
1,
3,
4
],
"overridenFields": {
"customerTypeId": false,
"customerPaymentTypeId": false,
"countryId": false,
"adOpsAssigneeUserIds": false,
"sellerAssigneeUserIds": false,
"labelIds": false
}
}
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
workspaceCustomerOperationDetails: {
customerTypeId: number;
owId: number;
customerPaymentTypeId: number;
countryId: number;
adOpsAssigneeUserIds: number[];
sellerAssigneeUserIds: number[];
labelIds: number[];
overridenFields: {
customerTypeId: boolean;
customerPaymentTypeId: boolean;
countryId: boolean;
adOpsAssigneeUserIds: boolean;
sellerAssigneeUserIds: boolean;
labelIds: boolean;
}
}
}
};
};
};
}
function getCustomerOperationDetailsById(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customer-operations/details/{owId}',
params: {
path: {
owId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Customer Operations Label List
GET /api/v3/ua/customer-operations/label/listGet a list of labels for customer operations.
Query Parameters | |
---|---|
searchField string | Search results by keyword |
noOfEntries integer | Maximum number of entries returned, default: 20 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-), default: -id Supported values: id, name, startTime, endTime, totalBudget |
- JSON
- TypeScript
{
"success": true,
"data": {
"totalRecords": 36,
"filteredRecords": 36,
"operationalLabels": [
{
"label": "Test Label with 30 chars - 857",
"id": 29
},
{
"label": "Test Label with 30 characters.",
"id": 16
}
]
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
totalRecords: number;
filteredRecords: number;
operationLabels: {
label: string;
id: number
}[]
}
};
};
};
}
function getCustomerOperationLabels(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customer-operations/label/list',
params: {
query?: {
searchField?: `string`,
noOfEntries?: `number`,
pageNo?: `number`,
sortBy?: `string`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Count of Customers by Status
GET /api/v3/ua/customers/countGet a count of customers by status and OW ID.
Query Parameters | |
---|---|
owIds string | Filter results by comma separated OW IDs |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "pending",
"id": 2,
"label": "Pending",
"order": 1,
"statusCount": 0
},
{
"name": "active",
"id": 1,
"label": "Active",
"order": 2,
"statusCount": 1900
},
{
"name": "invited",
"id": 3,
"label": "Invited",
"order": 3,
"statusCount": 0
},
{
"name": "suspended",
"id": 4,
"label": "Suspended",
"order": 4,
"statusCount": 87
},
{
"name": "rejected",
"id": 5,
"label": "Rejected",
"order": 5,
"statusCount": 0
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
statusCount: number
}[]
};
};
};
}
function getCustomerCount(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customers/count',
params: {
query?: {
owIds: `array of numbers`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get List of Users for Selected Customer
GET /api/v3/ua/customers/users/listGet list of users for the given customer (organization).
Query Parameters | |
---|---|
owId string | OW ID of Customer for which user list will be retrieved |
limit integer | Maximum number of entries returned, default: 10 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-), default: -displayName |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"userId": 1,
"displayName": "IHP",
"userAvatar": "https://s3.amazonaws.com/admp0ed7fer7ert0em3rip5dy2/1/15e544b7b11040c1b56a61d2ab8450b4.png",
"email": "pratik.t+ihp@iqm.com",
"userTitle": "CEO",
"orgId": 1,
"organizationName": "IHP",
"apps": [
{
"appId": 1,
"appName": "Customers",
"appIcon": null
},
{
"appId": 2,
"appName": "Dashboard",
"appIcon": null
}
]
}
],
"totalRecords": 1,
"filteredRecords": 1
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
userId: number;
displayName: string;
userAvatar: string;
email: string;
userTitle: string;
orgId: number;
organizationName: string;
apps: {
appId: number;
appName: string;
appIcon: string | null;
}[];
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
}
function GetUserslistforselectedcustomer(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customers/users/list',
params: {
query?: {
owId: `number`,
pageNo: `number`,
limit: `number`,
sortBy: `string`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get List of User Assigned Customers
GET /api/v3/ua/user/assigned-customersQuery Parameters | |
---|---|
uowId string | Customers assigned to user Organization Workspace ID |
limit integer | Maximum number of entries returned, default: 2 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-) Supported values: createdAt, organizationName |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"owId": 58,
"organizationName": "Amul",
"createdAt": 1629361572000,
"contactPersonName": "Amul",
"contactPersonEmail": "pratik.t+nonihp@iqm.com"
},
{
"owId": 169,
"organizationName": "Volkswagen India",
"createdAt": 1629346722000,
"contactPersonName": "Volkswagen India",
"contactPersonEmail": "shraddha.p+vw@iqm.com"
}
],
"totalRecords": 3,
"filteredRecords": 2
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
owId: number;
organizationName: string;
createdAt: number;
contactPersonName: string;
contactPersonEmail: string;
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
}
function UserassignedCustomers(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/user/assigned-customers',
params: {
query?: {
uowId: `number`,
pageNo: `number`,
limit: `number`,
sortBy: `string`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get User's Remaining Customers
GET /api/v3/ua/user/remaining-customersQuery Parameters | |
---|---|
uowId string | Customers assigned to user Organization Workspace ID |
owIds string | Organization Workspace IDs |
limit integer | Maximum number of entries returned, default: 2 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-) Supported values: contactPersonName, organizationName |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"owId": 169,
"organizationName": "Volkswagen India",
"createdAt": 1629346722000,
"balance": 0,
"contactPersonName": "Volkswagen India",
"contactPersonEmail": "shraddha.p+vw@iqm.com",
"logoUrl": "https://d3jme5si7t6llb.cloudfront.net/logo/iqm.png",
"activeCampaignsCount": 0
},
{
"owId": 170,
"organizationName": "Coca-Cola",
"createdAt": 1629346703000,
"balance": 0,
"contactPersonName": "Coca-Cola",
"contactPersonEmail": "shraddha.p+cc@iqm.com",
"logoUrl": "https://d3jme5si7t6llb.cloudfront.net/logo/iqm.png",
"activeCampaignsCount": 0
}
],
"totalRecords": 2,
"filteredRecords": 2
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
owId: number;
organizationName: string;
createdAt: number;
balance: number;
contactPersonName: string;
contactPersonEmail: string;
logoUrl: string;
activeCampaignsCount: number;
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
}
function User'sremainingCustomers(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/user/remaining-customers',
params: {
query?: {
owIds: `string`,
pageNo: `number`,
limit: `number`,
sortBy: `string`
searchField: `string`,
uowId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get List of Customer's Allowed Applications
GET /api/v3/ua/customers/applications/listGet a list of a customer's allowed applications along with the allowed user's list.
Query Parameters | |
---|---|
owId string | OW ID of Customer for which application list will be retrieved |
limit integer | Maximum number of entries returned, default: 10 |
pageNo integer | Page number for the data, default: 1 |
sortBy string | Sorts by ascending (+) or descending (-), default: -appName |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"appId": 2,
"appName": "Dashboard",
"appOwner": "IHB",
"appIcon": null,
"appType": "Default App",
"subscriptionPrice": 0,
"users": [
{
"firstName": "Shraddha",
"lastName": "Patel",
"email": "shraddha.p+emailtest1@iqm.com",
"displayName": "Shraddha Patel",
"userAvatar": "https://tmpd3vsekqsh1zre3k8n-stage.s3.amazonaws.com/avatar/SP.svg"
},
{
"firstName": "Shraddha",
"lastName": "P",
"email": "shraddha.p+emailtest2@iqm.com",
"displayName": "Shraddha P",
"userAvatar": "https://tmpd3vsekqsh1zre3k8n-stage.s3.amazonaws.com/avatar/SP.svg"
}
]
},
{
"appId": 1,
"appName": "Customers",
"appOwner": "IHB",
"appIcon": null,
"appType": "Default App",
"subscriptionPrice": 0,
"users": [
{
"firstName": "Kartik",
"lastName": "Gevariya",
"email": "kartik.g@iqm.com",
"displayName": "Kartik Gevariya",
"userAvatar": "https://s3.amazonaws.com/admp0ed7fer7ert0em3rip5dy2/1/15e544b7b11040c1b56a61d2ab8450b4.png"
},
{
"firstName": "SP-IQM-User",
"lastName": null,
"email": "shraddha.p+iqmuser@iqm.com",
"displayName": "SP-IQM-User",
"userAvatar": null
}
]
}
],
"totalRecords": 10,
"filteredRecords": 10
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
appId: number;
appName: string;
appOwner: string;
appIcon: string | null;
appType: string;
subscriptionPrice: number;
users: {
firstName: string;
lastName: string | null;
email: string;
displayName: string;
userAvatar: string | null;
}[];
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
}
function GetCustomerAllowedApplications(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customers/applications/list',
params: {
query?: {
owId: `number`,
pageNo: `number`,
limit: `number`,
sortBy: `string`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get List of Remaining Apps for Customer
GET /api/v3/ua/customers/remaining-applications/listQuery Parameters | |
---|---|
owId string | OW ID of Customer for which application list will be retrieved |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"appId": 6,
"appName": "Accounts",
"appIcon": "",
"orgName": "IHP",
"appType": "Default App",
"userCount": 0
},
{
"appId": 8,
"appName": "Audiences",
"appIcon": "",
"orgName": "IQM Corporation",
"appType": "Default App",
"userCount": 0
}
...
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
appId: number;
appName: string;
appIcon: string | null;
orgName: string;
appType: string;
userCount: number;
}[];
};
};
};
}
function GetremainingApplicationlistforCustomer(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customers/remaining-applications/list',
params: {
query?: {
owId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get List of Advertisers for Customer
GET /api/v3/ua/customers/advertisers/listGet a list of advertisers for a given customer.
Query Parameters | |
---|---|
owId string | OW ID of Customer for which advertiser list will be retrieved |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"id": 1,
"advertiserName": "Nikon",
"website": "http://nikonindia.com",
"chiefName": "Nil Miles",
"contactNumber": "+91 9999999999",
"contactAddress": null
},
{
"id": 2,
"advertiserName": "Nike",
"website": "http://nikeindia.com",
"chiefName": "Nike",
"contactNumber": "+91 9999988888",
"contactAddress": null
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
id: number;
advertiserName: string;
website: string;
chiefName: string;
contactNumber: string;
contactAddress: string | null;
}[];
};
};
};
}
function GetAdvertiserslistforCustomer(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customers/advertisers/list',
params: {
query?: {
owId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Customer Config Details
GET /api/v3/ua/customer/config/{customerOwId}Get customer configuration details.
Path Parameters | |
---|---|
customerOwId integer | Customer Organization Workspace ID |
- JSON
- TypeScript
{
"success": true,
"data": {
"isBidShadingEnabled": true,
"isTestCustomer": false
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
isBidShadingEnabled: boolean;
isTestCustomer: boolean;
}
};
};
};
}
function getCustomerConfig(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customer/config/{customerOwId}',
params: {
path: {
customerOwId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Customer Management
Invite Customer to Platform
POST /api/v3/ua/customer/inviteInvite a customer to the platform (as workspace or advertiser).
Refer to Customer Operations Resource Property Table for request schema.
- JSON
- TypeScript
[
{
"email": "user1@iqm.com",
"name": "ORG - 1",
"password": "password@123",
"ownerUserName": "User-1",
"verticalId": 1,
"logoUrl": "https://d3jme5si7t6llb.cloudfront.net/assets/202753/Pd7Xx26_1721991655891.png",
"customerOperationDetails": {
"customerTypeId": 2,
"customerPaymentTypeId": 2,
"countryId": 30100001,
"adOpsAssigneeUserIds": [],
"sellerAssigneeUserIds": [
7184
],
"labelIds": [
7,
8,
9
]
}
}
]
{
"success": true,
"data": {
"successfulEmails": [
"user1.g@iqm.com"
],
"failedEmails": [
"user2.p@iqm.com"
],
"message": "1 invitations sent successfully."
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
successfulEmails: string[];
failedEmails: string[];
message: string;
}
}
};
};
};
function sendInvitations(): Promise < Responses > {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/customer/invite',
requestBody: {
content: {
"application/json": [
{
id?: `number`,
invitedUserOWId?: `number`,
email?: `string`,
password?: `string`,
name?: `string`,
ownerUserName?: `string`,
owId?: `number`,
uowId?: `number`,
modifiedByUOWId?: `number`,
status?: `number`,
expiresAt?: `number`,
modifiedAt?: `string`,
invitationUserType?: `string`,
verticalId?: `number`,
logoUrl?: `string`,
serviceType?: `number`,
customerOperationDetails?: {
customerTypeId?: `number`,
customerPaymentTypeId?: `number`,
countryId?: `number`,
createdByUowId?: `number`,
modifiedByUowId?: `number`,
adOpsAssigneeUserIds?: `array of numbers`,
sellerAssigneeUserIds?: `array of numbers`,
labelIds?: `array of numbers`,
}
}
]
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Resend Customer Invite
POST /api/v3/ua/customer/invite/re-send- JSON
- TypeScript
{
"inviteHash": "M7JoA2hYIUcKdVDM3g2KD/7+4FcOi9+slNVCW4NhEJgPMIxdvrj6ObD+gmCo6uikWqH6+LnHXnqXa7z2WVfw2FUI8ppsFOd8Ai1rnC0+gQiZWcgffqv2lggi0FZ3KiVERgAIFyJPIuV7fhi7AZksDka0VWHhNqHhX4R108psN73muXEaOrsf5uXlyQwzyYPpIeBq9eixIK+ytPQWBNMVKQBCczILN9l3MDheiiV94Jud1Tg/jrALspnF7KytcsfkgA5sQqWvK0K/LEl2TwAjMFl8fftW6d4xnwDb5Z0H"
}
{
"success": true,
"data": "Invitation resent successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function CustomerRe-Invite(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/customer/invite/re-send',
requestBody: {
content: {
"application/json": {
inviteHash: `string`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Cancel Customer Invite
DELETE /api/v3/ua/customer/invite/cancelQuery Parameters | |
---|---|
owId string | OW ID of Customer for which advertiser list will be retrieved |
- JSON
- TypeScript
{
"success": true,
"data": "Invitation cancelled successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function CancelInvite(): Promise<Responses> {
const options = {
method: 'DELETE',
url: 'https://app.iqm.com/api/v3/ua/customer/invite/cancel',
params: {
query: {
owId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Customer Signup
POST /api/v3/ua/customer/signupSign up a new customer.
Request Schema | |
---|---|
email string | Customer email |
organizationName string | Customer organization name |
userName string | Customer user name |
industry integer | Industry type ID |
companySize integer | Company size type ID See Static Details List for supported values |
mediaBudget integer | See Static Details List for supported values |
budgetSpent integer | Budget spent |
- JSON
- TypeScript
{
"email": "email@domain.com",
"organizationName": "Organisation Name",
"userName": "User Name",
"industry": 1,
"companySize": 2,
"mediaBudget": 3,
"budgetSpent": 2000
}
{
"success": true,
"data": "Customer sign up requested successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function Customersignup(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/customer/signup',
requestBody: {
content: {
"application/json": {
email: `string`,
organizationName: `string`,
userName: `string`,
industry: `number`,
companySize: `number`,
mediaBudget: `number`,
budgetSpent: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Get Customer Signup Form
GET /api/v3/ua/customer/signup-form- JSON
- TypeScript
{
"success": true,
"data": {
"isCustomerVerificationEnable": true,
"customerFormDetails": [
{
"id": 1,
"field": "organizationName",
"label": "Organization name",
"isUserRequired": true
},
{
"id": 2,
"field": "userName",
"label": "Name of the user",
"isUserRequired": true
},
{
"id": 3,
"field": "industry",
"label": "Industry",
"isUserRequired": false
},
{
"id": 4,
"field": "companySize",
"label": "Company size",
"isUserRequired": true
},
{
"id": 5,
"field": "mediaBudget",
"label": "Media budget",
"isUserRequired": true
},
{
"id": 6,
"field": "budgetSpent",
"label": "Budget spent on programmatic",
"isUserRequired": false
}
]
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
isCustomerVerificationEnable: boolean;
customerFormDetails: {
id: number;
field: string;
label: string;
isUserRequired: boolean;
}[];
};
};
};
};
}
function GetCustomersignupform(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/customer/signup-form',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Assign Customer to User
POST /api/v3//ua/user/customer/assignAssign a customer to an existing user.
Request Schema | |
---|---|
owIds string | Comma separated OW IDs to assign to user |
uowIds string | Comma separated user IDs to assign customers to |
- JSON
- TypeScript
{
"owIds": "170,58,167,900",
"uowIds": "166"
}
{
"success": true,
"data": "Added Customer association to User successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
errorObjects: {
error: string;
}[];
data: {
successfulCustomerIds: number[];
};
};
};
};
}
function AssignCustomerstoUser(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/customer/assign',
requestBody: {
content: {
"application/json": {
owIds: `string`,
uowIds: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Unassign Customer from User
POST /api/v3/ua/user/customer/remove- JSON
- TypeScript
{
"owIds": "58",
"uowIds": "166"
}
{
"success": true,
"data": "Removed Customer association from User successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function De-assignCustomerFromUser(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/customer/remove',
requestBody: {
content: {
"application/json": {
owIds: `string`,
uowIds: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Approve Customer
PATCH /api/v3/ua/customer/approveApprove a customer and add app access.
Request Schema | |
---|---|
owId integer | Organization Workspace ID |
appIds string | Comma separated application IDs to add or revoke customer access to |
- JSON
- TypeScript
{
"owId": 134562,
"appIds": "2,5,6,7,9,10,11"
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function Approvecustomer(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/customer/approve',
requestBody: {
content: {
"application/json": {
owIds: `number`,
appIds: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Reject Customer
PATCH /api/v3/ua/customer/rejectRequest Schema | |
---|---|
owId integer | Organization Workspace ID |
statusReason string | Description of rejection reason |
- JSON
- TypeScript
{
"owId": 345216,
"statusReason": "Customer didn't provide correct details"
}
{
"success": true,
"data": "Customer rejected successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function Rejectcustomer(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/customer/reject',
requestBody: {
content: {
"application/json": {
owIds: `number`,
statusReason: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Add Customer App Access
POST /api/v3/ua/customer/application/addAdd customer access to specified apps.
Request Schema | |
---|---|
owId integer | Organization Workspace ID |
appIds string | Comma separated application IDs to add or revoke customer access to |
accessLevel string | Gives customer full or limited access to added applications |
- JSON
- TypeScript
{
"owId": 2,
"appIds": "1,2",
"accessLevel": "Full"
}
{
"success": true,
"data": "Application access added successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function AddAppaccessforCustomer(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/customer/application/add',
requestBody: {
content: {
"application/json": {
owId: `number`,
appIds: `string`,
accessLevel: `string`
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Revoke Customer App Access
POST /api/v3/ua/customer/application/revokeRevoke customer access to specified apps.
Request Schema | |
---|---|
owId integer | Organization Workspace ID |
appIds string | Comma separated application IDs to add or revoke customer access to |
accessLevel string | Gives customer full or limited access to added applications |
- JSON
- TypeScript
{
"owId": 2,
"appIds": "1,2",
}
{
"success": true,
"data": "Application access revoked successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function RevokeAppaccessforCustomer(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/customer/application/revoke',
requestBody: {
content: {
"application/json": {
owId: `number`,
appIds: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Put Customer On-Hold
PATCH /api/v3/ua/customer/holdChange customer status (see Status List) to 'on-hold' with provided reason.
Request Schema | |
---|---|
owId integer | Organization Workspace ID |
statusReason string | Description of reason to put customer on hold |
- JSON
- TypeScript
{
"owId": 54,
"statusReason": "Not paid payment for 3 months"
}
{
"success": true,
"data": "Customer status changed to on-hold successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function PutCustomerOn-hold(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/customer/hold',
requestBody: {
content: {
"application/json": {
owId: `number`,
statusReason: `string`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Re-Activate Customer
PATCH /api/v3/ua/customer/re-activateChange customer status to 'active' with the following endpoint:
- JSON
- TypeScript
{
"owId": 54
}
{
"success": true,
"data": "Customer status changed to active successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function Re-activateCustomer(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/customer/re-activate',
requestBody: {
content: {
"application/json": {
owId: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Add Label for Customer Operation
POST /api/v3/ua/customer-operations/label/addAdd a label for customer operations, which will be displayed in the labels list.
Request Schema | |
---|---|
labelName string | Label name |
- JSON
- TypeScript
{
"labelName": "Test-case-high"
}
{
"success": true,
"data": {
"labelId": 2,
"message": "label added successfully"
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
labelId: number;
message: string;
}
};
};
};
}
function addLabelForCustomerOperation(): Promise<Responses> {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/customer-operations/label/add',
requestBody: {
content: {
"application/json": {
labelName: `string`,
createdByUowId: `number`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Enable Bid Shading for Customer
PATCH /api/v3/ua/customer/enable-bid-shading/{customerOwId}Enable bid shading for given customer OW ID.
Path Parameters | |
---|---|
customerOwId integer | Customer Organization Workspace ID |
- JSON
- TypeScript
{
"success": true,
"data": "Bid Shading Enabled Successfully"
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
}
function updateIsBidShadingEnabledFlag(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/customer/enable-bid-shading/{customerOwId}',
params: {
path: {
customerOwId: `number`
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Update Customer Operations Details
PATCH /api/v3/ua/customer-operations/{owId}Update customer operations details.
Path Parameters | |
---|---|
OwId integer | Customer Organization Workspace ID |
See the Customer Operations Property Table for request schema.
- JSON
- TypeScript
{
"customerOperationsDetails": {
"customerTypeId": 0,
"customerPaymentTypeId": 0,
"countryId": 0,
"createdByUowId": 0,
"modifiedByUowId": 0,
"adOpsAssigneeUserIds": [
0
],
"sellerAssigneeUserIds": [
0
],
"labelIds": [
0
]
},
"resetFields": {
"customerTypeId": true,
"customerPaymentTypeId": true,
"countryId": true,
"adOpsAssigneeUserIds": true,
"sellerAssigneeUserIds": true,
"labelIds": true
}
}
{
"success": true,
"data": {
"message": "Customer operation details updated successfully"
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
message: string
}
};
};
};
}
function updateCustomerOperationDetailsByOwId(): Promise<Responses> {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/customer-operations/{owId}',
params: {
path: {
owId: `number`
}
},
requestBody: {
content: {
"application/json": {
customerOperationsDetails?: {
customerTypeId?: `number`,
customerPaymentTypeId?: `number`,
countryId?: `number`,
createdByUowId?: `number`,
modifiedByUowId?: `number`,
adOpsAssigneeUserIds?: `array of numbers`,
sellerAssigneeUserIds?: `array of numbers`,
labelIds?: `array of numbers`,
},
resetFields?: {
customerTypeId?: `boolean`,
customerPaymentTypeId?: `boolean`,
countryId?: `boolean`,
adOpsAssigneeUserIds?: `boolean`,
sellerAssigneeUserIds?: `boolean`,
labelIds?: `boolean`,
};
};
};
};
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Advertiser Management
An advertiser is a customer of a workspace that places advertisements. This section covers the methods and endpoints for managing advertiser details.
Advertiser Resource Properties
Property | |
---|---|
advertiserName string | Advertiser name |
website string | Advertiser website |
chiefName string | Name of political person, with respect to the advertiser |
contactNumber string | Advertiser phone number |
address string | Advertiser address |
legalInfo string | Legal info for advertiser |
links string | Associated links for advertiser |
Get List of Advertiser Profile and Details
GET /api/v3/ua/organization/advertisers/listGet a list of advertiser profiles and their details.
Query Parameters | |
---|---|
advertiserIds string | Comma separated advertiser IDs |
searchField string | Filters results by keyword |
limit integer | Maximum number of entries returned, default: 10 |
pageNo integer | Page number for the data, default: 1 |
- JSON
- TypeScript
{
"success": true,
"data": {
"data": [
{
"id": 5,
"advertiserName": "Nikon 3",
"website": "http://nikon3india.com",
"chiefName": "Nil Miles3",
"contactNumber": "+91 9876534210",
"address": null,
"legalInfo": null,
"links": []
},
{
"id": 3,
"advertiserName": "Nikon 1",
"website": "http://nikonindia.com",
"chiefName": "Nil Miles1",
"contactNumber": "+91 9876534210",
"address": null,
"legalInfo": null,
"links": [
"www.nikon1.com",
"www.nikon1us.com"
]
},
{
"id": 4,
"advertiserName": "Nikon_2",
"website": "http://nikon_2india.com",
"chiefName": "Nil Miles2",
"contactNumber": "+91 9876534210",
"address": null,
"legalInfo": null,
"links": [
"www.nikon_2.com"
]
},
{
"id": 1,
"advertiserName": "Nikon",
"website": "http://nikonindia.com",
"chiefName": "Nil Miles",
"contactNumber": "+91 9999999999",
"address": null,
"legalInfo": null,
"links": [
"www.nikon.com",
"www.nikonus.com"
]
},
{
"id": 2,
"advertiserName": "Nike",
"website": "http://nikeindia.com",
"chiefName": "Nike",
"contactNumber": "+91 9999988888",
"address": null,
"legalInfo": null,
"links": []
}
],
"totalRecords": 5,
"filteredRecords": 5
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
data: {
id: number;
advertiserName: string;
website: string;
chiefName: string;
contactNumber: string;
address: string | null;
legalInfo: string | null;
links: string[];
}[];
totalRecords: number;
filteredRecords: number;
};
};
};
};
};
function Listadvertiserprofile(): Promise < Responses > {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/organization/advertisers/list',
params: {
query: {
searchField: `string`,
pageNo: `number`,
limit: `number`,
advertiserIds: `string`,
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Add Advertiser Profile
POST /api/v3/ua/organization/advertiser/addAdd a new advertiser profile.
Refer to Advertiser Resource Properties for request schema.
- JSON
- TypeScript
{
"advertiserName": "Nikon 1",
"website": "http://nikonindia.com",
"chiefName": "Nil Miles1",
"contactNumber": "+91 9876534210",
"address": "physical address",
"legalInfo": "legal info for advertiser",
"links": [
"www.nikon1.com",
"www.nikon1us.com"
]
}
{
"success": true,
"data": "Advertiser profile added successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
};
function Addadvertiserprofile(): Promise < Responses > {
const options = {
method: 'POST',
url: 'https://app.iqm.com/api/v3/ua/organization/advertisers/add',
requestBody: {
content: {
"application/json": {
advertiserName: `string`,
website: `string`,
chiefName: `string`,
contactNumber: `string`,
address: `string`,
legalInfo: `string`,
links: `array of strings`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Edit Advertiser Profile
PATCH /api/v3/ua/organization/advertiser/{advertiserId}Edit advertiser profile details.
Path Parameters | |
---|---|
advertiserId integer | Advertiser ID |
Refer to Advertiser Resource Properties for request schema.
- JSON
- TypeScript
{
"advertiserName": "Nikon 2",
"website": "http://nikonindia.com",
}
{
"success": true,
"data": "Advertiser profile updated successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
};
function Editadvertiserprofile(): Promise < Responses > {
const options = {
method: 'PATCH',
url: 'https://app.iqm.com/api/v3/ua/organization/advertiser/{advertiserId}',
params: {
path: {
advertiserId: `number`
}
},
requestBody: {
content: {
"application/json": {
advertiserName: `string`,
website: `string`,
chiefName: `string`,
contactNumber: `string`,
address: `string`,
legalInfo: `string`,
links: `array of strings`,
}
}
}
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Delete Advertiser Profile
DELETE /api/v3/ua/organization/advertiser/{advertiserId}Delete an advertiser profile.
Path Parameters | |
---|---|
advertiserId integer | Advertiser ID |
- JSON
- TypeScript
{
"success": true,
"data": "Advertiser profile deleted successfully."
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: string;
};
};
};
};
function Deleteadvertiserprofile(): Promise < Responses > {
const options = {
method: 'DELETE',
url: 'https://app.iqm.com/api/v3/ua/organization/advertiser/{advertiserId}',
params: {
path: {
advertiserId: `number`
}
},
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Static Details Lists
Organization Workspace Status
GET /api/v3/ua/static/organization-workspace-statusQuery Parameters | |
---|---|
view string | Represents the tab from which request was made in customer app Supported values: customer, approval, finance |
Workspace Status IDs | |
---|---|
1 | Active |
2 | Pending |
3 | Invited |
4 | Suspended |
5 | Rejected |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "pending",
"id": 2,
"label": "Pending",
"order": 1
},
{
"name": "active",
"id": 1,
"label": "Active",
"order": 2
},
{
"name": "invited",
"id": 3,
"label": "Invited",
"order": 3
},
{
"name": "suspended",
"id": 4,
"label": "Suspended",
"order": 4
},
{
"name": "rejected",
"id": 5,
"label": "Rejected",
"order": 5
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
}
function OrganizationWorkspaceStatus(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/organization-workspace-status',
params: {
query: {
view: `string`,
}
},
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Customer Type
GET /api/v3/ua/static/customer-typeIdentifies what kind of services customer has chosen.
Customer Type IDs | |
---|---|
1 | Self-served |
2 | Managed Services |
3 | App users |
4 | Advertisers |
5 | Workspaces |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "self_served",
"id": 1,
"label": "Self Served",
"order": 2
},
{
"name": "managed_services",
"id": 2,
"label": "Managed Services ",
"order": 1
},
{
"name": "app_users",
"id": 3,
"label": "App Users",
"order": 3
},
{
"name": "advertisers",
"id": 4,
"label": "Advertisers",
"order": 4
},
{
"name": "workspaces",
"id": 5,
"label": "Workspaces",
"order": 5
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
}
function CustomerType(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/customer-type',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Customer Payment Type
GET /api/v3/ua/static/customer-payment-typesCustomer Payment Type IDs | |
---|---|
1 | Prepaid |
2 | Postpaid |
- JSON
- TypeScript
{
"success": true,
"data": {
"totalRecords": 2,
"filteredRecords": 2,
"customerPaymentTypes": [
{
"name": "prepaid",
"id": 1,
"label": "PrePaid",
"order": 1
},
{
"name": "postpaid",
"id": 2,
"label": "PostPaid",
"order": 2
}
]
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
totalRecords: number;
filteredRecords: number;
customerPaymentTypes: {
name: string;
id: number;
label: string;
order: number;
}[]
}
}
};
};
};
function getCustomerPaymentType(): Promise < Responses > {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/customer-payment-types',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Customer Account Type
GET /api/v3/ua/static/customer-account-typesCustomer Account Type IDs | |
---|---|
1 | Advertiser |
2 | Workspace |
- JSON
- TypeScript
{
"success": true,
"data": {
"totalRecords": 2,
"filteredRecords": 2,
"customerAccountTypes": [
{
"name": "advertiser",
"id": 1,
"label": "Advertiser",
"order": 1
},
{
"name": "workspace",
"id": 2,
"label": "Workspace",
"order": 2
}
]
}
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
totalRecords: number;
filteredRecords: number;
customerAccountTypes: {
name: string;
id: number;
label: string;
order: number;
}[]
}
};
};
};
}
function getCustomerAccountType(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/customer-account-types',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Customer List Sortable Fields
GET /api/v3/ua/static/customer-list-sortable-fieldSortable Fields | |
---|---|
status | Status |
createdAt | Date of joining |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"label": "Status",
"field": "status",
"order": 1
},
{
"label": "Date of joining",
"field": "createdAt",
"order": 2
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
label: string;
field: string;
order: number
}[];
};
};
};
}
function CustomerListSortableFieldsAPI(): Promise<Responses> {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/customer-list-sortable-field',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Organization Expertise
GET /api/v3/ua/static/organization-expertizeOrganization Expertise IDs | |
---|---|
1 | Account Administration |
2 | Campaign Optimization |
3 | Creative Services |
4 | Audience building |
5 | Inventory Management |
6 | Finance & Accounting |
7 | Campaign Creation |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "account_administration",
"id": 1,
"label": "Account Administration",
"order": 1
},
{
"name": "campaign_optimization",
"id": 2,
"label": "Campaign Optimization",
"order": 2
},
{
"name": "creative_serivces",
"id": 3,
"label": "Creative Services",
"order": 3
},
{
"name": "audience_building",
"id": 4,
"label": "Audience Building",
"order": 4
},
{
"name": "inventory_management",
"id": 5,
"label": "Inventory Management",
"order": 5
},
{
"name": "finance_and_accounting",
"id": 6,
"label": "Finance & Accounting",
"order": 6
},
{
"name": "campaign_creation",
"id": 7,
"label": "Campaign Creation",
"order": 7
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
};
function OrganizationExpertize(): Promise < Responses > {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/organization-expertize',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Company Size
GET /api/v3/ua/static/company-sizeCompany Size IDs | |
---|---|
1 | 1-10 employees |
2 | 11-50 employees |
3 | 51-200 employees |
4 | 201-500 employees |
5 | 501-1000 employees |
6 | 1001-5000 employees |
7 | 5000+ employees |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "1_10",
"id": 1,
"label": "1-10",
"order": 1
},
{
"name": "11_50",
"id": 2,
"label": "11-50",
"order": 2
},
{
"name": "51_200",
"id": 3,
"label": "51-200",
"order": 3
},
{
"name": "201_500",
"id": 4,
"label": "201-500",
"order": 4
},
{
"name": "501_1000",
"id": 5,
"label": "501-1000",
"order": 5
},
{
"name": "1001_5000",
"id": 6,
"label": "1001-5000",
"order": 6
},
{
"name": "5000+",
"id": 7,
"label": "5000+",
"order": 7
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
};
function Companysize(): Promise < Responses > {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/company-size',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Industries
GET /api/v3/ua/static/industries- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "accounting",
"id": 1,
"label": "Accounting ",
"order": 1
},
{
"name": "airlines/aviation",
"id": 2,
"label": "Airlines/Aviation",
"order": 2
},
{
"name": "alternative_dispute_resolution",
"id": 3,
"label": "Alternative Dispute Resolution",
"order": 3
},
{
"name": "alternative_medicine",
"id": 4,
"label": "Alternative Medicine",
"order": 4
},
{
"name": "animation",
"id": 5,
"label": "Animation",
"order": 5
},
{
"name": "apparel/fashion",
"id": 6,
"label": "Apparel/Fashion",
"order": 6
},
{
"name": "architecture/planning",
"id": 7,
"label": "Architecture/Planning",
"order": 7
},
{
"name": "arts/crafts",
"id": 8,
"label": "Arts/Crafts",
"order": 8
},
{
"name": "automotive",
"id": 9,
"label": "Automotive",
"order": 9
},
{
"name": "aviation/aerospace",
"id": 10,
"label": "Aviation/Aerospace",
"order": 10
},
{
"name": "banking/mortgage",
"id": 11,
"label": "Banking/Mortgage",
"order": 11
},
{
"name": "biotechnology/greentech",
"id": 12,
"label": "Biotechnology/Greentech",
"order": 12
},
{
"name": "broadcast_media",
"id": 13,
"label": "Broadcast Media",
"order": 13
},
{
"name": "building_materials",
"id": 14,
"label": "Building Materials",
"order": 14
},
{
"name": "business_supplies/equipment",
"id": 15,
"label": "Business Supplies/Equipment",
"order": 15
},
{
"name": "capital_markets/hedge_fund/private_equity",
"id": 16,
"label": "Capital Markets/Hedge Fund/Private Equity",
"order": 16
},
{
"name": "chemicals",
"id": 17,
"label": "Chemicals",
"order": 17
},
{
"name": "civic/social_organization",
"id": 18,
"label": "Civic/Social Organization",
"order": 18
},
{
"name": "civil_engineering",
"id": 19,
"label": "Civil Engineering",
"order": 19
},
{
"name": "commercial_real_estate",
"id": 20,
"label": "Commercial Real Estate",
"order": 20
},
{
"name": "computer_games",
"id": 21,
"label": "Computer Games",
"order": 21
},
{
"name": "computer_hardware",
"id": 22,
"label": "Computer Hardware",
"order": 22
},
{
"name": "computer_networking",
"id": 23,
"label": "Computer Networking",
"order": 23
},
{
"name": "computer_software/engineering",
"id": 24,
"label": "Computer Software/Engineering",
"order": 24
},
{
"name": "computer/network_security",
"id": 25,
"label": "Computer/Network Security",
"order": 25
},
{
"name": "construction",
"id": 26,
"label": "Construction",
"order": 26
},
{
"name": "consumer_electronics",
"id": 27,
"label": "Consumer Electronics",
"order": 27
},
{
"name": "consumer_goods",
"id": 28,
"label": "Consumer Goods",
"order": 28
},
{
"name": "consumer_services",
"id": 29,
"label": "Consumer Services",
"order": 29
},
{
"name": "cosmetics",
"id": 30,
"label": "Cosmetics",
"order": 30
},
{
"name": "dairy",
"id": 31,
"label": "Dairy",
"order": 31
},
{
"name": "defense/space",
"id": 32,
"label": "Defense/Space",
"order": 32
},
{
"name": "design",
"id": 33,
"label": "Design",
"order": 33
},
{
"name": "e-learning",
"id": 34,
"label": "E-Learning",
"order": 34
},
{
"name": "education_management",
"id": 35,
"label": "Education Management",
"order": 35
},
{
"name": "electrical/electronic_manufacturing",
"id": 36,
"label": "Electrical/Electronic Manufacturing",
"order": 36
},
{
"name": "entertainment/movie_production",
"id": 37,
"label": "Entertainment/Movie Production",
"order": 37
},
{
"name": "environmental_services",
"id": 38,
"label": "Environmental Services",
"order": 38
},
{
"name": "events_services",
"id": 39,
"label": "Events Services",
"order": 39
},
{
"name": "executive_office",
"id": 40,
"label": "Executive Office",
"order": 40
},
{
"name": "facilities_services",
"id": 41,
"label": "Facilities Services",
"order": 41
},
{
"name": "farming",
"id": 42,
"label": "Farming",
"order": 42
},
{
"name": "financial_services",
"id": 43,
"label": "Financial Services",
"order": 43
},
{
"name": "fine_art",
"id": 44,
"label": "Fine Art",
"order": 44
},
{
"name": "fishery",
"id": 45,
"label": "Fishery",
"order": 45
},
{
"name": "food_production",
"id": 46,
"label": "Food Production",
"order": 46
},
{
"name": "food/beverages",
"id": 47,
"label": "Food/Beverages",
"order": 47
},
{
"name": "fundraising",
"id": 48,
"label": "Fundraising",
"order": 48
},
{
"name": "furniture",
"id": 49,
"label": "Furniture",
"order": 49
},
{
"name": "gambling/casinos",
"id": 50,
"label": "Gambling/Casinos",
"order": 50
},
{
"name": "glass/ceramics/concrete",
"id": 51,
"label": "Glass/Ceramics/Concrete",
"order": 51
},
{
"name": "government_administration",
"id": 52,
"label": "Government Administration",
"order": 52
},
{
"name": "government_relations",
"id": 53,
"label": "Government Relations",
"order": 53
},
{
"name": "graphic_design/web_design",
"id": 54,
"label": "Graphic Design/Web Design",
"order": 54
},
{
"name": "health/fitness",
"id": 55,
"label": "Health/Fitness",
"order": 55
},
{
"name": "higher_education/acadamia",
"id": 56,
"label": "Higher Education/Acadamia",
"order": 56
},
{
"name": "hospital/health_care",
"id": 57,
"label": "Hospital/Health Care",
"order": 57
},
{
"name": "hospitality",
"id": 58,
"label": "Hospitality",
"order": 58
},
{
"name": "human_resources/hr",
"id": 59,
"label": "Human Resources/HR",
"order": 59
},
{
"name": "import/export",
"id": 60,
"label": "Import/Export",
"order": 60
},
{
"name": "individual/family_services",
"id": 61,
"label": "Individual/Family Services",
"order": 61
},
{
"name": "industrial_automation",
"id": 62,
"label": "Industrial Automation",
"order": 62
},
{
"name": "information_services",
"id": 63,
"label": "Information Services",
"order": 63
},
{
"name": "information_technology/it",
"id": 64,
"label": "Information Technology/IT",
"order": 64
},
{
"name": "insurance",
"id": 65,
"label": "Insurance",
"order": 65
},
{
"name": "international_affairs",
"id": 66,
"label": "International Affairs",
"order": 66
},
{
"name": "international_trade/development",
"id": 67,
"label": "International Trade/Development",
"order": 67
},
{
"name": "internet",
"id": 68,
"label": "Internet",
"order": 68
},
{
"name": "investment_banking/venture",
"id": 69,
"label": "Investment Banking/Venture",
"order": 69
},
{
"name": "investment_management/hedge_fund/private_equity",
"id": 70,
"label": "Investment Management/Hedge Fund/Private Equity",
"order": 70
},
{
"name": "judiciary",
"id": 71,
"label": "Judiciary",
"order": 71
},
{
"name": "law_enforcement",
"id": 72,
"label": "Law Enforcement",
"order": 72
},
{
"name": "law_practice/law_firms",
"id": 73,
"label": "Law Practice/Law Firms",
"order": 73
},
{
"name": "legal_services",
"id": 74,
"label": "Legal Services",
"order": 74
},
{
"name": "legislative_office",
"id": 75,
"label": "Legislative Office",
"order": 75
},
{
"name": "leisure/travel",
"id": 76,
"label": "Leisure/Travel",
"order": 76
},
{
"name": "library",
"id": 77,
"label": "Library",
"order": 77
},
{
"name": "logistics/procurement",
"id": 78,
"label": "Logistics/Procurement",
"order": 78
},
{
"name": "luxury_goods/jewelry",
"id": 79,
"label": "Luxury Goods/Jewelry",
"order": 79
},
{
"name": "machinery",
"id": 80,
"label": "Machinery",
"order": 80
},
{
"name": "management_consulting",
"id": 81,
"label": "Management Consulting",
"order": 81
},
{
"name": "maritime",
"id": 82,
"label": "Maritime",
"order": 82
},
{
"name": "market_research",
"id": 83,
"label": "Market Research",
"order": 83
},
{
"name": "marketing/advertising/sales",
"id": 84,
"label": "Marketing/Advertising/Sales",
"order": 84
},
{
"name": "mechanical_or_industrial_engineering",
"id": 85,
"label": "Mechanical or Industrial Engineering",
"order": 85
},
{
"name": "media_production",
"id": 86,
"label": "Media Production",
"order": 86
},
{
"name": "medical_equipment",
"id": 87,
"label": "Medical Equipment",
"order": 87
},
{
"name": "medical_practice",
"id": 88,
"label": "Medical Practice",
"order": 88
},
{
"name": "mental_health_care",
"id": 89,
"label": "Mental Health Care",
"order": 89
},
{
"name": "military_industry",
"id": 90,
"label": "Military Industry",
"order": 90
},
{
"name": "mining/metals",
"id": 91,
"label": "Mining/Metals",
"order": 91
},
{
"name": "motion_pictures/film",
"id": 92,
"label": "Motion Pictures/Film",
"order": 92
},
{
"name": "museums/institutions",
"id": 93,
"label": "Museums/Institutions",
"order": 93
},
{
"name": "music",
"id": 94,
"label": "Music",
"order": 94
},
{
"name": "nanotechnology",
"id": 95,
"label": "Nanotechnology",
"order": 95
},
{
"name": "newspapers/journalism",
"id": 96,
"label": "Newspapers/Journalism",
"order": 96
},
{
"name": "non-profit/volunteering",
"id": 97,
"label": "Non-Profit/Volunteering",
"order": 97
},
{
"name": "oil/energy/solar/greentech",
"id": 98,
"label": "Oil/Energy/Solar/Greentech",
"order": 98
},
{
"name": "online_publishing",
"id": 99,
"label": "Online Publishing",
"order": 99
},
{
"name": "other_industry",
"id": 100,
"label": "Other Industry",
"order": 100
},
{
"name": "outsourcing/offshoring",
"id": 101,
"label": "Outsourcing/Offshoring",
"order": 101
},
{
"name": "package/freight_delivery",
"id": 102,
"label": "Package/Freight Delivery",
"order": 102
},
{
"name": "packaging/containers",
"id": 103,
"label": "Packaging/Containers",
"order": 103
},
{
"name": "paper/forest_products",
"id": 104,
"label": "Paper/Forest Products",
"order": 104
},
{
"name": "performing_arts",
"id": 105,
"label": "Performing Arts",
"order": 105
},
{
"name": "pharmaceuticals",
"id": 106,
"label": "Pharmaceuticals",
"order": 106
},
{
"name": "philanthropy",
"id": 107,
"label": "Philanthropy",
"order": 107
},
{
"name": "photography",
"id": 108,
"label": "Photography",
"order": 108
},
{
"name": "plastics",
"id": 109,
"label": "Plastics",
"order": 109
},
{
"name": "political_organization",
"id": 110,
"label": "Political Organization",
"order": 110
},
{
"name": "primary/secondary_education",
"id": 111,
"label": "Primary/Secondary Education",
"order": 111
},
{
"name": "printing",
"id": 112,
"label": "Printing",
"order": 112
},
{
"name": "professional_training",
"id": 113,
"label": "Professional Training",
"order": 113
},
{
"name": "program_development",
"id": 114,
"label": "Program Development",
"order": 114
},
{
"name": "public_relations/pr",
"id": 115,
"label": "Public Relations/PR",
"order": 115
},
{
"name": "public_safety",
"id": 116,
"label": "Public Safety",
"order": 116
},
{
"name": "publishing_industry",
"id": 117,
"label": "Publishing Industry",
"order": 117
},
{
"name": "railroad_manufacture",
"id": 118,
"label": "Railroad Manufacture",
"order": 118
},
{
"name": "ranching",
"id": 119,
"label": "Ranching",
"order": 119
},
{
"name": "real_estate/mortgage",
"id": 120,
"label": "Real Estate/Mortgage",
"order": 120
},
{
"name": "recreational_facilities/services",
"id": 121,
"label": "Recreational Facilities/Services",
"order": 121
},
{
"name": "religious_institutions",
"id": 122,
"label": "Religious Institutions",
"order": 122
},
{
"name": "renewables/environment",
"id": 123,
"label": "Renewables/Environment",
"order": 123
},
{
"name": "research_industry",
"id": 124,
"label": "Research Industry",
"order": 124
},
{
"name": "restaurants",
"id": 125,
"label": "Restaurants",
"order": 125
},
{
"name": "retail_industry",
"id": 126,
"label": "Retail Industry",
"order": 126
},
{
"name": "security/investigations",
"id": 127,
"label": "Security/Investigations",
"order": 127
},
{
"name": "semiconductors",
"id": 128,
"label": "Semiconductors",
"order": 128
},
{
"name": "shipbuilding",
"id": 129,
"label": "Shipbuilding",
"order": 129
},
{
"name": "sporting_goods",
"id": 130,
"label": "Sporting Goods",
"order": 130
},
{
"name": "sports",
"id": 131,
"label": "Sports",
"order": 131
},
{
"name": "staffing/recruiting",
"id": 132,
"label": "Staffing/Recruiting",
"order": 132
},
{
"name": "supermarkets",
"id": 133,
"label": "Supermarkets",
"order": 133
},
{
"name": "telecommunications",
"id": 134,
"label": "Telecommunications",
"order": 134
},
{
"name": "textiles",
"id": 135,
"label": "Textiles",
"order": 135
},
{
"name": "think_tanks",
"id": 136,
"label": "Think Tanks",
"order": 136
},
{
"name": "tobacco",
"id": 137,
"label": "Tobacco",
"order": 137
},
{
"name": "translation/localization",
"id": 138,
"label": "Translation/Localization",
"order": 138
},
{
"name": "transportation",
"id": 139,
"label": "Transportation",
"order": 139
},
{
"name": "utilities",
"id": 140,
"label": "Utilities",
"order": 140
},
{
"name": "venture_capital/vc",
"id": 141,
"label": "Venture Capital/VC",
"order": 141
},
{
"name": "veterinary",
"id": 142,
"label": "Veterinary",
"order": 142
},
{
"name": "warehousing",
"id": 143,
"label": "Warehousing",
"order": 143
},
{
"name": "wholesale",
"id": 144,
"label": "Wholesale",
"order": 144
},
{
"name": "wine/spirits",
"id": 145,
"label": "Wine/Spirits",
"order": 145
},
{
"name": "wireless",
"id": 146,
"label": "Wireless",
"order": 146
},
{
"name": "writing/editing",
"id": 147,
"label": "Writing/Editing",
"order": 147
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
};
function Industries(): Promise < Responses > {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/industries',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Media Budget
GET /api/v3/ua/static/media-budgetMedia Budget IDs | |
---|---|
1 | < $50,000 |
2 | $50,000 - $100,000 |
3 | $100,000 - $500,000 |
4 | $500,000 - $1,000,000 |
5 | $1,000,000 - $10,000,000 |
6 | > $10,000,000 |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "<50,000",
"id": 1,
"label": "< $50,000",
"order": 1
},
{
"name": "50,000_100,000",
"id": 2,
"label": "$50,000 - $100,000",
"order": 2
},
{
"name": "100,000_500,000",
"id": 3,
"label": "$100,000 - $500,000",
"order": 3
},
{
"name": "500,000_1,000,000",
"id": 4,
"label": "$500,000 - $1,000,000",
"order": 4
},
{
"name": "1,000,000_10,000,000",
"id": 5,
"label": "$1,000,000 - $10,000,000",
"order": 5
},
{
"name": ">10,000,000",
"id": 6,
"label": "> $10,000,000",
"order": 6
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
}[];
};
};
};
};
function Mediabudget(): Promise < Responses > {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/media-budget',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}
Verticals
GET /api/v3/ua/static/VerticalsVerticals IDs | |
---|---|
1 Political | This caters to advertisers from the political domain targeting users for for issue advocacy, persuasion, event promotion, fundraising and other type of campaigns |
2 Healthcare | This caters to advertisers from domains such as pharmaceutical and medical equipment manufacturers targeting healthcare professionals |
3 Specialty | This caters to advertisers from niche domains such as automobiles, finance, retail, travel, B2B and others |
- JSON
- TypeScript
{
"success": true,
"data": [
{
"name": "political",
"id": 1,
"label": "Political",
"order": 1,
"description": "This caters to advertisers from the political domain targeting users for for issue advocacy, persuasion, event promotion, fundraising and other type of campaigns"
},
{
"name": "healthcare",
"id": 2,
"label": "Healthcare",
"order": 2,
"description": "This caters to advertisers from domains such as pharmaceutical and medical equipment manufacturers targeting healthcare professionals."
},
{
"name": "specialty",
"id": 3,
"label": "Specialty",
"order": 11,
"description": "This caters to advertisers from niche domains such as automobiles, finance, retail, travel, B2B and others."
}
]
}
See TypeScript Prerequisites page for usage.
import {
getInstance
} from "prerequisites"
const axios = getInstance();
interface Responses {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
success: boolean;
data: {
name: string;
id: number;
label: string;
order: number;
description: string;
}[];
};
};
};
};
function getVerticals(): Promise < Responses > {
const options = {
method: 'GET',
url: 'https://app.iqm.com/api/v3/ua/static/verticals',
};
return axios.request(options).then(({ data }: { data: Responses }) => data);
}