Skip to content

Commit 13963ae

Browse files
feat(indexes): add source_column field to index responses
1 parent 9a239b2 commit 13963ae

13 files changed

Lines changed: 28 additions & 5 deletions

‎CHANGELOG.md‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [0.4.2] - 2026-06-18
11+
12+
### Changed
13+
14+
- feat(indexes): add source_column field to index responses
15+
1016
## [0.4.1] - 2026-06-17
1117

1218
### Changed

‎docs/IndexEntryResponse.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ Name | Type | Description | Notes
1111
**index_name** | **str** | |
1212
**index_type** | **str** | |
1313
**metric** | **str** | Distance metric this index was built with. Only present for vector indexes. | [optional]
14+
**source_column** | **str** | Source text column for an embedding-backed vector index. A query searches it via `vector_distance(<source_column>, …)`; the indexed `columns` hold the generated embedding column instead. Absent for BM25, sorted, and direct (existing-column) vector indexes. | [optional]
1415
**status** | [**IndexStatus**](IndexStatus.md) | |
1516
**updated_at** | **datetime** | |
1617
**connection_id** | **str** | | [optional]

‎docs/IndexInfoResponse.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ Name | Type | Description | Notes
1111
**index_name** | **str** | |
1212
**index_type** | **str** | |
1313
**metric** | **str** | Distance metric this index was built with. Only present for vector indexes. | [optional]
14+
**source_column** | **str** | Source text column for an embedding-backed vector index. A query searches it via `vector_distance(<source_column>, …)`; the indexed `columns` hold the generated embedding column instead. Absent for BM25, sorted, and direct (existing-column) vector indexes. | [optional]
1415
**status** | [**IndexStatus**](IndexStatus.md) | |
1516
**updated_at** | **datetime** | |
1617

‎docs/JobResult.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ Name | Type | Description | Notes
2424
**index_name** | **str** | |
2525
**index_type** | **str** | |
2626
**metric** | **str** | Distance metric this index was built with. Only present for vector indexes. | [optional]
27+
**source_column** | **str** | Source text column for an embedding-backed vector index. A query searches it via `vector_distance(<source_column>, …)`; the indexed `columns` hold the generated embedding column instead. Absent for BM25, sorted, and direct (existing-column) vector indexes. | [optional]
2728
**updated_at** | **datetime** | |
2829

2930
## Example

‎docs/QueryApi.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ Name | Type | Description | Notes
104104
**202** | Query submitted asynchronously | - |
105105
**400** | Invalid request (no database specified, or header/body database_id conflict) | - |
106106
**404** | Database not found | - |
107-
**429** | Too many concurrent queries; retry after the Retry-After delay | - |
107+
**429** | The engine was too busy to run this query right now — too many concurrent queries, or not enough memory available (often because of other queries running at the same time). Retry after the Retry-After delay; if it persists, narrowing the query (add a filter or LIMIT) may help. | - |
108108
**500** | Internal server error | - |
109109
**503** | Result store temporarily unavailable (a truncated result could not be persisted); retry after the Retry-After delay | - |
110110

‎hotdata/api_client.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ def __init__(
9191
self.default_headers[header_name] = header_value
9292
self.cookie = cookie
9393
# Set default User-Agent.
94-
self.user_agent = 'OpenAPI-Generator/0.4.1/python'
94+
self.user_agent = 'OpenAPI-Generator/0.4.2/python'
9595
self.client_side_validation = configuration.client_side_validation
9696

9797
def __enter__(self):

‎hotdata/models/index_entry_response.py‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,13 @@ class IndexEntryResponse(BaseModel):
3434
index_name: StrictStr
3535
index_type: StrictStr
3636
metric: Optional[StrictStr] = Field(default=None, description="Distance metric this index was built with. Only present for vector indexes.")
37+
source_column: Optional[StrictStr] = Field(default=None, description="Source text column for an embedding-backed vector index. A query searches it via `vector_distance(<source_column>, …)`; the indexed `columns` hold the generated embedding column instead. Absent for BM25, sorted, and direct (existing-column) vector indexes.")
3738
status: IndexStatus
3839
updated_at: datetime
3940
connection_id: Optional[StrictStr] = None
4041
schema_name: StrictStr
4142
table_name: StrictStr
42-
__properties: ClassVar[List[str]] = ["columns", "created_at", "index_name", "index_type", "metric", "status", "updated_at", "connection_id", "schema_name", "table_name"]
43+
__properties: ClassVar[List[str]] = ["columns", "created_at", "index_name", "index_type", "metric", "source_column", "status", "updated_at", "connection_id", "schema_name", "table_name"]
4344

4445
model_config = ConfigDict(
4546
populate_by_name=True,
@@ -102,6 +103,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
102103
"index_name": obj.get("index_name"),
103104
"index_type": obj.get("index_type"),
104105
"metric": obj.get("metric"),
106+
"source_column": obj.get("source_column"),
105107
"status": obj.get("status"),
106108
"updated_at": obj.get("updated_at"),
107109
"connection_id": obj.get("connection_id"),

‎hotdata/models/index_info_response.py‎

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,10 @@ class IndexInfoResponse(BaseModel):
3434
index_name: StrictStr
3535
index_type: StrictStr
3636
metric: Optional[StrictStr] = Field(default=None, description="Distance metric this index was built with. Only present for vector indexes.")
37+
source_column: Optional[StrictStr] = Field(default=None, description="Source text column for an embedding-backed vector index. A query searches it via `vector_distance(<source_column>, …)`; the indexed `columns` hold the generated embedding column instead. Absent for BM25, sorted, and direct (existing-column) vector indexes.")
3738
status: IndexStatus
3839
updated_at: datetime
39-
__properties: ClassVar[List[str]] = ["columns", "created_at", "index_name", "index_type", "metric", "status", "updated_at"]
40+
__properties: ClassVar[List[str]] = ["columns", "created_at", "index_name", "index_type", "metric", "source_column", "status", "updated_at"]
4041

4142
model_config = ConfigDict(
4243
populate_by_name=True,
@@ -82,6 +83,11 @@ def to_dict(self) -> Dict[str, Any]:
8283
if self.metric is None and "metric" in self.model_fields_set:
8384
_dict['metric'] = None
8485

86+
# set to None if source_column (nullable) is None
87+
# and model_fields_set contains the field
88+
if self.source_column is None and "source_column" in self.model_fields_set:
89+
_dict['source_column'] = None
90+
8591
return _dict
8692

8793
@classmethod
@@ -99,6 +105,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
99105
"index_name": obj.get("index_name"),
100106
"index_type": obj.get("index_type"),
101107
"metric": obj.get("metric"),
108+
"source_column": obj.get("source_column"),
102109
"status": obj.get("status"),
103110
"updated_at": obj.get("updated_at")
104111
})

‎pyproject.toml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "hotdata"
3-
version = "0.4.1"
3+
version = "0.4.2"
44
description = "Hotdata API"
55
authors = [
66
{name = "Hotdata",email = "developers@hotdata.dev"},

‎test/test_index_entry_response.py‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ def make_instance(self, include_optional) -> IndexEntryResponse:
4343
index_name = '',
4444
index_type = '',
4545
metric = '',
46+
source_column = '',
4647
status = 'ready',
4748
updated_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
4849
connection_id = '',

0 commit comments

Comments
 (0)