Expand my Community achievements bar.

The first preview of our new Community upgrade is live - check it out now.

Assets Dynamic Media OpenAPI projectedFields

Avatar

Level 1

Documentation: https://developer.adobe.com/experience-cloud/experience-manager-apis/api/stable/assets/delivery/#ope...

 

I want to use Dynami Media Open API to search for assets and I want to only selected fields in the search results. Documentation says that I can do this thru projectedFields. But when I include this I get an error "

Unrecognized field \"projectedFields\" (class com.adobe.polarissearch.models.v2.SearchOperation), not marked as ignorable".
 
How can I get only selected fields in search result?
Topics

Topics help categorize Community content and increase your ability to discover relevant content.

3 Replies

Avatar

Level 4

@PrashantOn - 

The projectedFields object shown in the documentation describes the response model, but it is not currently supported as a request parameter by the Dynamic Media Open API search endpoint.

When included in the request payload, the backend Polaris Search service rejects it during schema validation, resulting in the “Unrecognized field projectedFields” error.

At this time, search responses always return the standard metadata structure, and any field-level filtering needs to be handled client-side.

Avatar

Level 1

Thanks for your response. The payload size is huge due to this and client-side processing adds overhead. There is no workaround to address this?

Avatar

Level 4

Hi @PrashantOn 

 

Based on the error message, it appears that 

projectedFields

 is not a recognized parameter in the current version of the Dynamic Media Open API you're using. The error suggests you're working with 

com.adobe.polarissearch.models.v2.SearchOperation

 which doesn't support this field.

 

Here are alternative approaches to get only selected fields in your search results:

1. Use 

 

fields

 parameter instead

Try using 

fields

 instead of 

projectedFields

:

 

{
  "query": "your search query",
  "fields": ["id", "name", "path", "mimeType"]
}
 

2. Check API version compatibility

The documentation you're referencing might be for a newer API version. Verify:

  • Your API endpoint version matches the documentation

  • Update to the latest API version if available

3. Use response filtering

If field selection isn't supported in your API version, filter the response client-side:

const searchResults = await searchAPI(query);
const filteredResults = searchResults.items.map(item => ({
  id: item.id,
  name: item.name,
  path: item.path
  // only include fields you need
}));
 

4. Check alternative parameter names

Common field selection parameter names in APIs:

  •  

    select

     

  •  

    fields

     

  •  

    include

     

  •  

    properties

     

Try these in your request to see if any are supported.

The most likely solution is using 

fields

 instead of 

projectedFields

, as this is a more common parameter name for field projection in REST APIs.