diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 2cadafa..5a13cfa 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,12 +1,12 @@ lockVersion: 2.0.0 id: 3e3290ca-0ee8-4981-b1bc-14536048fa63 management: - docChecksum: 30752ad325475357749711c885ecb81f + docChecksum: a88d9955d9cbdc1c97388b62e19647f9 docVersion: 0.9.0 - speakeasyVersion: 1.638.0 - generationVersion: 2.728.0 - releaseVersion: 0.11.0 - configChecksum: 07f0a9ba148add2a46e7e1b2f680ddab + speakeasyVersion: 1.640.0 + generationVersion: 2.730.5 + releaseVersion: 0.11.1 + configChecksum: bb1467025d7bf2904c0bb214996b3c72 repoURL: https://github.com/gleanwork/api-client-python.git installationURL: https://github.com/gleanwork/api-client-python.git published: true @@ -2742,4 +2742,4 @@ generatedTests: editcollection: "2025-06-12T19:13:52-04:00" createshortcut: "2025-06-12T19:13:52-04:00" updateshortcut: "2025-06-12T19:13:52-04:00" -releaseNotes: "## Python SDK Changes Detected:\n* `glean.client.chat.create()`: \n * `request.messages.[].agent_config.use_image_generation` **Added**\n * `response.messages.[].agent_config.use_image_generation` **Added**\n* `glean.client.chat.retrieve()`: `response.chat_result.chat.messages.[].agent_config.use_image_generation` **Added**\n* `glean.client.chat.create_stream()`: \n * `request.messages.[].agent_config.use_image_generation` **Added**\n" +releaseNotes: "## Python SDK Changes Detected:\n* `glean.client.announcements.create()`: \n * `request.body.structured_list.[].document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.body.structured_list.[].document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.announcements.update()`: \n * `request.body.structured_list.[].document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.body.structured_list.[].document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.answers.create()`: \n * `request.data.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.answers.update()`: \n * `request.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.answers.retrieve()`: `response.answer_result.answer.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.answers.list()`: `response.answer_results.[].answer.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.chat.create()`: \n * `request.messages.[].citations.[].source_document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.messages.[].citations.[].source_document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.chat.retrieve()`: `response.chat_result.chat.created_by.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.chat.list()`: `response.chat_results.[].chat.created_by.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.chat.create_stream()`: \n * `request.messages.[].citations.[].source_document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.collections.add_items()`: `response.collection.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.collections.create()`: \n * `request.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.[class].collection.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.collections.delete_item()`: `response.collection.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.collections.update()`: \n * `request.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.collections.update_item()`: `response.collection.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.collections.retrieve()`: `response.collection.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.collections.list()`: `response.collections.[].added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.documents.retrieve()`: `response.documents.{}` **Changed**\n* `glean.client.documents.retrieve_by_facets()`: `response.documents.[].metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.insights.retrieve()`: `response.users.activity_insights.[].user.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.messages.retrieve()`: `response.search_response.results.[].structured_results.[].chat` **Added**\n* `glean.client.pins.update()`: `response.attribution.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.pins.retrieve()`: `response.pin.attribution.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.pins.list()`: `response.pins.[].attribution.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.pins.create()`: `response.attribution.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.search.query_as_admin()`: \n * `request.source_document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.results.[].structured_results.[].chat` **Added**\n* `glean.client.search.autocomplete()`: `response.results.[].document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.search.retrieve_feed()`: `response.results.[].primary_entry.created_by.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.search.recommendations()`: \n * `request.source_document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.results.[].structured_results.[].chat` **Added**\n* `glean.client.search.query()`: \n * `request.source_document.metadata.author.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.results.[].structured_results.[].chat` **Added**\n* `glean.client.entities.list()`: `response.results.[].related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.entities.read_people()`: `response.results.[].related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.shortcuts.create()`: \n * `request.data.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.shortcut.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.shortcuts.retrieve()`: `response.shortcut.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.shortcuts.list()`: `response.shortcuts.[].added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.shortcuts.update()`: \n * `request.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n * `response.shortcut.added_roles.[].person.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.verification.add_reminder()`: `response.metadata.last_verifier.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.verification.list()`: `response.documents.[].metadata.last_verifier.related_documents.[].results.[].structured_results.[].chat` **Added**\n* `glean.client.verification.verify()`: `response.metadata.last_verifier.related_documents.[].results.[].structured_results.[].chat` **Added**\n" diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 27bea97..803b54d 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -29,7 +29,7 @@ generation: generateNewTests: true skipResponseBodyAssertions: true python: - version: 0.11.0 + version: 0.11.1 additionalDependencies: dev: {} main: {} diff --git a/.speakeasy/glean-merged-spec.yaml b/.speakeasy/glean-merged-spec.yaml index 1197d74..a75837a 100644 --- a/.speakeasy/glean-merged-spec.yaml +++ b/.speakeasy/glean-merged-spec.yaml @@ -3791,6 +3791,7 @@ components: - GENERATED_Q_AND_A - INLINE_MENU - NATIVE_RESULT + - PRISM - Q_AND_A - RELATED_QUESTIONS - REPORT_ISSUE @@ -3982,6 +3983,7 @@ components: - WORKFLOWS - SUMMARY - GENERAL + - PRISM - PROMPTS trackingTokens: type: array @@ -5810,6 +5812,72 @@ components: $ref: "#/components/schemas/QuerySuggestion" person: $ref: "#/components/schemas/Person" + IconConfig: + description: Defines how to render an icon + properties: + generatedBackgroundColorKey: + type: string + backgroundColor: + type: string + color: + type: string + key: + type: string + iconType: + enum: + - COLLECTION + - CUSTOM + - DATASOURCE + - DATASOURCE_INSTANCE + - FAVICON + - FILE_TYPE + - GENERATED_BACKGROUND + - GLYPH + - MIME_TYPE + - NO_ICON + - PERSON + - REACTIONS + - URL + masked: + type: boolean + description: Whether the icon should be masked based on current theme. + name: + type: string + description: The name of the icon if applicable, e.g. the glyph name for `IconType.GLYPH` icons. + url: + type: string + description: The URL to an image to be displayed if applicable, e.g. the URL for `iconType.URL` icons. + example: + color: "#343CED" + key: person_icon + iconType: GLYPH + name: user + ChatMetadata: + description: Metadata of a Chat a user had with Glean Assistant. This contains no actual conversational content. + properties: + id: + type: string + description: The opaque id of the Chat. + createTime: + type: integer + description: Server Unix timestamp of the creation time (in seconds since epoch UTC). + createdBy: + $ref: "#/components/schemas/Person" + description: The user who created this Chat. + updateTime: + type: integer + description: Server Unix timestamp of the update time (in seconds since epoch UTC). + name: + type: string + description: The name of the Chat. + applicationId: + type: string + description: The ID of the AI App that this Chat is associated to. + applicationName: + type: string + description: The display name of the AI App that this Chat is associated to. + icon: + $ref: "#/components/schemas/IconConfig" RelatedDocuments: properties: relation: @@ -5944,6 +6012,8 @@ components: $ref: "#/components/schemas/Shortcut" querySuggestions: $ref: "#/components/schemas/QuerySuggestionList" + chat: + $ref: "#/components/schemas/ChatMetadata" relatedDocuments: type: array items: @@ -6291,46 +6361,6 @@ components: enum: - DEFAULT - OUT_OF_OFFICE - IconConfig: - description: Defines how to render an icon - properties: - generatedBackgroundColorKey: - type: string - backgroundColor: - type: string - color: - type: string - key: - type: string - iconType: - enum: - - COLLECTION - - CUSTOM - - DATASOURCE - - DATASOURCE_INSTANCE - - FAVICON - - FILE_TYPE - - GENERATED_BACKGROUND - - GLYPH - - MIME_TYPE - - NO_ICON - - PERSON - - REACTIONS - - URL - masked: - type: boolean - description: Whether the icon should be masked based on current theme. - name: - type: string - description: The name of the icon if applicable, e.g. the glyph name for `IconType.GLYPH` icons. - url: - type: string - description: The URL to an image to be displayed if applicable, e.g. the URL for `iconType.URL` icons. - example: - color: "#343CED" - key: person_icon - iconType: GLYPH - name: user Badge: type: object description: Displays a user's accomplishment or milestone @@ -7528,32 +7558,6 @@ components: id: type: string description: The id of the Chat to be retrieved. - ChatMetadata: - description: Metadata of a Chat a user had with Glean Assistant. This contains no actual conversational content. - properties: - id: - type: string - description: The opaque id of the Chat. - createTime: - type: integer - description: Server Unix timestamp of the creation time (in seconds since epoch UTC). - createdBy: - $ref: "#/components/schemas/Person" - description: The user who created this Chat. - updateTime: - type: integer - description: Server Unix timestamp of the update time (in seconds since epoch UTC). - name: - type: string - description: The name of the Chat. - applicationId: - type: string - description: The ID of the AI App that this Chat is associated to. - applicationName: - type: string - description: The display name of the AI App that this Chat is associated to. - icon: - $ref: "#/components/schemas/IconConfig" Chat: description: A historical representation of a series of chat messages a user had with Glean Assistant. allOf: @@ -8053,6 +8057,8 @@ components: oneOf: - $ref: "#/components/schemas/Document" - type: object + required: + - error properties: error: type: string @@ -9305,6 +9311,7 @@ components: - ENTITY - GOLINK - HISTORY + - CHAT_HISTORY - NEW_CHAT - OPERATOR - OPERATOR_VALUE @@ -9418,6 +9425,7 @@ components: - ENTITY - GOLINK - HISTORY + - CHAT_HISTORY - NEW_CHAT - OPERATOR - OPERATOR_VALUE diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 39b20e1..fca463e 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,12 +1,12 @@ -speakeasyVersion: 1.638.0 +speakeasyVersion: 1.640.0 sources: Glean API: sourceNamespace: glean-api-specs - sourceRevisionDigest: sha256:d7d301aaa9efeddb264ed6ae3d4186b8472d376b021c3f22f96d0c15e79c0ee6 - sourceBlobDigest: sha256:a97d8110c742a097fb206e255a509eb2407aec24dc4e9fb8dcacc9a6a52eb134 + sourceRevisionDigest: sha256:9185501d1d898cebc99ebe94e5727ae819ab99ac594dd3e5b54c26212ea70b47 + sourceBlobDigest: sha256:a1f24fbc23ef924e4ec1955c22b78a7437b9c77b601fde39bcb9537daa8ce4cd tags: - latest - - speakeasy-sdk-regen-1760999713 + - speakeasy-sdk-regen-1761265125 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:d7d301aaa9efeddb264ed6ae3d4186b8472d376b021c3f22f96d0c15e79c0ee6 - sourceBlobDigest: sha256:a97d8110c742a097fb206e255a509eb2407aec24dc4e9fb8dcacc9a6a52eb134 + sourceRevisionDigest: sha256:9185501d1d898cebc99ebe94e5727ae819ab99ac594dd3e5b54c26212ea70b47 + sourceBlobDigest: sha256:a1f24fbc23ef924e4ec1955c22b78a7437b9c77b601fde39bcb9537daa8ce4cd codeSamplesNamespace: glean-api-specs-python-code-samples - codeSamplesRevisionDigest: sha256:abdef7ef88aa0c1f53e27fbeb7135b40310218f3614256f70532ef9d39af53e5 + codeSamplesRevisionDigest: sha256:4e1cc49586d643adff420c664d0a7b9142acdb353658039e7f9282846611b82f workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/RELEASES.md b/RELEASES.md index 3f3bdfb..cc2fd60 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -318,4 +318,14 @@ Based on: ### Generated - [python v0.11.0] . ### Releases -- [PyPI v0.11.0] https://pypi.org/project/glean/0.11.0 - . \ No newline at end of file +- [PyPI v0.11.0] https://pypi.org/project/glean/0.11.0 - . + +## 2025-10-28 01:27:38 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.640.0 (2.730.5) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v0.11.1] . +### Releases +- [PyPI v0.11.1] https://pypi.org/project/glean/0.11.1 - . \ No newline at end of file diff --git a/docs/models/autocompleterequestresulttype.md b/docs/models/autocompleterequestresulttype.md index dbdfe63..ead3f82 100644 --- a/docs/models/autocompleterequestresulttype.md +++ b/docs/models/autocompleterequestresulttype.md @@ -13,6 +13,7 @@ | `ENTITY` | ENTITY | | `GOLINK` | GOLINK | | `HISTORY` | HISTORY | +| `CHAT_HISTORY` | CHAT_HISTORY | | `NEW_CHAT` | NEW_CHAT | | `OPERATOR` | OPERATOR | | `OPERATOR_VALUE` | OPERATOR_VALUE | diff --git a/docs/models/autocompleteresultresulttype.md b/docs/models/autocompleteresultresulttype.md index 5052245..bb8a189 100644 --- a/docs/models/autocompleteresultresulttype.md +++ b/docs/models/autocompleteresultresulttype.md @@ -13,6 +13,7 @@ | `ENTITY` | ENTITY | | `GOLINK` | GOLINK | | `HISTORY` | HISTORY | +| `CHAT_HISTORY` | CHAT_HISTORY | | `NEW_CHAT` | NEW_CHAT | | `OPERATOR` | OPERATOR | | `OPERATOR_VALUE` | OPERATOR_VALUE | diff --git a/docs/models/documentorerror.md b/docs/models/documentorerror.md index e7d5753..0d3d2cb 100644 --- a/docs/models/documentorerror.md +++ b/docs/models/documentorerror.md @@ -5,4 +5,4 @@ | Field | Type | Required | Description | | --------------------------- | --------------------------- | --------------------------- | --------------------------- | -| `error` | *Optional[str]* | :heavy_minus_sign: | The text for error, reason. | \ No newline at end of file +| `error` | *str* | :heavy_check_mark: | The text for error, reason. | \ No newline at end of file diff --git a/docs/models/feedbackcategory.md b/docs/models/feedbackcategory.md index 78686ed..0cd81ec 100644 --- a/docs/models/feedbackcategory.md +++ b/docs/models/feedbackcategory.md @@ -17,4 +17,5 @@ The feature category to which the feedback applies. These should be broad produc | `WORKFLOWS` | WORKFLOWS | | `SUMMARY` | SUMMARY | | `GENERAL` | GENERAL | +| `PRISM` | PRISM | | `PROMPTS` | PROMPTS | \ No newline at end of file diff --git a/docs/models/manualfeedbackinfosource.md b/docs/models/manualfeedbackinfosource.md index e3a6fd6..04f11e1 100644 --- a/docs/models/manualfeedbackinfosource.md +++ b/docs/models/manualfeedbackinfosource.md @@ -19,6 +19,7 @@ The source associated with the Feedback.event.MANUAL_FEEDBACK event. | `GENERATED_Q_AND_A` | GENERATED_Q_AND_A | | `INLINE_MENU` | INLINE_MENU | | `NATIVE_RESULT` | NATIVE_RESULT | +| `PRISM` | PRISM | | `Q_AND_A` | Q_AND_A | | `RELATED_QUESTIONS` | RELATED_QUESTIONS | | `REPORT_ISSUE` | REPORT_ISSUE | diff --git a/docs/models/structuredresult.md b/docs/models/structuredresult.md index e632317..1c1798d 100644 --- a/docs/models/structuredresult.md +++ b/docs/models/structuredresult.md @@ -22,6 +22,7 @@ A single object that can support any object in the work graph. Only a single obj | `code` | [Optional[models.Code]](../models/code.md) | :heavy_minus_sign: | N/A | {
"repoName": "scio",
"fileName": "README.md",
"matches": [
{
"lineNumber": 1,
"content": "Welcome to the beginning",
"ranges": []
},
{
"lineNumber": 2,
"content": "Second line of the file",
"ranges": []
},
{
"lineNumber": 3,
"content": "hello world hello world",
"ranges": [
{
"startindex": 0,
"endIndex": 5
},
{
"startIndex": 12,
"endIndex": 17
}
]
}
]
} | | `shortcut` | [Optional[models.Shortcut]](../models/shortcut.md) | :heavy_minus_sign: | N/A | | | `query_suggestions` | [Optional[models.QuerySuggestionList]](../models/querysuggestionlist.md) | :heavy_minus_sign: | N/A | | +| `chat` | [Optional[models.ChatMetadata]](../models/chatmetadata.md) | :heavy_minus_sign: | Metadata of a Chat a user had with Glean Assistant. This contains no actual conversational content. | | | `related_documents` | List[[models.RelatedDocuments](../models/relateddocuments.md)] | :heavy_minus_sign: | A list of documents related to this structured result. | | | `related_question` | [Optional[models.RelatedQuestion]](../models/relatedquestion.md) | :heavy_minus_sign: | N/A | | | `disambiguation` | [Optional[models.Disambiguation]](../models/disambiguation.md) | :heavy_minus_sign: | A disambiguation between multiple entities with the same name | | diff --git a/pyproject.toml b/pyproject.toml index 3cce13d..f8bb450 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "glean-api-client" -version = "0.11.0" +version = "0.11.1" description = "Python Client SDK Generated by Speakeasy." authors = [{ name = "Glean Technologies, Inc." }] license = "MIT" diff --git a/speakeasyusagegen/.speakeasy/logs/naming.log b/speakeasyusagegen/.speakeasy/logs/naming.log index 82487f0..dc36452 100644 --- a/speakeasyusagegen/.speakeasy/logs/naming.log +++ b/speakeasyusagegen/.speakeasy/logs/naming.log @@ -536,6 +536,7 @@ CreateAnnouncementRequest (startTime: date-time, endTime: date-time, title: stri AppResult (datasource: string, docType: string, mimeType: string ...) Code (repoName: string, fileName: string, fileUrl: string ...) CodeLine (lineNumber: integer, content: string, ranges: array) + ChatMetadata (id: string, createTime: integer, createdBy: Person ...) RelatedQuestion (question: string, answer: string, ranges: array) Disambiguation (name: string, id: string, type: EntityType) EntityType (enum: PERSON, PROJECT, CUSTOMER) @@ -633,7 +634,6 @@ ListchatsRequest (timezoneOffset: integer) ListchatsResponse (HttpMeta: HTTPMetadata, ListChatsResponse: ListChatsResponse) ListChatsResponse (chatResults: array) ChatMetadataResult (chat: ChatMetadata, trackingToken: string) - ChatMetadata (id: string, createTime: integer, createdBy: Person ...) GetchatapplicationRequest (timezoneOffset: integer, GetChatApplicationRequest: GetChatApplicationRequest) GetChatApplicationRequest (id: string) GetchatapplicationResponse (HttpMeta: HTTPMetadata, GetChatApplicationResponse: GetChatApplicationResponse) diff --git a/src/glean/api_client/_version.py b/src/glean/api_client/_version.py index 91493c6..cfc1399 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" -__version__: str = "0.11.0" +__version__: str = "0.11.1" __openapi_doc_version__: str = "0.9.0" -__gen_version__: str = "2.728.0" -__user_agent__: str = "speakeasy-sdk/python 0.11.0 2.728.0 0.9.0 glean" +__gen_version__: str = "2.730.5" +__user_agent__: str = "speakeasy-sdk/python 0.11.1 2.730.5 0.9.0 glean" try: if __package__ is not None: diff --git a/src/glean/api_client/models/__init__.py b/src/glean/api_client/models/__init__.py index 5223cdd..94bdee9 100644 --- a/src/glean/api_client/models/__init__.py +++ b/src/glean/api_client/models/__init__.py @@ -11,6 +11,7 @@ ) from .calendarattendees import CalendarAttendees, CalendarAttendeesTypedDict from .channelinviteinfo import ChannelInviteInfo, ChannelInviteInfoTypedDict +from .chatmetadata import ChatMetadata, ChatMetadataTypedDict from .clustergroup import ClusterGroup, ClusterGroupTypedDict from .code import Code, CodeTypedDict from .codeline import CodeLine, CodeLineTypedDict @@ -244,7 +245,6 @@ from .chatmessage import Author, ChatMessage, ChatMessageTypedDict, MessageType from .chatmessagecitation import ChatMessageCitation, ChatMessageCitationTypedDict from .chatmessagefragment import ChatMessageFragment, ChatMessageFragmentTypedDict - from .chatmetadata import ChatMetadata, ChatMetadataTypedDict from .chatmetadataresult import ChatMetadataResult, ChatMetadataResultTypedDict from .chatop import ChatRequestRequest, ChatRequestRequestTypedDict from .chatrequest import ChatRequest, ChatRequestTypedDict @@ -1254,6 +1254,7 @@ SearchResultSnippet.model_rebuild() StructuredResult.model_rebuild() RelatedQuestion.model_rebuild() +ChatMetadata.model_rebuild() Shortcut.model_rebuild() UserRoleSpecification.model_rebuild() Code.model_rebuild() @@ -2467,8 +2468,6 @@ "ChatMessageCitationTypedDict": ".chatmessagecitation", "ChatMessageFragment": ".chatmessagefragment", "ChatMessageFragmentTypedDict": ".chatmessagefragment", - "ChatMetadata": ".chatmetadata", - "ChatMetadataTypedDict": ".chatmetadata", "ChatMetadataResult": ".chatmetadataresult", "ChatMetadataResultTypedDict": ".chatmetadataresult", "ChatRequestRequest": ".chatop", diff --git a/src/glean/api_client/models/autocompleterequest.py b/src/glean/api_client/models/autocompleterequest.py index a0f1892..190f2f7 100644 --- a/src/glean/api_client/models/autocompleterequest.py +++ b/src/glean/api_client/models/autocompleterequest.py @@ -19,6 +19,7 @@ class AutocompleteRequestResultType(str, Enum): ENTITY = "ENTITY" GOLINK = "GOLINK" HISTORY = "HISTORY" + CHAT_HISTORY = "CHAT_HISTORY" NEW_CHAT = "NEW_CHAT" OPERATOR = "OPERATOR" OPERATOR_VALUE = "OPERATOR_VALUE" diff --git a/src/glean/api_client/models/autocompleteresult.py b/src/glean/api_client/models/autocompleteresult.py index dc4f602..62c7c5a 100644 --- a/src/glean/api_client/models/autocompleteresult.py +++ b/src/glean/api_client/models/autocompleteresult.py @@ -22,6 +22,7 @@ class AutocompleteResultResultType(str, Enum): ENTITY = "ENTITY" GOLINK = "GOLINK" HISTORY = "HISTORY" + CHAT_HISTORY = "CHAT_HISTORY" NEW_CHAT = "NEW_CHAT" OPERATOR = "OPERATOR" OPERATOR_VALUE = "OPERATOR_VALUE" diff --git a/src/glean/api_client/models/chatmetadata.py b/src/glean/api_client/models/chatmetadata.py index dc26133..5d28d67 100644 --- a/src/glean/api_client/models/chatmetadata.py +++ b/src/glean/api_client/models/chatmetadata.py @@ -2,12 +2,14 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict -from .person import Person, PersonTypedDict from glean.api_client.types import BaseModel import pydantic -from typing import Optional +from typing import Optional, TYPE_CHECKING from typing_extensions import Annotated, NotRequired, TypedDict +if TYPE_CHECKING: + from .person import Person, PersonTypedDict + class ChatMetadataTypedDict(TypedDict): r"""Metadata of a Chat a user had with Glean Assistant. This contains no actual conversational content.""" @@ -16,7 +18,7 @@ class ChatMetadataTypedDict(TypedDict): r"""The opaque id of the Chat.""" create_time: NotRequired[int] r"""Server Unix timestamp of the creation time (in seconds since epoch UTC).""" - created_by: NotRequired[PersonTypedDict] + created_by: NotRequired["PersonTypedDict"] update_time: NotRequired[int] r"""Server Unix timestamp of the update time (in seconds since epoch UTC).""" name: NotRequired[str] @@ -38,7 +40,7 @@ class ChatMetadata(BaseModel): create_time: Annotated[Optional[int], pydantic.Field(alias="createTime")] = None r"""Server Unix timestamp of the creation time (in seconds since epoch UTC).""" - created_by: Annotated[Optional[Person], pydantic.Field(alias="createdBy")] = None + created_by: Annotated[Optional["Person"], pydantic.Field(alias="createdBy")] = None update_time: Annotated[Optional[int], pydantic.Field(alias="updateTime")] = None r"""Server Unix timestamp of the update time (in seconds since epoch UTC).""" diff --git a/src/glean/api_client/models/documentorerror_union.py b/src/glean/api_client/models/documentorerror_union.py index e48c8a6..36b3f55 100644 --- a/src/glean/api_client/models/documentorerror_union.py +++ b/src/glean/api_client/models/documentorerror_union.py @@ -3,17 +3,17 @@ from __future__ import annotations from .document import Document, DocumentTypedDict from glean.api_client.types import BaseModel -from typing import Optional, Union -from typing_extensions import NotRequired, TypeAliasType, TypedDict +from typing import Union +from typing_extensions import TypeAliasType, TypedDict class DocumentOrErrorTypedDict(TypedDict): - error: NotRequired[str] + error: str r"""The text for error, reason.""" class DocumentOrError(BaseModel): - error: Optional[str] = None + error: str r"""The text for error, reason.""" diff --git a/src/glean/api_client/models/feedback.py b/src/glean/api_client/models/feedback.py index 4a5397a..b8d0309 100644 --- a/src/glean/api_client/models/feedback.py +++ b/src/glean/api_client/models/feedback.py @@ -32,6 +32,7 @@ class FeedbackCategory(str, Enum): WORKFLOWS = "WORKFLOWS" SUMMARY = "SUMMARY" GENERAL = "GENERAL" + PRISM = "PRISM" PROMPTS = "PROMPTS" diff --git a/src/glean/api_client/models/manualfeedbackinfo.py b/src/glean/api_client/models/manualfeedbackinfo.py index 660c30f..1d8c46a 100644 --- a/src/glean/api_client/models/manualfeedbackinfo.py +++ b/src/glean/api_client/models/manualfeedbackinfo.py @@ -24,6 +24,7 @@ class ManualFeedbackInfoSource(str, Enum): GENERATED_Q_AND_A = "GENERATED_Q_AND_A" INLINE_MENU = "INLINE_MENU" NATIVE_RESULT = "NATIVE_RESULT" + PRISM = "PRISM" Q_AND_A = "Q_AND_A" RELATED_QUESTIONS = "RELATED_QUESTIONS" REPORT_ISSUE = "REPORT_ISSUE" diff --git a/src/glean/api_client/models/structuredresult.py b/src/glean/api_client/models/structuredresult.py index f91814a..aaff7a5 100644 --- a/src/glean/api_client/models/structuredresult.py +++ b/src/glean/api_client/models/structuredresult.py @@ -12,6 +12,7 @@ if TYPE_CHECKING: from .answer import Answer, AnswerTypedDict from .answerboard import AnswerBoard, AnswerBoardTypedDict + from .chatmetadata import ChatMetadata, ChatMetadataTypedDict from .code import Code, CodeTypedDict from .collection import Collection, CollectionTypedDict from .customentity import CustomEntity, CustomEntityTypedDict @@ -62,6 +63,8 @@ class StructuredResultTypedDict(TypedDict): code: NotRequired["CodeTypedDict"] shortcut: NotRequired["ShortcutTypedDict"] query_suggestions: NotRequired["QuerySuggestionListTypedDict"] + chat: NotRequired["ChatMetadataTypedDict"] + r"""Metadata of a Chat a user had with Glean Assistant. This contains no actual conversational content.""" related_documents: NotRequired[List["RelatedDocumentsTypedDict"]] r"""A list of documents related to this structured result.""" related_question: NotRequired["RelatedQuestionTypedDict"] @@ -120,6 +123,9 @@ class StructuredResult(BaseModel): Optional["QuerySuggestionList"], pydantic.Field(alias="querySuggestions") ] = None + chat: Optional["ChatMetadata"] = None + r"""Metadata of a Chat a user had with Glean Assistant. This contains no actual conversational content.""" + related_documents: Annotated[ Optional[List["RelatedDocuments"]], pydantic.Field(alias="relatedDocuments") ] = None diff --git a/tests/mockserver/internal/sdk/models/components/autocompleterequest.go b/tests/mockserver/internal/sdk/models/components/autocompleterequest.go index 98c2258..dd9b567 100644 --- a/tests/mockserver/internal/sdk/models/components/autocompleterequest.go +++ b/tests/mockserver/internal/sdk/models/components/autocompleterequest.go @@ -18,6 +18,7 @@ const ( AutocompleteRequestResultTypeEntity AutocompleteRequestResultType = "ENTITY" AutocompleteRequestResultTypeGolink AutocompleteRequestResultType = "GOLINK" AutocompleteRequestResultTypeHistory AutocompleteRequestResultType = "HISTORY" + AutocompleteRequestResultTypeChatHistory AutocompleteRequestResultType = "CHAT_HISTORY" AutocompleteRequestResultTypeNewChat AutocompleteRequestResultType = "NEW_CHAT" AutocompleteRequestResultTypeOperator AutocompleteRequestResultType = "OPERATOR" AutocompleteRequestResultTypeOperatorValue AutocompleteRequestResultType = "OPERATOR_VALUE" @@ -50,6 +51,8 @@ func (e *AutocompleteRequestResultType) UnmarshalJSON(data []byte) error { fallthrough case "HISTORY": fallthrough + case "CHAT_HISTORY": + fallthrough case "NEW_CHAT": fallthrough case "OPERATOR": diff --git a/tests/mockserver/internal/sdk/models/components/autocompleteresult.go b/tests/mockserver/internal/sdk/models/components/autocompleteresult.go index 9dec806..01edf62 100644 --- a/tests/mockserver/internal/sdk/models/components/autocompleteresult.go +++ b/tests/mockserver/internal/sdk/models/components/autocompleteresult.go @@ -18,6 +18,7 @@ const ( AutocompleteResultResultTypeEntity AutocompleteResultResultType = "ENTITY" AutocompleteResultResultTypeGolink AutocompleteResultResultType = "GOLINK" AutocompleteResultResultTypeHistory AutocompleteResultResultType = "HISTORY" + AutocompleteResultResultTypeChatHistory AutocompleteResultResultType = "CHAT_HISTORY" AutocompleteResultResultTypeNewChat AutocompleteResultResultType = "NEW_CHAT" AutocompleteResultResultTypeOperator AutocompleteResultResultType = "OPERATOR" AutocompleteResultResultTypeOperatorValue AutocompleteResultResultType = "OPERATOR_VALUE" @@ -50,6 +51,8 @@ func (e *AutocompleteResultResultType) UnmarshalJSON(data []byte) error { fallthrough case "HISTORY": fallthrough + case "CHAT_HISTORY": + fallthrough case "NEW_CHAT": fallthrough case "OPERATOR": diff --git a/tests/mockserver/internal/sdk/models/components/chatmetadata.go b/tests/mockserver/internal/sdk/models/components/chatmetadata.go index b2b298b..9bba09a 100644 --- a/tests/mockserver/internal/sdk/models/components/chatmetadata.go +++ b/tests/mockserver/internal/sdk/models/components/chatmetadata.go @@ -2,6 +2,10 @@ package components +import ( + "mockserver/internal/sdk/utils" +) + // ChatMetadata - Metadata of a Chat a user had with Glean Assistant. This contains no actual conversational content. type ChatMetadata struct { // The opaque id of the Chat. @@ -21,6 +25,17 @@ type ChatMetadata struct { Icon *IconConfig `json:"icon,omitempty"` } +func (c ChatMetadata) MarshalJSON() ([]byte, error) { + return utils.MarshalJSON(c, "", false) +} + +func (c *ChatMetadata) UnmarshalJSON(data []byte) error { + if err := utils.UnmarshalJSON(data, &c, "", false, nil); err != nil { + return err + } + return nil +} + func (o *ChatMetadata) GetID() *string { if o == nil { return nil diff --git a/tests/mockserver/internal/sdk/models/components/documentorerrorunion.go b/tests/mockserver/internal/sdk/models/components/documentorerrorunion.go index 6b47627..55824d3 100644 --- a/tests/mockserver/internal/sdk/models/components/documentorerrorunion.go +++ b/tests/mockserver/internal/sdk/models/components/documentorerrorunion.go @@ -10,7 +10,7 @@ import ( type DocumentOrError struct { // The text for error, reason. - Error *string `json:"error,omitempty"` + Error string `json:"error"` } func (d DocumentOrError) MarshalJSON() ([]byte, error) { @@ -18,15 +18,15 @@ func (d DocumentOrError) MarshalJSON() ([]byte, error) { } func (d *DocumentOrError) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &d, "", false, nil); err != nil { + if err := utils.UnmarshalJSON(data, &d, "", false, []string{"error"}); err != nil { return err } return nil } -func (o *DocumentOrError) GetError() *string { +func (o *DocumentOrError) GetError() string { if o == nil { - return nil + return "" } return o.Error } @@ -65,13 +65,6 @@ func CreateDocumentOrErrorUnionDocumentOrError(documentOrError DocumentOrError) func (u *DocumentOrErrorUnion) UnmarshalJSON(data []byte) error { - var document Document = Document{} - if err := utils.UnmarshalJSON(data, &document, "", true, nil); err == nil { - u.Document = &document - u.Type = DocumentOrErrorUnionTypeDocument - return nil - } - var documentOrError DocumentOrError = DocumentOrError{} if err := utils.UnmarshalJSON(data, &documentOrError, "", true, nil); err == nil { u.DocumentOrError = &documentOrError @@ -79,6 +72,13 @@ func (u *DocumentOrErrorUnion) UnmarshalJSON(data []byte) error { return nil } + var document Document = Document{} + if err := utils.UnmarshalJSON(data, &document, "", true, nil); err == nil { + u.Document = &document + u.Type = DocumentOrErrorUnionTypeDocument + return nil + } + return fmt.Errorf("could not unmarshal `%s` into any supported union types for DocumentOrErrorUnion", string(data)) } diff --git a/tests/mockserver/internal/sdk/models/components/feedback.go b/tests/mockserver/internal/sdk/models/components/feedback.go index f2e84e7..7ecc1c7 100644 --- a/tests/mockserver/internal/sdk/models/components/feedback.go +++ b/tests/mockserver/internal/sdk/models/components/feedback.go @@ -23,6 +23,7 @@ const ( FeedbackCategoryWorkflows FeedbackCategory = "WORKFLOWS" FeedbackCategorySummary FeedbackCategory = "SUMMARY" FeedbackCategoryGeneral FeedbackCategory = "GENERAL" + FeedbackCategoryPrism FeedbackCategory = "PRISM" FeedbackCategoryPrompts FeedbackCategory = "PROMPTS" ) @@ -55,6 +56,8 @@ func (e *FeedbackCategory) UnmarshalJSON(data []byte) error { fallthrough case "GENERAL": fallthrough + case "PRISM": + fallthrough case "PROMPTS": *e = FeedbackCategory(v) return nil diff --git a/tests/mockserver/internal/sdk/models/components/manualfeedbackinfo.go b/tests/mockserver/internal/sdk/models/components/manualfeedbackinfo.go index 4d2d9a8..a5e8065 100644 --- a/tests/mockserver/internal/sdk/models/components/manualfeedbackinfo.go +++ b/tests/mockserver/internal/sdk/models/components/manualfeedbackinfo.go @@ -23,6 +23,7 @@ const ( ManualFeedbackInfoSourceGeneratedQAndA ManualFeedbackInfoSource = "GENERATED_Q_AND_A" ManualFeedbackInfoSourceInlineMenu ManualFeedbackInfoSource = "INLINE_MENU" ManualFeedbackInfoSourceNativeResult ManualFeedbackInfoSource = "NATIVE_RESULT" + ManualFeedbackInfoSourcePrism ManualFeedbackInfoSource = "PRISM" ManualFeedbackInfoSourceQAndA ManualFeedbackInfoSource = "Q_AND_A" ManualFeedbackInfoSourceRelatedQuestions ManualFeedbackInfoSource = "RELATED_QUESTIONS" ManualFeedbackInfoSourceReportIssue ManualFeedbackInfoSource = "REPORT_ISSUE" @@ -66,6 +67,8 @@ func (e *ManualFeedbackInfoSource) UnmarshalJSON(data []byte) error { fallthrough case "NATIVE_RESULT": fallthrough + case "PRISM": + fallthrough case "Q_AND_A": fallthrough case "RELATED_QUESTIONS": diff --git a/tests/mockserver/internal/sdk/models/components/structuredresult.go b/tests/mockserver/internal/sdk/models/components/structuredresult.go index b4fcac9..601481a 100644 --- a/tests/mockserver/internal/sdk/models/components/structuredresult.go +++ b/tests/mockserver/internal/sdk/models/components/structuredresult.go @@ -82,6 +82,8 @@ type StructuredResult struct { Code *Code `json:"code,omitempty"` Shortcut *Shortcut `json:"shortcut,omitempty"` QuerySuggestions *QuerySuggestionList `json:"querySuggestions,omitempty"` + // Metadata of a Chat a user had with Glean Assistant. This contains no actual conversational content. + Chat *ChatMetadata `json:"chat,omitempty"` // A list of documents related to this structured result. RelatedDocuments []RelatedDocuments `json:"relatedDocuments,omitempty"` RelatedQuestion *RelatedQuestion `json:"relatedQuestion,omitempty"` @@ -213,6 +215,13 @@ func (o *StructuredResult) GetQuerySuggestions() *QuerySuggestionList { return o.QuerySuggestions } +func (o *StructuredResult) GetChat() *ChatMetadata { + if o == nil { + return nil + } + return o.Chat +} + func (o *StructuredResult) GetRelatedDocuments() []RelatedDocuments { if o == nil { return nil diff --git a/tests/test_summarize.py b/tests/test_summarize.py index 63b4eb8..cac8e97 100644 --- a/tests/test_summarize.py +++ b/tests/test_summarize.py @@ -1,6 +1,6 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" -from glean.api_client import Glean +from glean.api_client import Glean, models import os from tests.test_client import create_test_http_client @@ -18,10 +18,12 @@ def test_summarize_summarize(): res = glean.client.documents.summarize( document_specs=[ { - "url": "https://dim-glider.com/", + "ugc_type": models.DocumentSpecUgcType1.SHORTCUTS, + "content_id": 602763, }, { - "id": "", + "ugc_type": models.DocumentSpecUgcType1.SHORTCUTS, + "content_id": 602763, }, ] )