Skip to content

Commit b68b8eb

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

9 files changed

Lines changed: 62 additions & 34 deletions

File tree

.speakeasy/gen.lock

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
lockVersion: 2.0.0
22
id: 3e3290ca-0ee8-4981-b1bc-14536048fa63
33
management:
4-
docChecksum: a20695749796cddfd0cc7c0e4a12a7ab
4+
docChecksum: f945598f65bd3d18fa64e0f4961a6114
55
docVersion: 0.9.0
6-
speakeasyVersion: 1.770.0
6+
speakeasyVersion: 1.771.0
77
generationVersion: 2.893.0
8-
releaseVersion: 0.13.0
9-
configChecksum: fbdf6564dabfc66d8d43921f9aab9d41
8+
releaseVersion: 0.13.1
9+
configChecksum: 35fc36fe973274c5047a95ab22958709
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: 6606fbac-f47d-4adc-90d4-a75243e7a738
15+
pristine_commit_hash: 7cd0b34808370895491ce22b6920aa9a34a676f2
16+
pristine_tree_hash: 6c4c617fb6ae800fd0160f69a1957f5299f47c70
1717
features:
1818
python:
1919
acceptHeaders: 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:3fb5ef536d5517f7b3844b55ca2bb33f76dfd9e5
3022+
pristine_git_object: 3c6cee980ea440cb49bcadfccec34eb7779cc60b
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
@@ -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:6244d4da1522f443776e78aeb31dd83ebdc90c42
8602+
pristine_git_object: 2b5d1f38b094214933fc3b8da79ff8ed979c5122
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: 1 addition & 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: {}

.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: 8041c7f73ed7b1a8bb52c21b4736355b3d3ac705
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: bcfb45a263878a9d08bcb4117a44e970b498dc10
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.771.0
22
sources:
33
Glean API:
44
sourceNamespace: glean-api-specs
5-
sourceRevisionDigest: sha256:500649ecd919cc2dcfeb6c54fe552ddcf8628a42b2f67a2ef0f206ad8561a56c
6-
sourceBlobDigest: sha256:cb8902f4548ad637f07f6be9b7ef3f0d5fda8fe6f6540c7eea338bf4dde98413
5+
sourceRevisionDigest: sha256:847b1f126f78c86bb63c1c27b6053ba6a9afe8855aab3e82d1f7f71501a5e840
6+
sourceBlobDigest: sha256:b685acc261c79f1c7579b236eaff1ea63982eb1f4be4c318bd6c9a24998c6132
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:847b1f126f78c86bb63c1c27b6053ba6a9afe8855aab3e82d1f7f71501a5e840
20+
sourceBlobDigest: sha256:b685acc261c79f1c7579b236eaff1ea63982eb1f4be4c318bd6c9a24998c6132
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-05 17:28:40
754+
### Changes
755+
Based on:
756+
- OpenAPI Doc
757+
- Speakeasy CLI 1.771.0 (2.893.0) 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: 2 additions & 2 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"
88
__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"
9+
__user_agent__: str = "speakeasy-sdk/python 0.13.1 2.893.0 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)

tests/test_summarize.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,11 @@ def test_summarize_summarize():
1818
res = glean.client.documents.summarize(
1919
document_specs=[
2020
{
21-
"ugc_type": models.DocumentSpecUgcType2.ANNOUNCEMENTS,
21+
"ugc_type": models.DocumentSpecUgcType2.ARTIFACTS,
2222
"ugc_id": "<id>",
2323
},
2424
{
25-
"ugc_type": models.DocumentSpecUgcType1.COLLECTIONS,
26-
"content_id": 885812,
25+
"id": "<id>",
2726
},
2827
]
2928
)

0 commit comments

Comments
 (0)