Bulk Search
Perform OMOP concept search on multiple queries simultaneously with optimized batch processing - ideal for ETL pipelines and terminology mapping jobs.
Overview
This endpoint allows you to submit multiple search queries in a single request, enabling efficient batch processing of search operations. It’s ideal for applications that need to search for many terms simultaneously, such as data processing pipelines, bulk concept mapping, or batch validation workflows. Each query uses full-text search with a default limit of 20 results per query (configurable viapage_size, max 100). Up to 50 queries can be submitted per request.
For paginated results or semantic search, use the Basic Search or Semantic Search endpoints instead.
Request Body
Array of search query objects (1-50 items)
Default filter parameters applied to all searches. Individual searches can override any default.
Query Parameters
Specific vocabulary release version (defaults to latest)
Response
Indicates if the request was successful
Array of search results, one per query
Usage Examples
Basic Bulk Search
Search multiple terms simultaneously without filters:Filtered Bulk Search with Defaults
Apply common filters to all searches usingdefaults, with per-search overrides:
Per-Search Filters
Apply different filters to each search individually:High-Volume Processing
Process larger batches from a file:bulk_queries.json:
Optimization Strategies
Query Grouping
- Batch Size: Optimal batch size is 10-50 queries per request
- Bulk Mode: The
bulk_modeparameter (defaulttrue) enables optimized query execution for better throughput - Result Limit: Each query returns up to 20 results by default (configurable via
page_size, max 100)
Performance Tips
- Use concise, specific search terms for faster results
- Split very large query sets into multiple requests of 50 queries each
- Use the
search_idfield to correlate results with your source data - Use
defaultsto apply common filters instead of repeating them per search - Applying filters (vocabulary, domain) generally improves performance by narrowing the search space
Error Handling
- Each query in the batch is processed independently
- Failed queries return
status: "failed"with anerrormessage - Successful queries are not affected by failures in other queries
Related Endpoints
- Basic Search - Single query search with pagination
- Advanced Search - Complex search with advanced filters
- Semantic Search - AI-powered contextual search