diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock
index b0adaf65..0cfbc743 100644
--- a/.speakeasy/gen.lock
+++ b/.speakeasy/gen.lock
@@ -1,19 +1,19 @@
lockVersion: 2.0.0
id: 3e3290ca-0ee8-4981-b1bc-14536048fa63
management:
- docChecksum: e61f09454154d7eb019991c03f6d19eb
+ docChecksum: 168d09185da75c45f6edca32cb2bc2dd
docVersion: 0.9.0
speakeasyVersion: 1.722.7
generationVersion: 2.832.9
- releaseVersion: 0.12.7
- configChecksum: 8aebd542e0622973cae358ece93487de
+ releaseVersion: 0.12.8
+ configChecksum: 50bf621427a8287d9ca62293e512f86a
repoURL: https://github.com/gleanwork/api-client-python.git
installationURL: https://github.com/gleanwork/api-client-python.git
published: true
persistentEdits:
- generation_id: 14a6d36a-77ef-4a8e-8cd9-f7a1c0dc8bcb
- pristine_commit_hash: 0e7f43da90541b2445d05211577217c1bab49f5f
- pristine_tree_hash: 5319dfb5aff7a24b5c67c68b76d1baf663ce8139
+ generation_id: bcf8dca0-d5eb-40ce-a204-2aa32fe24c88
+ pristine_commit_hash: 41297bcf79da7abf5156c3d09490fd4236aff892
+ pristine_tree_hash: 639a9981217f2ac59f39e86a5e053a64e33f9fbe
features:
python:
additionalDependencies: 1.0.0
@@ -451,8 +451,8 @@ trackedFiles:
pristine_git_object: f003c186b000ff51b939282191e5d42e08e06f7b
docs/models/checkdatasourceauthresponse.md:
id: c4214ea019e2
- last_write_checksum: sha1:ede1e2ca7769edf83659cc1dfe2d2e1de2de6c1d
- pristine_git_object: b1ea62b7cc4e3bed1c5e1715ccd8fbdf3d01331e
+ last_write_checksum: sha1:0cb03f6f8262685c2963aee29986841a38b6548a
+ pristine_git_object: be60699cc5a111d76b214d6f28642c7e79c6a806
docs/models/checkdocumentaccessrequest.md:
id: 7e17285c9fb1
last_write_checksum: sha1:40cc7d27e54e5aca99ebaa24670579d312b9252c
@@ -2735,8 +2735,8 @@ trackedFiles:
pristine_git_object: e2fda7fe263c2a111e53872e3ad5bc324b4dccfe
pyproject.toml:
id: 5d07e7d72637
- last_write_checksum: sha1:8e7869a84ec05f482a7e02eb3ac7c4e268dfdfc6
- pristine_git_object: 1697f7e0b295af2f4094232e666e9eff6a4d4d80
+ last_write_checksum: sha1:cd9618a071dc65e548c604011f7922a19bd4e112
+ pristine_git_object: 358810d2a9d3bd25e6fbe61eaab9cc0c6b9e374c
scripts/prepare_readme.py:
id: e0c5957a6035
last_write_checksum: sha1:c2c83f71dea61eb50c9e05da83b16d18b4da8794
@@ -2763,8 +2763,8 @@ trackedFiles:
pristine_git_object: 58c4d70ac1797b86ff5c4237cafbc344c42d8f64
src/glean/api_client/_version.py:
id: 0ce22b26136b
- last_write_checksum: sha1:ad364a656d38e32a1c1a528364700f94839986ab
- pristine_git_object: 0cba552d2edd6eeb52410ef1a127271395525a0e
+ last_write_checksum: sha1:1e660e8b70d98a8dc857edd2b64e505881b58095
+ pristine_git_object: ff2fde5492a4ff878e3ea49923b2f26af789a187
src/glean/api_client/agents.py:
id: b925701a9217
last_write_checksum: sha1:c1688c3d141db7707458f3ac7ff29c4a71e6812b
@@ -3199,8 +3199,8 @@ trackedFiles:
pristine_git_object: f4a630c009419f6f9144d393a808957c75b1eb3c
src/glean/api_client/models/checkdatasourceauthresponse.py:
id: 4b92648bff66
- last_write_checksum: sha1:6b448e1f738f635983ab023658febd17d68f36bf
- pristine_git_object: 3a043334e052e58c3ad73c407ec235556034208d
+ last_write_checksum: sha1:383e77b55a1ef1d8a4014954daacecefabb594e1
+ pristine_git_object: 23a67c29ffa76ce2ab3a08554fd16045f5325512
src/glean/api_client/models/checkdocumentaccessrequest.py:
id: 8ae1352111ea
last_write_checksum: sha1:5c9a03c342cc40cf9618527f4802af3d9a4a49cd
@@ -5144,7 +5144,7 @@ trackedFiles:
tests/mockserver/internal/handler/pathpostrestapiv1createauthtoken.go:
last_write_checksum: sha1:6ce83ba03066acb436796c018d19715615f548c1
tests/mockserver/internal/handler/pathpostrestapiv1createcollection.go:
- last_write_checksum: sha1:14b4a1d98dd55ce2b487ae1aaab4a7dece08df25
+ last_write_checksum: sha1:f9f4c718408bddadbdf826194f07970bb111e57e
tests/mockserver/internal/handler/pathpostrestapiv1createshortcut.go:
last_write_checksum: sha1:dcdf684a85e20db1aee571db9a54a3ee259d71d5
tests/mockserver/internal/handler/pathpostrestapiv1deleteallchats.go:
@@ -5178,7 +5178,7 @@ trackedFiles:
tests/mockserver/internal/handler/pathpostrestapiv1getanswer.go:
last_write_checksum: sha1:3bec6f7cd190f9394bebac2407f9d7f1e606e479
tests/mockserver/internal/handler/pathpostrestapiv1getchat.go:
- last_write_checksum: sha1:2c2b7acb22e422a721a21801cccfa30fedfd3169
+ last_write_checksum: sha1:089475adb3686c656bd0eb52940285a7e037ab83
tests/mockserver/internal/handler/pathpostrestapiv1getchatapplication.go:
last_write_checksum: sha1:7b81898137fdb3a89b4dcfa318b9b5b92e8860c0
tests/mockserver/internal/handler/pathpostrestapiv1getchatfiles.go:
@@ -5384,7 +5384,7 @@ trackedFiles:
tests/mockserver/internal/sdk/models/components/chatzerostatesuggestionoptions.go:
last_write_checksum: sha1:da633547681ec1c8ef5df79cc1d2919fb3714d13
tests/mockserver/internal/sdk/models/components/checkdatasourceauthresponse.go:
- last_write_checksum: sha1:caa976ebc0e76d521725d4dd83e17c840842fd9a
+ last_write_checksum: sha1:e99e71069a2dee200904ebf2457ee9853b1777b4
tests/mockserver/internal/sdk/models/components/checkdocumentaccessrequest.go:
last_write_checksum: sha1:4b403181de5f24bde26d022703e625a832f685c8
tests/mockserver/internal/sdk/models/components/checkdocumentaccessresponse.go:
@@ -7398,7 +7398,7 @@ generatedTests:
checkdatasourceauth: "2026-02-19T15:48:52Z"
releaseNotes: |
## Python SDK Changes:
- * `glean.authentication.checkdatasourceauth()`: **Added**
+ * `glean.authentication.checkdatasourceauth()`: `response.unauthorized_datasource_instances` **Changed**
generatedFiles:
- .devcontainer/README.md
- .devcontainer/devcontainer.json
diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml
index a3c1a0a6..c84e9c51 100644
--- a/.speakeasy/gen.yaml
+++ b/.speakeasy/gen.yaml
@@ -33,7 +33,7 @@ generation:
generateNewTests: true
skipResponseBodyAssertions: true
python:
- version: 0.12.7
+ version: 0.12.8
additionalDependencies:
dev: {}
main: {}
diff --git a/.speakeasy/glean-merged-spec.yaml b/.speakeasy/glean-merged-spec.yaml
index 22519199..a069bf8a 100644
--- a/.speakeasy/glean-merged-spec.yaml
+++ b/.speakeasy/glean-merged-spec.yaml
@@ -2,7 +2,7 @@ openapi: 3.0.0
info:
version: 0.9.0
title: Glean API
- x-source-commit-sha: 204dc378669e42116b8b928d58d5fddabb228aef
+ x-source-commit-sha: 56c08697ca3b6869022a262114e61f1385914425
description: |
# Introduction
In addition to the data sources that Glean has built-in support for, Glean also provides a REST API that enables customers to put arbitrary content in the search index. This is useful, for example, for doing permissions-aware search over content in internal tools that reside on-prem as well as for searching over applications that Glean does not currently support first class. In addition these APIs allow the customer to push organization data (people info, organization structure etc) into Glean.
@@ -22,7 +22,7 @@ info:
These API clients provide type-safe, idiomatic interfaces for working with Glean IndexingAPIs in your language of choice.
x-logo:
url: https://app.glean.com/images/glean-text2.svg
- x-open-api-commit-sha: 8a4d8a857ef07a135526624459142e85f9444ec2
+ x-open-api-commit-sha: daa8736a6f0763faffd2c1079da8a42345536ed7
x-speakeasy-name: 'Glean API'
servers:
- url: https://{instance}-be.glean.com
@@ -7367,11 +7367,13 @@ components:
description: |
Relative path to initiate or resume OAuth for the current user and instance, including a one-time authentication token as a query parameter. Clients should prepend their configured Glean backend base URL.
CheckDatasourceAuthResponse:
+ required:
+ - unauthorizedDatasourceInstances
properties:
unauthorizedDatasourceInstances:
type: array
description: |
- Datasource instances that require per-user OAuth authorization. Empty or absent when all datasources are authorized.
+ Datasource instances that require per-user OAuth authorization. Empty when all datasources are authorized.
items:
$ref: "#/components/schemas/UnauthorizedDatasourceInstance"
CreateAuthTokenResponse:
diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock
index 9db52a1f..a38a230a 100644
--- a/.speakeasy/workflow.lock
+++ b/.speakeasy/workflow.lock
@@ -2,11 +2,11 @@ speakeasyVersion: 1.722.7
sources:
Glean API:
sourceNamespace: glean-api-specs
- sourceRevisionDigest: sha256:aa0a496396e723844c85b7713e2a2d9795a8e4c9bb8ad5f4119e1ff0b3f46fc1
- sourceBlobDigest: sha256:f052174bfef7ebd0efee80555a7ae4db9d3ba41118e726db87762ea1dbab1240
+ sourceRevisionDigest: sha256:8b912e61e9727548c1e231c33a1cab5988630896d3c81639fe9b2961c8656d94
+ sourceBlobDigest: sha256:079082f8fabe8221e1d14af242c72c22efa7be6626969593ccebcd74d19c3c80
tags:
- latest
- - speakeasy-sdk-regen-1771467808
+ - speakeasy-sdk-regen-1771525162
Glean Client API:
sourceNamespace: glean-client-api
sourceRevisionDigest: sha256:4edc63ad559e4f2c9fb9ebf5edaaaaa9269f1874d271cfd84b441d6dacac43d2
@@ -17,10 +17,10 @@ targets:
glean:
source: Glean API
sourceNamespace: glean-api-specs
- sourceRevisionDigest: sha256:aa0a496396e723844c85b7713e2a2d9795a8e4c9bb8ad5f4119e1ff0b3f46fc1
- sourceBlobDigest: sha256:f052174bfef7ebd0efee80555a7ae4db9d3ba41118e726db87762ea1dbab1240
+ sourceRevisionDigest: sha256:8b912e61e9727548c1e231c33a1cab5988630896d3c81639fe9b2961c8656d94
+ sourceBlobDigest: sha256:079082f8fabe8221e1d14af242c72c22efa7be6626969593ccebcd74d19c3c80
codeSamplesNamespace: glean-api-specs-python-code-samples
- codeSamplesRevisionDigest: sha256:f23770fa56fb7f38298e39c6a50f878d2ac7f7b136e13a173c7e74927bee3cd0
+ codeSamplesRevisionDigest: sha256:07c1eebc0272335ffeb2b98c0b094c73bfefcf74858173515c00c683b16702f6
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest
diff --git a/RELEASES.md b/RELEASES.md
index a5ebe41b..4bd4269a 100644
--- a/RELEASES.md
+++ b/RELEASES.md
@@ -578,4 +578,14 @@ Based on:
### Generated
- [python v0.12.7] .
### Releases
-- [PyPI v0.12.7] https://pypi.org/project/glean-api-client/0.12.7 - .
\ No newline at end of file
+- [PyPI v0.12.7] https://pypi.org/project/glean-api-client/0.12.7 - .
+
+## 2026-02-20 02:10:28
+### Changes
+Based on:
+- OpenAPI Doc
+- Speakeasy CLI 1.722.7 (2.832.9) https://github.com/speakeasy-api/speakeasy
+### Generated
+- [python v0.12.8] .
+### Releases
+- [PyPI v0.12.8] https://pypi.org/project/glean-api-client/0.12.8 - .
\ No newline at end of file
diff --git a/docs/models/checkdatasourceauthresponse.md b/docs/models/checkdatasourceauthresponse.md
index b1ea62b7..be60699c 100644
--- a/docs/models/checkdatasourceauthresponse.md
+++ b/docs/models/checkdatasourceauthresponse.md
@@ -3,6 +3,6 @@
## Fields
-| Field | Type | Required | Description |
-| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
-| `unauthorized_datasource_instances` | List[[models.UnauthorizedDatasourceInstance](../models/unauthorizeddatasourceinstance.md)] | :heavy_minus_sign: | Datasource instances that require per-user OAuth authorization. Empty or absent when all datasources are authorized.
|
\ No newline at end of file
+| Field | Type | Required | Description |
+| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
+| `unauthorized_datasource_instances` | List[[models.UnauthorizedDatasourceInstance](../models/unauthorizeddatasourceinstance.md)] | :heavy_check_mark: | Datasource instances that require per-user OAuth authorization. Empty when all datasources are authorized.
|
\ No newline at end of file
diff --git a/pyproject.toml b/pyproject.toml
index 1697f7e0..358810d2 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,7 +1,7 @@
[project]
name = "glean-api-client"
-version = "0.12.7"
+version = "0.12.8"
description = "Python Client SDK Generated by Speakeasy."
authors = [{ name = "Glean Technologies, Inc." },]
readme = "README-PYPI.md"
diff --git a/src/glean/api_client/_version.py b/src/glean/api_client/_version.py
index 0cba552d..ff2fde54 100644
--- a/src/glean/api_client/_version.py
+++ b/src/glean/api_client/_version.py
@@ -3,10 +3,10 @@
import importlib.metadata
__title__: str = "glean-api-client"
-__version__: str = "0.12.7"
+__version__: str = "0.12.8"
__openapi_doc_version__: str = "0.9.0"
__gen_version__: str = "2.832.9"
-__user_agent__: str = "speakeasy-sdk/python 0.12.7 2.832.9 0.9.0 glean-api-client"
+__user_agent__: str = "speakeasy-sdk/python 0.12.8 2.832.9 0.9.0 glean-api-client"
try:
if __package__ is not None:
diff --git a/src/glean/api_client/models/checkdatasourceauthresponse.py b/src/glean/api_client/models/checkdatasourceauthresponse.py
index 3a043334..23a67c29 100644
--- a/src/glean/api_client/models/checkdatasourceauthresponse.py
+++ b/src/glean/api_client/models/checkdatasourceauthresponse.py
@@ -5,47 +5,28 @@
UnauthorizedDatasourceInstance,
UnauthorizedDatasourceInstanceTypedDict,
)
-from glean.api_client.types import BaseModel, UNSET_SENTINEL
+from glean.api_client.types import BaseModel
import pydantic
-from pydantic import model_serializer
-from typing import List, Optional
-from typing_extensions import Annotated, NotRequired, TypedDict
+from typing import List
+from typing_extensions import Annotated, TypedDict
class CheckDatasourceAuthResponseTypedDict(TypedDict):
- unauthorized_datasource_instances: NotRequired[
- List[UnauthorizedDatasourceInstanceTypedDict]
- ]
- r"""Datasource instances that require per-user OAuth authorization. Empty or absent when all datasources are authorized.
+ unauthorized_datasource_instances: List[UnauthorizedDatasourceInstanceTypedDict]
+ r"""Datasource instances that require per-user OAuth authorization. Empty when all datasources are authorized.
"""
class CheckDatasourceAuthResponse(BaseModel):
unauthorized_datasource_instances: Annotated[
- Optional[List[UnauthorizedDatasourceInstance]],
+ List[UnauthorizedDatasourceInstance],
pydantic.Field(alias="unauthorizedDatasourceInstances"),
- ] = None
- r"""Datasource instances that require per-user OAuth authorization. Empty or absent when all datasources are authorized.
+ ]
+ r"""Datasource instances that require per-user OAuth authorization. Empty when all datasources are authorized.
"""
- @model_serializer(mode="wrap")
- def serialize_model(self, handler):
- optional_fields = set(["unauthorizedDatasourceInstances"])
- serialized = handler(self)
- m = {}
-
- for n, f in type(self).model_fields.items():
- k = f.alias or n
- val = serialized.get(k)
-
- if val != UNSET_SENTINEL:
- if val is not None or k not in optional_fields:
- m[k] = val
-
- return m
-
try:
CheckDatasourceAuthResponse.model_rebuild()
diff --git a/tests/mockserver/internal/handler/pathpostrestapiv1createcollection.go b/tests/mockserver/internal/handler/pathpostrestapiv1createcollection.go
index 371b9023..5c99a0ad 100644
--- a/tests/mockserver/internal/handler/pathpostrestapiv1createcollection.go
+++ b/tests/mockserver/internal/handler/pathpostrestapiv1createcollection.go
@@ -56,14 +56,14 @@ func testCreatecollectionCreatecollection0(w http.ResponseWriter, req *http.Requ
operations.ResponseBody2{
Collection: &components.Collection{
Name: "",
- Description: "whole busily jive hawk gee basic minus hence",
+ Description: "motionless whenever paintwork import over cuckoo",
AddedRoles: []components.UserRoleSpecification{
components.UserRoleSpecification{
Person: &components.Person{
Name: "George Clooney",
ObfuscatedID: "abc123",
},
- Role: components.UserRoleAnswerModerator,
+ Role: components.UserRoleOwner,
},
},
RemovedRoles: []components.UserRoleSpecification{
@@ -90,7 +90,7 @@ func testCreatecollectionCreatecollection0(w http.ResponseWriter, req *http.Requ
},
},
},
- ID: 158969,
+ ID: 363711,
Creator: &components.Person{
Name: "George Clooney",
ObfuscatedID: "abc123",
@@ -101,7 +101,7 @@ func testCreatecollectionCreatecollection0(w http.ResponseWriter, req *http.Requ
},
Items: []components.CollectionItem{
components.CollectionItem{
- CollectionID: 110375,
+ CollectionID: 570197,
CreatedBy: &components.Person{
Name: "George Clooney",
ObfuscatedID: "abc123",
@@ -266,13 +266,13 @@ func testCreatecollectionCreatecollection0(w http.ResponseWriter, req *http.Requ
Name: "George Clooney",
ObfuscatedID: "abc123",
},
- Role: components.UserRoleEditor,
+ Role: components.UserRoleAnswerModerator,
},
},
},
Collection: &components.Collection{
Name: "",
- Description: "wedge colorfully orientate rally",
+ Description: "athwart skateboard newsstand farm bourgeoisie ah how elliptical aha well-to-do",
AudienceFilters: []components.FacetFilter{
components.FacetFilter{
FieldName: types.String("type"),
@@ -288,7 +288,7 @@ func testCreatecollectionCreatecollection0(w http.ResponseWriter, req *http.Requ
},
},
},
- ID: 131797,
+ ID: 643990,
Creator: &components.Person{
Name: "George Clooney",
ObfuscatedID: "abc123",
@@ -300,7 +300,7 @@ func testCreatecollectionCreatecollection0(w http.ResponseWriter, req *http.Requ
Children: []components.Collection{
components.Collection{
Name: "",
- Description: "outside yippee sidetrack mature regularly mouser inject worth",
+ Description: "woot purse salty even as advanced",
AudienceFilters: []components.FacetFilter{
components.FacetFilter{
FieldName: types.String("type"),
@@ -316,7 +316,7 @@ func testCreatecollectionCreatecollection0(w http.ResponseWriter, req *http.Requ
},
},
},
- ID: 149448,
+ ID: 359978,
Creator: &components.Person{
Name: "George Clooney",
ObfuscatedID: "abc123",
@@ -328,7 +328,7 @@ func testCreatecollectionCreatecollection0(w http.ResponseWriter, req *http.Requ
},
},
},
- ItemType: components.CollectionItemItemTypeCollection,
+ ItemType: components.CollectionItemItemTypeURL,
},
},
},
diff --git a/tests/mockserver/internal/handler/pathpostrestapiv1getchat.go b/tests/mockserver/internal/handler/pathpostrestapiv1getchat.go
index 023af9c7..020eb777 100644
--- a/tests/mockserver/internal/handler/pathpostrestapiv1getchat.go
+++ b/tests/mockserver/internal/handler/pathpostrestapiv1getchat.go
@@ -628,8 +628,8 @@ func testGetchatGetchat0(w http.ResponseWriter, req *http.Request) {
Roles: []components.UserRoleSpecification{},
SourceDocumentSpec: types.Pointer(components.CreateDocumentSpecUnionDocumentSpec3(
components.DocumentSpec3{
- UgcType: components.DocumentSpecUgcType1Announcements,
- ContentID: 848009,
+ UgcType: components.DocumentSpecUgcType1Shortcuts,
+ ContentID: 602763,
},
)),
SourceType: components.AnswerSourceTypeAssistant.ToPointer(),
diff --git a/tests/mockserver/internal/sdk/models/components/checkdatasourceauthresponse.go b/tests/mockserver/internal/sdk/models/components/checkdatasourceauthresponse.go
index ff5addac..978854e6 100644
--- a/tests/mockserver/internal/sdk/models/components/checkdatasourceauthresponse.go
+++ b/tests/mockserver/internal/sdk/models/components/checkdatasourceauthresponse.go
@@ -3,14 +3,14 @@
package components
type CheckDatasourceAuthResponse struct {
- // Datasource instances that require per-user OAuth authorization. Empty or absent when all datasources are authorized.
+ // Datasource instances that require per-user OAuth authorization. Empty when all datasources are authorized.
//
- UnauthorizedDatasourceInstances []UnauthorizedDatasourceInstance `json:"unauthorizedDatasourceInstances,omitempty"`
+ UnauthorizedDatasourceInstances []UnauthorizedDatasourceInstance `json:"unauthorizedDatasourceInstances"`
}
func (o *CheckDatasourceAuthResponse) GetUnauthorizedDatasourceInstances() []UnauthorizedDatasourceInstance {
if o == nil {
- return nil
+ return []UnauthorizedDatasourceInstance{}
}
return o.UnauthorizedDatasourceInstances
}