Skip to content

Commit 3b1b347

Browse files
committed
## Python SDK Changes:
* `glean.client.chat.create()`: `response.status[202]` **Added** (Breaking ⚠️)
1 parent 8411597 commit 3b1b347

12 files changed

Lines changed: 178 additions & 137 deletions

File tree

.speakeasy/gen.lock

Lines changed: 26 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
11
lockVersion: 2.0.0
22
id: 3e3290ca-0ee8-4981-b1bc-14536048fa63
33
management:
4-
docChecksum: a20695749796cddfd0cc7c0e4a12a7ab
4+
docChecksum: 055aee526779c2d48e5bf5efb386e4d9
55
docVersion: 0.9.0
6-
speakeasyVersion: 1.770.0
7-
generationVersion: 2.893.0
8-
releaseVersion: 0.13.0
9-
configChecksum: fbdf6564dabfc66d8d43921f9aab9d41
6+
speakeasyVersion: 1.773.1
7+
generationVersion: 2.897.1
8+
releaseVersion: 0.13.1
9+
configChecksum: 5642a3757e64408ab9bdb96bb0edb5fa
1010
repoURL: https://github.com/gleanwork/api-client-python.git
1111
installationURL: https://github.com/gleanwork/api-client-python.git
1212
published: true
1313
persistentEdits:
14-
generation_id: 987864f6-cd1e-4c05-a16b-4739643415d0
15-
pristine_commit_hash: 06cc8c7f7c551cc2f82ad39dd38c63fe2ca63e29
16-
pristine_tree_hash: 9cd8d96d15f384f677b54671075391a45cdd533f
14+
generation_id: 2e7abd9f-a4fb-4b2e-9f52-85f1011bb81f
15+
pristine_commit_hash: ab219ed94cabdc36f264a9b56b7c9b5851a17b2a
16+
pristine_tree_hash: fe9767b6b9a9f37da77ff8b347a5d118c9e7cf9a
1717
features:
1818
python:
1919
acceptHeaders: 3.0.0
2020
additionalDependencies: 1.1.0
2121
additionalProperties: 1.0.1
2222
configurableModuleName: 0.2.0
2323
constsAndDefaults: 1.0.7
24-
core: 6.0.24
24+
core: 6.0.27
2525
defaultEnabledRetries: 0.2.0
2626
deprecations: 3.0.2
2727
devContainers: 3.0.0
@@ -2990,8 +2990,8 @@ trackedFiles:
29902990
pristine_git_object: 79e388be87446ab6a4064b372bad0e8376d0cb5e
29912991
pyproject.toml:
29922992
id: 5d07e7d72637
2993-
last_write_checksum: sha1:a3a7799c7cc183344491cfa36f7a0b3c7aba85ff
2994-
pristine_git_object: f34dd6a5342bf6af6b1000135c5f479020c0c39b
2993+
last_write_checksum: sha1:3159bd445181fc0d0f3097d2b1a72e11f767d0db
2994+
pristine_git_object: af1e59cf30ac3ab37f9dc80989f7233e43882a7d
29952995
scripts/prepare_readme.py:
29962996
id: e0c5957a6035
29972997
last_write_checksum: sha1:c2c83f71dea61eb50c9e05da83b16d18b4da8794
@@ -3018,8 +3018,8 @@ trackedFiles:
30183018
pristine_git_object: 58c4d70ac1797b86ff5c4237cafbc344c42d8f64
30193019
src/glean/api_client/_version.py:
30203020
id: 0ce22b26136b
3021-
last_write_checksum: sha1:ea55ade5532c483da10f1cfec9b6ceccde7522d6
3022-
pristine_git_object: 8d9da6a0d3001f2f5448cc7fb89443c4d02ba5ad
3021+
last_write_checksum: sha1:26bcef40f053706ba61db7993740f300c16f1960
3022+
pristine_git_object: f46887e5f18169e78ba2639a09bc5d54bab5f0de
30233023
src/glean/api_client/agents.py:
30243024
id: b925701a9217
30253025
last_write_checksum: sha1:c90940a6d28847540858c932148d29ef50cac7ec
@@ -3062,8 +3062,8 @@ trackedFiles:
30623062
pristine_git_object: b2e67417be8b3c4927603fb275831447988e9de6
30633063
src/glean/api_client/client_chat.py:
30643064
id: 42cbb9b5acf3
3065-
last_write_checksum: sha1:75b70a975b72b0a748a33fbea4c2e951c89265ca
3066-
pristine_git_object: f1e89630d067883690a6fe35687b58a8d2db627e
3065+
last_write_checksum: sha1:4b3f510b7d677a4e924a5b2aece7abff574c0dc7
3066+
pristine_git_object: e396b274262b87aa94bac6f7fa278870c095db3d
30673067
src/glean/api_client/client_documents.py:
30683068
id: dac599de515c
30693069
last_write_checksum: sha1:7a41dae11c9e0c58be6e2e8fe07be6f78d8f24bb
@@ -5454,8 +5454,8 @@ trackedFiles:
54545454
pristine_git_object: 3324e1bc2668c54c4d5f5a1a845675319757a828
54555455
src/glean/api_client/utils/eventstreaming.py:
54565456
id: fdc3230ebb0e
5457-
last_write_checksum: sha1:620d78a8b4e3b854e08d136e02e40a01a786bd70
5458-
pristine_git_object: 3bdcd6d3d4fc772cb7f5fca8685dcdc8c85e13e8
5457+
last_write_checksum: sha1:cad7e4feff4f1b2824afd0d30f2b1964a604f4dd
5458+
pristine_git_object: 1c189bf6fcad7ba90e0ec6d2f36ca7329d33bb99
54595459
src/glean/api_client/utils/forms.py:
54605460
id: 00f73e14b0f0
54615461
last_write_checksum: sha1:0ca31459b99f761fcc6d0557a0a38daac4ad50f4
@@ -5850,8 +5850,8 @@ trackedFiles:
58505850
pristine_git_object: abb763ddc8504b28c0cb6fdf8d25237d46e21bab
58515851
tests/mockserver/internal/handler/pathpostrestapiv1getchat.go:
58525852
id: a0ec7bafa599
5853-
last_write_checksum: sha1:2267292ba8173cf8df70ddbc6ac02ff3439cb879
5854-
pristine_git_object: 8740195860b6c08e036caae19aab8e7374350960
5853+
last_write_checksum: sha1:b48e2313407814ee4f8ed181b8e5299a84960c44
5854+
pristine_git_object: 96d4127e0455272a9842e2d1954e5fcefa3278cc
58555855
tests/mockserver/internal/handler/pathpostrestapiv1getchatapplication.go:
58565856
id: 7d101c69d4bc
58575857
last_write_checksum: sha1:7b81898137fdb3a89b4dcfa318b9b5b92e8860c0
@@ -8574,8 +8574,8 @@ trackedFiles:
85748574
pristine_git_object: 6cc8aeec3c52329d389081db0a27f10f53f214b9
85758575
tests/test_messages.py:
85768576
id: be23089b1f8b
8577-
last_write_checksum: sha1:2404e23964ef6a1f5ddc900402b34e597d2d9617
8578-
pristine_git_object: 132005ec7d1e35f805b6a8c28e07e043bce22f0a
8577+
last_write_checksum: sha1:5db8087e85104ab50b362638150fa1f6686a3c30
8578+
pristine_git_object: c0fd29dab7d365ef9d78c0c291b925e6b9fd7298
85798579
tests/test_people.py:
85808580
id: 37c243940039
85818581
last_write_checksum: sha1:7c7268ffeebe48d81ed25e9b1cfc3a395abf5c1f
@@ -8598,8 +8598,8 @@ trackedFiles:
85988598
pristine_git_object: df2944ebda36db652b2770dd1c23be83df90fc99
85998599
tests/test_summarize.py:
86008600
id: a255d8a6f627
8601-
last_write_checksum: sha1:884caf9e9ba6ac6d6577682c45419d3fd6312dd9
8602-
pristine_git_object: df71d57de672c7e6967ba36b3671d957ef075d55
8601+
last_write_checksum: sha1:72e1f475dd7c256022f65899590c28f497968602
8602+
pristine_git_object: 906df922b03273aff06638062cbdf52792b1efec
86038603
tests/test_tools.py:
86048604
id: 70889bdf7321
86058605
last_write_checksum: sha1:293cea8c046c30086e5d57cb48aa59ab8da308f1
@@ -9681,7 +9681,9 @@ generatedTests:
96819681
delete_/rest/api/index/custom-metadata/schema/{groupName}: "2026-06-05T03:54:47Z"
96829682
getDatasourceCredentialStatus: "2026-06-05T03:54:47Z"
96839683
rotateDatasourceCredentials: "2026-06-05T03:54:47Z"
9684-
releaseNotes: "## Python SDK Changes:\n* `glean.client.collections.add_items()`: `response` **Changed** (Breaking ⚠️)\n* `glean.chat.get_chat_file()`: **Added**\n* `glean.agents.edit_agent()`: **Added**\n* `glean.entities.get_person_photo()`: **Added**\n* `glean.tools.get_action_pack_auth_status()`: **Added**\n* `glean.tools.authorize_action_pack()`: **Added**\n* `glean.indexing.custom_metadata.upsert()`: **Added**\n* `glean.indexing.custom_metadata.delete()`: **Added**\n* `glean.indexing.custom_metadata.get_schema()`: **Added**\n* `glean.indexing.custom_metadata.upsert_schema()`: **Added**\n* `glean.indexing.custom_metadata.delete_schema()`: **Added**\n* `glean.troubleshooting.post_/api/index/v1/debug/{datasource}/document/events()`: **Added**\n* `glean.datasources.get_datasource_credential_status()`: **Added**\n* `glean.datasources.rotate_datasource_credentials()`: **Added**\n* `glean.client.activity.feedback()`: \n * `request.feedback1.category` **Changed**\n* `glean.client.announcements.create()`: \n * `request.body.structured_list[].document.metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n * `response` **Changed**\n* `glean.client.announcements.update()`: \n * `request.body.structured_list[].document.metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n * `response` **Changed**\n* `glean.client.answers.create()`: \n * `request.data.added_roles[].person.related_documents[]` **Changed**\n * `response` **Changed**\n* `glean.client.answers.update()`: \n * `request.added_roles[].person.related_documents[]` **Changed**\n * `response` **Changed**\n* `glean.client.answers.retrieve()`: `response.answer_result.answer` **Changed**\n* `glean.client.answers.list()`: `response.answer_results[].answer` **Changed**\n* `glean.client.chat.create()`: \n * `request.messages[].citations[].source_document.metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n * `response.messages[].citations[].source_document.metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n* `glean.client.chat.retrieve()`: `response.chat_result.chat.created_by.related_documents[]` **Changed**\n* `glean.client.chat.list()`: `response.chat_results[].chat.created_by.related_documents[]` **Changed**\n* `glean.client.chat.create_stream()`: \n * `request.messages[].citations[].source_document.metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n* `glean.client.collections.create()`: \n * `request.added_roles[].person.related_documents[]` **Changed**\n * `response.union(class (0))` **Changed**\n * `error_code.enum(corrupt_item)` **Added**\n* `glean.client.collections.delete()`: `error_code.enum(corrupt_item)` **Added**\n* `glean.client.collections.delete_item()`: `response.collection` **Changed**\n* `glean.client.collections.update()`: \n * `request.added_roles[].person.related_documents[]` **Changed**\n * `response` **Changed**\n * `error_code.enum(corrupt_item)` **Added**\n* `glean.client.collections.update_item()`: `response.collection` **Changed**\n* `glean.client.collections.retrieve()`: `response` **Changed**\n* `glean.client.collections.list()`: `response.collections[]` **Changed**\n* `glean.client.documents.retrieve()`: `response.documents.Map<DocumentOrError>.union(Document).metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n* `glean.client.documents.retrieve_by_facets()`: `response.documents[].metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n* `glean.client.insights.retrieve()`: \n * `request` **Changed**\n * `response` **Changed**\n* `glean.client.messages.retrieve()`: `response.search_response.results[].structured_results[]` **Changed**\n* `glean.client.pins.update()`: `response.attribution.related_documents[]` **Changed**\n* `glean.client.pins.retrieve()`: `response.pin.attribution.related_documents[]` **Changed**\n* `glean.client.pins.list()`: `response.pins[].attribution.related_documents[]` **Changed**\n* `glean.client.pins.create()`: `response.attribution.related_documents[]` **Changed**\n* `glean.client.search.query_as_admin()`: \n * `request.source_document.metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n * `response.results[].structured_results[]` **Changed**\n* `glean.client.search.autocomplete()`: `response.results[].document.metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n* `glean.client.search.retrieve_feed()`: \n * `request.categories[]` **Changed**\n * `response.results[]` **Changed**\n* `glean.client.search.recommendations()`: \n * `request.source_document.metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n * `response.results[].structured_results[]` **Changed**\n* `glean.client.search.query()`: \n * `request.source_document.metadata.author.related_documents[].results[].structured_results[].answer` **Changed**\n * `response.results[].structured_results[]` **Changed**\n* `glean.client.entities.list()`: `response.results[].related_documents[]` **Changed**\n* `glean.client.entities.read_people()`: `response.results[].related_documents[]` **Changed**\n* `glean.client.shortcuts.create()`: \n * `request.data.added_roles[].person.related_documents[]` **Changed**\n * `response.shortcut.added_roles[].person.related_documents[]` **Changed**\n* `glean.client.shortcuts.retrieve()`: `response.shortcut.added_roles[].person.related_documents[]` **Changed**\n* `glean.client.shortcuts.list()`: `response.shortcuts[].added_roles[].person.related_documents[]` **Changed**\n* `glean.client.shortcuts.update()`: \n * `request.added_roles[].person.related_documents[]` **Changed**\n * `response.shortcut.added_roles[].person.related_documents[]` **Changed**\n* `glean.client.verification.add_reminder()`: `response.metadata.last_verifier.related_documents[]` **Changed**\n* `glean.client.verification.list()`: `response.documents[].metadata.last_verifier.related_documents[]` **Changed**\n* `glean.client.verification.verify()`: `response.metadata.last_verifier.related_documents[]` **Changed**\n"
9684+
releaseNotes: |
9685+
## Python SDK Changes:
9686+
* `glean.client.chat.create()`: `response.status[202]` **Added** (Breaking ⚠️)
96859687
generatedFiles:
96869688
- .devcontainer/README.md
96879689
- .devcontainer/devcontainer.json

.speakeasy/gen.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ generation:
3434
generateNewTests: true
3535
skipResponseBodyAssertions: true
3636
python:
37-
version: 0.13.0
37+
version: 0.13.1
3838
additionalDependencies:
3939
dev: {}
4040
main: {}
@@ -54,6 +54,9 @@ python:
5454
enableCustomCodeRegions: false
5555
enumFormat: enum
5656
envVarPrefix: GLEAN
57+
eventStreamClassNames:
58+
async: EventStreamAsync
59+
sync: EventStream
5760
fixFlags:
5861
asyncPaginationSep2025: false
5962
conflictResistantModelImportsFeb2026: false

.speakeasy/glean-merged-spec.yaml

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ openapi: 3.0.0
22
info:
33
version: 0.9.0
44
title: Glean API
5-
x-source-commit-sha: deacbe1e0fd0b5074c1b1445f05b4a5df529f487
5+
x-source-commit-sha: 4143b9491103a1a9506873c9d5becc54306ca83e
66
description: |
77
# Introduction
88
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:
2222
These API clients provide type-safe, idiomatic interfaces for working with Glean IndexingAPIs in your language of choice.
2323
x-logo:
2424
url: https://app.glean.com/images/glean-text2.svg
25-
x-open-api-commit-sha: 7de1c5956c93a8bdd7b4a2c6a4c6fd98b0c4df70
25+
x-open-api-commit-sha: 289f5ffa635cf440780bf159fdd194f4421a4888
2626
x-speakeasy-name: 'Glean API'
2727
servers:
2828
- url: https://{instance}-be.glean.com
@@ -569,6 +569,23 @@ paths:
569569
startIndex: 0
570570
endIndex: 12
571571
type: CITATION
572+
"202":
573+
description: |
574+
Request accepted but not yet processed. Returned when another
575+
in-flight request is already running for the same chat session;
576+
the body's `queuedRequestId` identifies the deferred run and
577+
output will be persisted to the chat session referenced by
578+
`chatId`.
579+
content:
580+
application/json:
581+
schema:
582+
$ref: "#/components/schemas/ChatResponse"
583+
examples:
584+
queuedExample:
585+
value:
586+
chatId: abc123
587+
queuedRequestId: qr-xyz
588+
isSavedToChatHistory: true
572589
"400":
573590
description: Invalid request
574591
"401":

.speakeasy/workflow.lock

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
speakeasyVersion: 1.770.0
1+
speakeasyVersion: 1.773.1
22
sources:
33
Glean API:
44
sourceNamespace: glean-api-specs
5-
sourceRevisionDigest: sha256:500649ecd919cc2dcfeb6c54fe552ddcf8628a42b2f67a2ef0f206ad8561a56c
6-
sourceBlobDigest: sha256:cb8902f4548ad637f07f6be9b7ef3f0d5fda8fe6f6540c7eea338bf4dde98413
5+
sourceRevisionDigest: sha256:fbc24d736b3742609eef3498d7b9a3efe5250a066c52406d98dd26cfa2c82db5
6+
sourceBlobDigest: sha256:d5bd946c56f7d16908a4b4d6b5283e7d0f89277972b48638d787f0bfe270dd1b
77
tags:
88
- latest
99
Glean Client API:
@@ -16,10 +16,10 @@ targets:
1616
glean:
1717
source: Glean API
1818
sourceNamespace: glean-api-specs
19-
sourceRevisionDigest: sha256:500649ecd919cc2dcfeb6c54fe552ddcf8628a42b2f67a2ef0f206ad8561a56c
20-
sourceBlobDigest: sha256:cb8902f4548ad637f07f6be9b7ef3f0d5fda8fe6f6540c7eea338bf4dde98413
19+
sourceRevisionDigest: sha256:fbc24d736b3742609eef3498d7b9a3efe5250a066c52406d98dd26cfa2c82db5
20+
sourceBlobDigest: sha256:d5bd946c56f7d16908a4b4d6b5283e7d0f89277972b48638d787f0bfe270dd1b
2121
codeSamplesNamespace: glean-api-specs-python-code-samples
22-
codeSamplesRevisionDigest: sha256:cc23275cb351da5ef6256061aed3868dab2d09e7764658ea22e4958928b42d8c
22+
codeSamplesRevisionDigest: sha256:b2fce00e6432f6556fc8fdd210112837a3a56691771f458083b78fdfffe8bf19
2323
workflow:
2424
workflowVersion: 1.0.0
2525
speakeasyVersion: latest

RELEASES.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -748,4 +748,14 @@ Based on:
748748
### Generated
749749
- [python v0.13.0] .
750750
### Releases
751-
- [PyPI v0.13.0] https://pypi.org/project/glean-api-client/0.13.0 - .
751+
- [PyPI v0.13.0] https://pypi.org/project/glean-api-client/0.13.0 - .
752+
753+
## 2026-06-09 03:36:50
754+
### Changes
755+
Based on:
756+
- OpenAPI Doc
757+
- Speakeasy CLI 1.773.1 (2.897.1) https://github.com/speakeasy-api/speakeasy
758+
### Generated
759+
- [python v0.13.1] .
760+
### Releases
761+
- [PyPI v0.13.1] https://pypi.org/project/glean-api-client/0.13.1 - .

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
[project]
33
name = "glean-api-client"
4-
version = "0.13.0"
4+
version = "0.13.1"
55
description = "Python Client SDK Generated by Speakeasy."
66
authors = [{ name = "Glean Technologies, Inc." },]
77
readme = "README-PYPI.md"

src/glean/api_client/_version.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
import importlib.metadata
44

55
__title__: str = "glean-api-client"
6-
__version__: str = "0.13.0"
6+
__version__: str = "0.13.1"
77
__openapi_doc_version__: str = "0.9.0"
8-
__gen_version__: str = "2.893.0"
9-
__user_agent__: str = "speakeasy-sdk/python 0.13.0 2.893.0 0.9.0 glean-api-client"
8+
__gen_version__: str = "2.897.1"
9+
__user_agent__: str = "speakeasy-sdk/python 0.13.1 2.897.1 0.9.0 glean-api-client"
1010

1111
try:
1212
if __package__ is not None:

src/glean/api_client/client_chat.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ def create(
140140
retry_config=retry_config,
141141
)
142142

143-
if utils.match_response(http_res, "200", "application/json"):
143+
if utils.match_response(http_res, ["200", "202"], "application/json"):
144144
return unmarshal_json_response(models.ChatResponse, http_res)
145145
if utils.match_response(http_res, ["400", "401", "408", "429", "4XX"], "*"):
146146
http_res_text = utils.stream_to_text(http_res)
@@ -281,7 +281,7 @@ async def create_async(
281281
retry_config=retry_config,
282282
)
283283

284-
if utils.match_response(http_res, "200", "application/json"):
284+
if utils.match_response(http_res, ["200", "202"], "application/json"):
285285
return unmarshal_json_response(models.ChatResponse, http_res)
286286
if utils.match_response(http_res, ["400", "401", "408", "429", "4XX"], "*"):
287287
http_res_text = await utils.stream_to_text_async(http_res)

0 commit comments

Comments
 (0)