Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
690 changes: 402 additions & 288 deletions .speakeasy/gen.lock

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion .speakeasy/gen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ generation:
securityFeb2025: true
sharedErrorComponentsApr2025: true
sharedNestedComponentsJan2026: false
nameOverrideFeb2026: false
auth:
oAuth2ClientCredentialsEnabled: false
oAuth2PasswordEnabled: false
Expand All @@ -33,7 +34,7 @@ generation:
generateNewTests: true
skipResponseBodyAssertions: true
python:
version: 0.12.8
version: 0.12.9
additionalDependencies:
dev: {}
main: {}
Expand Down
218 changes: 201 additions & 17 deletions .speakeasy/glean-merged-spec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ openapi: 3.0.0
info:
version: 0.9.0
title: Glean API
x-source-commit-sha: 56c08697ca3b6869022a262114e61f1385914425
x-source-commit-sha: 95de6b2bbac933afd899ad142fcf67ab2d2e7482
description: |
# Introduction
In addition to the data sources that Glean has built-in support for, Glean also provides a REST API that enables customers to put arbitrary content in the search index. This is useful, for example, for doing permissions-aware search over content in internal tools that reside on-prem as well as for searching over applications that Glean does not currently support first class. In addition these APIs allow the customer to push organization data (people info, organization structure etc) into Glean.
Expand All @@ -22,7 +22,7 @@ info:
These API clients provide type-safe, idiomatic interfaces for working with Glean IndexingAPIs in your language of choice.
x-logo:
url: https://app.glean.com/images/glean-text2.svg
x-open-api-commit-sha: daa8736a6f0763faffd2c1079da8a42345536ed7
x-open-api-commit-sha: 62c208136975bbf7a7b10fbb522a2e98d657a0b9
x-speakeasy-name: 'Glean API'
servers:
- url: https://{instance}-be.glean.com
Expand Down Expand Up @@ -3122,6 +3122,13 @@ paths:
description: Not Authorized
"409":
description: Conflict
deprecated: true
x-speakeasy-deprecation-message: "Deprecated on 2026-02-03, removal scheduled for 2026-10-15: Endpoint is deprecated"
x-glean-deprecated:
id: ce596f49-55c4-465e-bf3c-5a3a33906e1f
introduced: "2026-02-03"
message: Endpoint is deprecated
removal: "2026-10-15"
x-speakeasy-name-override: bulkIndex
x-speakeasy-group: indexing.people
/api/index/v1/indexemployeelist: {}
Expand Down Expand Up @@ -3676,6 +3683,89 @@ paths:
"500":
description: Internal error
x-visibility: Public
/rest/api/v1/configure/datasources/{datasourceId}/instances/{instanceId}:
get:
operationId: getDatasourceInstanceConfiguration
summary: Get datasource instance configuration
description: |
Gets the greenlisted configuration values for a datasource instance. Returns only configuration keys that are exposed via the public API greenlist.
tags:
- Datasources
parameters:
- $ref: '#/components/parameters/datasourceId'
- $ref: '#/components/parameters/instanceId'
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DatasourceConfigurationResponse'
"400":
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
"401":
description: Not authorized
"403":
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
"404":
description: Datasource instance not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-visibility: Preview
patch:
operationId: updateDatasourceInstanceConfiguration
summary: Update datasource instance configuration
description: |
Updates the greenlisted configuration values for a datasource instance. Only configuration keys that are exposed via the public API greenlist may be set. Returns the full greenlisted configuration after the update is applied.
tags:
- Datasources
parameters:
- $ref: '#/components/parameters/datasourceId'
- $ref: '#/components/parameters/instanceId'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateDatasourceConfigurationRequest'
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/DatasourceConfigurationResponse'
"400":
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
"401":
description: Not authorized
"403":
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
"404":
description: Datasource instance not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-visibility: Preview
/rest/api/v1/chat#stream:
post:
tags:
Expand Down Expand Up @@ -6547,16 +6637,34 @@ components:
deprecated: true
description: The person that invited this person.
$ref: "#/components/schemas/Person"
x-glean-deprecated:
id: 1d3cd23f-9085-4378-b466-9bdc2e344a71
introduced: "2026-02-05"
message: Use ChannelInviteInfo instead
removal: "2026-10-15"
x-speakeasy-deprecation-message: "Deprecated on 2026-02-05, removal scheduled for 2026-10-15: Use ChannelInviteInfo instead"
inviteTime:
deprecated: true
type: string
format: date-time
description: The time this person was invited in ISO format (ISO 8601).
x-glean-deprecated:
id: 2dc3f572-cded-483d-af07-fc9fc7fd0ae4
introduced: "2026-02-05"
message: Use ChannelInviteInfo instead
removal: "2026-10-15"
x-speakeasy-deprecation-message: "Deprecated on 2026-02-05, removal scheduled for 2026-10-15: Use ChannelInviteInfo instead"
reminderTime:
deprecated: true
type: string
format: date-time
description: The time this person was reminded in ISO format (ISO 8601) if a reminder was sent.
x-glean-deprecated:
id: d02d58cf-eb90-45d0-ab90-f7a9d707ae3c
introduced: "2026-02-05"
message: Use ChannelInviteInfo instead
removal: "2026-10-15"
x-speakeasy-deprecation-message: "Deprecated on 2026-02-05, removal scheduled for 2026-10-15: Use ChannelInviteInfo instead"
ReadPermission:
description: Describes the read permission level that a user has for a specific feature
properties:
Expand Down Expand Up @@ -7944,12 +8052,6 @@ components:
chatSessionTrackingToken:
type: string
description: A token that is used to track the session.
unauthorizedDatasourceInstances:
type: array
description: |
Datasource instances that could not be queried because the user has not completed or has expired per-user OAuth, aggregated across all tools invoked in this turn.
items:
$ref: "#/components/schemas/UnauthorizedDatasourceInstance"
DeleteChatsRequest:
required:
- ids
Expand Down Expand Up @@ -8107,9 +8209,12 @@ components:
description: Whether the agent supports streaming output. If true, you you can stream agent ouput. All agents currently support streaming.
additionalProperties: true
ErrorResponse:
type: string
title: ErrorResponse
description: Error message returned from the server
type: object
description: Error response returned for failed requests
properties:
message:
type: string
description: Client-facing error message describing what went wrong
ActionSummary:
type: object
description: Represents a minimal summary of an action.
Expand All @@ -8123,6 +8228,32 @@ components:
display_name:
type: string
description: The display name of the action.
type:
type: string
description: The type of tool - RETRIEVAL for read-only operations, ACTION for operations that modify data.
auth_type:
type: string
description: The authentication type required - OAUTH_USER, OAUTH_ADMIN, API_KEY, BASIC_AUTH, DWD (domain-wide delegation), or NONE.
write_action_type:
type: string
description: For write actions only - REDIRECT (client renders URL) or EXECUTION (external server call).
is_setup_finished:
type: boolean
description: Whether this action has been fully configured and validated.
x-includeEmpty: true
data_source:
type: string
description: |
Indicates the kind of knowledge a tool would access or modify.
Company knowledge:
- Glean search, and any native tools that derive from it (e.g., expert search, code search)
- Native federated tools to company data sources (e.g., outlook search)
World knowledge:
- Native tools that bring in public content (e.g., web browser)
- Platform action like bingwebsearch, geminiwebsearch, etc
Neutral knowledge:
- Native tools that don't access or modify content via APIs (e.g., file analyst, think)
- Platform read or write tools (creator has to determine their knowledge implications)
AgentSchemas:
properties:
agent_id:
Expand Down Expand Up @@ -9026,12 +9157,6 @@ components:
federatedSearchRateLimitError:
type: boolean
description: Indicates the federated search results could not be fetched due to rate limiting.
unauthorizedDatasourceInstances:
type: array
description: |
Datasource instances that could not be queried because the user has not completed or has expired per-user OAuth.
items:
$ref: "#/components/schemas/UnauthorizedDatasourceInstance"
x-speakeasy-name-override: GleanDataError
ResultsResponse:
properties:
Expand Down Expand Up @@ -13217,6 +13342,49 @@ components:
items:
type: string
description: List of field names to exclude from the export
ConfigurationValue:
type: object
properties:
value:
type: string
description: The configuration value as a string. Only one of value or valueList should be populated.
valueList:
type: array
items:
type: string
description: The configuration value as a list of strings. Only one of value or valueList should be populated.
description: A single configuration value, either a scalar or a list
ConfigurationValues:
type: object
additionalProperties:
$ref: '#/components/schemas/ConfigurationValue'
description: A map from configuration key names to their values
DatasourceInstanceConfiguration:
type: object
properties:
values:
$ref: '#/components/schemas/ConfigurationValues'
required:
- values
description: Configuration for a datasource instance
DatasourceConfigurationResponse:
type: object
properties:
configuration:
$ref: '#/components/schemas/DatasourceInstanceConfiguration'
required:
- configuration
description: |
The greenlisted configuration values for a datasource instance. Only keys that are exposed via the public API greenlist are included.
UpdateDatasourceConfigurationRequest:
type: object
properties:
configuration:
$ref: '#/components/schemas/DatasourceInstanceConfiguration'
required:
- configuration
description: |
Request to update greenlisted configuration values for a datasource instance. Only keys that are exposed via the public API greenlist may be set.
ChatRequestStream:
required:
- messages
Expand Down Expand Up @@ -13274,6 +13442,22 @@ components:
description: The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.
schema:
type: integer
datasourceId:
name: datasourceId
in: path
description: The datasource type identifier (e.g. o365sharepoint)
required: true
schema:
type: string
example: o365sharepoint
instanceId:
name: instanceId
in: path
description: The datasource instance identifier
required: true
schema:
type: string
example: o365sharepoint_abc123
responses:
SuccessResponse:
description: OK
Expand Down
45 changes: 45 additions & 0 deletions .speakeasy/tests.arazzo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -158449,3 +158449,48 @@ workflows:
type: simple
x-speakeasy-test-group: Authentication
x-speakeasy-test-rebuild: true
- workflowId: getDatasourceInstanceConfiguration
steps:
- stepId: test
operationId: getDatasourceInstanceConfiguration
parameters:
- name: datasourceId
in: path
value: o365sharepoint
- name: instanceId
in: path
value: o365sharepoint_abc123
successCriteria:
- condition: $statusCode == 200
- condition: $response.header.Content-Type == application/json
- context: $response.body
condition: |
{"configuration":{"values":{"key":{}}}}
type: simple
x-speakeasy-test-group: Datasources
x-speakeasy-test-rebuild: true
- workflowId: updateDatasourceInstanceConfiguration
steps:
- stepId: test
operationId: updateDatasourceInstanceConfiguration
parameters:
- name: datasourceId
in: path
value: o365sharepoint
- name: instanceId
in: path
value: o365sharepoint_abc123
requestBody:
contentType: application/json
payload:
configuration:
values: {}
successCriteria:
- condition: $statusCode == 200
- condition: $response.header.Content-Type == application/json
- context: $response.body
condition: |
{"configuration":{"values":{}}}
type: simple
x-speakeasy-test-group: Datasources
x-speakeasy-test-rebuild: true
Loading