Attribute catalog with pricing
const url = 'https://dev-api.infiniteaudience.ai/v1/catalog/fields';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://dev-api.infiniteaudience.ai/v1/catalog/fields \ --header 'Authorization: Bearer <token>'Returns the list of available enrichment attributes — every attribute with product_usage containing audience (the definition of a valid user-facing IAG attribute) — with coverage rates and per-attribute pricing, plus the single system delivery template. Use this to browse available attributes before creating a delivery.
Requires ‘discovery’ scope.
Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”Attribute catalog.
object
Available enrichment attributes from the column registry.
object
Programmatic attribute name to use in field_list.
Human-readable display label.
BigQuery data type (e.g. STRING, INT64, FLOAT64).
Fraction of records that have a value for this attribute (0.0–1.0).
Always exactly one entry — the Standard IAG template, usable as a template_id shortcut. Its fields is the full audience attribute set above, resolved live from the registry (not a hardcoded list).
object
ID to pass as template_id in delivery or quote requests.
Human-readable template name.
Attribute names included in this template.
Effective per-record pricing for the calling org.
object
Base cost per record (USD).
Cost per resolved record for matched audiences (USD).
Cost per resolved record for synchronous micro-batch matching (USD).
Additional per-record cost for specific attributes (field_name → USD).
object
Per-record surcharge by destination (destination → USD).
object
Contract usage-rate discount in basis points; commitment charges and minimums are unchanged.
Example
{ "templates": [ { "template_id": "standard_iag", "label": "Standard IAG", "fields": [ "age", "gender", "estimated_household_income" ] } ]}Missing or invalid Bearer token. Obtain one via POST /v1/auth/token. When a token was supplied but rejected, code distinguishes TOKEN_EXPIRED (the token’s lifetime has passed — request a new one via POST /v1/auth/token and retry) from TOKEN_INVALID (malformed or revoked — re-authenticate).
object
Stable machine-readable error code (e.g. INVALID_STATUS_TRANSITION, BILLING_INSUFFICIENT_BALANCE). Always present.
Human-readable explanation of the error.
Alternate machine-readable code — present on some endpoints as an alias for error for backward compatibility.
Opaque support/debug identifier when available.
Examples
{ "error": "Unauthorized: Missing or invalid Authorization header"}{ "error": "Unauthorized", "code": "TOKEN_EXPIRED", "message": "Your session has expired. Please sign in again."}Token is valid but lacks the required scope for this endpoint. Check the endpoint description for the required scope (discovery, purchase, or account).
object
Stable machine-readable error code (e.g. INVALID_STATUS_TRANSITION, BILLING_INSUFFICIENT_BALANCE). Always present.
Human-readable explanation of the error.
Alternate machine-readable code — present on some endpoints as an alias for error for backward compatibility.
Opaque support/debug identifier when available.
Examples
{ "error": "SCOPE_REQUIRED", "message": "This endpoint requires the purchase scope."}