Skip to main content
Search for licensable rights across a brand agent’s roster. Returns matches with pricing options. Discovery is natural-language-first — no taxonomy, LLMs interpret intent from the query.

Schema

Response time

Typically 2-10 seconds. The agent may perform compatibility checks against the buyer’s brand.json, which adds latency.

Quick start

{
  "query": "Dutch athlete for restaurant brand in Amsterdam, budget 400 EUR/month",
  "uses": ["likeness", "voice"],
  "buyer_brand": { "domain": "bistro-oranje.nl" },
  "include_excluded": true
}

Parameters

Request

FieldTypeRequiredDescription
querystringYesNatural language description of desired rights. Include budget, geography, use case.
usesstring[]YesRights uses being requested (likeness, voice, name, endorsement, etc.)
buyer_brandbrand-refNoBuyer’s brand. Agent fetches buyer’s brand.json for compatibility filtering.
countriesstring[]NoCountries where rights are needed (ISO 3166-1 alpha-2)
brand_idstringNoSearch within a specific brand’s rights
right_typestringNoFilter by rights type (talent, music, stock_media, etc.)
include_excludedbooleanNoInclude filtered-out results in the excluded array with reasons. Defaults to false.
paginationobjectNoPagination parameters for large result sets

Response

FieldTypeDescription
rightsobject[]Matching rights with pricing, ranked by relevance
rights[].rights_idstringIdentifier for this offering — referenced in acquire_rights
rights[].brand_idstringBrand identifier
rights[].namestringDisplay name
rights[].match_scorenumberRelevance score (0-1)
rights[].match_reasonsstring[]Why this result matches
rights[].available_usesstring[]Rights uses available
rights[].countriesstring[]Countries where available
rights[].excluded_countriesstring[]Countries excluded from availability
rights[].exclusivity_statusobjectCurrent exclusivity availability (available, existing_exclusives)
rights[].pricing_optionsobject[]Pricing options (see below)
rights[].descriptionstringDescription of the rights subject
rights[].right_typestringType of rights (talent, music, stock_media, etc.)
rights[].content_restrictionsstring[]Content restrictions or approval requirements
rights[].preview_assetsobject[]Preview-only assets for evaluation
excludedobject[]Filtered results with reasons (only when include_excluded: true)
excluded[].suggestionsstring[]Actionable alternatives if the exclusion is fixable. Absent if the exclusion is final.

Rights pricing options

Pricing options are specific to rights — they include period, impression caps, overage rates, and use-type scoping:
FieldTypeRequiredDescription
pricing_option_idstringYesReferenced in acquire_rights and report_usage
modelstringYesPricing model (cpm, flat_rate, etc.)
pricenumberYesPrice amount
currencystringYesISO 4217 currency code
usesstring[]YesRights uses covered by this option
periodstringNoBilling period (monthly, quarterly, etc.)
impression_capintegerNoMax impressions included per period
overage_cpmnumberNoCPM for impressions exceeding the cap

Composite rights

Request multiple uses (e.g., ["likeness", "voice"]) and the agent bundles them into a single pricing option. One call, one price.

Buyer brand filtering

When buyer_brand is provided, the agent fetches the buyer’s brand.json and uses it for compatibility filtering. For example, a vegetarian athlete would be excluded from steakhouse campaigns. Set include_excluded: true to see filtered results with reasons.

Music licensing and DDEX

This section is for implementers building music rights agents. If you’re a buyer using the brand protocol, the standard get_rights and acquire_rights flow works identically for music — you don’t need to know DDEX.
The rights protocol supports music licensing alongside talent rights. Music sync platforms implement get_rights with right_type: "music" and return pricing options for sync/background use. AdCP’s rights model draws from the DDEX Party Information Exchange (PIE) pattern — each get_rights response is a stateless snapshot of current availability rather than a delta against previous state. Key mappings for implementers familiar with DDEX:
AdCP conceptDDEX equivalentNotes
rights_idISRC / ISWCAdCP uses agent-scoped IDs; include standard identifiers in ext
available_usesUse types (sync, background, etc.)AdCP uses right-use enum values
pricing_optionsLicense offersSame concept, different structure
content_restrictionsTerritorial/usage restrictionsAdCP is less granular than DDEX
acquire_rightsLicense grantReturns generation credentials for AI music production
Music rights agents should include standard identifiers (ISRC, ISWC) in the ext field of rights responses for interoperability with existing music licensing systems.

Next steps

After selecting a rights offering:
  1. Call get_brand_identity for the selected brand’s full identity data
  2. Call acquire_rights with the rights_id and pricing_option_id