Skip to main content
GET
https://sandbox.getcollate.io/api
/
v1
/
searchIndexes
/
{id}
GET /v1/searchIndexes/{id}
from metadata.sdk import configure
from metadata.sdk.entities import SearchIndexes

configure(
    host="https://your-company.getcollate.io/api",
    jwt_token="your-jwt-token"
)

# Get by ID
si = SearchIndexes.retrieve("f5b0fa81-f241-4508-9219-dae31dcced18")
print(f"{si.fullyQualifiedName}: {si.description}")

# Get by ID with fields
si = SearchIndexes.retrieve(
    "f5b0fa81-f241-4508-9219-dae31dcced18",
    fields=["owners", "tags", "fields"]
)

# Get by fully qualified name
si = SearchIndexes.retrieve_by_name("elasticsearch_sample.table_search_index")

# Get by name with fields
si = SearchIndexes.retrieve_by_name(
    "elasticsearch_sample.table_search_index",
    fields=["owners", "tags", "domain"]
)
{
  "id": "f5b0fa81-f241-4508-9219-dae31dcced18",
  "name": "table_search_index",
  "fullyQualifiedName": "elasticsearch_sample.table_search_index",
  "displayName": "TableSearchIndex",
  "version": 0.1,
  "updatedAt": 1769982670810,
  "updatedBy": "admin",
  "service": {
    "id": "search-service-id",
    "type": "searchService",
    "name": "elasticsearch_sample",
    "fullyQualifiedName": "elasticsearch_sample",
    "deleted": false
  },
  "serviceType": "ElasticSearch",
  "fields": [
    {"name": "name", "dataType": "TEXT"},
    {"name": "description", "dataType": "TEXT"}
  ],
  "deleted": false,
  "owners": [],
  "tags": [],
  "followers": [],
  "votes": {
    "upVotes": 0,
    "downVotes": 0
  },
  "domains": []
}

Retrieve a Search Index

Get a single search index by its unique ID or fully qualified name.

Get by ID

id
string
required
UUID of the search index to retrieve.
fields
string
Comma-separated list of fields to include (e.g., owners,tags,followers,votes,extension,domains,sourceHash).
include
string
default:"non-deleted"
Include all, deleted, or non-deleted entities.

Get by Fully Qualified Name

Use GET /v1/searchIndexes/name/{fqn} to retrieve by fully qualified name.
fqn
string
required
Fully qualified name of the search index (e.g., elasticsearch_sample.table_search_index).
fields
string
Comma-separated list of fields to include: owners, tags, followers, votes, extension, domains, sourceHash.
include
string
default:"non-deleted"
Include all, deleted, or non-deleted entities.
GET /v1/searchIndexes/{id}
from metadata.sdk import configure
from metadata.sdk.entities import SearchIndexes

configure(
    host="https://your-company.getcollate.io/api",
    jwt_token="your-jwt-token"
)

# Get by ID
si = SearchIndexes.retrieve("f5b0fa81-f241-4508-9219-dae31dcced18")
print(f"{si.fullyQualifiedName}: {si.description}")

# Get by ID with fields
si = SearchIndexes.retrieve(
    "f5b0fa81-f241-4508-9219-dae31dcced18",
    fields=["owners", "tags", "fields"]
)

# Get by fully qualified name
si = SearchIndexes.retrieve_by_name("elasticsearch_sample.table_search_index")

# Get by name with fields
si = SearchIndexes.retrieve_by_name(
    "elasticsearch_sample.table_search_index",
    fields=["owners", "tags", "domain"]
)
{
  "id": "f5b0fa81-f241-4508-9219-dae31dcced18",
  "name": "table_search_index",
  "fullyQualifiedName": "elasticsearch_sample.table_search_index",
  "displayName": "TableSearchIndex",
  "version": 0.1,
  "updatedAt": 1769982670810,
  "updatedBy": "admin",
  "service": {
    "id": "search-service-id",
    "type": "searchService",
    "name": "elasticsearch_sample",
    "fullyQualifiedName": "elasticsearch_sample",
    "deleted": false
  },
  "serviceType": "ElasticSearch",
  "fields": [
    {"name": "name", "dataType": "TEXT"},
    {"name": "description", "dataType": "TEXT"}
  ],
  "deleted": false,
  "owners": [],
  "tags": [],
  "followers": [],
  "votes": {
    "upVotes": 0,
    "downVotes": 0
  },
  "domains": []
}

Returns

Returns a search index object with all requested fields populated.

Response

id
string
Unique identifier for the search index (UUID format).
name
string
Search index name.
fullyQualifiedName
string
Fully qualified name in format service.indexName.
displayName
string
Human-readable display name.
description
string
Description of the search index in Markdown format.
service
object
Reference to the parent search service.
fields
array
Field definitions for the index schema.
serviceType
string
Type of search service (e.g., ElasticSearch, OpenSearch).
version
number
Version number for the entity.
owners
array
List of owners. Only included when fields contains owners.
tags
array
Classification tags. Only included when fields contains tags.
domains
array
Domain assignments. Only included when fields contains domains.

Error Handling

CodeError TypeDescription
401UNAUTHORIZEDInvalid or missing authentication token
403FORBIDDENUser lacks permission to view this search index
404NOT_FOUNDSearch index with given ID or FQN does not exist