Qualify opportunities
const url = 'https://respondent.rex.dynata.com/qualify';const options = { method: 'POST', headers: { 'dynata-expiration': '2026-04-15T12:00:00Z', 'dynata-access-key': 'ABCD1234', 'dynata-signature': 'c156e91013eb715edb2b07df5491497a807206b1796bb7d031505107a9dbdcdf', 'Content-Type': 'application/json' }, body: '{"respondent_id":"user1234","group_ids":[12345678,91011121],"fingerprinting_data":{"width":600,"height":800,"ip_address":"1.1.1.1","http_headers":{"additionalProperty":["example"]},"device_type":"DESKTOP"}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://respondent.rex.dynata.com/qualify \ --header 'Content-Type: application/json' \ --header 'dynata-access-key: ABCD1234' \ --header 'dynata-expiration: 2026-04-15T12:00:00Z' \ --header 'dynata-signature: c156e91013eb715edb2b07df5491497a807206b1796bb7d031505107a9dbdcdf' \ --data '{ "respondent_id": "user1234", "group_ids": [ 12345678, 91011121 ], "fingerprinting_data": { "width": 600, "height": 800, "ip_address": "1.1.1.1", "http_headers": { "additionalProperty": [ "example" ] }, "device_type": "DESKTOP" } }'Please Note
This endpoint will only return details for up to 10
group_idsper request. It will error out if more than 10group_idsare defined. Only ipv4 format is accepted for ip addresses.
The /qualify endpoint will verify if a respondent is eligible to participate in each of the requested group_ids. It will check the filter and quota criteria, as well as run a duplication check across all of Dynata’s supply sources using the provided fingerprinting_data.
Learn more here.
Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”RFC3339 timestamp indicating request expiration
Dynata provided access key
Example
ABCD1234Signature created using the dynata methodology
Example
c156e91013eb715edb2b07df5491497a807206b1796bb7d031505107a9dbdcdfRequest Body
Section titled “Request Body”object
Partner’s respondent identifier. Accepts 100 characters, 3-byte chars.
Opportunity group identifier
object
Device width
Device height
Respondent’s ipv4 address (currently ipv6 isn’t supported)
object
Device form factor
Responses
Section titled “Responses”Qualified quota check
object
Opportunity group identifier
Based on known respondent attributes and fingerprinting_data, the group_id is a potential match. See exact_match for further details.
Inbound, entry URL
If true, the group_id is a full match. If false, additional profiling will be required to collect the missing respondent attributes.
Average length of interview in minutes based on prior completes.
Dynata recommends this as a high priority opportunity.
object
Examples
[ { "group_id": 12345678, "qualified": true, "start_url": "https://respondent.qa-rex.dynata.com/start?ctx=abc123", "exact_match": false, "actual_length_of_interview": null, "priority": false, "categories": [ 1234, 4321 ] }][ { "group_id": 12345678, "qualified": false, "start_url": null, "exact_match": null, "actual_length_of_interview": null, "priority": null, "dispositions": [ { "disposition": 4, "status": 0 } ] }]Bad request
object
Examplegenerated
{ "message": "example"}Invalid credentials
object
Examplegenerated
{ "message": "example"}Unauthorized
object
Examplegenerated
{ "message": "example"}Internal server error
object
Examplegenerated
{ "message": "example"}