Skip to main content
Question

Navigator Agreements API - Is Combining $search and $filter Supported?

  • May 27, 2026
  • 2 replies
  • 82 views

Forum|alt.badge.img+1

Hi DocuSign Community,

We are testing the Navigator Agreements List API and wanted to confirm whether combining $search and $filter is currently supported.

Request:
GET /v1/accounts/{accountId}/agreements?$search=sample&$filter=status eq 'completed'

Response:
{
"title": "Bad Request",
"status": 400,
"detail": "The $search and $filter query parameters cannot be combined in the same request. Use $search for full-text search or $filter for structured filtering."
}

Observations:

  • $search works correctly when used alone

  • $filter works correctly when used alone

  • Combining both returns 400 Bad Request

However, in the DocuSign completed documents experience/UI, searching and filtering together appears to work correctly and returns expected results.

We would like to confirm:

  1. Is this a current limitation of the Navigator Agreements List API?

  2. Is there any supported workaround to achieve combined search + filtering?

  3. Is support for combining $search and $filter planned for a future API version?

Any clarification would be appreciated.

Thanks,

2 replies

Cassandra.Grey
Docusign Employee
Forum|alt.badge.img+4

Hi HariGopal, I can confirm that these query params cannot currently be combined in a single call. I apologize, but I don’t have any insight as to when it will be supported. I will also update the developer documentation to make this explicit.

To work around this limitation, you can use sequential GET calls with separate query params, using $search first to get the IDs of the agreements you want, then making a $filter call to narrow on the fields you want.

For example, making a GET /agreements?$search=”data processing” call, and parsing/saving the IDs from the response. Then making a GET /agreements?$filter=id in (‘your-returned-id-1’, ‘your-returned-id-2’) and status eq ‘ACTIVE’


Forum|alt.badge.img+1
  • Author
  • Conversation Starter
  • June 16, 2026

Thank you for the clarification and suggested workaround.

We have a follow-up question regarding pagination and performance.

In our application, the Agreements List API supports paging, and users can combine search and filters while browsing large result sets. If we implement the suggested approach of performing a $search request first and then applying a $filter request using the returned agreement IDs, we may need to retrieve and process a very large number of search results before filtering can be applied.

For example:

  • A search term such as "Agreement" or "Contract" may return thousands of agreements.

  • To apply a status filter (e.g., ACTIVE) or agreement type filter, we would first need to retrieve all matching search results across multiple pages.

  • We would then need to collect all agreement IDs and issue additional filtered requests.

  • This could introduce significant latency, increased API calls, and scalability concerns for large customer datasets.

We would appreciate any guidance on best practices for implementing efficient search and filtering at scale.