Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.3.0"
".": "1.0.0"
}
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
# Changelog

## [1.0.0](https://github.com/gumlet/python-sdk/compare/v0.3.0...v1.0.0) (2026-09-21)


### Features

* **api:** add operation globalSearch.search ([c9a2c9e](https://github.com/gumlet/python-sdk/commit/c9a2c9e615154d7b6e4cf94944921dd5d2b1b817))


### Chores

* **api:** update generated SDK content ([845699d](https://github.com/gumlet/python-sdk/commit/845699da69cc1f5c42598ca4c79b3887abf4035d))
* **api:** update generated SDK content ([291aea8](https://github.com/gumlet/python-sdk/commit/291aea8216202666d891c685212a501fda5b8845))
* **api:** update generated SDK content ([8580466](https://github.com/gumlet/python-sdk/commit/8580466d1130c2031af0bf9e9bbdea9393d1db67))
* release 1.0.0 ([d7118c8](https://github.com/gumlet/python-sdk/commit/d7118c81f86075f054d1a0922435d638b2fcd553))
* release 1.0.0 ([0bbcd73](https://github.com/gumlet/python-sdk/commit/0bbcd73e3fc8a463601854168acfb72f780b68de))

## [0.3.0](https://github.com/gumlet/python-sdk/compare/v0.2.0...v0.3.0) (2026-09-21)


Expand Down
26 changes: 26 additions & 0 deletions api.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,8 @@ Complete reference of every operation, grouped by resource. See [the README](./R
- [Delete Workspace](#delete-workspace-1)
- [`LiveStreamAnalytics`](#livestreamanalytics)
- [Usage Analytics](#usage-analytics)
- [`GlobalSearch`](#globalsearch)
- [Global Search](#global-search)

## Setup

Expand Down Expand Up @@ -1669,3 +1671,27 @@ live_stream_analytic = client.live_stream_analytics.usage(
metrics=["bandwidth_consumption"],
)
```

## `GlobalSearch`

Search all video assets / playlists / folders etc across workspaces.

### Global Search

Search all video assets / playlists / folders etc across workspaces.

| Direction | Type |
| --- | --- |
| Request | [`GlobalSearchSearchParams`](./src/gumlet/types/global_search_search_params.py) |
| Response | [`GlobalSearchSearchResponse`](./src/gumlet/types/global_search_search_response.py) |

```python
global_search = client.global_search.search(
search_query="search_query",
size=20,
assets_offset=0,
folders_offset=0,
playlists_offset=0,
channels_offset=0,
)
```
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "gumlet"
version = "0.3.0" # x-release-please-version
version = "1.0.0" # x-release-please-version
description = "Gumlet helps developers deliver online video and images. This API encompasses Gumlet Video, Image and Video Analytics functionality to help you build your products better and faster than ever before."
readme = "README.md"
license = "Apache-2.0"
Expand Down
111 changes: 109 additions & 2 deletions scalar-sdk.manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,8 @@
"auditLogs",
"billing",
"liveStreamWorkspaces",
"liveStreamAnalytics"
"liveStreamAnalytics",
"globalSearch"
],
"publicResources": [
"videoAssets",
Expand All @@ -68,7 +69,8 @@
"auditLogs",
"billing",
"liveStreamWorkspaces",
"liveStreamAnalytics"
"liveStreamAnalytics",
"globalSearch"
],
"operations": [
{
Expand Down Expand Up @@ -8559,6 +8561,111 @@
],
"responseLinks": [],
"transport": "http"
},
{
"resource": "globalSearch",
"publicResource": "globalSearch",
"operation": "search",
"publicOperation": "search",
"deprecated": false,
"method": "GET",
"path": "/entities/global-search",
"pathParams": [],
"publicPathParams": [],
"queryParams": [
"search_query",
"collection_id",
"size",
"assets_offset",
"folders_offset",
"playlists_offset",
"channels_offset"
],
"publicQueryParams": [
"search_query",
"collection_id",
"size",
"assets_offset",
"folders_offset",
"playlists_offset",
"channels_offset"
],
"headerParams": [],
"publicHeaderParams": [],
"bodyParams": [],
"publicBodyParams": [],
"bodyParamDetails": [],
"pathParamDetails": [],
"queryParamDetails": [
{
"name": "search_query",
"required": true,
"style": "form",
"explode": true
},
{
"name": "collection_id",
"required": false,
"style": "form",
"explode": true
},
{
"name": "size",
"required": false,
"style": "form",
"explode": true,
"defaultValue": 20
},
{
"name": "assets_offset",
"required": false,
"style": "form",
"explode": true,
"defaultValue": 0
},
{
"name": "folders_offset",
"required": false,
"style": "form",
"explode": true,
"defaultValue": 0
},
{
"name": "playlists_offset",
"required": false,
"style": "form",
"explode": true,
"defaultValue": 0
},
{
"name": "channels_offset",
"required": false,
"style": "form",
"explode": true,
"defaultValue": 0
}
],
"headerParamDetails": [],
"cookieParams": [],
"publicCookieParams": [],
"cookieParamDetails": [],
"paramsModel": {
"publicName": "GlobalSearchSearchParams"
},
"response": {
"status": "200",
"contentType": "application/json",
"encoding": "json",
"contents": [
{
"contentType": "application/json",
"encoding": "json"
}
]
},
"errorResponses": [],
"responseLinks": [],
"transport": "http"
}
],
"webhooks": []
Expand Down
38 changes: 38 additions & 0 deletions src/gumlet/_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@
billing,
live_stream_workspaces,
live_stream_analytics,
global_search,
)
from .resources.video_assets import VideoAssetsResource, AsyncVideoAssetsResource
from .resources.subtitle_upload import SubtitleUploadResource, AsyncSubtitleUploadResource
Expand All @@ -79,6 +80,7 @@
from .resources.billing import BillingResource, AsyncBillingResource
from .resources.live_stream_workspaces import LiveStreamWorkspacesResource, AsyncLiveStreamWorkspacesResource
from .resources.live_stream_analytics import LiveStreamAnalyticsResource, AsyncLiveStreamAnalyticsResource
from .resources.global_search import GlobalSearchResource, AsyncGlobalSearchResource

# Serializes lazy resource imports so concurrent cold access from multiple
# threads cannot deadlock on CPython import locks (see CPython 3.14).
Expand Down Expand Up @@ -283,6 +285,12 @@ def live_stream_analytics(self) -> "LiveStreamAnalyticsResource":
from .resources.live_stream_analytics import LiveStreamAnalyticsResource
return LiveStreamAnalyticsResource(self)

@cached_property
def global_search(self) -> "GlobalSearchResource":
with _RESOURCE_IMPORT_LOCK:
from .resources.global_search import GlobalSearchResource
return GlobalSearchResource(self)

@cached_property
def with_raw_response(self) -> GumletWithRawResponse:
return GumletWithRawResponse(self)
Expand Down Expand Up @@ -606,6 +614,12 @@ def live_stream_analytics(self) -> "AsyncLiveStreamAnalyticsResource":
from .resources.live_stream_analytics import AsyncLiveStreamAnalyticsResource
return AsyncLiveStreamAnalyticsResource(self)

@cached_property
def global_search(self) -> "AsyncGlobalSearchResource":
with _RESOURCE_IMPORT_LOCK:
from .resources.global_search import AsyncGlobalSearchResource
return AsyncGlobalSearchResource(self)

@cached_property
def with_raw_response(self) -> AsyncGumletWithRawResponse:
return AsyncGumletWithRawResponse(self)
Expand Down Expand Up @@ -871,6 +885,12 @@ def live_stream_analytics(self) -> live_stream_analytics.LiveStreamAnalyticsReso
from .resources.live_stream_analytics import LiveStreamAnalyticsResourceWithRawResponse
return LiveStreamAnalyticsResourceWithRawResponse(self._client.live_stream_analytics)

@cached_property
def global_search(self) -> global_search.GlobalSearchResourceWithRawResponse:
with _RESOURCE_IMPORT_LOCK:
from .resources.global_search import GlobalSearchResourceWithRawResponse
return GlobalSearchResourceWithRawResponse(self._client.global_search)


class AsyncGumletWithRawResponse:
_client: AsyncGumlet
Expand Down Expand Up @@ -1010,6 +1030,12 @@ def live_stream_analytics(self) -> live_stream_analytics.AsyncLiveStreamAnalytic
from .resources.live_stream_analytics import AsyncLiveStreamAnalyticsResourceWithRawResponse
return AsyncLiveStreamAnalyticsResourceWithRawResponse(self._client.live_stream_analytics)

@cached_property
def global_search(self) -> global_search.AsyncGlobalSearchResourceWithRawResponse:
with _RESOURCE_IMPORT_LOCK:
from .resources.global_search import AsyncGlobalSearchResourceWithRawResponse
return AsyncGlobalSearchResourceWithRawResponse(self._client.global_search)


class GumletWithStreamedResponse:
_client: Gumlet
Expand Down Expand Up @@ -1149,6 +1175,12 @@ def live_stream_analytics(self) -> live_stream_analytics.LiveStreamAnalyticsReso
from .resources.live_stream_analytics import LiveStreamAnalyticsResourceWithStreamingResponse
return LiveStreamAnalyticsResourceWithStreamingResponse(self._client.live_stream_analytics)

@cached_property
def global_search(self) -> global_search.GlobalSearchResourceWithStreamingResponse:
with _RESOURCE_IMPORT_LOCK:
from .resources.global_search import GlobalSearchResourceWithStreamingResponse
return GlobalSearchResourceWithStreamingResponse(self._client.global_search)


class AsyncGumletWithStreamedResponse:
_client: AsyncGumlet
Expand Down Expand Up @@ -1288,6 +1320,12 @@ def live_stream_analytics(self) -> live_stream_analytics.AsyncLiveStreamAnalytic
from .resources.live_stream_analytics import AsyncLiveStreamAnalyticsResourceWithStreamingResponse
return AsyncLiveStreamAnalyticsResourceWithStreamingResponse(self._client.live_stream_analytics)

@cached_property
def global_search(self) -> global_search.AsyncGlobalSearchResourceWithStreamingResponse:
with _RESOURCE_IMPORT_LOCK:
from .resources.global_search import AsyncGlobalSearchResourceWithStreamingResponse
return AsyncGlobalSearchResourceWithStreamingResponse(self._client.global_search)


# Alias names for the documented `Client` / `AsyncClient` symbols.
Client = Gumlet
Expand Down
2 changes: 1 addition & 1 deletion src/gumlet/_version.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Scalar. See README.md for details.

__title__ = "gumlet"
__version__ = "0.3.0" # x-release-please-version
__version__ = "1.0.0" # x-release-please-version
14 changes: 14 additions & 0 deletions src/gumlet/resources/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,14 @@
LiveStreamAnalyticsResourceWithStreamingResponse,
AsyncLiveStreamAnalyticsResourceWithStreamingResponse,
)
from .global_search import (
GlobalSearchResource,
AsyncGlobalSearchResource,
GlobalSearchResourceWithRawResponse,
AsyncGlobalSearchResourceWithRawResponse,
GlobalSearchResourceWithStreamingResponse,
AsyncGlobalSearchResourceWithStreamingResponse,
)

__all__ = [
"VideoAssetsResource",
Expand Down Expand Up @@ -310,4 +318,10 @@
"AsyncLiveStreamAnalyticsResourceWithRawResponse",
"LiveStreamAnalyticsResourceWithStreamingResponse",
"AsyncLiveStreamAnalyticsResourceWithStreamingResponse",
"GlobalSearchResource",
"AsyncGlobalSearchResource",
"GlobalSearchResourceWithRawResponse",
"AsyncGlobalSearchResourceWithRawResponse",
"GlobalSearchResourceWithStreamingResponse",
"AsyncGlobalSearchResourceWithStreamingResponse",
]
Loading
Loading