Skip to content

Commit d49a49f

Browse files
committed
## Python SDK Changes Detected:
* `glean.client.documents.summarize()`: * `request.document_specs.[].[class]` **Changed** **Breaking** ⚠️ * `glean.client.documents.retrieve()`: * `request.document_specs.[].[class]` **Changed** **Breaking** ⚠️ * `response.documents.{}.[document].metadata.author.related_documents.[]` **Changed** * `glean.client.answers.create()`: * `request.data.added_roles.[]` **Changed** **Breaking** ⚠️ * `response.added_roles.[]` **Changed** * `glean.client.answers.update()`: * `request.added_roles.[]` **Changed** **Breaking** ⚠️ * `response.added_roles.[]` **Changed** * `glean.client.shortcuts.update()`: * `request.added_roles.[]` **Changed** **Breaking** ⚠️ * `response.shortcut.added_roles.[]` **Changed** * `glean.client.shortcuts.create()`: * `request.data.added_roles.[]` **Changed** **Breaking** ⚠️ * `response.shortcut.added_roles.[]` **Changed** * `glean.client.chat.create()`: * `request.messages.[].citations.[].source_document.metadata.author.related_documents.[]` **Changed** **Breaking** ⚠️ * `response.messages.[].citations.[].source_document.metadata.author.related_documents.[]` **Changed** * `glean.client.search.query()`: * `request.source_document.metadata.author.related_documents.[]` **Changed** **Breaking** ⚠️ * `response.results.[].structured_results.[].document.metadata` **Changed** * `glean.client.search.recommendations()`: * `request.source_document.metadata.author.related_documents.[]` **Changed** **Breaking** ⚠️ * `response.results.[].structured_results.[].document.metadata` **Changed** * `glean.client.search.query_as_admin()`: * `request.source_document.metadata.author.related_documents.[]` **Changed** **Breaking** ⚠️ * `response.results.[].structured_results.[].document.metadata` **Changed** * `glean.client.chat.create_stream()`: * `request.messages.[].citations.[].source_document.metadata.author.related_documents.[]` **Changed** **Breaking** ⚠️ * `glean.client.announcements.create()`: * `request.body.structured_list.[].document.metadata.author.related_documents.[]` **Changed** **Breaking** ⚠️ * `response.body.structured_list.[].document.metadata.author.related_documents.[]` **Changed** * `glean.client.collections.create()`: * `request.added_roles.[]` **Changed** **Breaking** ⚠️ * `response` **Changed** **Breaking** ⚠️ * `glean.client.announcements.update()`: * `request.body.structured_list.[].document.metadata.author.related_documents.[]` **Changed** **Breaking** ⚠️ * `response.body.structured_list.[].document.metadata.author.related_documents.[]` **Changed** * `glean.client.collections.update()`: * `request.added_roles.[]` **Changed** **Breaking** ⚠️ * `response.added_roles.[]` **Changed** * `glean.client.collections.add_items()`: `response.collection.added_roles.[]` **Changed** * `glean.client.search.autocomplete()`: `response.results.[].document.metadata.author.related_documents.[]` **Changed** * `glean.client.collections.list()`: `response.collections.[].added_roles.[]` **Changed** * `glean.client.collections.update_item()`: `response.collection.added_roles.[]` **Changed** * `glean.client.documents.retrieve_by_facets()`: `response.documents.[].metadata.author.related_documents.[]` **Changed** * `glean.client.collections.delete_item()`: `response.collection.added_roles.[]` **Changed** * `glean.client.insights.retrieve()`: `response.users.activity_insights.[].user.related_documents.[].query_suggestion` **Changed** * `glean.client.messages.retrieve()`: `response.search_response.results.[].structured_results.[].document.metadata` **Changed** * `glean.client.pins.update()`: `response.attribution.related_documents.[].query_suggestion` **Changed** * `glean.client.pins.retrieve()`: `response.pin.attribution.related_documents.[].query_suggestion` **Changed** * `glean.client.pins.list()`: `response.pins.[].attribution.related_documents.[].query_suggestion` **Changed** * `glean.client.pins.create()`: `response.attribution.related_documents.[].query_suggestion` **Changed** * `glean.client.chat.retrieve_files()`: `request.chat_id` **Added** * `glean.client.collections.retrieve()`: `response.collection.added_roles.[]` **Changed** * `glean.client.search.retrieve_feed()`: `response.results.[].primary_entry` **Changed** * `glean.client.chat.list()`: `response.chat_results.[].chat.created_by.related_documents.[].query_suggestion` **Changed** * `glean.client.chat.retrieve()`: `response.chat_result.chat` **Changed** * `glean.client.entities.list()`: `response.results.[].related_documents.[].query_suggestion` **Changed** * `glean.client.entities.read_people()`: `response.results.[].related_documents.[].query_suggestion` **Changed** * `glean.client.answers.list()`: `response.answer_results.[].answer.added_roles.[]` **Changed** * `glean.client.shortcuts.retrieve()`: `response.shortcut.added_roles.[]` **Changed** * `glean.client.shortcuts.list()`: `response.shortcuts.[].added_roles.[]` **Changed** * `glean.client.answers.retrieve()`: `response.answer_result.answer.added_roles.[]` **Changed** * `glean.client.verification.add_reminder()`: `response.metadata.last_verifier.related_documents.[].query_suggestion` **Changed** * `glean.client.verification.list()`: `response.documents.[].metadata.last_verifier.related_documents.[].query_suggestion` **Changed** * `glean.client.verification.verify()`: `response.metadata.last_verifier.related_documents.[].query_suggestion` **Changed**
1 parent 8bc35c4 commit d49a49f

File tree

88 files changed

+1594
-962
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

88 files changed

+1594
-962
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
.env
2+
.env.local
13
**/__pycache__/
24
**/.speakeasy/temp/
35
**/.speakeasy/logs/

.speakeasy/gen.lock

Lines changed: 33 additions & 16 deletions
Large diffs are not rendered by default.

.speakeasy/gen.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,15 @@ generation:
1919
auth:
2020
oAuth2ClientCredentialsEnabled: false
2121
oAuth2PasswordEnabled: false
22+
hoistGlobalSecurity: true
2223
mockServer:
2324
disabled: false
2425
tests:
2526
generateTests: true
2627
generateNewTests: true
2728
skipResponseBodyAssertions: true
2829
python:
29-
version: 0.7.3
30+
version: 0.7.4
3031
additionalDependencies:
3132
dev: {}
3233
main: {}
@@ -65,4 +66,5 @@ python:
6566
pytestFilterWarnings: []
6667
pytestTimeout: 0
6768
responseFormat: flat
69+
sseFlatResponse: false
6870
templateVersion: v2

.speakeasy/glean-merged-spec.yaml

Lines changed: 146 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4261,18 +4261,28 @@ components:
42614261
tokenType: Bearer
42624262
authUser: "1"
42634263
DocumentSpec:
4264+
x-multiple-discriminators: true
42644265
oneOf:
42654266
- type: object
4267+
required:
4268+
- url
42664269
properties:
42674270
url:
42684271
type: string
4272+
x-discriminator: true
42694273
description: The URL of the document.
42704274
- type: object
4275+
required:
4276+
- id
42714277
properties:
42724278
id:
42734279
type: string
4280+
x-discriminator: true
42744281
description: The ID of the document.
42754282
- type: object
4283+
required:
4284+
- contentId
4285+
- ugcType
42764286
properties:
42774287
ugcType:
42784288
type: string
@@ -4281,10 +4291,33 @@ components:
42814291
- ANSWERS
42824292
- COLLECTIONS
42834293
- SHORTCUTS
4294+
- CHATS
42844295
description: The type of the user generated content (UGC datasource).
42854296
contentId:
42864297
type: integer
4287-
description: The id for user generated content.
4298+
x-discriminator: true
4299+
description: The numeric id for user generated content. Used for ANNOUNCEMENTS, ANSWERS, COLLECTIONS, SHORTCUTS.
4300+
docType:
4301+
type: string
4302+
description: The specific type of the user generated content type.
4303+
- type: object
4304+
required:
4305+
- ugcType
4306+
- ugcId
4307+
properties:
4308+
ugcType:
4309+
type: string
4310+
enum:
4311+
- ANNOUNCEMENTS
4312+
- ANSWERS
4313+
- COLLECTIONS
4314+
- SHORTCUTS
4315+
- CHATS
4316+
description: The type of the user generated content (UGC datasource).
4317+
ugcId:
4318+
type: string
4319+
x-discriminator: true
4320+
description: The string id for user generated content. Used for CHATS.
42884321
docType:
42894322
type: string
42904323
description: The specific type of the user generated content type.
@@ -4868,6 +4901,9 @@ components:
48684901
datasourceInstance:
48694902
type: string
48704903
description: Datasource instance if the group belongs to one e.g. external groups.
4904+
provisioningId:
4905+
type: string
4906+
description: identifier for greenlist provisioning, aka sciokey
48714907
UserRole:
48724908
type: string
48734909
description: A user's role with respect to a specific document.
@@ -7287,7 +7323,7 @@ components:
72877323
additionalProperties:
72887324
$ref: "#/components/schemas/WriteActionParameter"
72897325
ChatMessageFragment:
7290-
description: Represents a part of a ChatMessage that originates from a single action/tool. It is designed to support rich data formats beyond simple text, allowing for a more dynamic and interactive chat experience. Each fragment can include various types of content, such as text, search queries, action information, and more. Also, each ChatMessageFragment should only have one of structuredResults, querySuggestion, writeAction, followupAction, or file.
7326+
description: Represents a part of a ChatMessage that originates from a single action/tool. It is designed to support rich data formats beyond simple text, allowing for a more dynamic and interactive chat experience. Each fragment can include various types of content, such as text, search queries, action information, and more. Also, each ChatMessageFragment should only have one of structuredResults, querySuggestion, writeAction, followupAction, agentRecommendation or file.
72917327
allOf:
72927328
- $ref: "#/components/schemas/Result"
72937329
- type: object
@@ -7354,6 +7390,7 @@ components:
73547390
ERROR: A message that describes an error while processing the request.
73557391
HEADING: A heading message used to distinguish different sections of the holistic response.
73567392
WARNING: A warning message to be shown to the user.
7393+
SERVER_TOOL: A message used to for server-side tool auth/use, for request and response.
73577394
enum:
73587395
- UPDATE
73597396
- CONTENT
@@ -7363,6 +7400,7 @@ components:
73637400
- ERROR
73647401
- HEADING
73657402
- WARNING
7403+
- SERVER_TOOL
73667404
hasMoreFragments:
73677405
deprecated: true
73687406
type: boolean
@@ -7489,12 +7527,18 @@ components:
74897527
description: A historical representation of a series of chat messages a user had with Glean Assistant.
74907528
allOf:
74917529
- $ref: "#/components/schemas/ChatMetadata"
7530+
- $ref: "#/components/schemas/PermissionedObject"
74927531
properties:
74937532
messages:
74947533
type: array
74957534
items:
74967535
$ref: "#/components/schemas/ChatMessage"
74977536
description: The chat messages within a Chat.
7537+
roles:
7538+
type: array
7539+
items:
7540+
$ref: "#/components/schemas/UserRoleSpecification"
7541+
description: A list of roles for this Chat.
74987542
ChatResult:
74997543
properties:
75007544
chat:
@@ -7558,6 +7602,9 @@ components:
75587602
items:
75597603
type: string
75607604
description: IDs of files to fetch.
7605+
chatId:
7606+
type: string
7607+
description: The ID of the chat that contains the chat file.
75617608
GetChatFilesResponse:
75627609
properties:
75637610
files:
@@ -7808,9 +7855,12 @@ components:
78087855
- NO_PERMISSIONS
78097856
CreateCollectionResponse:
78107857
allOf:
7811-
- $ref: "#/components/schemas/Collection"
7812-
- $ref: "#/components/schemas/CollectionError"
78137858
- type: object
7859+
anyOf:
7860+
- required:
7861+
- collection
7862+
- required:
7863+
- error
78147864
properties:
78157865
collection:
78167866
$ref: "#/components/schemas/Collection"
@@ -9153,6 +9203,7 @@ components:
91539203
- ZERO_STATE_WORKFLOW_POPULAR
91549204
- ZERO_STATE_WORKFLOW_SUGGESTION
91559205
- PERSONALIZED_CHAT_SUGGESTION
9206+
- DAILY_DIGEST
91569207
description: Categories of content requested. An allowlist gives flexibility to request content separately or together.
91579208
requestOptions:
91589209
$ref: "#/components/schemas/FeedRequestOptions"
@@ -9308,6 +9359,91 @@ components:
93089359
type: array
93099360
items:
93109361
$ref: "#/components/schemas/GeneratedAttachment"
9362+
SectionType:
9363+
type: string
9364+
description: Type of the section. This defines how the section should be interpreted and rendered in the digest.
9365+
x-enumDescriptions:
9366+
CHANNEL: A standard section for channel-based digests (e.g. from Slack, Teams).
9367+
MENTIONS: A dedicated section that surfaces user mentions (actionable, informative, or all).
9368+
TOPIC: A section driven by a generic topic, not tied to any specific channel or instance.
9369+
enum:
9370+
- CHANNEL
9371+
- MENTIONS
9372+
- TOPIC
9373+
UpdateType:
9374+
type: string
9375+
description: Optional type classification for the update.
9376+
x-enumDescriptions:
9377+
ACTIONABLE: Updates that require user attention or action
9378+
INFORMATIVE: Updates that are purely informational
9379+
enum:
9380+
- ACTIONABLE
9381+
- INFORMATIVE
9382+
DigestUpdate:
9383+
type: object
9384+
properties:
9385+
url:
9386+
type: string
9387+
description: URL link to the content or document.
9388+
title:
9389+
type: string
9390+
description: Title or headline of the update.
9391+
datasource:
9392+
type: string
9393+
description: Name or identifier of the data source (e.g., slack, confluence, etc.).
9394+
summary:
9395+
type: string
9396+
description: Brief summary or description of the update content.
9397+
type:
9398+
$ref: "#/components/schemas/UpdateType"
9399+
DigestSection:
9400+
type: object
9401+
required:
9402+
- id
9403+
- type
9404+
- updates
9405+
properties:
9406+
id:
9407+
type: string
9408+
description: Unique identifier for the digest section.
9409+
type:
9410+
$ref: "#/components/schemas/SectionType"
9411+
displayName:
9412+
type: string
9413+
description: Human-readable name for the digest section.
9414+
channelName:
9415+
type: string
9416+
description: Name of the channel (applicable for CHANNEL type sections). Used to display in the frontend.
9417+
instanceId:
9418+
type: string
9419+
description: Instance identifier for the channel or workspace. Used for constructing channel URLs to display in the frontend.
9420+
url:
9421+
type: string
9422+
description: Optional URL for the digest section. Should be populated only if the section is a CHANNEL type section.
9423+
updates:
9424+
type: array
9425+
items:
9426+
$ref: "#/components/schemas/DigestUpdate"
9427+
description: List of updates within this digest section.
9428+
Digest:
9429+
type: object
9430+
properties:
9431+
podcastFileId:
9432+
type: string
9433+
description: Identifier for the podcast file generated from this digest content.
9434+
podcastDuration:
9435+
type: number
9436+
format: float
9437+
description: Duration of the podcast file in seconds.
9438+
digestDate:
9439+
type: string
9440+
description: The date this digest covers, in YYYY-MM-DD format. Represents the specific day for which the digest content and updates were compiled. This can be empty if the digest is not yet available.
9441+
example: "2025-09-03"
9442+
sections:
9443+
type: array
9444+
items:
9445+
$ref: "#/components/schemas/DigestSection"
9446+
description: Array of digest sections from which the podcast was created.
93119447
ChatSuggestion:
93129448
properties:
93139449
query:
@@ -9530,6 +9666,7 @@ components:
95309666
- ZERO_STATE_STATIC_WORKFLOW_SUGGESTION
95319667
- ZERO_STATE_AGENT_SUGGESTION
95329668
- PERSONALIZED_CHAT_SUGGESTION
9669+
- DAILY_DIGEST
95339670
description: Type of the justification.
95349671
justification:
95359672
type: string
@@ -9546,6 +9683,8 @@ components:
95469683
$ref: "#/components/schemas/CalendarEvent"
95479684
announcement:
95489685
$ref: "#/components/schemas/Announcement"
9686+
digest:
9687+
$ref: "#/components/schemas/Digest"
95499688
collection:
95509689
$ref: "#/components/schemas/Collection"
95519690
collectionItem:
@@ -9598,6 +9737,7 @@ components:
95989737
- ZERO_STATE_WORKFLOW_POPULAR
95999738
- ZERO_STATE_WORKFLOW_SUGGESTION
96009739
- PERSONALIZED_CHAT_SUGGESTION
9740+
- DAILY_DIGEST
96019741
description: Category of the result, one of the requested categories in incoming request.
96029742
primaryEntry:
96039743
$ref: "#/components/schemas/FeedEntry"
@@ -11595,6 +11735,7 @@ components:
1159511735
- EXTERNAL_SHORTCUT
1159611736
- ENTITY
1159711737
- CALENDAR
11738+
- AGENTS
1159811739
description: The document category of this object type.
1159911740
propertyDefinitions:
1160011741
type: array
@@ -11649,6 +11790,7 @@ components:
1164911790
- EXTERNAL_SHORTCUT
1165011791
- ENTITY
1165111792
- CALENDAR
11793+
- AGENTS
1165211794
default: UNCATEGORIZED
1165311795
description: The type of this datasource. It is an important signal for relevance and must be specified and cannot be UNCATEGORIZED. Please refer to [this](https://developers.glean.com/docs/indexing_api_datasource_category/) for more details.
1165411796
urlRegex:

.speakeasy/workflow.lock

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
speakeasyVersion: 1.606.9
1+
speakeasyVersion: 1.622.1
22
sources:
33
Glean API:
44
sourceNamespace: glean-api-specs
5-
sourceRevisionDigest: sha256:35193fded9c9797576c742f6e93e2e3e9d507aa2ab2c55a5458825561552f33e
6-
sourceBlobDigest: sha256:1dc638c477afb69ccc30ba6482d7ac2e7237238d44638da8d0c4ece45f36d416
5+
sourceRevisionDigest: sha256:3c05b922fcc476380389e53d62c9604ef27de784d9e68fc0e75ed412310d5007
6+
sourceBlobDigest: sha256:6e213c122174f2e94a93fa23c1cb28b68664ce3408a9d52ec013582354d7bf64
77
tags:
88
- latest
9-
- speakeasy-sdk-regen-1755200990
9+
- speakeasy-sdk-regen-1756833812
1010
Glean Client API:
1111
sourceNamespace: glean-client-api
1212
sourceRevisionDigest: sha256:4edc63ad559e4f2c9fb9ebf5edaaaaa9269f1874d271cfd84b441d6dacac43d2
@@ -17,10 +17,10 @@ targets:
1717
glean:
1818
source: Glean API
1919
sourceNamespace: glean-api-specs
20-
sourceRevisionDigest: sha256:35193fded9c9797576c742f6e93e2e3e9d507aa2ab2c55a5458825561552f33e
21-
sourceBlobDigest: sha256:1dc638c477afb69ccc30ba6482d7ac2e7237238d44638da8d0c4ece45f36d416
20+
sourceRevisionDigest: sha256:3c05b922fcc476380389e53d62c9604ef27de784d9e68fc0e75ed412310d5007
21+
sourceBlobDigest: sha256:6e213c122174f2e94a93fa23c1cb28b68664ce3408a9d52ec013582354d7bf64
2222
codeSamplesNamespace: glean-api-specs-python-code-samples
23-
codeSamplesRevisionDigest: sha256:ec1033795495ed5feb092f4ca786534382c763ff1787a997db77303ef0539ad9
23+
codeSamplesRevisionDigest: sha256:98a13a63cdf737a90dd1b7477ea6c0ce8a80bbd62c3e5bdce09ca7d65585e69b
2424
workflow:
2525
workflowVersion: 1.0.0
2626
speakeasyVersion: latest

RELEASES.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,4 +208,14 @@ Based on:
208208
### Generated
209209
- [python v0.7.3] .
210210
### Releases
211-
- [PyPI v0.7.3] https://pypi.org/project/glean/0.7.3 - .
211+
- [PyPI v0.7.3] https://pypi.org/project/glean/0.7.3 - .
212+
213+
## 2025-09-23 00:45:07
214+
### Changes
215+
Based on:
216+
- OpenAPI Doc
217+
- Speakeasy CLI 1.622.1 (2.709.0) https://github.com/speakeasy-api/speakeasy
218+
### Generated
219+
- [python v0.7.4] .
220+
### Releases
221+
- [PyPI v0.7.4] https://pypi.org/project/glean/0.7.4 - .

docs/models/chat.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,6 @@ A historical representation of a series of chat messages a user had with Glean A
1515
| `application_id` | *Optional[str]* | :heavy_minus_sign: | The ID of the AI App that this Chat is associated to. | |
1616
| `application_name` | *Optional[str]* | :heavy_minus_sign: | The display name of the AI App that this Chat is associated to. | |
1717
| `icon` | [Optional[models.IconConfig]](../models/iconconfig.md) | :heavy_minus_sign: | Defines how to render an icon | {<br/>"color": "#343CED",<br/>"key": "person_icon",<br/>"iconType": "GLYPH",<br/>"name": "user"<br/>} |
18-
| `messages` | List[[models.ChatMessage](../models/chatmessage.md)] | :heavy_minus_sign: | The chat messages within a Chat. | |
18+
| `permissions` | [Optional[models.ObjectPermissions]](../models/objectpermissions.md) | :heavy_minus_sign: | N/A | |
19+
| `messages` | List[[models.ChatMessage](../models/chatmessage.md)] | :heavy_minus_sign: | The chat messages within a Chat. | |
20+
| `roles` | List[[models.UserRoleSpecification](../models/userrolespecification.md)] | :heavy_minus_sign: | A list of roles for this Chat. | |

0 commit comments

Comments
 (0)