feat: iconik connector, metadata collections, and source metadata search (sync spec v0.7.11) - #71
Merged
Conversation
…rch (sync spec v0.7.11) Regenerated from spec v0.7.11 (cloudglue/cloudglue-api-spec#105) and bumped to 0.7.18. NOTE: the working branch was rebuilt on top of origin/main — the previous local checkout was based 9 commits back (missing the v0.7.9/v0.7.10 syncs); the regenerated cloudglue/sdk tree was carried over intact. Generated (cloudglue/sdk): - IconikSourceMetadata model; SourceMetadata oneOf and the connector/ source enums now cover iconik - New sync_file_source_metadata endpoint (POST /files/{file_id}/sync) - include_metadata query param on describe/transcribe get+list, collection media-description/rich-transcript listings, and segmentation describes; Describe/Transcribe responses gain a file object - SearchFilter.source_metadata and the doc_lexical search modality - 'metadata' collection_type Wrapper (cloudglue/client + package): - files.sync_source_metadata(file_id) for the new endpoint - include_metadata plumbed through describe/transcribe/segmentations/ collections methods (9 endpoints) - Search.create_filter gains source_metadata_filters (SearchFilterCriteria) - collection_type docstrings cover 'metadata' (and fix a stale enum) - IconikSourceMetadata re-exported at top level - data-connectors docstrings: per-connector matrices include iconik Verified against the live API: 14/14 checks across iconik listing/lookup/ title_search, metadata-collection create+index of grain+iconik URLs, source-metadata refresh (isinstance checks), doc_lexical + source_metadata-filtered search, and the include_metadata toggle.
amyxst
approved these changes
Jul 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Syncs the SDK to spec v0.7.11 (cloudglue/cloudglue-api-spec#105) and bumps the package to 0.7.18.
Generated (cloudglue/sdk)
IconikSourceMetadata; theSourceMetadataoneOf and connector/source enums now cover iconiksync_file_source_metadataendpoint (POST /files/{file_id}/sync)include_metadataon describe/transcribe get+list, collection media-description/rich-transcript listings, and segmentation describes;Describe/Transcriberesponses gain afileobjectSearchFilter.source_metadata+ thedoc_lexicalsearch modalitymetadatacollection typeWrapper (cloudglue/client + package)
files.sync_source_metadata(file_id)— new endpoint, unreachable without a wrapper methodinclude_metadataplumbed through describe/transcribe/segmentations/collections methods (9 endpoints — these pass kwargs explicitly, so new params need plumbing)Search.create_filtergainssource_metadata_filters(buildsSearchFilterCriteriaentries; documented JSON-path examples per connector)collection_typedocstrings cover'metadata'(and fix a stale filter-enum doc)IconikSourceMetadatare-exported at the package top levelfrom/to+title_searchmatrices and sync/lookup support updated for iconikTest plan
include_metadatamethods +sync_source_metadata;create_filter(source_metadata_filters=…)serializes to the correct wire shape~/Downloads/cloudglue-v0.7.11-sdk-test-results.md): iconik listing/per-file metadata/isinstance(IconikSourceMetadata)lookup/native title_search; metadata collection created + grain & iconik URLs indexed without processing (then deleted);sync_source_metadatarefreshes both providers with typed variants;doc_lexicalsearch with asource_metadata.titlefilter finds exactly the grain file and a negative filter excludes it;include_metadatatoggles file metadata on describe get/listNote
Medium Risk
Large generated SDK surface plus new search/indexing and connector sync paths; behavior is additive and documented, but touches search filters and file metadata refresh used across integrations.
Overview
Syncs the Python client to OpenAPI v0.7.11, adding Iconik as a data connector and expanding metadata-only indexing and search over connector
source_metadata.Iconik & connectors: New
IconikSourceMetadatais exported at the package root. Data-connector docs and listing filters now treat Iconik like other OAuth sources (from/to, full-texttitle_search,iconik://asset/<id>URIs, populatedsource_metadataon sync/lookup).Metadata collections & refresh: Collection docs describe a new
metadatatype that indexes connector/user metadata without media processing.files.sync_source_metadata(file_id)(POST /files/{file_id}/sync) re-fetches live connector metadata and re-indexes metadata collections when applicable.Search & responses:
Search.create_filteracceptssource_metadata_filters(JSON paths on connector metadata, file scope). Describe/transcribe/collection transcript & media-description APIs gain optionalinclude_metadataon get/list (and segmentation describe lists), wired through the high-level client where kwargs are explicit.The bulk of the diff is regenerated
cloudglue/sdk(models, query params,SearchFilter.source_metadata, version bump 0.7.10 → 0.7.11).Reviewed by Cursor Bugbot for commit 6c1617a. Bugbot is set up for automated code reviews on this repo. Configure here.