Introduction
Welcome to the official engineering documentation of Audience-Align
Audience Align boasts one of the strongest sample networks in the industry and has been delivering high-quality managed services to its clients for nearly three years.
To further streamline the experience, we now offer automated access via our RESTful API, allowing seamless integration for real-time data collection.
With just a few inputs such as demographics and quotas, buyers can easily connect with millions of respondents worldwide, whether targeting broad audiences or niche segments.
We kindly request our partners to be practical and fair with CPI expectations, so we can jointly safeguard the health of the data collection ecosystem.
Demand Integration API
The Demand API provides a RESTful interface that enables partners to build technical integrations within their own systems, allowing seamless and fully automated access to our platform for purchasing online sample.
Getting Started
To use the Demand API, client must first register for API access and authentication credentials. Once authenticated, they can utilize the provided endpoints and data payloads to programmatically submit their project plans.
How it works?
To begin the process, create a new survey by calling Create survey endpoint.
Get Token
endpoints/getHashData
This request will create a new project using the provided details, such as project name, project name, number of completes, and project status. Upon success, it will return the details of the newly created project.
Request
REQUEST BODY
url
Required
The url of the request.
Example: https://api.audience-align.com/v1/endpoints/get_master_data
key
Required
The user's unique identifier.
Example: C2967fc7bc3df6b4a12f1e61efcb827a111
REQUEST BODY JSON
application/json
RESPONSE BODY
Get existing Surveys
endpoints/get_survey?hash={hashdata}&project_id={project_id}
Fetch a paginated list of projects for a specific account. Each individual project contains details such as the project name, last activity and statistics.
Request
QUERY PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
page
Optional
The Pagination Number.
Example: page=15
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
X-Project-Id
Optional
The survey's unique identifier.
Example: oE11qxIUwU9mvS1M
RESPONSE BODY
Create Survey
endpoints/create_survey?hash={hashdata}
This API call creates a new survey.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_name
string
Required
The name of the project to be created.
Example: "My New Project"
country
string
Required
country id for the project.
Example: "229"
language
string
Required
language id for the project.
Example: "229"
live_link
string
Required
The live url of the project.
Example: "https://www.google.com?uid=[identifier]"
test_link
string
Required
The test url of the project.
Example: "https://www.google.com?uid=[identifier]"
audience_type
string
Required
The audience type of the project.
Allowed values: "B2B =1","B2C =2","Health Care =3"
Example: "1"
pii_collection
string
Required
The pii collection of the project.
Example: "No"
Allowed values: "Yes", "No"
ir
Numeric
Required
The incidence rate of the project.
Example: "20"
loi
Numeric
Required
The length of interview of the project.
Example: "20"
cpi
Numeric
Required
The cost per interview of the project.
If the audience type is B2B, the minimum CPI should be 6; if it is B2C, the minimum CPI should be 1.75.
Example: "12"
complete_needed
string
Required
The survey complete needed numbers.
Example: "100"
project_start_date
string
Required
The start date of the project.
Example: "2025-06-25"
Start date must be in future or equal to current date.
project_end_date
string
End date must be in future or greater than current date.
RequiredThe end date of the project.
Example: "2025-10-25"
qualifications
array
Qualifications for the project.
Example: " "qualifications": [
{
"qualification_code": 43,
"condition_codes": [1,2]
},
{
"qualification_code": 45,
"zipcodes": [200301,200302]
}
]"
quota
array
The quota for the Qualifications.
Example: "quota": [
{
"qualification_code": 43,
"criteria": [
{
"required_count": 100,
"condition_codes": 1
}
]
}
]
REQUEST BODY JSON
application/json
RESPONSE BODY
Update Survey
endpoints/update_survey?hash={hashdata}
This API call is used to update the survey details.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The project_id of the survey when created.
Example: "My New Project"
loi
string
Optional loi for the project.
Example: "25"
cpi
string
Optional cpi for the project.
Example: "25"
REQUEST BODY JSON
application/json
RESPONSE BODY
Update Survey Status
endpoints/survey_status?hash={hashdata}
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
status
string
The initial status of the project.
Example: "2"
Allowed values: "Active = 1", "Inactive = 2", "Completed = 4", "Closed = 5"
REQUEST BODY JSON
application/json
RESPONSE BODY
Update Survey Link
endpoints/update_surveylink?hash={hashdata}
This API call is used to update the survey links.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The project_id of the survey when created
Example: 1tdWUlOYUdyedRUa
live_link
string
Live_link for the project with identifier.
Example: "https://www.google.com?uid=[identifier]"
test_link
string
Test_link for the project with identifier.
Example: "https://www.google2.com?uid=[identifier]"
REQUEST BODY JSON
application/json
RESPONSE BODY
Get All Qualifications
endpoints/qualifications?hash={hashdata}
Fetch a paginated list of qualifications for a specific survey. Each individual qualification contains details such as the qualification_code, title, text and conditions etc.
Request
QUERY PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
X-Project-Id
Required
The survey's unique identifier.
Example: oE11qxIUwU9mvS1M
RESPONSE BODY
Get Qualification
endpoints/qualifications?hash={hashdata}
Fetch a paginated list of qualifications for a specific survey Qualification id. Qualification contains details such as the qualification_code, title, text and conditions etc.
Request
QUERY PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
X-Project-Id
Required
The survey's unique identifier.
Example: oE11qxIUwU9mvS1M
X-Qualification-Id
The survey's unique identifier.
Example: 123
RESPONSE BODY
Add Qualification
endpoints/save_qualification?hash={hashdata}
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
qualifications
string
The qualifications for the survey.
Example:
"qualifications": [
{
"qualification_code": 42,
"range_sets": [
{
"from": 35,
"to": 40
},
{
"from": 45,
"to": 50
}
]
},
{
"qualification_code": 43,
"condition_codes": [
1
]
},
{
"qualification_code": 45,
"zipcodes": [
126535,
283733
]
}
]
Allowed qualification types: "range_sets", "condition_codes", "zip_codes"
REQUEST BODY JSON
application/json
RESPONSE BODY
Update Qualification
endpoints/update_qualification?hash={hashdata}
This API call is used to update the targeting criteria for an existing qualification in an existing survey.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
qualifications
string
The qualifications for the survey.
Example:
"qualifications": [
{
"qualification_code": 43501,
"condition_codes": [1]
},
{
"qualification_code": 43,
"condition_codes": [1,2]
},
{
"qualification_code": 61076,
"condition_codes":[16,17,18,19,20]
},
{
"qualification_code": 42,
"range_sets": [
{
"from": 25,
"to": 48
}
]
}
]
Allowed single qualification type from these types: "range_sets", "condition_codes", "zip_codes"
REQUEST BODY JSON
application/json
RESPONSE BODY
Delete Qualification
endpoints/delete_qualification?hash={hashdata}
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
qualification_code
string
The qualification code used in survey.
Example:
"qualification_code": "42"
Allowed qualification types: "range_sets", "condition_codes", "zip_codes"
REQUEST BODY JSON
application/json
RESPONSE BODY
Get Quota
endpoints/qualifications_quota?hash={hashdata}
Fetch a paginated list of qualification's quota data for a specific survey. Each individual qualification quota contains details such as the qualification_code, criteria, condition_codes and required_count.
Quota Handling
- If a quota is not explicitly defined for an option, it will default to the overall complete goal.
- To close a specific quota, define it using the corresponding qualification.
- Audience Align uses a soft quota structure.
Request
QUERY PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
X-Project-Id
Required
The survey's unique identifier.
Example: oE11qxIUwU9mvS1M
RESPONSE BODY
Get Quota By Qualification ID
endpoints/qualifications_quota?hash={hashdata}
Fetch a paginated list of qualification's quota data for a specific survey qualification id. Each individual qualification quota contains details such as the qualification_code, criteria, condition_codes and required_count.
Request
QUERY PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
X-Project-Id
Required
The survey's unique identifier.
Example: oE11qxIUwU9mvS1M
X-Qualification-Id
The survey's unique identifier.
Example: 123
RESPONSE BODY
Add Qouta
endpoints/save_quota?hash={hashdata}
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
quota
array
The quota for the survey qualifications .
Example:
"quota": [
{
"qualification_code": 43,
"criteria": [
{
"required_count": 100,
"condition_codes": 1
}
]
},
{
"qualification_code": 43,
"criteria": [
{
"required_count": 100,
"condition_codes": 1
}
]
},
{
"qualification_code": 45,
"criteria": [
{
"required_count": 120,
"condition_codes":[200301,200302]
}
]
},
{
"qualification_code": 42,
"criteria": [
{
"required_count": 120,
"condition_codes": "20-24"
}
]
}
]
REQUEST BODY JSON
application/json
RESPONSE BODY
Get Quota Interlocking
endpoints/get_interlocking?hash={hashdata}
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
REQUEST BODY JSON
application/json
RESPONSE BODY
Create Quota Interlocking
endpoints/create_interlocking?hash={hashdata}
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
qualification_code
string
qualification_code must less than or eqaul to 4 in survey.
The maximum allowed interlocking combinations are 200.
Example:
"qualification_code": [43,42]
REQUEST BODY JSON
application/json
RESPONSE BODY
Update Quota Interlocking
endpoints/update_interlocking?hash={hashdata}
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY
project_id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
combinations
array
required_count must greater than 0 and less than or equal to 10000.
Example:
"combinations":[
{
"id": "Aud06888d1662ab50",
"required_count": 21
}
]
REQUEST BODY JSON
application/json
RESPONSE BODY
Get Project Reconciliation
reconciliations/reconciliation?hash={hashdata}
Once reconciliations are approved by Audience Align, this endpoint retrieves the list of approved completed UIDs along with their total count.
Request
QUERY PARAMETER
hash
string
Required
A unique identifier included in the URL as a query parameter. This value is typically used to retrieve specific data or validate access to a resource.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
The client's unique ID.
Example: 2b60bC8284bcdaA50fd7d116Bb8e5b6
X-Project-Id
string
Required
The character string representing a unique project ID.
Example: QSnoUStJDXiANB
RESPONSE BODY
Submit Project Reconciliation
reconciliations/submit_reconciliation?hash={hashdata}
Use this endpoint to submit the list of completed UIDs that the client has approved for reconciliation on the project.
Request
QUERY PARAMETER
hash
string
Required
A unique identifier included in the URL as a query parameter. This value is typically used to retrieve specific data or validate access to a resource.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
The client's unique ID.
Example: 2b60bC8284bcdaA50fd7d116Bb8e5b6
X-Project-Id
string
Required
The character string representing a unique project ID.
Example: QSnoUStJDXiANB
Content-Type
string
Required
The content type of the request body.
Example: application/json
REQUEST BODY
contact_email
string
Required
An email address must be provided in the request to facilitate communication regarding the reconciliation process.
Example: noreply@example.com
request_uids
array
Required
A list of respondent UIDs included in the reconciliation request.
REQUEST SAMPLE
application/json
RESPONSE BODY
Get Country Data
endpoints/get_master_data?type=country&hash={hashdata}
This API call returns a list of all the countries along with their other attributes, that Audience Align supports via API. For any non-conventional markets that you are unable to find, please reach out to bids@audience-align.com
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
RESPONSE BODY
Get Language Data
endpoints/get_master_data?type=language&hash={hashdata}
This API calls return a list of all the languages that are supported to launch a campaign.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
RESPONSE BODY
Get Qualifications
endpoints/get_qualification_master?hash={hashdata}
This API calls returns a list of all the standard qualifications of a specific country and language combination.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
REQUEST BODY JSON
application/json
RESPONSE BODY
Get Study Category
endpoints/get_master_data?type=study_category&hash={hashdata}
This API calls return a list of all the study categories that are supported to launch a campaign.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
RESPONSE BODY
Get Vertical
endpoints/get_master_data?type=vertical&hash={hashdata}
This API calls return a list of all the verticals that are supported to launch a campaign.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: 1tdWUlOYUdyedRUa
RESPONSE BODY
Get Exclusion
endpoints/exclusion?hash={hashdata}
Use this endpoint to retrieve the list of Survey IDs from which the specified Survey is excluded.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: npgdxyy1uSJJVt3i
X-Project-Id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
RESPONSE BODY
Save Exclusion
endpoints/exclusion?hash={hashdata}
Use this endpoint to exclude completes from a specified survey ID from participating in the survey.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: npgdxy3muSJJVt1i
X-Project-Id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
REQUEST BODY
exclusion_project
array
The project ids which you want to add in exclusion .
Example:
{
"exclusion_project": ["oE40ydzSJHElV35Y","oE40vSBJl34s0V7E"]
}
Project id should be: "complete or closed"
REQUEST BODY JSON
application/json
RESPONSE BODY
Delete Exclusion
endpoints/exclusion?hash={hashdata}
This endpoint is used to remove an existing exclusion from the specified Survey.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: npgdxyy1uSJJVt3i
X-Project-Id
string
Required
The Survey project id.
Example: "oE45MBhrWGowXuLE"
RESPONSE BODY
Get Feasibility
endpoints/getFeasibility?hash={hashdata}
Use this endpoint to retrieve the feasibility.
Request
Query PARAMETERS
hash
Required
The url's unique identifier.
Example: 24e56c4435cb18503c7cb2da2b857c9df0daadcd4c34cdb8cbb949b4c4d83af9
HEADER PARAMETERS
X-Client-Id
string
Required
Specifies the X-Client-Id to use for the request.
Example: npgdxyy1uSJJVt3i
REQUEST BODY
locale
string
Required
Locale code with language and country.
Example: "eng_us"
incidence_rate
number
Required
Percentage of respondents that will qualify for the study after targeting using standard qualifications.
Minimum : "0"
Maximum : "1"
Example: "0.5"
length_of_interview
integer
Required
Expected time to finish the target group in minutes.
Minimum : "1"
Maximum : "45"
Example: "20"
filling_goal
integer
Required
Indicates the new value for filling goal.
Minimum : "1"
Maximum : "10000"
Example: "40"
start_date
stringThe start date and time of the target group. Must be earlier than the 'end_date'.
Example: "2025-01-01T23:00:00.000Z"
end_date
stringThe end date and time of the target group. Must be later than the 'start_date'.
Example: "2025-01-01T23:00:00.000Z"
category
stringExample: "B2B"
profiles
arrayprofiles
array
The profiles for the feasibility.
Example:
"profiles": [
{
"question_id": 43,
"conditions": {
"data": [
{
"option": "1"
},
{
"option": "2"
}
]
}
},
{
"question_id": 42,
"conditions": {
"data": [
{
"min": 18,
"max": 50
},
{
"min": 51,
"max": 99
}
]
}
},
{
"question_id": 45,
"conditions": {
"data": [
{
"zip_codes": [
"90001",
"90002",
"90003",
"90004"
],
"allow_all_zip": false
}
]
}
}
]
REQUEST BODY JSON
application/json