- App Search Guide: other versions:
- Installation
- Getting started
- Authentication
- Limits
- Users and access
- Guides
- Adaptive relevance events logs reference
- Analytics Tags
- Crawl web content
- Crawl a private network using a web crawler on Elastic Cloud
- Curations
- Elasticsearch search
- Elasticsearch index engines (beta)
- Create Elasticsearch index engines
- Configure dynamic field mappings and analyzers in an Elasticsearch index engine
- Elasticsearch engines precision tuning - text field conventions
- Facets
- Hierarchical Facets
- Indexing Documents
- Language Optimization
- Log settings
- Meta Engines
- Precision tuning (beta)
- Query Suggestions
- Search UI
- Relevance Tuning
- Result Settings
- Result Suggestions
- Role based access control (RBAC)
- Sanitization, Raw or Snippet
- Search
- Synonyms
- View web crawler events logs
- App Search web crawler
- Web crawler FAQ
- Web crawler reference
- Web crawler events logs reference
- API Reference
- Adaptive relevance API reference (beta)
- Analytics APIs
- Analytics clicks API
- Analytics counts API
- Analytics queries API
- API logs API
- Click API
- Credentials API
- Curations API reference
- Documents API
- Elasticsearch search API
- Engines API
- Log settings API
- Multi search API
- Query suggestion API
- Schema API
- Search API
- Search API boosts
- Search API facets
- Search API filters
- Search API group
- Search API precision (beta)
- Search API result fields
- Search API search fields
- Search API sort
- Search API analytics tags
- Search settings API
- Search Explain API (beta)
- Source engines API
- Synonyms API
- Web crawler API reference
- API Clients
- Configuration
- Troubleshooting
Source engines API
editSource engines API
editRead the Meta Engines guide to learn more about Meta Engines.
Meta Engines are primarily managed through the Engines API.
Meta Engines have a type
property of meta
, and support a source_engines
property.
Example - Create a Meta Engine with two Source Engines
curl -X POST '<ENTERPRISE_SEARCH_BASE_URL>/api/as/v1/engines' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer private-xxxxxxxxxxxxxxxxxxxx' \ -d '{ "name": "national-parks", "type": "meta", "source_engines": [ "eastern-national-parks", "western-national-parks" ] }'
Documents will have the following fields to help orient yourself within Meta Engine documents:
{ // The Scoped Document ID, which is the canonical ID for documents within a Meta Engine // context. This is the Engine Name and Document ID joined with a pipe character ("|"). "id": "eastern-national-parks|park_acadia", { "_meta": { // Source Engine document belongs to "engine": "eastern-national-parks", // Un-scoped Document ID "id": "park_acadia" }, } }
The _engine
field can be used to filter documents by Source Engine.
Example - Filter Meta Engine documents by Source Engine
curl -X POST '<ENTERPRISE_SEARCH_BASE_URL>/api/as/v1/engines/national-parks/search' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer search-soaewu2ye6uc45dr8mcd54v8' \ -d '{ "query": "", "filters": { "_engine": ["eastern-national-parks"] } }'
Any other API endpoint within a Meta Engine that requires a Document ID as a parameter will require a Scoped Document ID to be used.
Example - Create a Curation on a Meta Engine using Scoped Document ID
curl -X POST '<ENTERPRISE_SEARCH_BASE_URL>/api/as/v1/engines/national-parks/curations' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer private-xxxxxxxxxxxxxxxxxxxxxxxx' \ -d '{ "queries": [ "acadia" ], "promoted": [ "eastern-national-parks|park_acadia" ] }'
In addition to the Engines API, the following endpoints can be used with Meta Engines:
Add Source Engines
editAdd one or more Source Engines by name to a Meta Engine.
POST <ENTERPRISE_SEARCH_BASE_URL>/api/as/v1/engines/{ENGINE_NAME}/source_engines
Example
curl -X POST '<ENTERPRISE_SEARCH_BASE_URL>/api/as/v1/engines/national-parks/source_engines' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer private-xxxxxxxxxxxxxxxx' \ -d '[ "central-national-parks" ]'
Example Response
{ "name": "national-parks", "type": "meta", "source_engines": [ "central-national-parks", "eastern-national-parks", "western-national-parks" ] }
Remove Source Engines
editRemove one or more Source Engines by name to a Meta Engine.
DELETE <ENTERPRISE_SEARCH_BASE_URL>/api/as/v1/engines/{ENGINE_NAME}/source_engines
Example
curl -X DELETE '<ENTERPRISE_SEARCH_BASE_URL>/api/as/v1/engines/national-parks/source_engines' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer private-xxxxxxxxxxxxxxxx' \ -d '[ "western-national-parks" ]'
Example Response
{ "name": "national-parks", "type": "meta", "source_engines": [ "eastern-national-parks" ] }
On this page