Skip to content
Product Documentation

Content API Query Reference

The Content API is the preferred mechanism for querying reader-facing data in Arc XP. The Content API returns a “denormalized” view of documents created in Arc XP applications. For example, stories saved in Composer contain metadata for all embedded photos from Photo Center when viewed in Content API.

The Content API offers parameterized filtering that enables you to serve specific slices of content, such as the top 20 most recently published stories with the “news” tag. Content API is not intended to serve as a site search replacement. We encourage you to use Queryly to power open-ended site search experiences. If you attempt to leverage the Content API for open-ended queries, you can quickly reach your rate limit and begin seeing 429 HTTP error codes.

Do not take direct input from URLs, query parameters, or other input fields on public sites and directly map that to queries in the Content API.

Query Languages

Queries in the Content API are powered by Opensearch 1.3.

To query Content API, you can use either the Simple Query String Syntax by including your query as q parameter or the extended Query DSL by including your query JSON as the body query parameter. In both cases, you must URL encode your queries and include them as a query parameter in a GET request.

Unsupported Queries

Some queries supported in Elasticsearch’s Query DSL are more taxing on Content API than others. For this reason, Content API does not support aggregation queries in Content API’s body parameter. Content API rejects any Query DSL sent using an aggregation query and returns a 400 error. Aggregation queries are denoted in Elasticsearch Query DSL as aggregations or aggs.

Searchable Text Fields

Some ANS text fields are analyzed. An analyzed field is available for full-text search. An analyzed field is tokenized, which means that the value of the field ise broken into distinct words so that each word can be matched on individually. For example, if the value of a field is “the quick brown fox jumps over the lazy dog” then it is possible to match on that field by just searching for “fox” or “dog.”

The list of fields analyzed by Content API is:

  • subtype
  • language
  • copyright
  • location
  • address.post_office_box
  • address.extended_address
  • address.street_address
  • address.locality
  • address.region
  • address.postal_code
  • address.country_name
  • editor_note
  • status
  • headlines.basic
  • subheadlines.basic
  • credits.by.name
  • credits.by.org
  • credits.by.image.subtitle
  • credits.by.image.caption
  • credits.by.bio
  • credits.by.url
  • credits.by.social_links.site
  • credits.by.slug
  • credits.host_talent.name
  • credits.host_talent.org
  • credits.host_talent.bio
  • credits.contributors.name
  • credits.contributors.org
  • credits.contributors.bio
  • credits.affiliation.name
  • credits.affiliation.org
  • credits.affiliation.bio
  • taxonomy.keywords.keyword
  • taxonomy.keywords.tag
  • taxonomy.topics.name
  • taxonomy.auxiliaries.name
  • taxonomy.named_entities.name
  • taxonomy.tags.text
  • taxonomy.tags.description
  • taxonomy.primary_site.name
  • taxonomy.primary_site.description
  • taxonomy.sites.name
  • taxonomy.sites.description
  • taxonomy.primary_section.name
  • taxonomy.primary_section.description
  • taxonomy.sections.name
  • taxonomy.sections.description
  • taxonomy.seo_keywords
  • promo_items.basic.headlines.basic
  • promo_items.basic.subheadlines.basic
  • promo_items.basic.description.basic
  • promo_items.basic.content
  • promo_items.basic.subtitle
  • promo_items.basic.caption
  • promo_items.basic.credits.by.name
  • promo_items.basic.credits.by.org
  • promo_items.basic.credits.by.image.subtitle
  • promo_items.basic.credits.by.image.caption
  • promo_items.basic.credits.bio
  • promo_items.basic.credits.url
  • promo_items.basic.credits.social_links.site
  • promo_items.basic.credits.slug
  • promo_items.basic.transcript
  • promo_items.basic.rating
  • promo_items.basic.video_type
  • promo_items.basic.youtube_content_id
  • promo_items.basic.subtitles.urls.format
  • promo_items.basic.promo_image.subtitle
  • promo_items.basic.promo_image.caption
  • promo_items.basic.promo_image.credits.by.name
  • promo_items.basic.promo_image.credits.by.org
  • promo_items.basic.promo_image.credits.by.image.subtitle
  • promo_items.basic.promo_image.credits.by.image.caption
  • promo_items.basic.promo_image.credits.by.bio
  • promo_items.basic.promo_image.credits.by.url
  • promo_items.basic.promo_image.credits.by.social_links.site
  • promo_items.basic.promo_image.credits.by.slug
  • related_content.basic.headlines.basic
  • related_content.basic.subheadlines.basic
  • related_content.basic.description.basic
  • related_content.basic.content
  • related_content.basic.subtitle
  • related_content.basic.caption
  • related_content.basic.credits.by.name
  • related_content.basic.credits.by.org
  • related_content.basic.credits.by.image.subtitle
  • related_content.basic.credits.by.image.caption
  • related_content.basic.credits.by.bio
  • related_content.basic.credits.by.url
  • related_content.basic.credits.by.social_links.site
  • related_content.basic.credits.by.slug
  • related_content.basic.transcript
  • related_content.basic.rating
  • related_content.basic.video_type
  • related_content.basic.youtube_content_id
  • related_content.basic.subtitles.urls.format
  • related_content.basic.promo_image.subtitle
  • related_content.basic.promo_image.caption
  • related_content.basic.promo_image.credits.by.name
  • related_content.basic.promo_image.credits.by.org
  • related_content.basic.promo_image.credits.by.image.subtitle
  • related_content.basic.promo_image.credits.by.image.caption
  • related_content.basic.promo_image.credits.by.bio
  • related_content.basic.promo_image.credits.by.url
  • related_content.basic.promo_image.credits.by.social_links.site
  • related_content.basic.promo_image.credits.by.slug
  • owner.name
  • planning.budget_line
  • source.system
  • source.name
  • slug
  • label.basic.text
  • corrections.text
  • content_elements.subtype
  • content_elements.channels
  • content_elements.content
  • content_elements.language
  • content_elements.level
  • content_elements.list_type
  • content_elements.text
  • content_elements.headlines.basic
  • content_elements.subheadlines.basic
  • content_elements.items.type
  • content_elements.items.subtype
  • content_elements.items.list_type
  • content_elements.items.channels
  • content_elements.items.content
  • content_elements.items.items.types
  • content_elements.items.items.subtype
  • content_elements.items.items.list_type
  • content_elements.items.items.channels
  • content_elements.items.items.content
  • content_elements.items.items.items.type
  • content_elements.items.items.items.subtype
  • content_elements.items.items.items.list_type
  • content_elements.items.items.items.channels
  • content_elements.items.items.items.content
  • content_elements.providerUrl
  • content_elements.objectUrl
  • content_elements.header.type
  • content_elements.header.subtype
  • content_elements.header.channels
  • content_elements.header.content
  • content_elements.rows.type
  • content_elements.rows.subtype
  • content_elements.rows.channels
  • content_elements.rows.content
  • content_elements.subtitle
  • content_elements.caption
  • content_elements.credits.by.name
  • content_elements.credits.by.org
  • content_elements.credits.by.image.subtitle
  • content_elements.credits.by.image.caption
  • content_elements.credits.by.bio
  • content_elements.credits.by.url
  • content_elements.credits.by.social_links.site
  • content_elements.credits.by.slug
  • content_elements.transcript
  • content_elements.rating
  • content_elements.youtube_content_id
  • content_elements.subtitles.urls.format
  • content_elements.promo_image.subtitle
  • content_elements.promo_image.caption
  • content_elements.promo_image.credits.by.name
  • content_elements.promo_image.credits.by.org
  • content_elements.promo_image.credits.by.image.subtitle
  • content_elements.promo_image.credits.by.image.caption
  • content_elements.promo_image.credits.by.bio
  • content_elements.promo_image.credits.by.url
  • content_elements.promo_image.credits.by.social_links.site
  • content_elements.promo_image.credits.by.slug
  • content_elements.source_url
  • content_elements.mimetype
  • content_elements.label.basic.text
  • content_elements.citation.type
  • content_elements.citation.subtype
  • content_elements.citation.channels
  • content_elements.citation.content
  • content_elements.content_elements.subtype
  • content_elements.content_elements.channels
  • content_elements.content_elements.subtitle
  • content_elements.content_elements.caption
  • content_elements.content_elements.credits.by.name
  • content_elements.content_elements.credits.by.org
  • content_elements.content_elements.credits.by.image.subtitle
  • content_elements.content_elements.credits.by.image.caption
  • content_elements.content_elements.credits.by.bio
  • content_elements.content_elements.credits.by.url
  • content_elements.content_elements.credits.by.social_links.site
  • content_elements.content_elements.credits.by.slug
  • content_elements.content

Filterable Text Fields

Some ANS text fields are indexed and not analyzed. You can query an indexed field that is not analyzed using exact value matches only.

The list of ANS fields indexed but not analyzed by Content API is:

  • version
  • type
  • canonical_website
  • canonical_url
  • short_url
  • location.raw
  • headlines.basic.raw
  • credits.by._id
  • credits.by.type
  • credits.by.version
  • credits.by.image._id
  • credits.by.image.type
  • credits.by.image.version
  • credits.by.image.url
  • credits.by.social_links.url
  • credits.by.referent.type
  • credits.by.referent.service
  • credits.by.referent.Id
  • credits.by.referent.provider
  • credits.host_talent._id
  • credits.host_talent.type
  • credits.host_talent.version
  • credits.host_talent.slug
  • credits.contributors._id
  • credits.contributors.type
  • credits.contributors.version
  • credits.contributors.slug
  • credits.affiliation._id
  • credits.affiliation.type
  • credits.affiliation.version
  • credits.affiliation.slug
  • taxonomy.topics._id
  • taxonomy.topics.uuid
  • taxonomy.auxiliaries._id
  • taxonomy.auxiliaries.uuid
  • taxonomy.named_entities._id
  • taxonomy.named_entities.type
  • taxonomy.tags._id
  • taxonomy.tags.text.raw
  • taxonomy.tags.slug
  • taxonomy.primary_site._id
  • taxonomy.primary_site.type
  • taxonomy.primary_site.version
  • taxonomy.primary_site.path
  • taxonomy.primary_site.parent_id
  • taxonomy.primary_site.referent.type
  • taxonomy.primary_site.referent.service
  • taxonomy.primary_site.referent.id
  • taxonomy.primary_site.referent.provider
  • taxonomy.sites._id
  • taxonomy.sites.type
  • taxonomy.sites.version
  • taxonomy.sites.path
  • taxonomy.sites.parent_id
  • taxonomy.sites.referent.type
  • taxonomy.sites.service
  • taxonomy.sites.id
  • taxonomy.sites.provider
  • taxonomy.primary_section._id
  • taxonomy.primary_section._website
  • taxonomy.primary_section._website_section_id
  • taxonomy.primary_section.type
  • taxonomy.primary_section.version
  • taxonomy.primary_section.path
  • taxonomy.primary_section.parent_id
  • taxonomy.primary_section.parent.default
  • taxonomy.sections._id
  • taxonomy.sections._website
  • taxonomy.sections._website_section_id
  • taxonomy.sections.type
  • taxonomy.sections.version
  • taxonomy.sections.path
  • taxonomy.sections.parent_id
  • taxonomy.sections.parent.default
  • taxonomy.stock_symbols
  • promo_items.basic.url
  • promo_items.basic.credits.by._id
  • promo_items.basic.credits.by.type
  • promo_items.basic.credits.by.version
  • promo_items.basic.credits.by.image._id
  • promo_items.basic.credits.by.image.type
  • promo_items.basic.credits.by.image.version
  • promo_items.basic.credits.by.image.url
  • promo_items.basic.credits.by.social_links.url
  • promo_items.basic.credits.by.referent.type
  • promo_items.basic.credits.by.referent.service
  • promo_items.basic.credits.by.referent.id
  • promo_items.basic.credits.by.referent.provider
  • promo_items.basic.streams.audio_codec
  • promo_items.basic.streams.video_codec
  • promo_items.basic.streams.stream_type
  • promo_items.basic.streams.url
  • promo_items.basic.streams.bitrate
  • promo_items.basic.streams.provider
  • promo_items.basic.subtitles.urls.url
  • promo_items.basic.promo_image.url
  • promo_items.basic.promo_image.credits.by._id
  • promo_items.basic.promo_image.credits.by.type
  • promo_items.basic.promo_image.credits.by.version
  • promo_items.basic.promo_image.credits.by.image._id
  • promo_items.basic.promo_image.credits.by.image.type
  • promo_items.basic.promo_image.credits.by.image.version
  • promo_items.basic.promo_image.credits.by.image.url
  • promo_items.basic.promo_image.credits.by.social_links.url
  • promo_items.basic.promo_image.credits.by.referent.type
  • promo_items.basic.promo_image.credits.by.referent.service
  • promo_items.basic.promo_image.credits.by.referent.id
  • promo_items.basic.promo_image.credits.by.referent.provider
  • promo_items.basic.referent.type
  • promo_image.basic.referent.service
  • promo_image.basic.referent.id
  • promo_image.basic.referent.provider
  • related_content.basic.url
  • related_content.basic.credits.by._id
  • related_content.basic.credits.by.type
  • related_content.basic.credits.by.version
  • related_content.basic.credits.by.image._id
  • related_content.basic.credits.by.image.type
  • related_content.basic.credits.by.image.version
  • related_content.basic.credits.by.image.url
  • related_content.basic.credits.by.social_links.url
  • related_content.basic.credits.by.referent.type
  • related_content.basic.credits.by.referent.service
  • related_content.basic.credits.by.referent.id
  • related_content.basic.credits.by.referent.provider
  • related_content.basic.streams.audio_codec
  • related_content.basic.streams.video_codec
  • related_content.basic.streams.stream_type
  • related_content.basic.streams.url
  • related_content.basic.streams.provider
  • related_content.basic.subtitles.urls.url
  • related_content.basic.promo_image.url
  • related_content.basic.promo_image.credits.by._id
  • related_content.basic.promo_image.credits.by.type
  • related_content.basic.promo_image.credits.by.version
  • related_content.basic.promo_image.credits.by.image._id
  • related_content.basic.promo_image.credits.by.image.type
  • related_content.basic.promo_image.credits.by.image.version
  • related_content.basic.promo_image.credits.by.image.url
  • related_content.basic.promo_image.credits.by.social_links.url
  • related_content.basic.promo_image.credits.by.referent.type
  • related_content.basic.promo_image.credits.by.referent.service
  • related_content.basic.promo_image.credits.by.referent.id
  • related_content.basic.promo_image.credits.by.referent.provider
  • related_content.basic.referent.type
  • related_content.basic.referent.service
  • related_content.basic.referent.id
  • related_content.basic.referent.provider
  • planning.story_length.character_encoding
  • revision.revision_id
  • revision.parent_id
  • revision.user_id
  • revision.branch
  • revision.published
  • content_restrictions.content_code
  • content_restrictions.geo.restrictions.restrictions_id
  • source.edit_url
  • source.source_id
  • source.source_type
  • label.basic.url
  • label.basic.display
  • corrections.correction_type
  • content_elements._id
  • content_elements.type
  • content_elements.alignment
  • content_elements.correction_type
  • content_elements.units
  • content_elements.endorsement
  • content_elements.items._id
  • content_elements.items.alignment
  • content_elements.items.items._id
  • content_elements.items.items.alignment
  • content_elements.header._id
  • content_elements.header.alignment
  • content_elements.rows._id
  • content_elements.rows.alignment
  • content_elements.referent.type
  • content_elements.referent.service
  • content_elements.referent.id
  • content_elements.referent.provider
  • content_elements.url
  • content_elements.credits.by._id
  • content_elements.credits.by.type
  • content_elements.credits.by.version
  • content_elements.credits.by.image._id
  • content_elements.credits.by.image.type
  • content_elements.credits.by.image.version
  • content_elements.credits.by.image.url
  • content_elements.credits.by.social_links.url
  • content_elements.credits.by.referent.type
  • content_elements.credits.by.referent.service
  • content_elements.credits.by.referent.id
  • content_elements.credits.by.referent.provider
  • content_elements.video_type
  • content_elements.streams.audio_codec
  • content_elements.streams.video_codec
  • content_elements.stream.stream_type
  • content_elements.streams.url
  • content_elements.streams.provider
  • content_elements.subtitles.urls.url
  • content_elements.promo_image.url
  • content_elements.promo_image.credits.by._id
  • content_elements.promo_image.credits.by.type
  • content_elements.promo_image.credits.by.version
  • content_elements.promo_image.credits.by.image._id
  • content_elements.promo_image.credits.by.image.version
  • content_elements.promo_image.credits.by.image.type
  • content_elements.promo_image.credits.by.image.url
  • content_elements.promo_image.credits.by.social_links.url
  • content_elements.promo_image.credits.by.referent.type
  • content_elements.promo_image.credits.by.referent.service
  • content_elements.promo_image.credits.by.referent.id
  • content_elements.promo_image.credits.by.referent.provider
  • content_elements.label.basic.url
  • content_elements.label.basic.display
  • content_elements.citation._id
  • content_elements.citation.alignment
  • content_elements.content_elements._id
  • content_elements.content_elements.type
  • content_elements.content_elements.alignment
  • content_elements.content_elements.url
  • content_elements.content_elements.credits.by._id
  • content_elements.content_elements.credits.by.type
  • content_elements.content_elements.credits.by.version
  • content_elements.content_elements.credits.by.image._id
  • content_elements.content_elements.credits.by.image.type
  • content_elements.content_elements.credits.by.image.version
  • content_elements.content_elements.credits.by.image.url
  • content_elements.content_elements.credits.by.social_links.url
  • content_elements.content_elements.credits.by.referent.id
  • content_elements.content_elements.credits.by.referent.service
  • content_elements.content_elements.credits.by.referent.provider
  • content_elements.content_elements.credits.by.referent.type
  • content_aliases

Nested Fields

Nested fields in Elasticsearch are indexed differently and require some Distinct Query Language.

The list of ANS fields that are nested by Content API is:

  • taxonomy.sections
  • pitches.platform
  • pitches.publication
  • publishing.editions
  • publishing.scheduled_operations.publish_edition
  • publishing.scheduled_operations.unpublish_edition

Other Fields

Some ANS fields are also queryable independent of their type. The following fields are of the queryable data type in Content API.

Dates

  • created_date
  • last_updated_date
  • display_date
  • publish_date
  • first_publish_date
  • publishing.editions.edition_date
  • publishing.editions.edition_first_publish_date
  • publishing.editions.edition_display_date
  • publishing.editions.edition_publish_date

Boolean

  • content_elements[].autoplay
  • content_elements[].controls
  • content_elements[].licensable
  • content_elements[].loop
  • content_elements[].preload
  • content_elements[].video_type
  • label.basic.display
  • owner.sponsored
  • planning.scheduling.will_have_gallery
  • planning.scheduling.will_have_graphic
  • planning.scheduling.will_have_image
  • planning.scheduling.will_have_video
  • promo_items.basic.licensable
  • related_content.basic.licensable
  • revision.published
  • syndication.external_distribution
  • syndication.search
  • taxonomy.primary_section.primary
  • taxonomy.sections[].primary

Numbers

  • content_elements[].duration
  • content_elements[].height
  • content_elements[].level
  • content_elements[].streams.bitrate
  • content_elements[].streams.height
  • content_elements[].streams.width
  • content_elements[].subtitles.confidence
  • content_elements[].width
  • promo_items.basic.duration
  • promo_items.basic.height
  • promo_items.basic.width
  • promo_items.basic.streams.bitrate
  • promo_items.basic.streams.height
  • promo_items.basic.streams.width
  • promo_items.basic.subtitles.confidence
  • taxonomy.auxiliaries.uuid
  • taxonomy.keywords.frequency
  • taxonomy.keywords.score
  • taxonomy.topics.score
  • taxonomy.topics.uuid