Custom fields in contract management data model not searchable via API

We’ve added several custom fields to our contract records in Adobe Experience Cloud for compliance tracking (renewal_notice_date, regulatory_category, audit_status), but they’re not returning results when queried through the API.

Here’s our API query attempt:

{
  "query": "regulatory_category:FDA",
  "fields": ["contract_id", "regulatory_category"]
}

The API returns empty results even though we can see contracts with regulatory_category=FDA in the UI. Standard fields like contract_number and status work fine in searches. We need these custom fields searchable for our automated compliance reporting that runs nightly via API integration.

Our contract-mgmt module is on AEC 2022. Is there an indexing step we’re missing for custom field searchability? The documentation mentions search index configuration but doesn’t provide clear guidance on custom field support.

You’re hitting three separate issues that need to be addressed for full custom field API searchability:

1. Custom Field Indexing: Your custom fields need explicit index configuration. Navigate to Admin > Data Modeling > Contract Schema and update each custom field:

{
  "fieldName": "regulatory_category",
  "indexed": true,
  "indexType": "keyword"
}

Set indexType based on field purpose:

  • “keyword” for exact-match categorical fields (regulatory_category, audit_status)
  • “text” for fields needing partial matching (notes, descriptions)
  • “date” for date fields (renewal_notice_date)

2. API Query Parameter Support: Your query syntax is incorrect for custom fields. AEC 2022 requires the customFieldFilters parameter:

{
  "customFieldFilters": [
    {
      "field": "regulatory_category",
      "operator": "equals",
      "value": "FDA"
    }
  ],
  "fields": ["contract_id", "custom.regulatory_category"]
}

Note the “custom.” prefix in the fields array - this is required to retrieve custom field values in API responses.

3. Search Index Rebuild: After updating field configurations, trigger a manual index rebuild:

Access the AEC Admin Console > System > Search Index Management

  • Select “Contract Management” module
  • Choose “Rebuild Custom Field Index”
  • Monitor progress in the job queue

For large datasets (>100K contracts), this can take 4-6 hours. The rebuild is necessary because existing records weren’t indexed for these fields when they were first created.

Additional Configuration Steps:

  1. Verify API user permissions include “custom_field_api_access” role
  2. Update your API integration to use the correct endpoint version (v2.1+ supports custom field filtering)
  3. Add custom fields to your API response schema mapping
  4. Test with a small dataset first using the sandbox environment

Query Examples After Configuration:

Single field filter:

{
  "customFieldFilters": [{"field": "audit_status", "operator": "equals", "value": "pending"}]
}

Multiple field filter with date range:

{
  "customFieldFilters": [
    {"field": "regulatory_category", "operator": "equals", "value": "FDA"},
    {"field": "renewal_notice_date", "operator": "between", "value": ["2025-01-01", "2025-12-31"]}
  ]
}

After implementing these changes, your nightly compliance reporting should successfully query custom fields. The key issue is that AEC separates UI and API search capabilities, requiring explicit configuration for API access to custom fields.


This draft is based on general Adobe Experience Cloud knowledge. It has not been verified against your specific version and environment. Practitioners: verify the steps and share your experience below.

Custom fields aren’t automatically indexed for API search in AEC 2022. You need to explicitly add them to the search configuration. Check your contract schema definition - there should be an indexed attribute that needs to be set to true for each custom field you want searchable via API.

I ran into this exact issue last quarter. The problem is that UI search and API search use different indexes in AEC. The UI has a broader index that includes all fields, but the API search index is more selective for performance reasons. You’ll need to trigger a search index rebuild after marking your custom fields as API-searchable. This can take several hours for large contract datasets, so plan accordingly.

Your query syntax might also be the issue. Custom fields in AEC 2022 require a different parameter format in API requests. Instead of using them directly in the query string, you need to use the customFields filter array. Also verify that your API user has the correct permissions to access custom field data - there’s a separate permission set for custom field API access that’s distinct from UI access.

Check if your custom fields were created with the correct data type mapping. Text fields need full-text indexing enabled, while categorical fields like your regulatory_category should use keyword indexing. The field type affects how they’re stored in the search index and what query operators you can use. If they were created as generic string types without proper index configuration, they won’t be searchable regardless of other settings.

“Confirmed this resolves the issue — setting indexType to ‘keyword’ on our regulatory_category field in Contract Schema immediately made it searchable via the Experience Cloud API.”

There’s a known limitation in AEC 2022 where custom fields added after initial schema deployment don’t automatically get picked up by the API query engine. You need to update the API schema definition file and redeploy. This is separate from the UI schema. The disconnect between UI and API field availability has caught many teams off guard.

Beyond indexing, make sure your API query is using the correct field naming convention. Custom fields often have internal names that differ from their display names. Use the schema inspection endpoint to get the actual field identifiers that the API expects. Your regulatory_category might be stored as custom_regulatory_category or similar in the backend.