From 3213441cfa2552ff4229c4cc45935117d28f5475 Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Wed, 6 May 2026 03:54:40 +0000 Subject: [PATCH 1/2] =?UTF-8?q?##=20Java=20SDK=20Changes:=20*=20`glean.cli?= =?UTF-8?q?ent.collections.addItems()`:=20=20`response.error.errorType.enu?= =?UTF-8?q?m(corruptItem)`=20**Added**=20(Breaking=20=E2=9A=A0=EF=B8=8F)?= =?UTF-8?q?=20*=20`glean.entities.getPersonPhoto()`:=20**Added**=20*=20`gl?= =?UTF-8?q?ean.datasources.getDatasourceCredentialStatus()`:=20**Added**?= =?UTF-8?q?=20*=20`glean.datasources.rotateDatasourceCredentials()`:=20**A?= =?UTF-8?q?dded**=20*=20`glean.client.collections.create()`:=20=20=20*=20?= =?UTF-8?q?=20`response.union(class=20(0)).error.errorCode.enum(corruptIte?= =?UTF-8?q?m)`=20**Added**=20=20=20*=20=20`errorCode.enum(corruptItem)`=20?= =?UTF-8?q?**Added**=20*=20`glean.client.collections.delete()`:=20=20`erro?= =?UTF-8?q?rCode.enum(corruptItem)`=20**Added**=20*=20`glean.client.collec?= =?UTF-8?q?tions.update()`:=20=20=20*=20=20`response`=20**Changed**=20=20?= =?UTF-8?q?=20*=20=20`errorCode.enum(corruptItem)`=20**Added**=20*=20`glea?= =?UTF-8?q?n.client.collections.retrieve()`:=20=20`response.error.errorCod?= =?UTF-8?q?e.enum(corruptItem)`=20**Added**=20*=20`glean.client.insights.r?= =?UTF-8?q?etrieve()`:=20=20=20*=20=20`request.insightsRequest`=20**Change?= =?UTF-8?q?d**=20=20=20*=20=20`response.agentsResponse.topUseCasesInsights?= =?UTF-8?q?`=20**Added**=20*=20`glean.client.search.retrieveFeed()`:=20=20?= =?UTF-8?q?=20*=20=20`request.feedRequest.categories[]`=20**Changed**=20?= =?UTF-8?q?=20=20*=20=20`response.results[]`=20**Changed**?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .speakeasy/gen.lock | 414 +++++++++---- .speakeasy/gen.yaml | 2 +- .speakeasy/glean-merged-spec.yaml | 304 +++++++++- .speakeasy/workflow.lock | 12 +- README.md | 22 +- RELEASES.md | 12 +- .../AddCollectionItemsErrorErrorType.md | 6 +- docs/models/components/AgentUseCaseInsight.md | 15 + .../components/AgentsInsightsV2Request.md | 1 + .../components/AgentsInsightsV2Response.md | 5 +- .../components/AssistantInsightsResponse.md | 4 +- docs/models/components/BreakdownType.md | 21 + .../components/CollectionErrorErrorCode.md | 3 +- docs/models/components/CurrentActiveUsers.md | 8 +- .../components/DatasourceCredentialStatus.md | 26 + .../DatasourceCredentialStatusResponse.md | 13 + .../EditCollectionResponseErrorCode.md | 3 +- docs/models/components/FeedRequestCategory.md | 5 +- docs/models/components/FeedResultCategory.md | 5 +- .../components/InsightsAssistantRequest.md | 9 +- docs/models/components/InsightsChatSummary.md | 4 +- .../components/InsightsOverviewRequest.md | 9 +- .../components/InsightsOverviewResponse.md | 4 +- docs/models/components/InsightsRequest.md | 13 +- .../components/InsightsSearchSummary.md | 4 +- docs/models/components/JustificationType.md | 5 +- .../components/McpBreakdownInsightsRequest.md | 15 + .../RotateDatasourceCredentialsRequest.md | 12 + docs/models/components/UgcType.md | 1 + docs/models/components/Workflow.md | 22 +- docs/models/errors/ErrorCode.md | 3 +- .../GetDatasourceCredentialStatusRequest.md | 8 + .../GetDatasourceCredentialStatusResponse.md | 11 + .../operations/GetPersonPhotoRequest.md | 9 + .../operations/GetPersonPhotoResponse.md | 13 + .../RotateDatasourceCredentialsRequest.md | 9 + .../RotateDatasourceCredentialsResponse.md | 11 + docs/sdks/cliententities/README.md | 131 ++++ docs/sdks/datasources/README.md | 117 ++++ docs/sdks/entities/README.md | 103 +--- gradle.properties | 2 +- .../GleanApiClientAutoConfig.java | 22 + .../glean_api_client/AsyncClient.java | 6 +- .../glean_api_client/AsyncClientEntities.java | 144 +++++ .../glean_api_client/AsyncDatasources.java | 92 +++ .../glean_api_client/AsyncEntities.java | 124 ++-- .../glean_api_client/AsyncGlean.java | 7 + .../api_client/glean_api_client/Client.java | 6 +- .../glean_api_client/ClientEntities.java | 143 +++++ .../glean_api_client/Datasources.java | 90 +++ .../api_client/glean_api_client/Entities.java | 120 ++-- .../api_client/glean_api_client/Glean.java | 9 + .../glean_api_client/SDKConfiguration.java | 4 +- .../AddCollectionItemsErrorErrorType.java | 6 +- .../components/AgentUseCaseInsight.java | 560 ++++++++++++++++++ .../components/AgentsInsightsV2Request.java | 70 ++- .../components/AgentsInsightsV2Response.java | 86 ++- .../components/AssistantInsightsResponse.java | 24 +- .../models/components/BreakdownType.java | 43 ++ .../components/CollectionErrorErrorCode.java | 6 +- .../models/components/CurrentActiveUsers.java | 24 +- .../DatasourceCredentialStatus.java | 148 +++++ .../DatasourceCredentialStatusResponse.java | 316 ++++++++++ .../EditCollectionResponseErrorCode.java | 6 +- .../components/FeedRequestCategory.java | 5 +- .../models/components/FeedResultCategory.java | 14 +- .../components/InsightsAssistantRequest.java | 67 ++- .../components/InsightsChatSummary.java | 24 +- .../components/InsightsOverviewRequest.java | 67 ++- .../components/InsightsOverviewResponse.java | 24 +- .../models/components/InsightsRequest.java | 50 +- .../components/InsightsSearchSummary.java | 24 +- .../models/components/JustificationType.java | 14 +- .../McpBreakdownInsightsRequest.java | 548 +++++++++++++++++ .../RotateDatasourceCredentialsRequest.java | 111 ++++ .../models/components/UgcType.java | 4 + .../models/components/Workflow.java | 123 +++- .../models/errors/ErrorCode.java | 6 +- .../GetDatasourceCredentialStatusRequest.java | 102 ++++ ...asourceCredentialStatusRequestBuilder.java | 47 ++ ...GetDatasourceCredentialStatusResponse.java | 254 ++++++++ .../operations/GetPersonPhotoRequest.java | 179 ++++++ .../GetPersonPhotoRequestBuilder.java | 62 ++ .../operations/GetPersonPhotoResponse.java | 344 +++++++++++ .../RotateDatasourceCredentialsRequest.java | 131 ++++ ...teDatasourceCredentialsRequestBuilder.java | 56 ++ .../RotateDatasourceCredentialsResponse.java | 254 ++++++++ ...asourceCredentialStatusRequestBuilder.java | 50 ++ ...GetDatasourceCredentialStatusResponse.java | 254 ++++++++ .../async/GetPersonPhotoRequestBuilder.java | 65 ++ .../async/GetPersonPhotoResponse.java | 344 +++++++++++ ...teDatasourceCredentialsRequestBuilder.java | 58 ++ .../RotateDatasourceCredentialsResponse.java | 254 ++++++++ .../GetDatasourceCredentialStatus.java | 262 ++++++++ .../operations/GetPersonPhoto.java | 266 +++++++++ .../RotateDatasourceCredentials.java | 279 +++++++++ 96 files changed, 7249 insertions(+), 545 deletions(-) create mode 100644 docs/models/components/AgentUseCaseInsight.md create mode 100644 docs/models/components/BreakdownType.md create mode 100644 docs/models/components/DatasourceCredentialStatus.md create mode 100644 docs/models/components/DatasourceCredentialStatusResponse.md create mode 100644 docs/models/components/McpBreakdownInsightsRequest.md create mode 100644 docs/models/components/RotateDatasourceCredentialsRequest.md create mode 100644 docs/models/operations/GetDatasourceCredentialStatusRequest.md create mode 100644 docs/models/operations/GetDatasourceCredentialStatusResponse.md create mode 100644 docs/models/operations/GetPersonPhotoRequest.md create mode 100644 docs/models/operations/GetPersonPhotoResponse.md create mode 100644 docs/models/operations/RotateDatasourceCredentialsRequest.md create mode 100644 docs/models/operations/RotateDatasourceCredentialsResponse.md create mode 100644 docs/sdks/cliententities/README.md create mode 100644 src/main/java/com/glean/api_client/glean_api_client/AsyncClientEntities.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/ClientEntities.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/components/AgentUseCaseInsight.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/components/BreakdownType.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatus.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatusResponse.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/components/McpBreakdownInsightsRequest.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/components/RotateDatasourceCredentialsRequest.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequest.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequestBuilder.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusResponse.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequest.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequestBuilder.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoResponse.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequest.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequestBuilder.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsResponse.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceCredentialStatusRequestBuilder.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceCredentialStatusResponse.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetPersonPhotoRequestBuilder.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetPersonPhotoResponse.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/async/RotateDatasourceCredentialsRequestBuilder.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/models/operations/async/RotateDatasourceCredentialsResponse.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/operations/GetDatasourceCredentialStatus.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/operations/GetPersonPhoto.java create mode 100644 src/main/java/com/glean/api_client/glean_api_client/operations/RotateDatasourceCredentials.java diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index e456fbbf..b254516d 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,26 +1,28 @@ lockVersion: 2.0.0 id: 0359d4fe-2923-46fc-aaca-cf70b48dcfa1 management: - docChecksum: d8e27f2118bb2e9b6f10f3c87ad1abab + docChecksum: cc4885b406b74e185e02416d8717b516 docVersion: 0.9.0 - speakeasyVersion: 1.761.8 - generationVersion: 2.881.2 - releaseVersion: 0.12.38 - configChecksum: 6734fcbda27d97a184acf4cc3fa8c287 + speakeasyVersion: 1.762.0 + generationVersion: 2.882.0 + releaseVersion: 0.13.0 + configChecksum: aba9b1644748444cabd44fdb8652449d repoURL: https://github.com/gleanwork/api-client-java.git installationURL: https://github.com/gleanwork/api-client-java published: true persistentEdits: - generation_id: 656cc474-e6ce-4fc4-a79f-2100ca7a86d1 - pristine_commit_hash: d1ae5358ed5ab8083086ca9e9a1318fbf1576276 - pristine_tree_hash: bcfa1f94033a4e1bfde4b16265c3bcd7d3742029 + generation_id: 27d8c4b0-52c4-4167-a655-0fd25fcdafa0 + pristine_commit_hash: 61f6e996efc1d236e3ee157f4d38bd7fb01618f6 + pristine_tree_hash: 2fbc9ce89e25fe3171b44984ee58b26ab8a9a0e3 features: java: + acceptHeaders: 2.81.2 additionalDependencies: 0.1.0 additionalProperties: 0.0.1 constsAndDefaults: 0.1.3 - core: 3.55.23 + core: 3.55.24 deprecations: 2.81.2 + downloadStreams: 0.1.1 examples: 2.81.8 flattening: 2.81.1 globalSecurity: 2.83.4 @@ -75,8 +77,8 @@ trackedFiles: pristine_git_object: 223016f29c1ccff0f80822a60010f56b21116e42 docs/models/components/AddCollectionItemsErrorErrorType.md: id: e6074e15f918 - last_write_checksum: sha1:467739df012a12cea752794e84d7b3b11b961306 - pristine_git_object: e99e175832e7efc021e91f2416476d3b9183fa88 + last_write_checksum: sha1:5a8484c4d7f73750b0bafb0b5874b644a0185a51 + pristine_git_object: fc3c9d3ca72b914a4046135d4435fe25f3635717 docs/models/components/AddCollectionItemsRequest.md: id: 04c9519376f1 last_write_checksum: sha1:8511b3e5ba414f52839e37386e1f387d3e30cf33 @@ -129,18 +131,22 @@ trackedFiles: id: f240e68c81d1 last_write_checksum: sha1:66a407d9859305998077569ad6b94a325d9b1089 pristine_git_object: e4cff60c1d4a041e48ce077b05be3ae9c8ce59af + docs/models/components/AgentUseCaseInsight.md: + id: d201ebd4538a + last_write_checksum: sha1:79c04fd1f58cfb7c5375f186d29dee4508d3114f + pristine_git_object: 81603b56b8c82188d7b8a31ee556a5d9f79cfcc5 docs/models/components/AgentUsersInsight.md: id: bc38ed2da541 last_write_checksum: sha1:7af0299c9bc3f3c01762a22fd5541b0931d416bb pristine_git_object: 257996256cdfcf2fead2e28ce9267d9a68571b7a docs/models/components/AgentsInsightsV2Request.md: id: 8441d18c995f - last_write_checksum: sha1:4505f20759112f115013a298b7e21ffafc6caf19 - pristine_git_object: 070eb3f18d120de8e59b1e88a6cf4e982d33c60c + last_write_checksum: sha1:b34bb6380637e89653113c9fe4602d0f1224ddbb + pristine_git_object: 5ce00b3008c70e6974886d6c515c01984b5c4918 docs/models/components/AgentsInsightsV2Response.md: id: d4153d9001d6 - last_write_checksum: sha1:dfb1720be93ddecec133908e640299336fd9e96c - pristine_git_object: a7445ae69aa5a40a36cfeba9873dc296ce4be8fd + last_write_checksum: sha1:4f008a14f6c674548040982be815eaab14e6c4d2 + pristine_git_object: 97b170bb8283192d495a389fa3192f4617446bfe docs/models/components/AgentsTimeSavedInsight.md: id: a6b9d40adfea last_write_checksum: sha1:83778ce6380774a413d262e691f4099d6693591a @@ -211,8 +217,8 @@ trackedFiles: pristine_git_object: 175061d71c6c8ab7ca4e497d9776d3f6701c754a docs/models/components/AssistantInsightsResponse.md: id: 70f4085a5cb9 - last_write_checksum: sha1:7f602ab9842b6b67994d6f801c7283ccff3e0100 - pristine_git_object: c38e5af7600a3cd74195b17c57687a61365198dc + last_write_checksum: sha1:fab19179e78ec149c3224fa17fee892d582b933b + pristine_git_object: 72f737958b2e817bde09a9545c6be5c622a0bca1 docs/models/components/AuthConfig.md: id: 2451e4f26cfe last_write_checksum: sha1:9c64703d38095009a92101e17f298a390d7da94b @@ -269,6 +275,10 @@ trackedFiles: id: 7b6f54e578a6 last_write_checksum: sha1:74e0f36158d8ed6e9770950268a2e17455d1bec5 pristine_git_object: 1aafe5cb49754911e8928f9847af0cd10ca67660 + docs/models/components/BreakdownType.md: + id: 75586ed35bbe + last_write_checksum: sha1:f14beb1bd7b87e50fe2a83bf2969a176f6737a66 + pristine_git_object: dc711a99aa03f2432183db477a49e7d52b187e44 docs/models/components/BulkIndexDocumentsRequest.md: id: 84745ad73f00 last_write_checksum: sha1:aa2f8302794d1eef5019f459b0428d20f9c5c049 @@ -443,8 +453,8 @@ trackedFiles: pristine_git_object: 797cb301d3aaefbf86126bdf25ad10668060943c docs/models/components/CollectionErrorErrorCode.md: id: 0330c7f11f46 - last_write_checksum: sha1:26f5bc659376c29966e1c0531126a5892e48ab6b - pristine_git_object: 6001f0d50a5f999979caf0bd7939c2467bebff7d + last_write_checksum: sha1:8c434cb2319944a6239dcbeb9b106adddeec990e + pristine_git_object: 6e9466bb62273efc3a1433223ca0d5da5f35be46 docs/models/components/CollectionItem.md: id: 51ba6ab76b44 last_write_checksum: sha1:5d8a867d86402771318c815dfb4661f5b839dcc2 @@ -563,8 +573,8 @@ trackedFiles: pristine_git_object: 7f7a0c5c81e4397cb2a6722fe795beddb61d0d57 docs/models/components/CurrentActiveUsers.md: id: 2ad4e5a05724 - last_write_checksum: sha1:bf77512fa17554a9cbef4f3255b3c6a1c83d04b9 - pristine_git_object: 68ea377fb9cda28b279b1a225f1c6117a7ce7c1c + last_write_checksum: sha1:056073a3ab6641fe73c575c2126a1c4aa53084ae + pristine_git_object: f73a3a4edceb65e72ae06d303f69671b91a3b53d docs/models/components/CustomDataValue.md: id: 1ad5c4636a3d last_write_checksum: sha1:75e8caefa0986622a0767b6f60b6d8c01a77f900 @@ -649,6 +659,14 @@ trackedFiles: id: f2248e515ceb last_write_checksum: sha1:13bd3121a7b2914825633ea14179399a3dda8912 pristine_git_object: a0527fb09e3de76882ea22d76362d671063375ec + docs/models/components/DatasourceCredentialStatus.md: + id: 545dafa58b13 + last_write_checksum: sha1:90825d2598f6aae46050bfe3beee7f4845b6cc73 + pristine_git_object: 65397c4e4dc916f409f70718cd60bd8342213aab + docs/models/components/DatasourceCredentialStatusResponse.md: + id: eed35802b696 + last_write_checksum: sha1:76bd4007629fecb912c476ba1184802fea170f48 + pristine_git_object: 0febb853474cdcaf9fa48799983c4f50a8619eab docs/models/components/DatasourceGroupDefinition.md: id: 78e0bb588b90 last_write_checksum: sha1:b47f7efea435c5596881c72ef891a5ff04a4ab62 @@ -983,8 +1001,8 @@ trackedFiles: pristine_git_object: 73d2ca70e1047f42c9ac21db35af96d16fbb820e docs/models/components/EditCollectionResponseErrorCode.md: id: 2b17d0aa52c5 - last_write_checksum: sha1:eb7120e3700d77207fc744e641ae605ed48ca991 - pristine_git_object: 926c3604b1395d5ad107ea8051e7559bbf6ba408 + last_write_checksum: sha1:385276ade6415ddbf30e0d9714293dae9a3b923b + pristine_git_object: f9bb7c3ca773073d41283f8e882f844caf3cca23 docs/models/components/EditPinRequest.md: id: aebd7eb45420 last_write_checksum: sha1:238d4532ebaa3db8ded9151b5b3b4c03ef3f727a @@ -1099,8 +1117,8 @@ trackedFiles: pristine_git_object: b9cce921992bf7d948b7a2e3e4360ca2e3b81654 docs/models/components/FeedRequestCategory.md: id: afe4d7d42b83 - last_write_checksum: sha1:f01b11d46dec5853001b3951516423ec81a6c4e7 - pristine_git_object: 6c389ae9bdb64a48a5127403d1d1319eab994862 + last_write_checksum: sha1:70a8e79f9bec21f05095b4a2a62b88eb6dfa4ea5 + pristine_git_object: a32add35e989d6d27e11579b30e1add1868c9461 docs/models/components/FeedRequestOptions.md: id: 75fd500a75b1 last_write_checksum: sha1:448af6f7a5d161d4e2f856a6bfdb5da3bd7a9c68 @@ -1115,8 +1133,8 @@ trackedFiles: pristine_git_object: afba3e3879106e42edd5584228a0c0ac91814b5e docs/models/components/FeedResultCategory.md: id: de8a61d55051 - last_write_checksum: sha1:3aea09fc384a4f4012662a2d091144aacafaf201 - pristine_git_object: f77c72daadbe9e56333700897275deed257a3f44 + last_write_checksum: sha1:f8f58cdefa7e41e160d97477ff9ff9f6ec76af36 + pristine_git_object: c374a24e91e31b483e8c6240585d8a4490df9019 docs/models/components/Feedback.md: id: 73b99e5606f2 last_write_checksum: sha1:674153466ef3c627154aa80e2d2bcf2c2d278978 @@ -1407,32 +1425,32 @@ trackedFiles: pristine_git_object: 6c2fc6ab04a050a3586ef8014d4ee48c343abf92 docs/models/components/InsightsAssistantRequest.md: id: baf2b151078e - last_write_checksum: sha1:3879eaba05affbcba27bea8a49db74589c987131 - pristine_git_object: 164a746613da267bd79492b620f6b00d1100d96a + last_write_checksum: sha1:dc4a9fa0dc1adaf93ff2829d151f97da92a145d9 + pristine_git_object: 4b8d871888024e5513569dac0d894499a9ad1633 docs/models/components/InsightsChatSummary.md: id: dafc8deb1ffa - last_write_checksum: sha1:e765b45f5c1c97e93c60fb41ed2396ebb8cfa44c - pristine_git_object: 95d7ce688a02a5c9399c120192c8f96b51d028bb + last_write_checksum: sha1:2a4dc3c0f880cdd52b0883f198dc16062fed2826 + pristine_git_object: e5c3e11e19ab7df3ccbf0d1534eb42f585784219 docs/models/components/InsightsOverviewRequest.md: id: c480783ddfe7 - last_write_checksum: sha1:ffb5f96bc43b7c77be588b51d53904483c373c92 - pristine_git_object: 58b92865edd1fade5a400b24eecb30d6e2192526 + last_write_checksum: sha1:71e9457a040da94977abb7282b341f1204841eff + pristine_git_object: 167a057779c200d56e7fd47e8aab5ddb94c680eb docs/models/components/InsightsOverviewResponse.md: id: eb8d62a9cad4 - last_write_checksum: sha1:a8f64b428a2bba8d0b4c4ebe2628cffca126b07d - pristine_git_object: 6e556f24f2a9b724a9e11f2d5b7151cb6f7aa1cb + last_write_checksum: sha1:b26f1e667be0624f5792d726187d10986cb597c6 + pristine_git_object: e73c17ded68777281348c19aeb1dffb9eb5ea23e docs/models/components/InsightsRequest.md: id: bca39583d1ca - last_write_checksum: sha1:5bf841888c51c1ac5666f3a0ce26fe728ba5439d - pristine_git_object: 775529b92c47d6a2d16f014a18f0bb28d5eb77db + last_write_checksum: sha1:0faec9f9161fb48f975128c1911c3317f7e7788d + pristine_git_object: 9de12b8971bcc70bce8267f9c69d2bb0e49100e8 docs/models/components/InsightsResponse.md: id: 147783df35c9 last_write_checksum: sha1:6784bd682698978be7e43e2edf0051b4cfb573a2 pristine_git_object: 2d17dfe6b05a4fb667417965e9fe9abbc0f977c9 docs/models/components/InsightsSearchSummary.md: id: 3f923e978a12 - last_write_checksum: sha1:b1352a09698a72a0a7f11495ffc558b4b673fb8b - pristine_git_object: a9c16853acb3dea00216fb5d54ef906585935869 + last_write_checksum: sha1:082a747b85f238e99fe256de9b5634dccbc565b9 + pristine_git_object: 07f9c26e3c351cee4eb63ded218e719ce7a35a5f docs/models/components/InvalidOperatorValueError.md: id: f84539d9b095 last_write_checksum: sha1:ba1a158464319ae493175c69e2ef1950aa250ee8 @@ -1447,8 +1465,8 @@ trackedFiles: pristine_git_object: ef8823f4217073ab8cda466d2e3e36d080141fd2 docs/models/components/JustificationType.md: id: 4f9697992386 - last_write_checksum: sha1:493e79bd1cdc521d74f4192acd735417748d7a3b - pristine_git_object: 5b7bc75c60a9b14bca9f7123182a1c546408b3a1 + last_write_checksum: sha1:5faf01a24a8bb0d544836de1ec08f3043d0091ee + pristine_git_object: 03bf1e580dfe91da980e09b22b2b529f20a27233 docs/models/components/KnowledgeType.md: id: 652b79486bf3 last_write_checksum: sha1:350f41b8184a84215ebbab80a83079e093a54b40 @@ -1545,6 +1563,10 @@ trackedFiles: id: a4740e845eda last_write_checksum: sha1:2d53769c4e7d72ec633b710bccf180e137fb528d pristine_git_object: 344fe18092ea9aa2c5ae6a80f4ad894377a4fcd0 + docs/models/components/McpBreakdownInsightsRequest.md: + id: 4366de2ea2de + last_write_checksum: sha1:7ddcb705e448c2bf1318889133f28950b33e4fcd + pristine_git_object: b3402ac68f1403721f1823ddc907bc3d89b0dcd7 docs/models/components/Meeting.md: id: 104cd2b31289 last_write_checksum: sha1:0747c3f1c32948e83505e1fa2cd9552f997ed5e6 @@ -1845,6 +1867,10 @@ trackedFiles: id: c89eff3746a7 last_write_checksum: sha1:be045f74a07ee4a2e9ae4358dee5ec0ead4d3ddf pristine_git_object: 74388fee709900070e2cf8a676eea042985d0928 + docs/models/components/RotateDatasourceCredentialsRequest.md: + id: 3a61804c4b6c + last_write_checksum: sha1:9c57cf4932032becab79d8f89d99fda41d34602a + pristine_git_object: 0ce286ac596232d42ae55c62b0d4997d36f49471 docs/models/components/RotateTokenResponse.md: id: 42451388a9dd last_write_checksum: sha1:51fb80e2fbefd863b98d3b7f5abdc1d33c2fc940 @@ -2131,8 +2157,8 @@ trackedFiles: pristine_git_object: bd49396b8d7cd30cec42c478f1dbb9a5973eae5b docs/models/components/UgcType.md: id: 15d7c1cbb511 - last_write_checksum: sha1:9d09e64d8f85fee8b0a7661a34e8bf93764f1216 - pristine_git_object: 38cabf9338e76f859b1a33dbebbad31f1c95d5a3 + last_write_checksum: sha1:84c61f0f70468964ba352cd577c1ea0075ff60c3 + pristine_git_object: 82e801d1aa4fbba4711d8cc181a70c603bf86cc6 docs/models/components/UiConfig.md: id: 7b2325b9a499 last_write_checksum: sha1:16c1b7ddda6f305a85f53949ae5acdfbc043883e @@ -2295,8 +2321,8 @@ trackedFiles: pristine_git_object: 18849148ae82d2cbcd0af4a57b2c5d76b4dc8908 docs/models/components/Workflow.md: id: 891cae27e805 - last_write_checksum: sha1:06169e1df1b630275b24d4603a88d60216ff3b2c - pristine_git_object: 23067a270a9b79c6cd41d3d7eca33826549d14bc + last_write_checksum: sha1:de7bdcec556c5dfe326b6fade20c84cc0a13800a + pristine_git_object: 85dae820a804214556a951f28ff7e1e4af6423b1 docs/models/components/WorkflowFeedbackInfo.md: id: 0c46cf382b83 last_write_checksum: sha1:400c9e65d35295047f35fc437160616ff09957d2 @@ -2331,8 +2357,8 @@ trackedFiles: pristine_git_object: f076e01b46bdac62dbcf80e055c67281a8511796 docs/models/errors/ErrorCode.md: id: 21843405a77c - last_write_checksum: sha1:00216bac0d6b0fa591bfc748170f26a4dd0ed6ab - pristine_git_object: 72cc6cb39fd29ea4003dc6919d6a08ab3cdc736d + last_write_checksum: sha1:3fcf52fdd1601cb65f997c25f63c13669bfb3da1 + pristine_git_object: b0c03577c83e50c146d245a7ea4705272eadb07e docs/models/errors/ErrorResponse.md: id: 33e83376310b last_write_checksum: sha1:7c0ddd9cbf1343477620fc053ed0af97700b94b6 @@ -2617,6 +2643,14 @@ trackedFiles: id: b9d15ac782eb last_write_checksum: sha1:43b809ae9de45cee4700b082b0c53fe4a444e036 pristine_git_object: afccb3b71a9b7553f4464218f7bfead08d9c9012 + docs/models/operations/GetDatasourceCredentialStatusRequest.md: + id: a4afbbf72eb1 + last_write_checksum: sha1:098769b5675e1ce7c754547a5c6fc59339f9827b + pristine_git_object: 5dd66a28c495cdca49a45f66639a759e7dd1c7a7 + docs/models/operations/GetDatasourceCredentialStatusResponse.md: + id: 0ecff9970f89 + last_write_checksum: sha1:f54c1f46a7d9120a638027868449cde182e94e19 + pristine_git_object: 3291d9ec5f01cb49860e973f3603fd82a29b7fb2 docs/models/operations/GetDatasourceInstanceConfigurationRequest.md: id: c81fd7343157 last_write_checksum: sha1:22c0a3a41f5ef21ce3950422b5a28dd9daf8337c @@ -2625,6 +2659,14 @@ trackedFiles: id: 0bf55414a5ca last_write_checksum: sha1:c1513708013028c8d8c9d1e83b32f73d906b4eb8 pristine_git_object: 520453c31aff144952b4ae5748c5559a8e242d40 + docs/models/operations/GetPersonPhotoRequest.md: + id: 01b1cebf85ff + last_write_checksum: sha1:b2680cb6db5b902a127ae19c97b1005a6c928b5a + pristine_git_object: e2ea5d9e850f4dfb97a49ec2d7e24043e86bb0d9 + docs/models/operations/GetPersonPhotoResponse.md: + id: d1ceb0eec80e + last_write_checksum: sha1:20bd375acd997ba0391ec188fea61418dd914be4 + pristine_git_object: 8ed473796c689963e86e435f050c09839cad7b28 docs/models/operations/GetRestApiV1ToolsListRequest.md: id: 29660c2d25f6 last_write_checksum: sha1:536dea7622dd3d47449a9cee66b6b02e039cc420 @@ -3025,6 +3067,14 @@ trackedFiles: id: ba973d70500b last_write_checksum: sha1:e10ca600e8c2a3570de4f575c3281cb07da4a4ec pristine_git_object: 9ccd1568690b6b993ed779941baceba2663c9fc4 + docs/models/operations/RotateDatasourceCredentialsRequest.md: + id: c6cffc8caa68 + last_write_checksum: sha1:9bb6367695bab6785c54b559f41bf55d7b0adfc3 + pristine_git_object: ac1499dccb21554133c7c673e77ab3a24380e0bb + docs/models/operations/RotateDatasourceCredentialsResponse.md: + id: ac054b0ebd02 + last_write_checksum: sha1:a08e7834026d58802df6a083a2ee0a831d29b430 + pristine_git_object: 860533934403c7a058b08ef14a31a8ba329865b2 docs/models/operations/SearchAgentsResponse.md: id: ce12d446ad2e last_write_checksum: sha1:f2361d91835c444346effb9337af619c482a8dfe @@ -3137,6 +3187,10 @@ trackedFiles: id: e0c074acef4e last_write_checksum: sha1:3e30b01291b4a723ac69e849a3bb65aa4fcf0af3 pristine_git_object: 2e2c8b83e8be3004848d77f41037d93bf9c2c265 + docs/sdks/cliententities/README.md: + id: d087d30c9006 + last_write_checksum: sha1:49c9cf1f1044dca5861a0f0eb49ef71b00cb5109 + pristine_git_object: f097864a2a0ccdea7b7db74b28ab49dc0b430e2c docs/sdks/clientshortcuts/README.md: id: d5a9d841b61c last_write_checksum: sha1:846039b10157b677afa51d091b63b4db33ab09ec @@ -3151,12 +3205,12 @@ trackedFiles: pristine_git_object: a997ca8507fcd9d54912e53a8e2fce7d472aef18 docs/sdks/datasources/README.md: id: 024d3ed36945 - last_write_checksum: sha1:cb5917146f34016ca8f7bda5822ed0bc9c2a6a41 - pristine_git_object: 09ef42fcccbb94666ac2cff3ec802e7fbd68c63c + last_write_checksum: sha1:2649a8d5d895adbc39e2791b846a03eade6bb448 + pristine_git_object: c00393dfb30cd951d3ddebce81a3f19e6283bfa9 docs/sdks/entities/README.md: id: a140ac5181b9 - last_write_checksum: sha1:49c9cf1f1044dca5861a0f0eb49ef71b00cb5109 - pristine_git_object: f097864a2a0ccdea7b7db74b28ab49dc0b430e2c + last_write_checksum: sha1:d7b6704d56662560ba6d7d36142a489419982c86 + pristine_git_object: 96837684f0071235e512d096de6f66e0a32e2a7e docs/sdks/governance/README.md: id: 87817eb7bf48 last_write_checksum: sha1:66faf82b188c34fd99312632163438a34c0a983b @@ -3227,8 +3281,8 @@ trackedFiles: pristine_git_object: 3decbce5bd40edbe278c1c5d2dbf585808e51d9a gradle.properties: id: 2afbb999f001 - last_write_checksum: sha1:7831a921205c6787308c37de78de20ba5da15cb7 - pristine_git_object: b1ea0f0ff1fb970faca4f8df9e9d5c8d31f5fa60 + last_write_checksum: sha1:a1c18655eabce15567aa1f56708cb2cea3c41e11 + pristine_git_object: a5c0888f34f0b136cc79529a47042da1aaa8bc1f gradle/wrapper/gradle-wrapper.jar: id: ec27dae6e852 last_write_checksum: sha1:f725fb1467084142d74fd7cd8eab691ab3442611 @@ -3263,8 +3317,8 @@ trackedFiles: pristine_git_object: f18ce057dd1a4d7496475e4d3158cc44bd91f97a ? spring/glean-api-client-spring-boot-autoconfigure/src/main/java/com/glean/api_client/glean_api_client/GleanApiClientAutoConfig.java : id: dc219279f3d6 - last_write_checksum: sha1:46ee6973d8fd2f12a3a1d64ef0f71e04c18b9b98 - pristine_git_object: f08864e73e849e92832a99eae80752813843a227 + last_write_checksum: sha1:e0c75598855505be07fbace490dc808ff9fd6dd5 + pristine_git_object: e002872e72fdd5551af563b46acc05971bf0902b ? spring/glean-api-client-spring-boot-autoconfigure/src/main/java/com/glean/api_client/glean_api_client/GleanApiClientAutoConfigProperties.java : id: 5111ca066791 last_write_checksum: sha1:3570912b428b0fce42dc094898b98b0b6012a30a @@ -3323,8 +3377,8 @@ trackedFiles: pristine_git_object: 2100640ea8db6ffa0ff9b96fcfb0ef011ed1b97d src/main/java/com/glean/api_client/glean_api_client/AsyncClient.java: id: 4458603ff05d - last_write_checksum: sha1:a0d48edd45a792c4c1b4dda9f7bed4a39491ed2e - pristine_git_object: 968cb88f79caad7904d32508840c16e636e8c00b + last_write_checksum: sha1:54a77ae4feecd1c71bef44ff52ce722df163b006 + pristine_git_object: 6c33623236e547f443b0963c18cdbe785b55ce36 src/main/java/com/glean/api_client/glean_api_client/AsyncClientAuthentication.java: id: 3d83dd65dd00 last_write_checksum: sha1:5d40508abe4dbea9b98b9417afa0c7bb7378a273 @@ -3333,6 +3387,10 @@ trackedFiles: id: 25df5f237d37 last_write_checksum: sha1:dbb468921e681db8440b1b63917d3bb6d9dc90d4 pristine_git_object: 4e329a04c4c1a758f494e5a39fd2d8ab67f11708 + src/main/java/com/glean/api_client/glean_api_client/AsyncClientEntities.java: + id: 379d1a5a3ee9 + last_write_checksum: sha1:88bbfe0138a518363335dc77d9acde77ab55a373 + pristine_git_object: f0ce36941650f59895316df95991a24f63140fb2 src/main/java/com/glean/api_client/glean_api_client/AsyncClientGovernance.java: id: 2c29466c8c9d last_write_checksum: sha1:534d79134deed4b631ec5a5c53705d3fc48907ee @@ -3355,16 +3413,16 @@ trackedFiles: pristine_git_object: 119195b920979511b646f622fdc3b9b670b345c4 src/main/java/com/glean/api_client/glean_api_client/AsyncDatasources.java: id: 3c173ec01fbb - last_write_checksum: sha1:f595c359620eae14d51acce2db42482011ce76f9 - pristine_git_object: 9e740ee2708451f78020c4706452101b37fe2379 + last_write_checksum: sha1:525cbb1a0a88dcf2907454eaaf7d4d6653932cfd + pristine_git_object: 52bde47924e0644e6dc71828c1e1230b18017169 src/main/java/com/glean/api_client/glean_api_client/AsyncEntities.java: id: 7589d9e17031 - last_write_checksum: sha1:e9b0b692a1020f4ec62de748bf3901be0a2e8022 - pristine_git_object: 2c8f2100404d8ea13e53170088922788448ee88f + last_write_checksum: sha1:8abf33fee019e61a399afdd478a539fb18846d34 + pristine_git_object: a822d7e4899833a7b59043f634813740b36ff83f src/main/java/com/glean/api_client/glean_api_client/AsyncGlean.java: id: 41f5be2f8342 - last_write_checksum: sha1:a15abe8ec7ac815be6261e3498ddeeae0e46fcad - pristine_git_object: 205ac9d508fb9cc6e881aed05375af9dc6695e2f + last_write_checksum: sha1:526f96d72a87d400a762b30eaeabd5f332e8fe59 + pristine_git_object: b86b23bc879ccf64b5eee53751ff02a88f8752c7 src/main/java/com/glean/api_client/glean_api_client/AsyncGovernance.java: id: 38b2443ece41 last_write_checksum: sha1:bc418436cd6ef72bb52d44982e4abb2b519e060d @@ -3447,8 +3505,8 @@ trackedFiles: pristine_git_object: b1f01a8b9d431178fd73805c49ace25d6b6b96ed src/main/java/com/glean/api_client/glean_api_client/Client.java: id: 3e1158028401 - last_write_checksum: sha1:d5745585572d74b2d3f2e4637e40a8e725b2b211 - pristine_git_object: bc907bf8671ef8b1b63319d9aae58c30603a6b2a + last_write_checksum: sha1:1e0175f85645ec1756823a6271bd93172031d365 + pristine_git_object: c34a7f189cd6d8c963d4ecff511ba28c0a897ad1 src/main/java/com/glean/api_client/glean_api_client/ClientAuthentication.java: id: 5a8320d838de last_write_checksum: sha1:9426ae6475e21e3887d5df1f563d71b038e7eda9 @@ -3457,6 +3515,10 @@ trackedFiles: id: 6b0978aae33a last_write_checksum: sha1:91bfbc8edcf5b0cb51139c458c23780705c6ee4f pristine_git_object: 64a4551a713d6564c0fe75704a4536dc44fcbd97 + src/main/java/com/glean/api_client/glean_api_client/ClientEntities.java: + id: 43c5ec4923c3 + last_write_checksum: sha1:9147f4ea4a0289b5b0e9f6e12afbcf51dbef4d6b + pristine_git_object: b5a038d16f383553955f71ec03de3df3f891f96e src/main/java/com/glean/api_client/glean_api_client/ClientGovernance.java: id: 7b367f4bc4b6 last_write_checksum: sha1:19019a58e2c55bacb344635fdff71c32f0f185e8 @@ -3479,16 +3541,16 @@ trackedFiles: pristine_git_object: 141b1f40d3230bfa85f0960a9af4bd604f555334 src/main/java/com/glean/api_client/glean_api_client/Datasources.java: id: a5c243202fb9 - last_write_checksum: sha1:33b58c7ad3e179e7b1d4989ba8bca98b90e31850 - pristine_git_object: 316245fd3c112eddc1a117a4b674586e63314ec0 + last_write_checksum: sha1:b1359c37d6872e7b2d4188ea259acb1c4d3f4a40 + pristine_git_object: 3f6dae5dbe24dac2a789f39f808689cca40c328a src/main/java/com/glean/api_client/glean_api_client/Entities.java: id: 8254f307c235 - last_write_checksum: sha1:e511ff5564697463e2b6494f1e4db60d9f24cc97 - pristine_git_object: b6e7108289ec30561e87990e8d4969aefb139911 + last_write_checksum: sha1:8a62ed143d5d59f169819e211fca4c0f4060b181 + pristine_git_object: 5706517df674b1759ffae3aa7188e507d598e462 src/main/java/com/glean/api_client/glean_api_client/Glean.java: id: ebe9053b14eb - last_write_checksum: sha1:71c0af5d2432ca0772a38e49851c06ee4c6bed40 - pristine_git_object: 6c1e055b9ad3998b3a9aedb68ebd689a603ffab0 + last_write_checksum: sha1:3fb904a30bde13d472bb68254f37cc68af3aa160 + pristine_git_object: d49c3b3c343b9c3cacec8ee92e897d570409ae73 src/main/java/com/glean/api_client/glean_api_client/Governance.java: id: 2d4a3c95da6a last_write_checksum: sha1:0f382cfcb96689435a4b397b1105ff9641d98eac @@ -3547,8 +3609,8 @@ trackedFiles: pristine_git_object: ffae914775eb41ff311371f62504344a59d090fd src/main/java/com/glean/api_client/glean_api_client/SDKConfiguration.java: id: d5fcc61f5992 - last_write_checksum: sha1:28c00802fed460958d1998150ebf7c7e1f89b4df - pristine_git_object: 308a84820e2af823159abcb75a3840c332ede95d + last_write_checksum: sha1:0f5af2c3854c800cf3afd655c502b8b36ffcf5d9 + pristine_git_object: 646e53da844e01ea9d85480da841583bd6cfd285 src/main/java/com/glean/api_client/glean_api_client/Search.java: id: f22d94b920b5 last_write_checksum: sha1:ac38d1ed47be207940dd6fb7e4c688dddccc6a8b @@ -3599,8 +3661,8 @@ trackedFiles: pristine_git_object: 936fbe0c0cebbabcfe1d519c76db96cf76ca89da src/main/java/com/glean/api_client/glean_api_client/models/components/AddCollectionItemsErrorErrorType.java: id: 0ef5a50a0ad6 - last_write_checksum: sha1:53f75ef4c522c0fd44489662b7e8fedc3987d5c8 - pristine_git_object: 5d51dbd755c47a8e04e7a1982c82c0d4ede0b128 + last_write_checksum: sha1:5c4466ed60cac64ba14bf7b0fc389f2b89738f64 + pristine_git_object: 2998506c69a123fed452d12f6fccc78ebce47973 src/main/java/com/glean/api_client/glean_api_client/models/components/AddCollectionItemsRequest.java: id: 8e54fc689398 last_write_checksum: sha1:39bc2f7d8eb9b6f0247612a110bc8ae7c6d6f27a @@ -3653,18 +3715,22 @@ trackedFiles: id: 02499cd63d02 last_write_checksum: sha1:4a8b0dcf668ce807f7573b271fa35bd52a47d892 pristine_git_object: 550b769c68904420884f30ab814f01851fe82512 + src/main/java/com/glean/api_client/glean_api_client/models/components/AgentUseCaseInsight.java: + id: 8be03b038a72 + last_write_checksum: sha1:1271a10104e3625ec1021b5fdb7f651a53e6a06b + pristine_git_object: b6ca3475c8101cae02c2b53b04ca7df77ee24c3c src/main/java/com/glean/api_client/glean_api_client/models/components/AgentUsersInsight.java: id: b702924bc01d last_write_checksum: sha1:c377b022e7b5a29a207d28dc990f37647eb2c746 pristine_git_object: 30754307eda2dc837140231c9e635c34ad1d0849 src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Request.java: id: dc281045a888 - last_write_checksum: sha1:05204c753de57e9bd7f185174700b05d96b67e17 - pristine_git_object: e0113f89bd5372f836e995cd085f603065f25d86 + last_write_checksum: sha1:4a4cccf3645f2617429e2a7415c70a6942272328 + pristine_git_object: 6e4b9141a1d12969c46c861a53f7b388ebeab599 src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Response.java: id: a3dea5a9588a - last_write_checksum: sha1:22768ffeebe43c578d93fd77b3154c9b58f725af - pristine_git_object: 229f6f44ccd82aca1813abc68fc7d07d1652c4dc + last_write_checksum: sha1:5a9129ec9590f1cc03bbb72af34a922f1d11a8fc + pristine_git_object: 6c9958597147205005149452be7a08599fb6b56f src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsTimeSavedInsight.java: id: 4cd0a2b44815 last_write_checksum: sha1:43613513c7e5e4305e7168ca47e882129594f7a3 @@ -3735,8 +3801,8 @@ trackedFiles: pristine_git_object: b1921cacef3abe1322b8ffaddd9048729c7c2249 src/main/java/com/glean/api_client/glean_api_client/models/components/AssistantInsightsResponse.java: id: 1ca128d01115 - last_write_checksum: sha1:381d9820f5192515f7560ae576d2ba7beb6d942a - pristine_git_object: 6277c7fb78f265273fb9cf2ff9088e141751c743 + last_write_checksum: sha1:15944433ac855cb9f28d92c7392ac4b7cb484f25 + pristine_git_object: 84209052fc2e06ade5843025d299410d38f43135 src/main/java/com/glean/api_client/glean_api_client/models/components/AuthConfig.java: id: 266268058b7c last_write_checksum: sha1:2e30ccb9e89703ea04bb49e05eab0fe620d461e1 @@ -3793,6 +3859,10 @@ trackedFiles: id: b3192734966f last_write_checksum: sha1:1d549eedcbba83cc4642485842e9e4cff26082e3 pristine_git_object: 5cc29aed97997428c7ec27a945dbf4ca8ae86026 + src/main/java/com/glean/api_client/glean_api_client/models/components/BreakdownType.java: + id: 22c9cfa5fd83 + last_write_checksum: sha1:40c841c6524bf4d7d346888890fc8be5d916ae4e + pristine_git_object: b9934a5955732b137bd862e934de374dbdfd1b98 src/main/java/com/glean/api_client/glean_api_client/models/components/BulkIndexDocumentsRequest.java: id: 63b98fa828ff last_write_checksum: sha1:a0801d10daff582160eeaaa3988cc5ef19366b59 @@ -3967,8 +4037,8 @@ trackedFiles: pristine_git_object: cb6282d56d6b0eddff20189995e2286093dc4023 src/main/java/com/glean/api_client/glean_api_client/models/components/CollectionErrorErrorCode.java: id: bc79919ab65c - last_write_checksum: sha1:6fd4c3a4c919fc7508b45147d965818ebe9c09cd - pristine_git_object: 855e861c0c7fdd35591abd66fdc2773077473034 + last_write_checksum: sha1:bdb12a1556eb3f85b5c458fae809339f7a3bf0ec + pristine_git_object: fe6a556fab0b16e8fceb1d13cc393b0e15951c16 src/main/java/com/glean/api_client/glean_api_client/models/components/CollectionItem.java: id: 2a01ea2b8250 last_write_checksum: sha1:3fbd81c7c68d94d5a3a14d9af5fe9dbacac2187e @@ -4087,8 +4157,8 @@ trackedFiles: pristine_git_object: cd92ec8e614cf9b95fee675b5aace3e9fb934c76 src/main/java/com/glean/api_client/glean_api_client/models/components/CurrentActiveUsers.java: id: 270d2a2bdf80 - last_write_checksum: sha1:362c74446a55efa44a6c0152b7b3422638dfe8b5 - pristine_git_object: 3339cfa952523449e5b86b99e927e49aa8456f60 + last_write_checksum: sha1:cf530d74648b55590453964714865916465f069c + pristine_git_object: 682bf0a8fc7feb1f0fbdde95c9dad84f376619a4 src/main/java/com/glean/api_client/glean_api_client/models/components/CustomDataValue.java: id: bd491d634a46 last_write_checksum: sha1:b0c31895c93d93a8e6d58cac8028da2278ccb359 @@ -4173,6 +4243,14 @@ trackedFiles: id: bc6aa4441b02 last_write_checksum: sha1:832effcd46f16f322bc0940ded76ceffded5c137 pristine_git_object: 252ddc4b7236de814bdca8222ed58f7dc10baae7 + src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatus.java: + id: 8ce4a048ef1e + last_write_checksum: sha1:e0a1bbb59ecb699813712eafecdfde13a25d5981 + pristine_git_object: 3948af87d5b4fe310303399bb8a8f7c56b24225f + src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatusResponse.java: + id: 6aa3d770bcc1 + last_write_checksum: sha1:170673016158b9ea2e8d497e762294e148087727 + pristine_git_object: 54dc377aced4114e6e301eb10cede661c08dcbff src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceGroupDefinition.java: id: bf78b36e5a35 last_write_checksum: sha1:4e21b7517b5b8c06e32f2019addcd7f3fc2c5ef5 @@ -4507,8 +4585,8 @@ trackedFiles: pristine_git_object: 43bac5d46365a2a2b3e1f1d15e7dc3d235193beb src/main/java/com/glean/api_client/glean_api_client/models/components/EditCollectionResponseErrorCode.java: id: ec103e36e48d - last_write_checksum: sha1:ff2c63c81c7c1f082721bf3822b229be15b45b1f - pristine_git_object: 145894a172e9036c675c9134f684e60500010dd3 + last_write_checksum: sha1:fcf089b90c2e585ed18201451684336bf4f30abd + pristine_git_object: 4a0716960dffaaeb8daf94fd658f57d95b424164 src/main/java/com/glean/api_client/glean_api_client/models/components/EditPinRequest.java: id: 9d121c7be959 last_write_checksum: sha1:11fa6028271302185bcdf12fe3aa118dcd4d9daa @@ -4623,8 +4701,8 @@ trackedFiles: pristine_git_object: da07bc2b22a0c18ddaaeb554bf70ddf655b607cc src/main/java/com/glean/api_client/glean_api_client/models/components/FeedRequestCategory.java: id: 57e4db8e0360 - last_write_checksum: sha1:dd5021d893bee0cadd3f08265c66585cdcad1189 - pristine_git_object: 16c04adbd32d3610628e984396c1bc35f620e28d + last_write_checksum: sha1:c969a1004899f8f7a07aaf3cb139ea074301da8f + pristine_git_object: 38779aa2371eaab3a652eb71f57f0659f9268eaa src/main/java/com/glean/api_client/glean_api_client/models/components/FeedRequestOptions.java: id: 0961449ce7b9 last_write_checksum: sha1:1becd935e511806b12ea1aedebd9da174d807ad6 @@ -4639,8 +4717,8 @@ trackedFiles: pristine_git_object: d48710af7fe0154dc068aa6461409edf2e064068 src/main/java/com/glean/api_client/glean_api_client/models/components/FeedResultCategory.java: id: d5f852e61d61 - last_write_checksum: sha1:9be2c20be6fc81915118a64ca0fea5b6707c29b7 - pristine_git_object: fdc07be52d93facaf5580852b73e9df87aadf0b0 + last_write_checksum: sha1:08f3b5ef9b32bb9dd624354b981d490edac097a1 + pristine_git_object: 0531cd53379d17e51e02405228f894206cbd6730 src/main/java/com/glean/api_client/glean_api_client/models/components/Feedback.java: id: f7178cc3b4f0 last_write_checksum: sha1:ad5079dea53ae7d7479b5bce2c16fcc63a4711e5 @@ -4931,32 +5009,32 @@ trackedFiles: pristine_git_object: 0a6f34e6ad18ce40f07692cf27f934733e3f141a src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsAssistantRequest.java: id: 65ee7235fa70 - last_write_checksum: sha1:b8b6882f35470796b14528e424d08bb6e0e9bfa9 - pristine_git_object: e04efb3fdf9de3493dc11f5c4058fb0f443ed2b9 + last_write_checksum: sha1:348885c5634ab51ff1dafb183c8079749291bb9c + pristine_git_object: 1f9ee23fcc443f8e8ac54b7bd6b097f0a937082b src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsChatSummary.java: id: 0814a90adc02 - last_write_checksum: sha1:31a6e6c7658130cb7301776b0138f667e5c19af1 - pristine_git_object: 28c1ee3b9b3a7a15a396b3a1f3af4424b6469c25 + last_write_checksum: sha1:ce2be39ee80b0bd81fb88112571ab33ccd060acd + pristine_git_object: 4aaa151177360be6b9476dffc6caa41b5c3f4c98 src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewRequest.java: id: 6fa0c64bb6d5 - last_write_checksum: sha1:2b0670691cd4dd62ccc40da72b012b5dfda6026c - pristine_git_object: b8ec936bceaff6ca8ffc907fc064779808bd328b + last_write_checksum: sha1:4154285108ecd633ce7f0306cf618ed43d1f72a1 + pristine_git_object: d0a44604a6235fe14127a92f0fc09d732c9f1861 src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewResponse.java: id: 2df162b5c362 - last_write_checksum: sha1:7cef5e4dd70eb3fa7f03ec3d716fefe645c99990 - pristine_git_object: ba67584f56d747b6d1eb01ca06cba9e37eb1f8fe + last_write_checksum: sha1:b35c7e42e40f655e67f6f4e79e86653e317b4234 + pristine_git_object: e08b82f53043673293c44b1728e92e79ebe7a63d src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsRequest.java: id: d18f487ace2b - last_write_checksum: sha1:9f4f66fe84e8930d611b20bf21d4a9a044f7c9cd - pristine_git_object: 10a5aae444404426f7a79b88561d594b2771a56b + last_write_checksum: sha1:913fcc6229279b2c6a4510ada93bcfd358025eb4 + pristine_git_object: 58b725bb68bb29b7cedc07da6ae341e8d2e902e9 src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsResponse.java: id: cf29a55ddf0f last_write_checksum: sha1:81cead1f35c560283deef41daa23e720b4dc476a pristine_git_object: e3965c5e9678eb1e72a2dc4ec6ba097358f82021 src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsSearchSummary.java: id: e62bb509b213 - last_write_checksum: sha1:e50df8b839c9e57ddfd457b5690b515d3c0be1eb - pristine_git_object: ed1fc5e54495c9a1af575cc711e6a65473ecd166 + last_write_checksum: sha1:64daf224a1a77d9c3cf7a39c3081887b27076eb1 + pristine_git_object: 3dc7eb61d9ba58399be5a52eb5eac0997c0e0921 src/main/java/com/glean/api_client/glean_api_client/models/components/InvalidOperatorValueError.java: id: a968549cc703 last_write_checksum: sha1:544885bdd03aa1f41736deeda03339583cf50fc7 @@ -4971,8 +5049,8 @@ trackedFiles: pristine_git_object: 27aa91ed2894e57bf87f42b39c63adbe776c49f9 src/main/java/com/glean/api_client/glean_api_client/models/components/JustificationType.java: id: 4e704d02ecd5 - last_write_checksum: sha1:fa9173c1ae9d5723cca71069d69c63444b5e8137 - pristine_git_object: 6e1ed2a76acffbf0d9ba0bf270c52b67d284b534 + last_write_checksum: sha1:62b2326ff21aa9d86bb3902eb04082aa7ae86600 + pristine_git_object: 627be1af559d060ea1e0b9658a3aca8c20d388f9 src/main/java/com/glean/api_client/glean_api_client/models/components/KnowledgeType.java: id: 86321f7dd6fe last_write_checksum: sha1:85872bd4390e4a048c4995b1427bec8b2fe88664 @@ -5069,6 +5147,10 @@ trackedFiles: id: 0679a490a55e last_write_checksum: sha1:3709846b9770184598f83143075a1795680743ee pristine_git_object: 976ff631aa369ec9fe43e901880070da1a5533d3 + src/main/java/com/glean/api_client/glean_api_client/models/components/McpBreakdownInsightsRequest.java: + id: 89a6d0bf179d + last_write_checksum: sha1:0bf6bc7adee8524146d5d618cca04d53913f5534 + pristine_git_object: 821e4fa593e9655d24e8004afb1c69e02963db18 src/main/java/com/glean/api_client/glean_api_client/models/components/Meeting.java: id: 291a666eeedf last_write_checksum: sha1:41625a30e7e41f74db762647fda7b6e89c1db34b @@ -5369,6 +5451,10 @@ trackedFiles: id: 27c1126ef53f last_write_checksum: sha1:ab72a68a25826436c4035a28f7beff41c936a242 pristine_git_object: db30abddaddfd81896fb5029b8656110da8ae0f9 + src/main/java/com/glean/api_client/glean_api_client/models/components/RotateDatasourceCredentialsRequest.java: + id: 3289b4dd3617 + last_write_checksum: sha1:86b3473fa3fb425038c73eb9e622828ef43455a5 + pristine_git_object: 90d0b16b9a07dbdac28be128d47aeebedba3cb8b src/main/java/com/glean/api_client/glean_api_client/models/components/RotateTokenResponse.java: id: bf054aecb9e4 last_write_checksum: sha1:74ffdaec429b31eafa31f157fe043fd2c1c17cb7 @@ -5655,8 +5741,8 @@ trackedFiles: pristine_git_object: 7cd618713ae1d537f4161be77a1bdceb52985973 src/main/java/com/glean/api_client/glean_api_client/models/components/UgcType.java: id: 799738fed61d - last_write_checksum: sha1:59f5b4521b3f189fad1ab538994a917e2c73d235 - pristine_git_object: f61988046532dca2454c298e7c3de19d57440263 + last_write_checksum: sha1:b8c14600f748fac81bff1cb6ed10323469b12aa6 + pristine_git_object: bbf4832b46a4c90626f2a5a44e702369a9fc0de5 src/main/java/com/glean/api_client/glean_api_client/models/components/UiConfig.java: id: 4a03695e2c2e last_write_checksum: sha1:048a07117a3d72dc3981db90b927cef33c445819 @@ -5819,8 +5905,8 @@ trackedFiles: pristine_git_object: 347842229349fb95234660d05bcdb239186b80c4 src/main/java/com/glean/api_client/glean_api_client/models/components/Workflow.java: id: 362d77a90ee3 - last_write_checksum: sha1:cce243efd370617733fc68000b68945c2a10cc7f - pristine_git_object: 8baff52b19c6f537d8ea1dd189e960ff36fb9050 + last_write_checksum: sha1:fcc5da04030f4629004d7ff51c27049918ab1760 + pristine_git_object: 2adad3bbb38c41321e49d78722a24022d4d6527c src/main/java/com/glean/api_client/glean_api_client/models/components/WorkflowFeedbackInfo.java: id: b19d5571d1d0 last_write_checksum: sha1:3b1f51a698d75f93eef07f9fbf7e4fdb6114e2c8 @@ -5867,8 +5953,8 @@ trackedFiles: pristine_git_object: ebea7655bf0f20e5053a59954e10e5307f96d687 src/main/java/com/glean/api_client/glean_api_client/models/errors/ErrorCode.java: id: e2ce83e00dfc - last_write_checksum: sha1:d543d50f0c9b6374310fb67d9accc824724ce951 - pristine_git_object: bbfff4a1e9e6321aa9b0a38afb8c0ba80a13aaf9 + last_write_checksum: sha1:d6e298b2ada67a6afb601c01289c565cfecf762a + pristine_git_object: d41c9dd21a4325b1678875aad387a59a29ca336b src/main/java/com/glean/api_client/glean_api_client/models/errors/ErrorResponse.java: id: f900b82c72e9 last_write_checksum: sha1:b3883f5dc1c649279c454e2e701f32c00933d798 @@ -6033,10 +6119,18 @@ trackedFiles: id: 78ce0c6b242c last_write_checksum: sha1:8f37b009af70f271ba044d194805fca4c329f9b8 pristine_git_object: 0948f4005a4ef6951c4bebc34a715cad28d2d9e5 + src/main/java/com/glean/api_client/glean_api_client/models/operations//async/GetDatasourceCredentialStatusRequestBuilder.java: + id: 78c20673b086 + last_write_checksum: sha1:d4d9824aa2c8de0c7184cec1613a957d45f3ced5 + pristine_git_object: 86330b8f93df612c6a2720a8edba961dd1dff848 ? src/main/java/com/glean/api_client/glean_api_client/models/operations//async/GetDatasourceInstanceConfigurationRequestBuilder.java : id: 63938814345e last_write_checksum: sha1:885c2c357301885ca0cbc7a89dabd35d3b9d113a pristine_git_object: 85c7887c4ebd9edc50a4fdbbdbab9d3786975927 + src/main/java/com/glean/api_client/glean_api_client/models/operations//async/GetPersonPhotoRequestBuilder.java: + id: 5f43e2f81afd + last_write_checksum: sha1:d42f268cf72c8bc0524d60c1a1d7d741ffe9ed55 + pristine_git_object: 441a6aae6dfe287eee476af7bc836c1555cd8a10 src/main/java/com/glean/api_client/glean_api_client/models/operations//async/GetRestApiV1ToolsListRequestBuilder.java: id: d0ece07eab72 last_write_checksum: sha1:e8ab3b7c1fa8f86c686ee3edf34d43bc29ce20eb @@ -6301,6 +6395,10 @@ trackedFiles: id: fb9a4142cd38 last_write_checksum: sha1:63cae231404968f81f82a248345f1b919913a364 pristine_git_object: 01e46676218ec596d1280d2274ef9212ea3d2601 + src/main/java/com/glean/api_client/glean_api_client/models/operations//async/RotateDatasourceCredentialsRequestBuilder.java: + id: 979d03af8304 + last_write_checksum: sha1:a478c142d25afe2e7c6a416b13e4a944497c3a41 + pristine_git_object: e4c61236d6b7e5e2457060c4618bc2c948189c3f src/main/java/com/glean/api_client/glean_api_client/models/operations//async/SearchAgentsRequestBuilder.java: id: e7c50b9e7078 last_write_checksum: sha1:e964a45415ff392d96b4a830a7378829bd0923a5 @@ -6773,6 +6871,18 @@ trackedFiles: id: 0f877dbacbcf last_write_checksum: sha1:9ee489471cdee6b378487d48f333490478f57a80 pristine_git_object: 9083e3bf217b7387bedccd0f914661621ab24c95 + src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequest.java: + id: 54388988d5f7 + last_write_checksum: sha1:2483f6fd1ff01f9e4418ca84aa43af6962290d05 + pristine_git_object: 9adcc4fa6eb5dd0ace4880207ac9c755bfeb4e59 + src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequestBuilder.java: + id: 72f7fb8e0956 + last_write_checksum: sha1:f48882b343b7487fd707a736577e4ab4b043c875 + pristine_git_object: 9d74a8f3f89022ba8a1c5a532d96a538507f5975 + src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusResponse.java: + id: 3a19b00e6bf5 + last_write_checksum: sha1:299cd24fee2c36936d62a93ca6de3ea3bc1ddb70 + pristine_git_object: cc413136c821a56de30510dc2456fbf012ba196f src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceInstanceConfigurationRequest.java: id: 2720d4773720 last_write_checksum: sha1:b4ef8fdfbb607f24530cb9b2b06022d47926bf32 @@ -6785,6 +6895,18 @@ trackedFiles: id: e597d9ac1ff4 last_write_checksum: sha1:1302053045bcbfc31d4bee0ea7a0f2970b47b352 pristine_git_object: 1ca5c3b8b7b6d14f9beb97724ea38309fea553c3 + src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequest.java: + id: 09b36d9c5470 + last_write_checksum: sha1:e4fe0123afec0865716794983a92d48bfbf88e26 + pristine_git_object: 3c091990353d847eb899fc748e7c7df3decfb376 + src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequestBuilder.java: + id: 7e879d5dffbe + last_write_checksum: sha1:c1c42171931282981c0660e9aea2a1bf3b81fc2b + pristine_git_object: 848d89514ca046739479d8fbe862dea0130c7da4 + src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoResponse.java: + id: a38cd0a76d92 + last_write_checksum: sha1:f947dd0d0786bc704eeacaab0b1481963fa189fc + pristine_git_object: 5fa8111de50237f0cabf2c5df620d275db1d143b src/main/java/com/glean/api_client/glean_api_client/models/operations/GetRestApiV1ToolsListRequest.java: id: 5ce062bb2269 last_write_checksum: sha1:3225d75261ace89cce7240e4ac4fd21eb1a692d8 @@ -7449,6 +7571,18 @@ trackedFiles: id: d8489b9dc16a last_write_checksum: sha1:db3b22f645bf9b716fec0cd9796b124d1e4d7799 pristine_git_object: c0e74516316f8333f7f5edc2decc32ef41c450cc + src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequest.java: + id: 745ebb281581 + last_write_checksum: sha1:f77327e035065ac048543aaa51f6554ad587d87c + pristine_git_object: d3e4511cdcdf17c1b44a0228f44484bd632a2542 + src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequestBuilder.java: + id: 9b020cd5c52b + last_write_checksum: sha1:ca8711050fd348595c353766be7eb3fa5a6b32c6 + pristine_git_object: 69e72adf2773bc888b267dec3b9e56d0add66580 + src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsResponse.java: + id: c9cd40c8a35b + last_write_checksum: sha1:aecef7d4230828c810cea44053d0acf4d8376a13 + pristine_git_object: d6686240e4089b93974968266c33c206eb04baee src/main/java/com/glean/api_client/glean_api_client/models/operations/SearchAgentsRequestBuilder.java: id: d0050192a9d8 last_write_checksum: sha1:87ed26c428e0e34161c5841f681cf19bf12861d3 @@ -7725,10 +7859,18 @@ trackedFiles: id: 7abc39060daa last_write_checksum: sha1:47e851d27ff0bfb64a8b3f8f78ef1af4cd5f23bb pristine_git_object: 77ad0e655ea0658e625aa82a3a797ef473ec8fec + src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceCredentialStatusResponse.java: + id: f3e85a5d5b2b + last_write_checksum: sha1:7900e46c32a685b016edb5a6623e63fc81f676da + pristine_git_object: 4e967b41e3a2e69b86d8e7f305394c46854d3b7d src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceInstanceConfigurationResponse.java: id: e96306d013c9 last_write_checksum: sha1:b71efdf55a1c4282bfa4ef3b72c07edec6473d98 pristine_git_object: 965882b3b3e77796c61b2b59186739e77a9c4548 + src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetPersonPhotoResponse.java: + id: 5edea3e97a40 + last_write_checksum: sha1:90b191f60df402b40c3d6fa13d299e9355e74862 + pristine_git_object: 75fa920a96f4348d46d7bbe7d087bec1afda3bc8 src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetRestApiV1ToolsListResponse.java: id: ba801362e6da last_write_checksum: sha1:d46602c60af1b8ce10811cedfa21ccf250a3e98d @@ -7993,6 +8135,10 @@ trackedFiles: id: 3f31b6c6aea6 last_write_checksum: sha1:cd3684615393a592c33ef87b38f4daa3c1e19b3a pristine_git_object: 292830fa37b6fc700aff0e68a17a06edd4c0b080 + src/main/java/com/glean/api_client/glean_api_client/models/operations/async/RotateDatasourceCredentialsResponse.java: + id: 572c78332148 + last_write_checksum: sha1:d46beac8e88bbf6d7187a1eb273ae4c0d9afdc23 + pristine_git_object: 700a8969fe9c718ac2444da1c82c113bedd2b338 src/main/java/com/glean/api_client/glean_api_client/models/operations/async/SearchAgentsResponse.java: id: 529bf7dd548e last_write_checksum: sha1:eb30a931eb712d83a88c3dead13d3cfea8607ae2 @@ -8189,10 +8335,18 @@ trackedFiles: id: b0bdd6bb4e15 last_write_checksum: sha1:47b47b3fcfbb07ef816f8c07c84198b2c41a9296 pristine_git_object: 4c080a668607ba9d50614ee85a0c6a095012a18d + src/main/java/com/glean/api_client/glean_api_client/operations/GetDatasourceCredentialStatus.java: + id: 03caec3de5f5 + last_write_checksum: sha1:9c8cdac9fd04ec83e7c43b4d0a95d751fb8ea316 + pristine_git_object: a9b1049e31aee533d87cdb2d1fd903a68f63888f src/main/java/com/glean/api_client/glean_api_client/operations/GetDatasourceInstanceConfiguration.java: id: 46207fe96766 last_write_checksum: sha1:7123395211193f3e203e9b69759c89387282744a pristine_git_object: 4c818875d9e0c951badf9ceb58340f05a051bd7a + src/main/java/com/glean/api_client/glean_api_client/operations/GetPersonPhoto.java: + id: 5d8e90bc9bec + last_write_checksum: sha1:72022e047e4078c45659f39951ed04ad38b9f616 + pristine_git_object: 1f9d87568b40fc58158abf129119917c339bd2de src/main/java/com/glean/api_client/glean_api_client/operations/GetRestApiV1ToolsList.java: id: 50c6bb08a25c last_write_checksum: sha1:c4b2e3c31fb986673234bbda51972319275b7c05 @@ -8461,6 +8615,10 @@ trackedFiles: id: ab31cb2dd32b last_write_checksum: sha1:7129f745069e92a2b4425e6ffdf820930c376dc0 pristine_git_object: 306bac677913896f89b8beec41b95eb909d52b74 + src/main/java/com/glean/api_client/glean_api_client/operations/RotateDatasourceCredentials.java: + id: dcb749627166 + last_write_checksum: sha1:6ec3b521d2e7825d7f8b642f1c4079289afbef40 + pristine_git_object: e5743dc211138f24f10dea387bfeda887131c63d src/main/java/com/glean/api_client/glean_api_client/operations/Search.java: id: 97c80b03b669 last_write_checksum: sha1:28a639ee1b39c35b35876bc2638825ce0e8a727b @@ -9080,7 +9238,7 @@ examples: application/json: {} responses: "200": - application/json: {"gleanAssist": {"activityInsights": [{"user": {"name": "George Clooney", "obfuscatedId": "abc123", "relatedDocuments": [{"querySuggestion": {"query": "app:github type:pull author:mortimer", "searchProviderInfo": {"name": "Google", "searchLinkUrlTemplate": "https://www.google.com/search?q={query}&hl=en"}, "label": "Mortimer's PRs", "datasource": "github", "requestOptions": {"datasourceFilter": "JIRA", "datasourcesFilter": ["JIRA"], "queryOverridesFacetFilters": true, "facetFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "facetFilterSets": [{"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}, {"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}, {"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}], "facetBucketSize": 867945, "authTokens": [{"accessToken": "123abc", "datasource": "gmail", "scope": "email profile https://www.googleapis.com/auth/gmail.readonly", "tokenType": "Bearer", "authUser": "1"}]}, "ranges": [{"startIndex": 617092, "document": {"metadata": {"datasource": "datasource", "objectType": "Feature Request", "container": "container", "parentId": "JIRA_EN-1337", "mimeType": "mimeType", "documentId": "documentId", "createTime": "2000-01-23T04:56:07.000Z", "updateTime": "2000-01-23T04:56:07.000Z", "components": ["Backend", "Networking"], "status": "[\"Done\"]", "pins": [{"audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "documentId": ""}, {"audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "documentId": ""}], "collections": [{"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}, {"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}, {"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}], "interactions": {"reacts": [{}, {}], "shares": [{"numDaysAgo": 448639}]}, "verification": {"state": "DEPRECATED", "metadata": {"reminders": [{"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}, {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}, {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}], "lastReminder": {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 872106}}}, "shortcuts": [{"inputAlias": ""}, {"inputAlias": ""}], "customData": {"someCustomField": {}}}}}], "inputDetails": {"hasCopyPaste": true}}, "results": [{"title": "title", "url": "https://example.com/foo/bar", "nativeAppUrl": "slack://foo/bar", "snippets": [{"mimeType": "mimeType", "snippet": "snippet"}]}]}, {"querySuggestion": {"query": "app:github type:pull author:mortimer", "searchProviderInfo": {"name": "Google", "searchLinkUrlTemplate": "https://www.google.com/search?q={query}&hl=en"}, "label": "Mortimer's PRs", "datasource": "github", "requestOptions": {"datasourceFilter": "JIRA", "datasourcesFilter": ["JIRA"], "queryOverridesFacetFilters": true, "facetFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "facetFilterSets": [{"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}, {"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}, {"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}], "facetBucketSize": 867945, "authTokens": [{"accessToken": "123abc", "datasource": "gmail", "scope": "email profile https://www.googleapis.com/auth/gmail.readonly", "tokenType": "Bearer", "authUser": "1"}]}, "ranges": [{"startIndex": 617092, "document": {"metadata": {"datasource": "datasource", "objectType": "Feature Request", "container": "container", "parentId": "JIRA_EN-1337", "mimeType": "mimeType", "documentId": "documentId", "createTime": "2000-01-23T04:56:07.000Z", "updateTime": "2000-01-23T04:56:07.000Z", "components": ["Backend", "Networking"], "status": "[\"Done\"]", "pins": [{"audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "documentId": ""}, {"audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "documentId": ""}], "collections": [{"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}, {"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}, {"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}], "interactions": {"reacts": [{}, {}], "shares": [{"numDaysAgo": 448639}]}, "verification": {"state": "DEPRECATED", "metadata": {"reminders": [{"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}, {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}, {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}], "lastReminder": {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 872106}}}, "shortcuts": [{"inputAlias": ""}, {"inputAlias": ""}], "customData": {"someCustomField": {}}}}}], "inputDetails": {"hasCopyPaste": true}}, "results": [{"title": "title", "url": "https://example.com/foo/bar", "nativeAppUrl": "slack://foo/bar", "snippets": [{"mimeType": "mimeType", "snippet": "snippet"}]}]}], "metadata": {"type": "FULL_TIME", "title": "Actor", "department": "Movies", "email": "george@example.com", "location": "Hollywood, CA", "phone": "6505551234", "photoUrl": "https://example.com/george.jpg", "startDate": "2000-01-23", "datasourceProfile": [{"datasource": "github", "handle": ""}], "querySuggestions": {"suggestions": [{"query": "app:github type:pull author:mortimer", "label": "Mortimer's PRs", "datasource": "github"}]}, "inviteInfo": {"invites": [{}, {}, {}]}, "customFields": [{"label": "", "values": [{}], "displayable": true}], "badges": [{"key": "deployment_name_new_hire", "displayName": "New hire", "iconConfig": {"color": "#343CED", "key": "person_icon", "iconType": "GLYPH", "name": "user"}}]}}, "activity": "ALL"}]}, "overviewResponse": {"perUserInsights": [{"person": {"name": "George Clooney", "obfuscatedId": "abc123"}}]}, "assistantResponse": {"perUserInsights": [{"person": {"name": "George Clooney", "obfuscatedId": "abc123"}}]}, "agentsResponse": {"topAgentsInsights": [{"icon": {"color": "#343CED", "key": "person_icon", "iconType": "GLYPH", "name": "user"}}], "agentsUsageByDepartmentInsights": [{"icon": {"color": "#343CED", "key": "person_icon", "iconType": "GLYPH", "name": "user"}}], "agentUsersInsights": [{"person": {"name": "George Clooney", "obfuscatedId": "abc123"}}], "agentsTimeSavedInsights": [{"icon": {"color": "#343CED", "key": "person_icon", "iconType": "GLYPH", "name": "user"}}]}} + application/json: {"gleanAssist": {"activityInsights": [{"user": {"name": "George Clooney", "obfuscatedId": "abc123", "relatedDocuments": [{"querySuggestion": {"query": "app:github type:pull author:mortimer", "searchProviderInfo": {"name": "Google", "searchLinkUrlTemplate": "https://www.google.com/search?q={query}&hl=en"}, "label": "Mortimer's PRs", "datasource": "github", "requestOptions": {"datasourceFilter": "JIRA", "datasourcesFilter": ["JIRA"], "queryOverridesFacetFilters": true, "facetFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "facetFilterSets": [{"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}, {"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}, {"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}], "facetBucketSize": 867945, "authTokens": [{"accessToken": "123abc", "datasource": "gmail", "scope": "email profile https://www.googleapis.com/auth/gmail.readonly", "tokenType": "Bearer", "authUser": "1"}]}, "ranges": [{"startIndex": 617092, "document": {"metadata": {"datasource": "datasource", "objectType": "Feature Request", "container": "container", "parentId": "JIRA_EN-1337", "mimeType": "mimeType", "documentId": "documentId", "createTime": "2000-01-23T04:56:07.000Z", "updateTime": "2000-01-23T04:56:07.000Z", "components": ["Backend", "Networking"], "status": "[\"Done\"]", "pins": [{"audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "documentId": ""}, {"audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "documentId": ""}], "collections": [{"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}, {"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}, {"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}], "interactions": {"reacts": [{}, {}], "shares": [{"numDaysAgo": 448639}]}, "verification": {"state": "DEPRECATED", "metadata": {"reminders": [{"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}, {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}, {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}], "lastReminder": {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 872106}}}, "shortcuts": [{"inputAlias": ""}, {"inputAlias": ""}], "customData": {"someCustomField": {}}}}}], "inputDetails": {"hasCopyPaste": true}}, "results": [{"title": "title", "url": "https://example.com/foo/bar", "nativeAppUrl": "slack://foo/bar", "snippets": [{"mimeType": "mimeType", "snippet": "snippet"}]}]}, {"querySuggestion": {"query": "app:github type:pull author:mortimer", "searchProviderInfo": {"name": "Google", "searchLinkUrlTemplate": "https://www.google.com/search?q={query}&hl=en"}, "label": "Mortimer's PRs", "datasource": "github", "requestOptions": {"datasourceFilter": "JIRA", "datasourcesFilter": ["JIRA"], "queryOverridesFacetFilters": true, "facetFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "facetFilterSets": [{"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}, {"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}, {"filters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}]}], "facetBucketSize": 867945, "authTokens": [{"accessToken": "123abc", "datasource": "gmail", "scope": "email profile https://www.googleapis.com/auth/gmail.readonly", "tokenType": "Bearer", "authUser": "1"}]}, "ranges": [{"startIndex": 617092, "document": {"metadata": {"datasource": "datasource", "objectType": "Feature Request", "container": "container", "parentId": "JIRA_EN-1337", "mimeType": "mimeType", "documentId": "documentId", "createTime": "2000-01-23T04:56:07.000Z", "updateTime": "2000-01-23T04:56:07.000Z", "components": ["Backend", "Networking"], "status": "[\"Done\"]", "pins": [{"audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "documentId": ""}, {"audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "documentId": ""}], "collections": [{"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}, {"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}, {"name": "", "description": "whoever peppery lest knife publication faint concerning", "addedRoles": [{"role": "OWNER"}], "removedRoles": [{"role": "ANSWER_MODERATOR"}, {"role": "ANSWER_MODERATOR"}], "audienceFilters": [{"fieldName": "type", "values": [{"value": "Spreadsheet", "relationType": "EQUALS"}, {"value": "Presentation", "relationType": "EQUALS"}]}], "id": 554319, "items": [{"collectionId": 954550, "shortcut": {"inputAlias": "", "roles": [{"role": "OWNER"}, {"role": "OWNER"}, {"role": "OWNER"}]}, "itemType": "COLLECTION"}]}], "interactions": {"reacts": [{}, {}], "shares": [{"numDaysAgo": 448639}]}, "verification": {"state": "DEPRECATED", "metadata": {"reminders": [{"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}, {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}, {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 640737}], "lastReminder": {"assignee": {"name": "George Clooney", "obfuscatedId": "abc123"}, "remindAt": 872106}}}, "shortcuts": [{"inputAlias": ""}, {"inputAlias": ""}], "customData": {"someCustomField": {}}}}}], "inputDetails": {"hasCopyPaste": true}}, "results": [{"title": "title", "url": "https://example.com/foo/bar", "nativeAppUrl": "slack://foo/bar", "snippets": [{"mimeType": "mimeType", "snippet": "snippet"}]}]}], "metadata": {"type": "FULL_TIME", "title": "Actor", "department": "Movies", "email": "george@example.com", "location": "Hollywood, CA", "phone": "6505551234", "photoUrl": "https://example.com/george.jpg", "startDate": "2000-01-23", "datasourceProfile": [{"datasource": "github", "handle": ""}], "querySuggestions": {"suggestions": [{"query": "app:github type:pull author:mortimer", "label": "Mortimer's PRs", "datasource": "github"}]}, "inviteInfo": {"invites": [{}, {}, {}]}, "customFields": [{"label": "", "values": [{}], "displayable": true}], "badges": [{"key": "deployment_name_new_hire", "displayName": "New hire", "iconConfig": {"color": "#343CED", "key": "person_icon", "iconType": "GLYPH", "name": "user"}}]}}, "activity": "ALL"}]}, "overviewResponse": {"perUserInsights": [{"person": {"name": "George Clooney", "obfuscatedId": "abc123"}}]}, "assistantResponse": {"perUserInsights": [{"person": {"name": "George Clooney", "obfuscatedId": "abc123"}}]}, "agentsResponse": {"topAgentsInsights": [{"icon": {"color": "#343CED", "key": "person_icon", "iconType": "GLYPH", "name": "user"}}], "topUseCasesInsights": [{"topAgentIcon": {"color": "#343CED", "key": "person_icon", "iconType": "GLYPH", "name": "user"}}], "agentsUsageByDepartmentInsights": [{"icon": {"color": "#343CED", "key": "person_icon", "iconType": "GLYPH", "name": "user"}}], "agentUsersInsights": [{"person": {"name": "George Clooney", "obfuscatedId": "abc123"}}], "agentsTimeSavedInsights": [{"icon": {"color": "#343CED", "key": "person_icon", "iconType": "GLYPH", "name": "user"}}]}} messages: speakeasy-default-messages: requestBody: @@ -9546,6 +9704,37 @@ examples: application/json: {"configuration": {"values": {}}} "400": application/json: {} + getPersonPhoto: + speakeasy-default-get-person-photo: + parameters: + path: + person_id: "" + responses: + "200": + image/png: "x-file: example.file" + image/jpeg: "x-file: example.file" + getDatasourceCredentialStatus: + speakeasy-default-get-datasource-credential-status: + parameters: + path: + datasourceInstanceId: "o365sharepoint_abc123" + responses: + "200": + application/json: {"status": "VALID"} + "400": + application/json: {} + rotateDatasourceCredentials: + speakeasy-default-rotate-datasource-credentials: + parameters: + path: + datasourceInstanceId: "o365sharepoint_abc123" + requestBody: + application/json: {"credentials": {"values": {"key": {}}}} + responses: + "200": + application/json: {"status": "MISSING"} + "400": + application/json: {} examplesVersion: 1.0.2 generatedTests: activity: "2025-06-09T18:03:44Z" @@ -9688,6 +9877,7 @@ generatedTests: get_/rest/api/v1/tools/list: "2025-06-09T18:03:44Z" post_/rest/api/v1/tools/call: "2025-06-09T18:03:44Z" listpolicies: "2025-06-09T18:03:44Z" +releaseNotes: "## Java SDK Changes:\n* `glean.client.collections.addItems()`: `response.error.errorType.enum(corruptItem)` **Added** (Breaking ⚠️)\n* `glean.entities.getPersonPhoto()`: **Added**\n* `glean.datasources.getDatasourceCredentialStatus()`: **Added**\n* `glean.datasources.rotateDatasourceCredentials()`: **Added**\n* `glean.client.collections.create()`: \n * `response.union(class (0)).error.errorCode.enum(corruptItem)` **Added**\n * `errorCode.enum(corruptItem)` **Added**\n* `glean.client.collections.delete()`: `errorCode.enum(corruptItem)` **Added**\n* `glean.client.collections.update()`: \n * `response` **Changed**\n * `errorCode.enum(corruptItem)` **Added**\n* `glean.client.collections.retrieve()`: `response.error.errorCode.enum(corruptItem)` **Added**\n* `glean.client.insights.retrieve()`: \n * `request.insightsRequest` **Changed**\n * `response.agentsResponse.topUseCasesInsights` **Added**\n* `glean.client.search.retrieveFeed()`: \n * `request.feedRequest.categories[]` **Changed**\n * `response.results[]` **Changed**\n" generatedFiles: - .gitattributes - USAGE.md diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 008fd755..d9bba970 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -30,7 +30,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false java: - version: 0.12.38 + version: 0.13.0 additionalDependencies: [] additionalPlugins: [] artifactID: glean-api-client diff --git a/.speakeasy/glean-merged-spec.yaml b/.speakeasy/glean-merged-spec.yaml index e084beac..db69e225 100644 --- a/.speakeasy/glean-merged-spec.yaml +++ b/.speakeasy/glean-merged-spec.yaml @@ -2,7 +2,7 @@ openapi: 3.0.0 info: version: 0.9.0 title: Glean API - x-source-commit-sha: 0aa266469924048ad422bf6314104f79b477e46a + x-source-commit-sha: bcc8ebea507fca7c8f4fe50c97681519154a33e4 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. @@ -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: 122e22b59935f3ed61845da28a7c607ebc115c9b + x-open-api-commit-sha: 6189c3c9779559c73f6e57a767daa7d30b1b0d34 x-speakeasy-name: 'Glean API' servers: - url: https://{instance}-be.glean.com @@ -2036,6 +2036,58 @@ paths: - APIToken: [] x-speakeasy-name-override: readPeople x-speakeasy-group: client.entities + /rest/api/v1/people/{person_id}/photo: + get: + tags: + - Entities + summary: Get person photo + description: | + Returns the profile photo bytes for a person whose photo is stored in Glean (crawled from an identity source or user-uploaded via admin console). Photos hosted externally (e.g. Slack CDN) are not served by this endpoint; callers should follow the photoUrl from /people or /listentities directly. Responses include a Cache-Control header (max-age=3600) to reduce redundant fetches. + operationId: getPersonPhoto + x-visibility: Public + parameters: + - name: person_id + in: path + required: true + description: The obfuscated ID of the person whose photo to retrieve. + schema: + type: string + - name: ds + in: query + required: false + description: | + Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the datasource is derived from the person's stored photo URL or the deployment's primary person datasource. + schema: + type: string + responses: + "200": + description: Photo bytes returned successfully. + headers: + Cache-Control: + description: Caching directive for the photo response. + schema: + type: string + example: public, max-age=3600 + content: + image/png: + schema: + type: string + format: binary + image/jpeg: + schema: + type: string + format: binary + "400": + description: Missing person_id parameter. + "401": + description: Not Authorized. + "404": + description: | + Person not found, person has no photo, or photo is not hosted by Glean (follow photoUrl from /people or /listentities directly). + "429": + description: Too Many Requests. + security: + - APIToken: [] /rest/api/v1/createshortcut: post: tags: @@ -4014,6 +4066,93 @@ paths: schema: $ref: '#/components/schemas/ErrorResponse' x-visibility: Preview + /rest/api/v1/datasource/{datasourceInstanceId}/credentialstatus: + get: + operationId: getDatasourceCredentialStatus + summary: Get datasource instance credential status + description: | + Returns the current credential status for a datasource instance. Access is limited to callers with the ADMIN scope; the handler enforces this check. + tags: + - Datasources + security: + - APIToken: [] + parameters: + - $ref: '#/components/parameters/datasourceInstanceId' + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/DatasourceCredentialStatusResponse' + "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/datasource/{datasourceInstanceId}/credentials: + post: + operationId: rotateDatasourceCredentials + summary: Rotate datasource instance credentials + description: | + Rotates the credentials that a datasource instance uses to connect to its upstream system. Replaces the active credential material with the supplied values and returns the credential status after rotation. Access is limited to callers with the ADMIN scope; the handler enforces this check. + Only keys recognized as credential material for the datasource type may be set in `credentials.values` (e.g. `clientSecret`, `apiToken`, `privateKey`, depending on the configured auth method). Unrecognized keys, or keys that correspond to non-credential configuration, cause a 400; other instance configuration must be updated via PATCH /configure/datasources/{datasourceId}/instances/{instanceId}. + tags: + - Datasources + security: + - APIToken: [] + parameters: + - $ref: '#/components/parameters/datasourceInstanceId' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RotateDatasourceCredentialsRequest' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/DatasourceCredentialStatusResponse' + "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: @@ -8709,6 +8848,7 @@ components: type: string enum: - EXISTING_ITEM + - CORRUPT_ITEM AddCollectionItemsResponse: properties: collection: @@ -8738,6 +8878,7 @@ components: - HEIGHT_VIOLATION - WIDTH_VIOLATION - NO_PERMISSIONS + - CORRUPT_ITEM CreateCollectionResponse: allOf: - type: object @@ -8960,6 +9101,11 @@ components: items: type: string description: Departments for which Insights are requested. + managerEmails: + type: array + items: + type: string + description: Manager emails whose teams should be filtered for. Empty array means no filtering. dayRange: $ref: "#/components/schemas/Period" description: Time period for which Insights are requested. @@ -8970,6 +9116,11 @@ components: items: type: string description: Departments for which Insights are requested. + managerEmails: + type: array + items: + type: string + description: Manager emails whose teams should be filtered for. Empty array means no filtering. dayRange: $ref: "#/components/schemas/Period" description: Time period for which Insights are requested. @@ -8985,9 +9136,57 @@ components: items: type: string description: Departments for which Insights are requested. + managerEmails: + type: array + items: + type: string + description: Manager emails whose teams should be filtered for. Empty array means no filtering. dayRange: $ref: "#/components/schemas/Period" description: Time period for which Insights are requested. + McpBreakdownInsightsRequest: + properties: + departments: + type: array + items: + type: string + description: Departments for which Insights are requested. + managerIds: + type: array + items: + type: string + description: Manager user IDs whose teams should be filtered for. Empty array means no filtering. + managerEmails: + type: array + items: + type: string + description: Manager emails whose teams should be filtered for. Empty array means no filtering. + dayRange: + $ref: "#/components/schemas/Period" + description: Time period for which Insights are requested. + breakdownType: + type: string + enum: + - USERS + - HOST_APPLICATIONS + - TOOLS + - SERVERS + description: Type of breakdown to return. + hostApplications: + type: array + items: + type: string + description: Host applications to filter by. Empty array means all host applications. + tools: + type: array + items: + type: string + description: MCP tools to filter by. Empty array means all tools. + servers: + type: array + items: + type: string + description: MCP servers to filter by. Empty array means all servers. InsightsRequest: properties: overviewRequest: @@ -9002,6 +9201,8 @@ components: $ref: "#/components/schemas/AgentsInsightsV2Request" x-visibility: Public description: If specified, will return data for the Agents section of the Insights Dashboard. + mcpBreakdownRequest: + $ref: "#/components/schemas/McpBreakdownInsightsRequest" disablePerUserInsights: type: boolean description: If true, suppresses the generation of per-user Insights in the response. Default is false. @@ -9052,10 +9253,10 @@ components: properties: monthlyActiveUsers: type: integer - description: Number of current Monthly Active Users, in the specified departments. + description: Number of current Monthly Active Users. weeklyActiveUsers: type: integer - description: Number of current Weekly Active Users, in the specified departments. + description: Number of current Weekly Active Users. InsightsSearchSummary: allOf: - $ref: "#/components/schemas/CurrentActiveUsers" @@ -9286,6 +9487,33 @@ components: downvoteCount: type: integer description: Total number of downvotes for this agent over the specified time period. + AgentUseCaseInsight: + properties: + useCase: + type: string + description: Use case name + runCount: + type: integer + description: Total number of runs for this use case over the specified time period. + trend: + type: number + format: float + description: Percentage change in runs compared to the previous equivalent time period. + topDepartments: + type: string + description: Comma-separated list of the top departments using this use case. + topAgentId: + type: string + description: ID of the most-used agent for this use case. + topAgentName: + type: string + description: Name of the most-used agent for this use case. + topAgentIcon: + $ref: "#/components/schemas/IconConfig" + description: Icon of the most-used agent for this use case. + topAgentIsDeleted: + type: boolean + description: Indicates whether the top agent has been deleted. AgentsUsageByDepartmentInsight: properties: department: @@ -9375,6 +9603,10 @@ components: type: array items: $ref: "#/components/schemas/PerAgentInsight" + topUseCasesInsights: + type: array + items: + $ref: "#/components/schemas/AgentUseCaseInsight" agentsUsageByDepartmentInsights: type: array items: @@ -10196,7 +10428,10 @@ components: - FOLLOW_UP - MILESTONE_TIMELINE_CHECK - PROJECT_DISCUSSION_DIGEST + - PROJECT_FOCUS_BLOCK - PROJECT_NEXT_STEP + - DEMO_CARD + - OOO_PLANNER description: Categories of content requested. An allowlist gives flexibility to request content separately or together. requestOptions: $ref: "#/components/schemas/FeedRequestOptions" @@ -10533,6 +10768,7 @@ components: - SHORTCUTS_TYPE - SLIDE_TYPE - SPREADSHEET_TYPE + - INLINE_HTML_TYPE - WORKFLOWS_TYPE FavoriteInfo: type: object @@ -10587,6 +10823,12 @@ components: lastDraftSavedAt: type: integer description: Server Unix timestamp of the last time the draft was saved. + lastDraftSavedBy: + description: The person who last saved the draft. + $ref: "#/components/schemas/Person" + lastDraftGitAuthorId: + type: string + description: ID of the VCS user (e.g. GitHub username) who last saved the draft. Set only by the draft save path via the external Git integration API. lastUpdatedBy: $ref: "#/components/schemas/Person" Workflow: @@ -10706,7 +10948,10 @@ components: - FOLLOW_UP - MILESTONE_TIMELINE_CHECK - PROJECT_DISCUSSION_DIGEST + - PROJECT_FOCUS_BLOCK - PROJECT_NEXT_STEP + - DEMO_CARD + - OOO_PLANNER description: Type of the justification. justification: type: string @@ -10789,7 +11034,10 @@ components: - FOLLOW_UP - MILESTONE_TIMELINE_CHECK - PROJECT_DISCUSSION_DIGEST + - PROJECT_FOCUS_BLOCK - PROJECT_NEXT_STEP + - DEMO_CARD + - OOO_PLANNER description: Category of the result, one of the requested categories in incoming request. primaryEntry: $ref: "#/components/schemas/FeedEntry" @@ -13841,6 +14089,46 @@ components: - 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. + DatasourceCredentialStatus: + type: string + enum: + - VALID + - VALID_WITH_WARNINGS + - VALIDATING + - INVALID + - MISSING + description: | + Lifecycle state of the credentials installed for a datasource instance. Mirrors the internal admin Status enum so the handler can surface the same health signals already tracked today. EXPIRING_SOON is represented as VALID_WITH_WARNINGS (with detail in `message`); EXPIRED is surfaced as INVALID plus a non-null `expiresAt` in the past. + DatasourceCredentialStatusResponse: + type: object + properties: + status: + $ref: '#/components/schemas/DatasourceCredentialStatus' + lastRotatedAt: + type: string + format: date-time + description: When the credentials were last rotated. Omitted when not known. + expiresAt: + type: string + format: date-time + description: | + When the active credentials expire. Omitted when not known or not applicable to this credential type. + message: + type: string + description: Optional human-readable detail about the current credential status. + required: + - status + description: Status of the credentials currently installed for a datasource instance. + RotateDatasourceCredentialsRequest: + type: object + properties: + credentials: + $ref: '#/components/schemas/DatasourceInstanceConfiguration' + required: + - credentials + description: | + Request to rotate the credentials used by a datasource instance. Replaces the active credential material with the supplied values. + `credentials.values` must contain only keys recognized as credential material for the datasource type (for example `clientSecret` for OAuth, `apiToken` for API-token auth, `privateKey` for certificate auth). Unrecognized keys, or keys that correspond to non-credential configuration, cause a 400; use the configure endpoint to change non-credential config. ChatRequestStream: required: - messages @@ -13914,6 +14202,14 @@ components: schema: type: string example: o365sharepoint_abc123 + datasourceInstanceId: + name: datasourceInstanceId + in: path + description: The full datasource instance identifier (e.g. o365sharepoint_abc123) + required: true + schema: + type: string + example: o365sharepoint_abc123 responses: SuccessResponse: description: OK diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 5d86601b..baa33745 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,9 +1,9 @@ -speakeasyVersion: 1.761.8 +speakeasyVersion: 1.762.0 sources: Glean API: sourceNamespace: glean-api-specs - sourceRevisionDigest: sha256:5fafd8224d41224b85cbb5f39c686e5da647fadcd8211bc9fae3c0834341dae6 - sourceBlobDigest: sha256:884a6119e9d59c15d47e169eaa496571dae1c106d390990aee38a25cb51e42c3 + sourceRevisionDigest: sha256:8da67220e89b00837552e62867a4bc61e099b0cd252971e9603ccfa9d0ab4d17 + sourceBlobDigest: sha256:d3423dd27252be3c6d99959a53457c7a7f9828b6276078161f0b731649a15f95 tags: - latest Glean-OAS: @@ -17,10 +17,10 @@ targets: glean: source: Glean API sourceNamespace: glean-api-specs - sourceRevisionDigest: sha256:5fafd8224d41224b85cbb5f39c686e5da647fadcd8211bc9fae3c0834341dae6 - sourceBlobDigest: sha256:884a6119e9d59c15d47e169eaa496571dae1c106d390990aee38a25cb51e42c3 + sourceRevisionDigest: sha256:8da67220e89b00837552e62867a4bc61e099b0cd252971e9603ccfa9d0ab4d17 + sourceBlobDigest: sha256:d3423dd27252be3c6d99959a53457c7a7f9828b6276078161f0b731649a15f95 codeSamplesNamespace: glean-api-specs-java-code-samples - codeSamplesRevisionDigest: sha256:ae9e0d92820a63defd05d413b6e301b7717405a6b9a992c754166897b2d7cb45 + codeSamplesRevisionDigest: sha256:f24fd1dee42f4a48a2628185ff76c6bdaa18cda32013061126a401ad25760569 workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/README.md b/README.md index 7d62a851..90b669da 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ The samples below show how a published SDK artifact is used: Gradle: ```groovy -implementation 'com.glean.api-client:glean-api-client:0.12.38' +implementation 'com.glean.api-client:glean-api-client:0.13.0' ``` Maven: @@ -75,7 +75,7 @@ Maven: com.glean.api-client glean-api-client - 0.12.38 + 0.13.0 ``` @@ -474,10 +474,10 @@ For more information on obtaining the appropriate token type, please contact you * [retrieveByFacets](docs/sdks/clientdocuments/README.md#retrievebyfacets) - Read documents by facets * [summarize](docs/sdks/clientdocuments/README.md#summarize) - Summarize documents -### [Client.Entities](docs/sdks/entities/README.md) +### [Client.Entities](docs/sdks/cliententities/README.md) -* [list](docs/sdks/entities/README.md#list) - List entities -* [readPeople](docs/sdks/entities/README.md#readpeople) - Read people +* [list](docs/sdks/cliententities/README.md#list) - List entities +* [readPeople](docs/sdks/cliententities/README.md#readpeople) - Read people ### [Client.Governance.Data.Policies](docs/sdks/policies/README.md) @@ -545,6 +545,12 @@ For more information on obtaining the appropriate token type, please contact you * [getDatasourceInstanceConfiguration](docs/sdks/datasources/README.md#getdatasourceinstanceconfiguration) - Get datasource instance configuration * [updateDatasourceInstanceConfiguration](docs/sdks/datasources/README.md#updatedatasourceinstanceconfiguration) - Update datasource instance configuration +* [getDatasourceCredentialStatus](docs/sdks/datasources/README.md#getdatasourcecredentialstatus) - Get datasource instance credential status +* [rotateDatasourceCredentials](docs/sdks/datasources/README.md#rotatedatasourcecredentials) - Rotate datasource instance credentials + +### [Entities](docs/sdks/entities/README.md) + +* [getPersonPhoto](docs/sdks/entities/README.md#getpersonphoto) - Get person photo ### [Governance](docs/sdks/governance/README.md) @@ -713,9 +719,9 @@ public class Application { many more subclasses in the JDK platform). **Inherit from [`GleanError`](./src/main/java/models/errors/GleanError.java)**: -* [`com.glean.api_client.glean_api_client.models.errors.ErrorResponse`](./src/main/java/models/errors/com.glean.api_client.glean_api_client.models.errors.ErrorResponse.java): Error response returned for failed requests. Applicable to 6 of 116 methods.* -* [`com.glean.api_client.glean_api_client.models.errors.CollectionError`](./src/main/java/models/errors/com.glean.api_client.glean_api_client.models.errors.CollectionError.java): Semantic error. Status code `422`. Applicable to 3 of 116 methods.* -* [`com.glean.api_client.glean_api_client.models.errors.GleanDataError`](./src/main/java/models/errors/com.glean.api_client.glean_api_client.models.errors.GleanDataError.java): Forbidden. Applicable to 2 of 116 methods.* +* [`com.glean.api_client.glean_api_client.models.errors.ErrorResponse`](./src/main/java/models/errors/com.glean.api_client.glean_api_client.models.errors.ErrorResponse.java): Error response returned for failed requests. Applicable to 8 of 119 methods.* +* [`com.glean.api_client.glean_api_client.models.errors.CollectionError`](./src/main/java/models/errors/com.glean.api_client.glean_api_client.models.errors.CollectionError.java): Semantic error. Status code `422`. Applicable to 3 of 119 methods.* +* [`com.glean.api_client.glean_api_client.models.errors.GleanDataError`](./src/main/java/models/errors/com.glean.api_client.glean_api_client.models.errors.GleanDataError.java): Forbidden. Applicable to 2 of 119 methods.* diff --git a/RELEASES.md b/RELEASES.md index aee99e8c..3221f90e 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -728,4 +728,14 @@ Based on: ### Generated - [java v0.12.38] . ### Releases -- [Maven Central v0.12.38] https://central.sonatype.com/artifact/com.glean.api-client/glean-api-client/0.12.38 - . \ No newline at end of file +- [Maven Central v0.12.38] https://central.sonatype.com/artifact/com.glean.api-client/glean-api-client/0.12.38 - . + +## 2026-05-06 03:49:29 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.762.0 (2.882.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [java v0.13.0] . +### Releases +- [Maven Central v0.13.0] https://central.sonatype.com/artifact/com.glean.api-client/glean-api-client/0.13.0 - . \ No newline at end of file diff --git a/docs/models/components/AddCollectionItemsErrorErrorType.md b/docs/models/components/AddCollectionItemsErrorErrorType.md index e99e1758..fc3c9d3c 100644 --- a/docs/models/components/AddCollectionItemsErrorErrorType.md +++ b/docs/models/components/AddCollectionItemsErrorErrorType.md @@ -6,6 +6,9 @@ import com.glean.api_client.glean_api_client.models.components.AddCollectionItemsErrorErrorType; AddCollectionItemsErrorErrorType value = AddCollectionItemsErrorErrorType.EXISTING_ITEM; + +// Open enum: use .of() to create instances from custom string values +AddCollectionItemsErrorErrorType custom = AddCollectionItemsErrorErrorType.of("custom_value"); ``` @@ -13,4 +16,5 @@ AddCollectionItemsErrorErrorType value = AddCollectionItemsErrorErrorType.EXISTI | Name | Value | | --------------- | --------------- | -| `EXISTING_ITEM` | EXISTING_ITEM | \ No newline at end of file +| `EXISTING_ITEM` | EXISTING_ITEM | +| `CORRUPT_ITEM` | CORRUPT_ITEM | \ No newline at end of file diff --git a/docs/models/components/AgentUseCaseInsight.md b/docs/models/components/AgentUseCaseInsight.md new file mode 100644 index 00000000..81603b56 --- /dev/null +++ b/docs/models/components/AgentUseCaseInsight.md @@ -0,0 +1,15 @@ +# AgentUseCaseInsight + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | +| `useCase` | *Optional\* | :heavy_minus_sign: | Use case name | | +| `runCount` | *Optional\* | :heavy_minus_sign: | Total number of runs for this use case over the specified time period. | | +| `trend` | *Optional\* | :heavy_minus_sign: | Percentage change in runs compared to the previous equivalent time period. | | +| `topDepartments` | *Optional\* | :heavy_minus_sign: | Comma-separated list of the top departments using this use case. | | +| `topAgentId` | *Optional\* | :heavy_minus_sign: | ID of the most-used agent for this use case. | | +| `topAgentName` | *Optional\* | :heavy_minus_sign: | Name of the most-used agent for this use case. | | +| `topAgentIcon` | [Optional\](../../models/components/IconConfig.md) | :heavy_minus_sign: | Defines how to render an icon | {
"color": "#343CED",
"key": "person_icon",
"iconType": "GLYPH",
"name": "user"
} | +| `topAgentIsDeleted` | *Optional\* | :heavy_minus_sign: | Indicates whether the top agent has been deleted. | | \ No newline at end of file diff --git a/docs/models/components/AgentsInsightsV2Request.md b/docs/models/components/AgentsInsightsV2Request.md index 070eb3f1..5ce00b30 100644 --- a/docs/models/components/AgentsInsightsV2Request.md +++ b/docs/models/components/AgentsInsightsV2Request.md @@ -7,4 +7,5 @@ | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | | `agentIds` | List\<*String*> | :heavy_minus_sign: | IDs of the Agents for which Insights should be returned. An empty array signifies all. | | `departments` | List\<*String*> | :heavy_minus_sign: | Departments for which Insights are requested. | +| `managerEmails` | List\<*String*> | :heavy_minus_sign: | Manager emails whose teams should be filtered for. Empty array means no filtering. | | `dayRange` | [Optional\](../../models/components/Period.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/AgentsInsightsV2Response.md b/docs/models/components/AgentsInsightsV2Response.md index a7445ae6..97b170bb 100644 --- a/docs/models/components/AgentsInsightsV2Response.md +++ b/docs/models/components/AgentsInsightsV2Response.md @@ -5,13 +5,14 @@ | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users, in the specified departments. | -| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users, in the specified departments. | +| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users. | +| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users. | | `monthlyActiveUserTimeseries` | [Optional\](../../models/components/LabeledCountInfo.md) | :heavy_minus_sign: | N/A | | `weeklyActiveUserTimeseries` | [Optional\](../../models/components/LabeledCountInfo.md) | :heavy_minus_sign: | N/A | | `dailyActiveUserTimeseries` | [Optional\](../../models/components/LabeledCountInfo.md) | :heavy_minus_sign: | N/A | | `sharedAgentsCount` | *Optional\* | :heavy_minus_sign: | Total number of shared agents. | | `topAgentsInsights` | List\<[PerAgentInsight](../../models/components/PerAgentInsight.md)> | :heavy_minus_sign: | N/A | +| `topUseCasesInsights` | List\<[AgentUseCaseInsight](../../models/components/AgentUseCaseInsight.md)> | :heavy_minus_sign: | N/A | | `agentsUsageByDepartmentInsights` | List\<[AgentsUsageByDepartmentInsight](../../models/components/AgentsUsageByDepartmentInsight.md)> | :heavy_minus_sign: | N/A | | `agentUsersInsights` | List\<[AgentUsersInsight](../../models/components/AgentUsersInsight.md)> | :heavy_minus_sign: | N/A | | `agentsTimeSavedInsights` | List\<[AgentsTimeSavedInsight](../../models/components/AgentsTimeSavedInsight.md)> | :heavy_minus_sign: | Insights for agents time saved over the specified time period. | diff --git a/docs/models/components/AssistantInsightsResponse.md b/docs/models/components/AssistantInsightsResponse.md index c38e5af7..72f73795 100644 --- a/docs/models/components/AssistantInsightsResponse.md +++ b/docs/models/components/AssistantInsightsResponse.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users, in the specified departments. | -| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users, in the specified departments. | +| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users. | +| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users. | | `lastUpdatedTs` | *Optional\* | :heavy_minus_sign: | Unix timestamp of the last update for the insights data in the response. | | `monthlyActiveUserTimeseries` | [Optional\](../../models/components/LabeledCountInfo.md) | :heavy_minus_sign: | N/A | | `weeklyActiveUserTimeseries` | [Optional\](../../models/components/LabeledCountInfo.md) | :heavy_minus_sign: | N/A | diff --git a/docs/models/components/BreakdownType.md b/docs/models/components/BreakdownType.md new file mode 100644 index 00000000..dc711a99 --- /dev/null +++ b/docs/models/components/BreakdownType.md @@ -0,0 +1,21 @@ +# BreakdownType + +Type of breakdown to return. + +## Example Usage + +```java +import com.glean.api_client.glean_api_client.models.components.BreakdownType; + +BreakdownType value = BreakdownType.USERS; +``` + + +## Values + +| Name | Value | +| ------------------- | ------------------- | +| `USERS` | USERS | +| `HOST_APPLICATIONS` | HOST_APPLICATIONS | +| `TOOLS` | TOOLS | +| `SERVERS` | SERVERS | \ No newline at end of file diff --git a/docs/models/components/CollectionErrorErrorCode.md b/docs/models/components/CollectionErrorErrorCode.md index 6001f0d5..6e9466bb 100644 --- a/docs/models/components/CollectionErrorErrorCode.md +++ b/docs/models/components/CollectionErrorErrorCode.md @@ -22,4 +22,5 @@ CollectionErrorErrorCode custom = CollectionErrorErrorCode.of("custom_value"); | `CONCURRENT_HIERARCHY_EDIT` | CONCURRENT_HIERARCHY_EDIT | | `HEIGHT_VIOLATION` | HEIGHT_VIOLATION | | `WIDTH_VIOLATION` | WIDTH_VIOLATION | -| `NO_PERMISSIONS` | NO_PERMISSIONS | \ No newline at end of file +| `NO_PERMISSIONS` | NO_PERMISSIONS | +| `CORRUPT_ITEM` | CORRUPT_ITEM | \ No newline at end of file diff --git a/docs/models/components/CurrentActiveUsers.md b/docs/models/components/CurrentActiveUsers.md index 68ea377f..f73a3a4e 100644 --- a/docs/models/components/CurrentActiveUsers.md +++ b/docs/models/components/CurrentActiveUsers.md @@ -3,7 +3,7 @@ ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users, in the specified departments. | -| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users, in the specified departments. | \ No newline at end of file +| Field | Type | Required | Description | +| --------------------------------------- | --------------------------------------- | --------------------------------------- | --------------------------------------- | +| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users. | +| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users. | \ No newline at end of file diff --git a/docs/models/components/DatasourceCredentialStatus.md b/docs/models/components/DatasourceCredentialStatus.md new file mode 100644 index 00000000..65397c4e --- /dev/null +++ b/docs/models/components/DatasourceCredentialStatus.md @@ -0,0 +1,26 @@ +# DatasourceCredentialStatus + +Lifecycle state of the credentials installed for a datasource instance. Mirrors the internal admin Status enum so the handler can surface the same health signals already tracked today. EXPIRING_SOON is represented as VALID_WITH_WARNINGS (with detail in `message`); EXPIRED is surfaced as INVALID plus a non-null `expiresAt` in the past. + + +## Example Usage + +```java +import com.glean.api_client.glean_api_client.models.components.DatasourceCredentialStatus; + +DatasourceCredentialStatus value = DatasourceCredentialStatus.VALID; + +// Open enum: use .of() to create instances from custom string values +DatasourceCredentialStatus custom = DatasourceCredentialStatus.of("custom_value"); +``` + + +## Values + +| Name | Value | +| --------------------- | --------------------- | +| `VALID` | VALID | +| `VALID_WITH_WARNINGS` | VALID_WITH_WARNINGS | +| `VALIDATING` | VALIDATING | +| `INVALID` | INVALID | +| `MISSING` | MISSING | \ No newline at end of file diff --git a/docs/models/components/DatasourceCredentialStatusResponse.md b/docs/models/components/DatasourceCredentialStatusResponse.md new file mode 100644 index 00000000..0febb853 --- /dev/null +++ b/docs/models/components/DatasourceCredentialStatusResponse.md @@ -0,0 +1,13 @@ +# DatasourceCredentialStatusResponse + +Status of the credentials currently installed for a datasource instance. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `status` | [DatasourceCredentialStatus](../../models/components/DatasourceCredentialStatus.md) | :heavy_check_mark: | Lifecycle state of the credentials installed for a datasource instance. Mirrors the internal admin Status enum so the handler can surface the same health signals already tracked today. EXPIRING_SOON is represented as VALID_WITH_WARNINGS (with detail in `message`); EXPIRED is surfaced as INVALID plus a non-null `expiresAt` in the past.
| +| `lastRotatedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | When the credentials were last rotated. Omitted when not known. | +| `expiresAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | When the active credentials expire. Omitted when not known or not applicable to this credential type.
| +| `message` | *Optional\* | :heavy_minus_sign: | Optional human-readable detail about the current credential status. | \ No newline at end of file diff --git a/docs/models/components/EditCollectionResponseErrorCode.md b/docs/models/components/EditCollectionResponseErrorCode.md index 926c3604..f9bb7c3c 100644 --- a/docs/models/components/EditCollectionResponseErrorCode.md +++ b/docs/models/components/EditCollectionResponseErrorCode.md @@ -22,4 +22,5 @@ EditCollectionResponseErrorCode custom = EditCollectionResponseErrorCode.of("cus | `CONCURRENT_HIERARCHY_EDIT` | CONCURRENT_HIERARCHY_EDIT | | `HEIGHT_VIOLATION` | HEIGHT_VIOLATION | | `WIDTH_VIOLATION` | WIDTH_VIOLATION | -| `NO_PERMISSIONS` | NO_PERMISSIONS | \ No newline at end of file +| `NO_PERMISSIONS` | NO_PERMISSIONS | +| `CORRUPT_ITEM` | CORRUPT_ITEM | \ No newline at end of file diff --git a/docs/models/components/FeedRequestCategory.md b/docs/models/components/FeedRequestCategory.md index 6c389ae9..a32add35 100644 --- a/docs/models/components/FeedRequestCategory.md +++ b/docs/models/components/FeedRequestCategory.md @@ -48,4 +48,7 @@ FeedRequestCategory value = FeedRequestCategory.DOCUMENT_SUGGESTION; | `FOLLOW_UP` | FOLLOW_UP | | `MILESTONE_TIMELINE_CHECK` | MILESTONE_TIMELINE_CHECK | | `PROJECT_DISCUSSION_DIGEST` | PROJECT_DISCUSSION_DIGEST | -| `PROJECT_NEXT_STEP` | PROJECT_NEXT_STEP | \ No newline at end of file +| `PROJECT_FOCUS_BLOCK` | PROJECT_FOCUS_BLOCK | +| `PROJECT_NEXT_STEP` | PROJECT_NEXT_STEP | +| `DEMO_CARD` | DEMO_CARD | +| `OOO_PLANNER` | OOO_PLANNER | \ No newline at end of file diff --git a/docs/models/components/FeedResultCategory.md b/docs/models/components/FeedResultCategory.md index f77c72da..c374a24e 100644 --- a/docs/models/components/FeedResultCategory.md +++ b/docs/models/components/FeedResultCategory.md @@ -53,4 +53,7 @@ FeedResultCategory custom = FeedResultCategory.of("custom_value"); | `FOLLOW_UP` | FOLLOW_UP | | `MILESTONE_TIMELINE_CHECK` | MILESTONE_TIMELINE_CHECK | | `PROJECT_DISCUSSION_DIGEST` | PROJECT_DISCUSSION_DIGEST | -| `PROJECT_NEXT_STEP` | PROJECT_NEXT_STEP | \ No newline at end of file +| `PROJECT_FOCUS_BLOCK` | PROJECT_FOCUS_BLOCK | +| `PROJECT_NEXT_STEP` | PROJECT_NEXT_STEP | +| `DEMO_CARD` | DEMO_CARD | +| `OOO_PLANNER` | OOO_PLANNER | \ No newline at end of file diff --git a/docs/models/components/InsightsAssistantRequest.md b/docs/models/components/InsightsAssistantRequest.md index 164a7466..4b8d8718 100644 --- a/docs/models/components/InsightsAssistantRequest.md +++ b/docs/models/components/InsightsAssistantRequest.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | -| `departments` | List\<*String*> | :heavy_minus_sign: | Departments for which Insights are requested. | -| `dayRange` | [Optional\](../../models/components/Period.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| `departments` | List\<*String*> | :heavy_minus_sign: | Departments for which Insights are requested. | +| `managerEmails` | List\<*String*> | :heavy_minus_sign: | Manager emails whose teams should be filtered for. Empty array means no filtering. | +| `dayRange` | [Optional\](../../models/components/Period.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/InsightsChatSummary.md b/docs/models/components/InsightsChatSummary.md index 95d7ce68..e5c3e11e 100644 --- a/docs/models/components/InsightsChatSummary.md +++ b/docs/models/components/InsightsChatSummary.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users, in the specified departments. | -| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users, in the specified departments. | +| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users. | +| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users. | | `numChats` | *Optional\* | :heavy_minus_sign: | Total number of chats by users over the specified time period. | | `numChatUsers` | *Optional\* | :heavy_minus_sign: | Total number of distinct users who used Chat over the specified time period. | \ No newline at end of file diff --git a/docs/models/components/InsightsOverviewRequest.md b/docs/models/components/InsightsOverviewRequest.md index 58b92865..167a0577 100644 --- a/docs/models/components/InsightsOverviewRequest.md +++ b/docs/models/components/InsightsOverviewRequest.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | -| `departments` | List\<*String*> | :heavy_minus_sign: | Departments for which Insights are requested. | -| `dayRange` | [Optional\](../../models/components/Period.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| `departments` | List\<*String*> | :heavy_minus_sign: | Departments for which Insights are requested. | +| `managerEmails` | List\<*String*> | :heavy_minus_sign: | Manager emails whose teams should be filtered for. Empty array means no filtering. | +| `dayRange` | [Optional\](../../models/components/Period.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/InsightsOverviewResponse.md b/docs/models/components/InsightsOverviewResponse.md index 6e556f24..e73c17de 100644 --- a/docs/models/components/InsightsOverviewResponse.md +++ b/docs/models/components/InsightsOverviewResponse.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users, in the specified departments. | -| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users, in the specified departments. | +| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users. | +| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users. | | `departments` | List\<*String*> | :heavy_minus_sign: | Department name(s). | | `employeeCount` | *Optional\* | :heavy_minus_sign: | Number of current employees in the specified departments, according to the Org Chart. | | `totalSignups` | *Optional\* | :heavy_minus_sign: | Number of current signed up employees in the specified departments, according to the Org Chart. | diff --git a/docs/models/components/InsightsRequest.md b/docs/models/components/InsightsRequest.md index 775529b9..9de12b89 100644 --- a/docs/models/components/InsightsRequest.md +++ b/docs/models/components/InsightsRequest.md @@ -3,9 +3,10 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `overviewRequest` | [Optional\](../../models/components/InsightsOverviewRequest.md) | :heavy_minus_sign: | N/A | -| `assistantRequest` | [Optional\](../../models/components/InsightsAssistantRequest.md) | :heavy_minus_sign: | N/A | -| `agentsRequest` | [Optional\](../../models/components/AgentsInsightsV2Request.md) | :heavy_minus_sign: | N/A | -| `disablePerUserInsights` | *Optional\* | :heavy_minus_sign: | If true, suppresses the generation of per-user Insights in the response. Default is false. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | +| `overviewRequest` | [Optional\](../../models/components/InsightsOverviewRequest.md) | :heavy_minus_sign: | N/A | +| `assistantRequest` | [Optional\](../../models/components/InsightsAssistantRequest.md) | :heavy_minus_sign: | N/A | +| `agentsRequest` | [Optional\](../../models/components/AgentsInsightsV2Request.md) | :heavy_minus_sign: | N/A | +| `mcpBreakdownRequest` | [Optional\](../../models/components/McpBreakdownInsightsRequest.md) | :heavy_minus_sign: | N/A | +| `disablePerUserInsights` | *Optional\* | :heavy_minus_sign: | If true, suppresses the generation of per-user Insights in the response. Default is false. | \ No newline at end of file diff --git a/docs/models/components/InsightsSearchSummary.md b/docs/models/components/InsightsSearchSummary.md index a9c16853..07f9c26e 100644 --- a/docs/models/components/InsightsSearchSummary.md +++ b/docs/models/components/InsightsSearchSummary.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | -| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users, in the specified departments. | -| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users, in the specified departments. | +| `monthlyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Monthly Active Users. | +| `weeklyActiveUsers` | *Optional\* | :heavy_minus_sign: | Number of current Weekly Active Users. | | `numSearches` | *Optional\* | :heavy_minus_sign: | Total number of searches by users over the specified time period. | | `numSearchUsers` | *Optional\* | :heavy_minus_sign: | Total number of distinct users who searched over the specified time period. | \ No newline at end of file diff --git a/docs/models/components/JustificationType.md b/docs/models/components/JustificationType.md index 5b7bc75c..03bf1e58 100644 --- a/docs/models/components/JustificationType.md +++ b/docs/models/components/JustificationType.md @@ -66,4 +66,7 @@ JustificationType custom = JustificationType.of("custom_value"); | `FOLLOW_UP` | FOLLOW_UP | | `MILESTONE_TIMELINE_CHECK` | MILESTONE_TIMELINE_CHECK | | `PROJECT_DISCUSSION_DIGEST` | PROJECT_DISCUSSION_DIGEST | -| `PROJECT_NEXT_STEP` | PROJECT_NEXT_STEP | \ No newline at end of file +| `PROJECT_FOCUS_BLOCK` | PROJECT_FOCUS_BLOCK | +| `PROJECT_NEXT_STEP` | PROJECT_NEXT_STEP | +| `DEMO_CARD` | DEMO_CARD | +| `OOO_PLANNER` | OOO_PLANNER | \ No newline at end of file diff --git a/docs/models/components/McpBreakdownInsightsRequest.md b/docs/models/components/McpBreakdownInsightsRequest.md new file mode 100644 index 00000000..b3402ac6 --- /dev/null +++ b/docs/models/components/McpBreakdownInsightsRequest.md @@ -0,0 +1,15 @@ +# McpBreakdownInsightsRequest + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | +| `departments` | List\<*String*> | :heavy_minus_sign: | Departments for which Insights are requested. | +| `managerIds` | List\<*String*> | :heavy_minus_sign: | Manager user IDs whose teams should be filtered for. Empty array means no filtering. | +| `managerEmails` | List\<*String*> | :heavy_minus_sign: | Manager emails whose teams should be filtered for. Empty array means no filtering. | +| `dayRange` | [Optional\](../../models/components/Period.md) | :heavy_minus_sign: | N/A | +| `breakdownType` | [Optional\](../../models/components/BreakdownType.md) | :heavy_minus_sign: | Type of breakdown to return. | +| `hostApplications` | List\<*String*> | :heavy_minus_sign: | Host applications to filter by. Empty array means all host applications. | +| `tools` | List\<*String*> | :heavy_minus_sign: | MCP tools to filter by. Empty array means all tools. | +| `servers` | List\<*String*> | :heavy_minus_sign: | MCP servers to filter by. Empty array means all servers. | \ No newline at end of file diff --git a/docs/models/components/RotateDatasourceCredentialsRequest.md b/docs/models/components/RotateDatasourceCredentialsRequest.md new file mode 100644 index 00000000..0ce286ac --- /dev/null +++ b/docs/models/components/RotateDatasourceCredentialsRequest.md @@ -0,0 +1,12 @@ +# RotateDatasourceCredentialsRequest + +Request to rotate the credentials used by a datasource instance. Replaces the active credential material with the supplied values. +`credentials.values` must contain only keys recognized as credential material for the datasource type (for example `clientSecret` for OAuth, `apiToken` for API-token auth, `privateKey` for certificate auth). Unrecognized keys, or keys that correspond to non-credential configuration, cause a 400; use the configure endpoint to change non-credential config. + + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | +| `credentials` | [DatasourceInstanceConfiguration](../../models/components/DatasourceInstanceConfiguration.md) | :heavy_check_mark: | Configuration for a datasource instance | \ No newline at end of file diff --git a/docs/models/components/UgcType.md b/docs/models/components/UgcType.md index 38cabf93..82e801d1 100644 --- a/docs/models/components/UgcType.md +++ b/docs/models/components/UgcType.md @@ -33,4 +33,5 @@ UgcType custom = UgcType.of("custom_value"); | `SHORTCUTS_TYPE` | SHORTCUTS_TYPE | | `SLIDE_TYPE` | SLIDE_TYPE | | `SPREADSHEET_TYPE` | SPREADSHEET_TYPE | +| `INLINE_HTML_TYPE` | INLINE_HTML_TYPE | | `WORKFLOWS_TYPE` | WORKFLOWS_TYPE | \ No newline at end of file diff --git a/docs/models/components/Workflow.md b/docs/models/components/Workflow.md index 23067a27..85dae820 100644 --- a/docs/models/components/Workflow.md +++ b/docs/models/components/Workflow.md @@ -3,13 +3,15 @@ ## Fields -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `name` | *Optional\* | :heavy_minus_sign: | The name of the workflow. | | -| `author` | [Optional\](../../models/components/Person.md) | :heavy_minus_sign: | N/A | {
"name": "George Clooney",
"obfuscatedId": "abc123"
} | -| `createTimestamp` | *Optional\* | :heavy_minus_sign: | Server Unix timestamp of the creation time. | | -| `lastUpdateTimestamp` | *Optional\* | :heavy_minus_sign: | Server Unix timestamp of the last update time. | | -| `lastDraftSavedAt` | *Optional\* | :heavy_minus_sign: | Server Unix timestamp of the last time the draft was saved. | | -| `lastUpdatedBy` | [Optional\](../../models/components/Person.md) | :heavy_minus_sign: | N/A | {
"name": "George Clooney",
"obfuscatedId": "abc123"
} | -| `permissions` | [Optional\](../../models/components/ObjectPermissions.md) | :heavy_minus_sign: | N/A | | -| `id` | *Optional\* | :heavy_minus_sign: | The ID of the workflow. | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | +| `name` | *Optional\* | :heavy_minus_sign: | The name of the workflow. | | +| `author` | [Optional\](../../models/components/Person.md) | :heavy_minus_sign: | N/A | {
"name": "George Clooney",
"obfuscatedId": "abc123"
} | +| `createTimestamp` | *Optional\* | :heavy_minus_sign: | Server Unix timestamp of the creation time. | | +| `lastUpdateTimestamp` | *Optional\* | :heavy_minus_sign: | Server Unix timestamp of the last update time. | | +| `lastDraftSavedAt` | *Optional\* | :heavy_minus_sign: | Server Unix timestamp of the last time the draft was saved. | | +| `lastDraftSavedBy` | [Optional\](../../models/components/Person.md) | :heavy_minus_sign: | N/A | {
"name": "George Clooney",
"obfuscatedId": "abc123"
} | +| `lastDraftGitAuthorId` | *Optional\* | :heavy_minus_sign: | ID of the VCS user (e.g. GitHub username) who last saved the draft. Set only by the draft save path via the external Git integration API. | | +| `lastUpdatedBy` | [Optional\](../../models/components/Person.md) | :heavy_minus_sign: | N/A | {
"name": "George Clooney",
"obfuscatedId": "abc123"
} | +| `permissions` | [Optional\](../../models/components/ObjectPermissions.md) | :heavy_minus_sign: | N/A | | +| `id` | *Optional\* | :heavy_minus_sign: | The ID of the workflow. | | \ No newline at end of file diff --git a/docs/models/errors/ErrorCode.md b/docs/models/errors/ErrorCode.md index 72cc6cb3..b0c03577 100644 --- a/docs/models/errors/ErrorCode.md +++ b/docs/models/errors/ErrorCode.md @@ -22,4 +22,5 @@ ErrorCode custom = ErrorCode.of("custom_value"); | `CONCURRENT_HIERARCHY_EDIT` | CONCURRENT_HIERARCHY_EDIT | | `HEIGHT_VIOLATION` | HEIGHT_VIOLATION | | `WIDTH_VIOLATION` | WIDTH_VIOLATION | -| `NO_PERMISSIONS` | NO_PERMISSIONS | \ No newline at end of file +| `NO_PERMISSIONS` | NO_PERMISSIONS | +| `CORRUPT_ITEM` | CORRUPT_ITEM | \ No newline at end of file diff --git a/docs/models/operations/GetDatasourceCredentialStatusRequest.md b/docs/models/operations/GetDatasourceCredentialStatusRequest.md new file mode 100644 index 00000000..5dd66a28 --- /dev/null +++ b/docs/models/operations/GetDatasourceCredentialStatusRequest.md @@ -0,0 +1,8 @@ +# GetDatasourceCredentialStatusRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | +| `datasourceInstanceId` | *String* | :heavy_check_mark: | The full datasource instance identifier (e.g. o365sharepoint_abc123) | o365sharepoint_abc123 | \ No newline at end of file diff --git a/docs/models/operations/GetDatasourceCredentialStatusResponse.md b/docs/models/operations/GetDatasourceCredentialStatusResponse.md new file mode 100644 index 00000000..3291d9ec --- /dev/null +++ b/docs/models/operations/GetDatasourceCredentialStatusResponse.md @@ -0,0 +1,11 @@ +# GetDatasourceCredentialStatusResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `datasourceCredentialStatusResponse` | [Optional\](../../models/components/DatasourceCredentialStatusResponse.md) | :heavy_minus_sign: | OK | \ No newline at end of file diff --git a/docs/models/operations/GetPersonPhotoRequest.md b/docs/models/operations/GetPersonPhotoRequest.md new file mode 100644 index 00000000..e2ea5d9e --- /dev/null +++ b/docs/models/operations/GetPersonPhotoRequest.md @@ -0,0 +1,9 @@ +# GetPersonPhotoRequest + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `personId` | *String* | :heavy_check_mark: | The obfuscated ID of the person whose photo to retrieve. | +| `ds` | *Optional\* | :heavy_minus_sign: | Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the datasource is derived from the person's stored photo URL or the deployment's primary person datasource.
| \ No newline at end of file diff --git a/docs/models/operations/GetPersonPhotoResponse.md b/docs/models/operations/GetPersonPhotoResponse.md new file mode 100644 index 00000000..8ed47379 --- /dev/null +++ b/docs/models/operations/GetPersonPhotoResponse.md @@ -0,0 +1,13 @@ +# GetPersonPhotoResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `twoHundredImagePngResponseStream` | *Optional\* | :heavy_minus_sign: | Photo bytes returned successfully. | +| `twoHundredImageJpegResponseStream` | *Optional\* | :heavy_minus_sign: | Photo bytes returned successfully. | +| `headers` | Map\> | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/RotateDatasourceCredentialsRequest.md b/docs/models/operations/RotateDatasourceCredentialsRequest.md new file mode 100644 index 00000000..ac1499dc --- /dev/null +++ b/docs/models/operations/RotateDatasourceCredentialsRequest.md @@ -0,0 +1,9 @@ +# RotateDatasourceCredentialsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | +| `datasourceInstanceId` | *String* | :heavy_check_mark: | The full datasource instance identifier (e.g. o365sharepoint_abc123) | o365sharepoint_abc123 | +| `rotateDatasourceCredentialsRequest` | [RotateDatasourceCredentialsRequest](../../models/components/RotateDatasourceCredentialsRequest.md) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/RotateDatasourceCredentialsResponse.md b/docs/models/operations/RotateDatasourceCredentialsResponse.md new file mode 100644 index 00000000..86053393 --- /dev/null +++ b/docs/models/operations/RotateDatasourceCredentialsResponse.md @@ -0,0 +1,11 @@ +# RotateDatasourceCredentialsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `datasourceCredentialStatusResponse` | [Optional\](../../models/components/DatasourceCredentialStatusResponse.md) | :heavy_minus_sign: | OK | \ No newline at end of file diff --git a/docs/sdks/cliententities/README.md b/docs/sdks/cliententities/README.md new file mode 100644 index 00000000..f097864a --- /dev/null +++ b/docs/sdks/cliententities/README.md @@ -0,0 +1,131 @@ +# Client.Entities + +## Overview + +### Available Operations + +* [list](#list) - List entities +* [readPeople](#readpeople) - Read people + +## list + +List some set of details for all entities that fit the given criteria and return in the requested order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for people entities. + +### Example Usage + + +```java +package hello.world; + +import com.glean.api_client.glean_api_client.Glean; +import com.glean.api_client.glean_api_client.models.components.*; +import com.glean.api_client.glean_api_client.models.operations.ListentitiesResponse; +import java.lang.Exception; +import java.util.List; + +public class Application { + + public static void main(String[] args) throws Exception { + + Glean sdk = Glean.builder() + .apiToken(System.getenv().getOrDefault("GLEAN_API_TOKEN", "")) + .build(); + + ListentitiesResponse res = sdk.client().entities().list() + .listEntitiesRequest(ListEntitiesRequest.builder() + .filter(List.of( + FacetFilter.builder() + .fieldName("type") + .values(List.of( + FacetFilterValue.builder() + .value("Spreadsheet") + .relationType(RelationType.EQUALS) + .build(), + FacetFilterValue.builder() + .value("Presentation") + .relationType(RelationType.EQUALS) + .build())) + .build())) + .pageSize(100L) + .build()) + .call(); + + if (res.listEntitiesResponse().isPresent()) { + System.out.println(res.listEntitiesResponse().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `locale` | *Optional\* | :heavy_minus_sign: | The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. | +| `listEntitiesRequest` | [ListEntitiesRequest](../../models/components/ListEntitiesRequest.md) | :heavy_check_mark: | List people request | + +### Response + +**[ListentitiesResponse](../../models/operations/ListentitiesResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## readPeople + +Read people details for the given IDs. + +### Example Usage + + +```java +package hello.world; + +import com.glean.api_client.glean_api_client.Glean; +import com.glean.api_client.glean_api_client.models.components.PeopleRequest; +import com.glean.api_client.glean_api_client.models.operations.PeopleResponse; +import java.lang.Exception; +import java.util.List; + +public class Application { + + public static void main(String[] args) throws Exception { + + Glean sdk = Glean.builder() + .apiToken(System.getenv().getOrDefault("GLEAN_API_TOKEN", "")) + .build(); + + PeopleResponse res = sdk.client().entities().readPeople() + .peopleRequest(PeopleRequest.builder() + .obfuscatedIds(List.of( + "abc123", + "abc456")) + .build()) + .call(); + + if (res.peopleResponse().isPresent()) { + System.out.println(res.peopleResponse().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `locale` | *Optional\* | :heavy_minus_sign: | The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. | | +| `peopleRequest` | [PeopleRequest](../../models/components/PeopleRequest.md) | :heavy_check_mark: | People request | {
"obfuscatedIds": [
"abc123",
"abc456"
]
} | + +### Response + +**[PeopleResponse](../../models/operations/PeopleResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/datasources/README.md b/docs/sdks/datasources/README.md index 09ef42fc..c00393df 100644 --- a/docs/sdks/datasources/README.md +++ b/docs/sdks/datasources/README.md @@ -8,6 +8,8 @@ Manage datasources. * [getDatasourceInstanceConfiguration](#getdatasourceinstanceconfiguration) - Get datasource instance configuration * [updateDatasourceInstanceConfiguration](#updatedatasourceinstanceconfiguration) - Update datasource instance configuration +* [getDatasourceCredentialStatus](#getdatasourcecredentialstatus) - Get datasource instance credential status +* [rotateDatasourceCredentials](#rotatedatasourcecredentials) - Rotate datasource instance credentials ## getDatasourceInstanceConfiguration @@ -122,6 +124,121 @@ public class Application { ### Errors +| Error Type | Status Code | Content Type | +| --------------------------- | --------------------------- | --------------------------- | +| models/errors/ErrorResponse | 400, 403, 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getDatasourceCredentialStatus + +Returns the current credential status for a datasource instance. Access is limited to callers with the ADMIN scope; the handler enforces this check. + + +### Example Usage + + +```java +package hello.world; + +import com.glean.api_client.glean_api_client.Glean; +import com.glean.api_client.glean_api_client.models.errors.ErrorResponse; +import com.glean.api_client.glean_api_client.models.operations.GetDatasourceCredentialStatusResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws ErrorResponse, Exception { + + Glean sdk = Glean.builder() + .apiToken(System.getenv().getOrDefault("GLEAN_API_TOKEN", "")) + .build(); + + GetDatasourceCredentialStatusResponse res = sdk.datasources().getDatasourceCredentialStatus() + .datasourceInstanceId("o365sharepoint_abc123") + .call(); + + if (res.datasourceCredentialStatusResponse().isPresent()) { + System.out.println(res.datasourceCredentialStatusResponse().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | +| `datasourceInstanceId` | *String* | :heavy_check_mark: | The full datasource instance identifier (e.g. o365sharepoint_abc123) | o365sharepoint_abc123 | + +### Response + +**[GetDatasourceCredentialStatusResponse](../../models/operations/GetDatasourceCredentialStatusResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------- | --------------------------- | --------------------------- | +| models/errors/ErrorResponse | 400, 403, 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## rotateDatasourceCredentials + +Rotates the credentials that a datasource instance uses to connect to its upstream system. Replaces the active credential material with the supplied values and returns the credential status after rotation. Access is limited to callers with the ADMIN scope; the handler enforces this check. +Only keys recognized as credential material for the datasource type may be set in `credentials.values` (e.g. `clientSecret`, `apiToken`, `privateKey`, depending on the configured auth method). Unrecognized keys, or keys that correspond to non-credential configuration, cause a 400; other instance configuration must be updated via PATCH /configure/datasources/{datasourceId}/instances/{instanceId}. + + +### Example Usage + + +```java +package hello.world; + +import com.glean.api_client.glean_api_client.Glean; +import com.glean.api_client.glean_api_client.models.components.*; +import com.glean.api_client.glean_api_client.models.errors.ErrorResponse; +import com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsResponse; +import java.lang.Exception; +import java.util.Map; + +public class Application { + + public static void main(String[] args) throws ErrorResponse, Exception { + + Glean sdk = Glean.builder() + .apiToken(System.getenv().getOrDefault("GLEAN_API_TOKEN", "")) + .build(); + + RotateDatasourceCredentialsResponse res = sdk.datasources().rotateDatasourceCredentials() + .datasourceInstanceId("o365sharepoint_abc123") + .rotateDatasourceCredentialsRequest(RotateDatasourceCredentialsRequest.builder() + .credentials(DatasourceInstanceConfiguration.builder() + .values(Map.ofEntries( + Map.entry("key", ConfigurationValue.builder() + .build()))) + .build()) + .build()) + .call(); + + if (res.datasourceCredentialStatusResponse().isPresent()) { + System.out.println(res.datasourceCredentialStatusResponse().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | +| `datasourceInstanceId` | *String* | :heavy_check_mark: | The full datasource instance identifier (e.g. o365sharepoint_abc123) | o365sharepoint_abc123 | +| `rotateDatasourceCredentialsRequest` | [RotateDatasourceCredentialsRequest](../../models/components/RotateDatasourceCredentialsRequest.md) | :heavy_check_mark: | N/A | | + +### Response + +**[RotateDatasourceCredentialsResponse](../../models/operations/RotateDatasourceCredentialsResponse.md)** + +### Errors + | Error Type | Status Code | Content Type | | --------------------------- | --------------------------- | --------------------------- | | models/errors/ErrorResponse | 400, 403, 404 | application/json | diff --git a/docs/sdks/entities/README.md b/docs/sdks/entities/README.md index f097864a..96837684 100644 --- a/docs/sdks/entities/README.md +++ b/docs/sdks/entities/README.md @@ -1,94 +1,25 @@ -# Client.Entities +# Entities ## Overview ### Available Operations -* [list](#list) - List entities -* [readPeople](#readpeople) - Read people +* [getPersonPhoto](#getpersonphoto) - Get person photo -## list +## getPersonPhoto -List some set of details for all entities that fit the given criteria and return in the requested order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for people entities. +Returns the profile photo bytes for a person whose photo is stored in Glean (crawled from an identity source or user-uploaded via admin console). Photos hosted externally (e.g. Slack CDN) are not served by this endpoint; callers should follow the photoUrl from /people or /listentities directly. Responses include a Cache-Control header (max-age=3600) to reduce redundant fetches. -### Example Usage - - -```java -package hello.world; - -import com.glean.api_client.glean_api_client.Glean; -import com.glean.api_client.glean_api_client.models.components.*; -import com.glean.api_client.glean_api_client.models.operations.ListentitiesResponse; -import java.lang.Exception; -import java.util.List; - -public class Application { - - public static void main(String[] args) throws Exception { - - Glean sdk = Glean.builder() - .apiToken(System.getenv().getOrDefault("GLEAN_API_TOKEN", "")) - .build(); - - ListentitiesResponse res = sdk.client().entities().list() - .listEntitiesRequest(ListEntitiesRequest.builder() - .filter(List.of( - FacetFilter.builder() - .fieldName("type") - .values(List.of( - FacetFilterValue.builder() - .value("Spreadsheet") - .relationType(RelationType.EQUALS) - .build(), - FacetFilterValue.builder() - .value("Presentation") - .relationType(RelationType.EQUALS) - .build())) - .build())) - .pageSize(100L) - .build()) - .call(); - - if (res.listEntitiesResponse().isPresent()) { - System.out.println(res.listEntitiesResponse().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `locale` | *Optional\* | :heavy_minus_sign: | The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. | -| `listEntitiesRequest` | [ListEntitiesRequest](../../models/components/ListEntitiesRequest.md) | :heavy_check_mark: | List people request | - -### Response - -**[ListentitiesResponse](../../models/operations/ListentitiesResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## readPeople - -Read people details for the given IDs. ### Example Usage - + ```java package hello.world; import com.glean.api_client.glean_api_client.Glean; -import com.glean.api_client.glean_api_client.models.components.PeopleRequest; -import com.glean.api_client.glean_api_client.models.operations.PeopleResponse; +import com.glean.api_client.glean_api_client.models.operations.GetPersonPhotoResponse; import java.lang.Exception; -import java.util.List; public class Application { @@ -98,16 +29,12 @@ public class Application { .apiToken(System.getenv().getOrDefault("GLEAN_API_TOKEN", "")) .build(); - PeopleResponse res = sdk.client().entities().readPeople() - .peopleRequest(PeopleRequest.builder() - .obfuscatedIds(List.of( - "abc123", - "abc456")) - .build()) + GetPersonPhotoResponse res = sdk.entities().getPersonPhoto() + .personId("") .call(); - if (res.peopleResponse().isPresent()) { - System.out.println(res.peopleResponse().get()); + if (res.twoHundredImagePngResponseStream().isPresent()) { + // handle response } } } @@ -115,14 +42,14 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `locale` | *Optional\* | :heavy_minus_sign: | The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. | | -| `peopleRequest` | [PeopleRequest](../../models/components/PeopleRequest.md) | :heavy_check_mark: | People request | {
"obfuscatedIds": [
"abc123",
"abc456"
]
} | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `personId` | *String* | :heavy_check_mark: | The obfuscated ID of the person whose photo to retrieve. | +| `ds` | *Optional\* | :heavy_minus_sign: | Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the datasource is derived from the person's stored photo URL or the deployment's primary person datasource.
| ### Response -**[PeopleResponse](../../models/operations/PeopleResponse.md)** +**[GetPersonPhotoResponse](../../models/operations/GetPersonPhotoResponse.md)** ### Errors diff --git a/gradle.properties b/gradle.properties index b1ea0f0f..a5c0888f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ groupId=com.glean.api-client artifactId=glean-api-client -version=0.12.38 +version=0.13.0 org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g diff --git a/spring/glean-api-client-spring-boot-autoconfigure/src/main/java/com/glean/api_client/glean_api_client/GleanApiClientAutoConfig.java b/spring/glean-api-client-spring-boot-autoconfigure/src/main/java/com/glean/api_client/glean_api_client/GleanApiClientAutoConfig.java index f08864e7..e002872e 100644 --- a/spring/glean-api-client-spring-boot-autoconfigure/src/main/java/com/glean/api_client/glean_api_client/GleanApiClientAutoConfig.java +++ b/spring/glean-api-client-spring-boot-autoconfigure/src/main/java/com/glean/api_client/glean_api_client/GleanApiClientAutoConfig.java @@ -243,6 +243,17 @@ public Client client(Glean glean) { public Authentication authentication(Glean glean) { return glean.authentication(); } + /** + * Creates a Entities sub-SDK bean if none exists. + * + * @param glean the main SDK instance + * @return A configured Entities instance + */ + @Bean + @ConditionalOnMissingBean + public Entities entities(Glean glean) { + return glean.entities(); + } /** * Creates a Indexing sub-SDK bean if none exists. * @@ -311,6 +322,17 @@ public AsyncClient asyncClient(AsyncGlean asyncGlean) { public AsyncAuthentication asyncAuthentication(AsyncGlean asyncGlean) { return asyncGlean.authentication(); } + /** + * Creates an AsyncEntities sub-SDK bean if none exists. + * + * @param asyncGlean the async SDK instance + * @return A configured AsyncEntities instance + */ + @Bean + @ConditionalOnMissingBean + public AsyncEntities asyncEntities(AsyncGlean asyncGlean) { + return asyncGlean.entities(); + } /** * Creates an AsyncIndexing sub-SDK bean if none exists. * diff --git a/src/main/java/com/glean/api_client/glean_api_client/AsyncClient.java b/src/main/java/com/glean/api_client/glean_api_client/AsyncClient.java index 968cb88f..6c336232 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/AsyncClient.java +++ b/src/main/java/com/glean/api_client/glean_api_client/AsyncClient.java @@ -22,7 +22,7 @@ public class AsyncClient { private final AsyncMessages messages; private final AsyncPins pins; private final AsyncSearch search; - private final AsyncEntities entities; + private final AsyncClientEntities entities; private final AsyncClientShortcuts shortcuts; private final AsyncVerification verification; private final AsyncTools tools; @@ -43,7 +43,7 @@ public class AsyncClient { this.messages = new AsyncMessages(syncSDK.messages(), this.sdkConfiguration); this.pins = new AsyncPins(syncSDK.pins(), this.sdkConfiguration); this.search = new AsyncSearch(syncSDK.search(), this.sdkConfiguration); - this.entities = new AsyncEntities(syncSDK.entities(), this.sdkConfiguration); + this.entities = new AsyncClientEntities(syncSDK.entities(), this.sdkConfiguration); this.shortcuts = new AsyncClientShortcuts(syncSDK.shortcuts(), this.sdkConfiguration); this.verification = new AsyncVerification(syncSDK.verification(), this.sdkConfiguration); this.tools = new AsyncTools(syncSDK.tools(), this.sdkConfiguration); @@ -99,7 +99,7 @@ public final AsyncSearch search() { return search; } - public final AsyncEntities entities() { + public final AsyncClientEntities entities() { return entities; } diff --git a/src/main/java/com/glean/api_client/glean_api_client/AsyncClientEntities.java b/src/main/java/com/glean/api_client/glean_api_client/AsyncClientEntities.java new file mode 100644 index 00000000..f0ce3694 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/AsyncClientEntities.java @@ -0,0 +1,144 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 379d1a5a3ee9 + */ +package com.glean.api_client.glean_api_client; + +import static com.glean.api_client.glean_api_client.operations.Operations.AsyncRequestOperation; + +import com.glean.api_client.glean_api_client.models.components.ListEntitiesRequest; +import com.glean.api_client.glean_api_client.models.components.PeopleRequest; +import com.glean.api_client.glean_api_client.models.operations.ListentitiesRequest; +import com.glean.api_client.glean_api_client.models.operations.async.ListentitiesRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.async.ListentitiesResponse; +import com.glean.api_client.glean_api_client.models.operations.async.PeopleRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.async.PeopleResponse; +import com.glean.api_client.glean_api_client.operations.Listentities; +import com.glean.api_client.glean_api_client.operations.People; +import com.glean.api_client.glean_api_client.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncClientEntities { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final ClientEntities syncSDK; + + AsyncClientEntities(ClientEntities syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public ClientEntities sync() { + return syncSDK; + } + + + /** + * List entities + * + *

List some set of details for all entities that fit the given criteria and return in the requested + * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 + * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for + * people entities. + * + * @return The async call builder + */ + public ListentitiesRequestBuilder list() { + return new ListentitiesRequestBuilder(sdkConfiguration); + } + + /** + * List entities + * + *

List some set of details for all entities that fit the given criteria and return in the requested + * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 + * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for + * people entities. + * + * @param listEntitiesRequest + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture list(ListEntitiesRequest listEntitiesRequest) { + return list(Optional.empty(), listEntitiesRequest); + } + + /** + * List entities + * + *

List some set of details for all entities that fit the given criteria and return in the requested + * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 + * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for + * people entities. + * + * @param locale The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. + * @param listEntitiesRequest + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture list(Optional locale, ListEntitiesRequest listEntitiesRequest) { + ListentitiesRequest request = + ListentitiesRequest + .builder() + .locale(locale) + .listEntitiesRequest(listEntitiesRequest) + .build(); + AsyncRequestOperation operation + = new Listentities.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Read people + * + *

Read people details for the given IDs. + * + * @return The async call builder + */ + public PeopleRequestBuilder readPeople() { + return new PeopleRequestBuilder(sdkConfiguration); + } + + /** + * Read people + * + *

Read people details for the given IDs. + * + * @param peopleRequest + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture readPeople(PeopleRequest peopleRequest) { + return readPeople(Optional.empty(), peopleRequest); + } + + /** + * Read people + * + *

Read people details for the given IDs. + * + * @param locale The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. + * @param peopleRequest + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture readPeople(Optional locale, PeopleRequest peopleRequest) { + com.glean.api_client.glean_api_client.models.operations.PeopleRequest request = + com.glean.api_client.glean_api_client.models.operations.PeopleRequest + .builder() + .locale(locale) + .peopleRequest(peopleRequest) + .build(); + AsyncRequestOperation operation + = new People.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/AsyncDatasources.java b/src/main/java/com/glean/api_client/glean_api_client/AsyncDatasources.java index 9e740ee2..52bde479 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/AsyncDatasources.java +++ b/src/main/java/com/glean/api_client/glean_api_client/AsyncDatasources.java @@ -6,14 +6,22 @@ import static com.glean.api_client.glean_api_client.operations.Operations.AsyncRequestOperation; +import com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest; import com.glean.api_client.glean_api_client.models.components.UpdateDatasourceConfigurationRequest; +import com.glean.api_client.glean_api_client.models.operations.GetDatasourceCredentialStatusRequest; import com.glean.api_client.glean_api_client.models.operations.GetDatasourceInstanceConfigurationRequest; import com.glean.api_client.glean_api_client.models.operations.UpdateDatasourceInstanceConfigurationRequest; +import com.glean.api_client.glean_api_client.models.operations.async.GetDatasourceCredentialStatusRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.async.GetDatasourceCredentialStatusResponse; import com.glean.api_client.glean_api_client.models.operations.async.GetDatasourceInstanceConfigurationRequestBuilder; import com.glean.api_client.glean_api_client.models.operations.async.GetDatasourceInstanceConfigurationResponse; +import com.glean.api_client.glean_api_client.models.operations.async.RotateDatasourceCredentialsRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.async.RotateDatasourceCredentialsResponse; import com.glean.api_client.glean_api_client.models.operations.async.UpdateDatasourceInstanceConfigurationRequestBuilder; import com.glean.api_client.glean_api_client.models.operations.async.UpdateDatasourceInstanceConfigurationResponse; +import com.glean.api_client.glean_api_client.operations.GetDatasourceCredentialStatus; import com.glean.api_client.glean_api_client.operations.GetDatasourceInstanceConfiguration; +import com.glean.api_client.glean_api_client.operations.RotateDatasourceCredentials; import com.glean.api_client.glean_api_client.operations.UpdateDatasourceInstanceConfiguration; import com.glean.api_client.glean_api_client.utils.Headers; import java.lang.String; @@ -120,4 +128,88 @@ public CompletableFuture updateDa .thenCompose(operation::handleResponse); } + + /** + * Get datasource instance credential status + * + *

Returns the current credential status for a datasource instance. Access is limited to callers with + * the ADMIN scope; the handler enforces this check. + * + * @return The async call builder + */ + public GetDatasourceCredentialStatusRequestBuilder getDatasourceCredentialStatus() { + return new GetDatasourceCredentialStatusRequestBuilder(sdkConfiguration); + } + + /** + * Get datasource instance credential status + * + *

Returns the current credential status for a datasource instance. Access is limited to callers with + * the ADMIN scope; the handler enforces this check. + * + * @param datasourceInstanceId The full datasource instance identifier (e.g. o365sharepoint_abc123) + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getDatasourceCredentialStatus(String datasourceInstanceId) { + GetDatasourceCredentialStatusRequest request = + GetDatasourceCredentialStatusRequest + .builder() + .datasourceInstanceId(datasourceInstanceId) + .build(); + AsyncRequestOperation operation + = new GetDatasourceCredentialStatus.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Rotate datasource instance credentials + * + *

Rotates the credentials that a datasource instance uses to connect to its upstream system. Replaces + * the active credential material with the supplied values and returns the credential status after + * rotation. Access is limited to callers with the ADMIN scope; the handler enforces this check. + * Only keys recognized as credential material for the datasource type may be set in + * `credentials.values` (e.g. `clientSecret`, `apiToken`, `privateKey`, depending on the configured + * auth method). Unrecognized keys, or keys that correspond to non-credential configuration, cause a + * 400; other instance configuration must be updated via PATCH + * /configure/datasources/{datasourceId}/instances/{instanceId}. + * + * @return The async call builder + */ + public RotateDatasourceCredentialsRequestBuilder rotateDatasourceCredentials() { + return new RotateDatasourceCredentialsRequestBuilder(sdkConfiguration); + } + + /** + * Rotate datasource instance credentials + * + *

Rotates the credentials that a datasource instance uses to connect to its upstream system. Replaces + * the active credential material with the supplied values and returns the credential status after + * rotation. Access is limited to callers with the ADMIN scope; the handler enforces this check. + * Only keys recognized as credential material for the datasource type may be set in + * `credentials.values` (e.g. `clientSecret`, `apiToken`, `privateKey`, depending on the configured + * auth method). Unrecognized keys, or keys that correspond to non-credential configuration, cause a + * 400; other instance configuration must be updated via PATCH + * /configure/datasources/{datasourceId}/instances/{instanceId}. + * + * @param datasourceInstanceId The full datasource instance identifier (e.g. o365sharepoint_abc123) + * @param rotateDatasourceCredentialsRequest Request to rotate the credentials used by a datasource instance. Replaces the active credential material with the supplied values. + * `credentials.values` must contain only keys recognized as credential material for the datasource type (for example `clientSecret` for OAuth, `apiToken` for API-token auth, `privateKey` for certificate auth). Unrecognized keys, or keys that correspond to non-credential configuration, cause a 400; use the configure endpoint to change non-credential config. + * + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture rotateDatasourceCredentials(String datasourceInstanceId, RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest) { + com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest request = + com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest + .builder() + .datasourceInstanceId(datasourceInstanceId) + .rotateDatasourceCredentialsRequest(rotateDatasourceCredentialsRequest) + .build(); + AsyncRequestOperation operation + = new RotateDatasourceCredentials.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + } diff --git a/src/main/java/com/glean/api_client/glean_api_client/AsyncEntities.java b/src/main/java/com/glean/api_client/glean_api_client/AsyncEntities.java index 2c8f2100..a822d7e4 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/AsyncEntities.java +++ b/src/main/java/com/glean/api_client/glean_api_client/AsyncEntities.java @@ -6,15 +6,10 @@ import static com.glean.api_client.glean_api_client.operations.Operations.AsyncRequestOperation; -import com.glean.api_client.glean_api_client.models.components.ListEntitiesRequest; -import com.glean.api_client.glean_api_client.models.components.PeopleRequest; -import com.glean.api_client.glean_api_client.models.operations.ListentitiesRequest; -import com.glean.api_client.glean_api_client.models.operations.async.ListentitiesRequestBuilder; -import com.glean.api_client.glean_api_client.models.operations.async.ListentitiesResponse; -import com.glean.api_client.glean_api_client.models.operations.async.PeopleRequestBuilder; -import com.glean.api_client.glean_api_client.models.operations.async.PeopleResponse; -import com.glean.api_client.glean_api_client.operations.Listentities; -import com.glean.api_client.glean_api_client.operations.People; +import com.glean.api_client.glean_api_client.models.operations.GetPersonPhotoRequest; +import com.glean.api_client.glean_api_client.models.operations.async.GetPersonPhotoRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.async.GetPersonPhotoResponse; +import com.glean.api_client.glean_api_client.operations.GetPersonPhoto; import com.glean.api_client.glean_api_client.utils.Headers; import java.lang.String; import java.util.Optional; @@ -42,101 +37,62 @@ public Entities sync() { /** - * List entities + * Get person photo * - *

List some set of details for all entities that fit the given criteria and return in the requested - * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 - * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for - * people entities. + *

Returns the profile photo bytes for a person whose photo is stored in Glean (crawled from an + * identity source or user-uploaded via admin console). Photos hosted externally (e.g. Slack CDN) are + * not served by this endpoint; callers should follow the photoUrl from /people or /listentities + * directly. + * + *

Responses include a Cache-Control header (max-age=3600) to reduce redundant fetches. * * @return The async call builder */ - public ListentitiesRequestBuilder list() { - return new ListentitiesRequestBuilder(sdkConfiguration); + public GetPersonPhotoRequestBuilder getPersonPhoto() { + return new GetPersonPhotoRequestBuilder(sdkConfiguration); } /** - * List entities - * - *

List some set of details for all entities that fit the given criteria and return in the requested - * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 - * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for - * people entities. + * Get person photo * - * @param listEntitiesRequest - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture list(ListEntitiesRequest listEntitiesRequest) { - return list(Optional.empty(), listEntitiesRequest); - } - - /** - * List entities + *

Returns the profile photo bytes for a person whose photo is stored in Glean (crawled from an + * identity source or user-uploaded via admin console). Photos hosted externally (e.g. Slack CDN) are + * not served by this endpoint; callers should follow the photoUrl from /people or /listentities + * directly. * - *

List some set of details for all entities that fit the given criteria and return in the requested - * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 - * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for - * people entities. + *

Responses include a Cache-Control header (max-age=3600) to reduce redundant fetches. * - * @param locale The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. - * @param listEntitiesRequest - * @return {@code CompletableFuture} - The async response + * @param personId The obfuscated ID of the person whose photo to retrieve. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture list(Optional locale, ListEntitiesRequest listEntitiesRequest) { - ListentitiesRequest request = - ListentitiesRequest - .builder() - .locale(locale) - .listEntitiesRequest(listEntitiesRequest) - .build(); - AsyncRequestOperation operation - = new Listentities.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); + public CompletableFuture getPersonPhoto(String personId) { + return getPersonPhoto(personId, Optional.empty()); } - /** - * Read people - * - *

Read people details for the given IDs. + * Get person photo * - * @return The async call builder - */ - public PeopleRequestBuilder readPeople() { - return new PeopleRequestBuilder(sdkConfiguration); - } - - /** - * Read people - * - *

Read people details for the given IDs. - * - * @param peopleRequest - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture readPeople(PeopleRequest peopleRequest) { - return readPeople(Optional.empty(), peopleRequest); - } - - /** - * Read people + *

Returns the profile photo bytes for a person whose photo is stored in Glean (crawled from an + * identity source or user-uploaded via admin console). Photos hosted externally (e.g. Slack CDN) are + * not served by this endpoint; callers should follow the photoUrl from /people or /listentities + * directly. * - *

Read people details for the given IDs. + *

Responses include a Cache-Control header (max-age=3600) to reduce redundant fetches. * - * @param locale The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. - * @param peopleRequest - * @return {@code CompletableFuture} - The async response + * @param personId The obfuscated ID of the person whose photo to retrieve. + * @param ds Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the datasource is derived from the person's stored photo URL or the deployment's primary person datasource. + * + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture readPeople(Optional locale, PeopleRequest peopleRequest) { - com.glean.api_client.glean_api_client.models.operations.PeopleRequest request = - com.glean.api_client.glean_api_client.models.operations.PeopleRequest + public CompletableFuture getPersonPhoto(String personId, Optional ds) { + GetPersonPhotoRequest request = + GetPersonPhotoRequest .builder() - .locale(locale) - .peopleRequest(peopleRequest) + .personId(personId) + .ds(ds) .build(); - AsyncRequestOperation operation - = new People.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetPersonPhoto.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/src/main/java/com/glean/api_client/glean_api_client/AsyncGlean.java b/src/main/java/com/glean/api_client/glean_api_client/AsyncGlean.java index 205ac9d5..b86b23bc 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/AsyncGlean.java +++ b/src/main/java/com/glean/api_client/glean_api_client/AsyncGlean.java @@ -40,6 +40,8 @@ public class AsyncGlean { */ private final AsyncAuthentication authentication; + private final AsyncEntities entities; + private final AsyncIndexing indexing; private final AsyncGovernance governance; @@ -58,6 +60,10 @@ public AsyncAuthentication authentication() { return authentication; } + public AsyncEntities entities() { + return entities; + } + public AsyncIndexing indexing() { return indexing; } @@ -80,6 +86,7 @@ public AsyncDatasources datasources() { this.sdkConfiguration = sdkConfiguration; this.client = new AsyncClient(syncSDK.client(), sdkConfiguration); this.authentication = new AsyncAuthentication(syncSDK.authentication(), sdkConfiguration); + this.entities = new AsyncEntities(syncSDK.entities(), sdkConfiguration); this.indexing = new AsyncIndexing(syncSDK.indexing(), sdkConfiguration); this.governance = new AsyncGovernance(syncSDK.governance(), sdkConfiguration); this.datasources = new AsyncDatasources(syncSDK.datasources(), sdkConfiguration); diff --git a/src/main/java/com/glean/api_client/glean_api_client/Client.java b/src/main/java/com/glean/api_client/glean_api_client/Client.java index bc907bf8..c34a7f18 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/Client.java +++ b/src/main/java/com/glean/api_client/glean_api_client/Client.java @@ -23,7 +23,7 @@ public class Client { private final Messages messages; private final Pins pins; private final Search search; - private final Entities entities; + private final ClientEntities entities; private final ClientShortcuts shortcuts; private final Verification verification; private final Tools tools; @@ -43,7 +43,7 @@ public class Client { this.messages = new Messages(this.sdkConfiguration); this.pins = new Pins(this.sdkConfiguration); this.search = new Search(this.sdkConfiguration); - this.entities = new Entities(this.sdkConfiguration); + this.entities = new ClientEntities(this.sdkConfiguration); this.shortcuts = new ClientShortcuts(this.sdkConfiguration); this.verification = new Verification(this.sdkConfiguration); this.tools = new Tools(this.sdkConfiguration); @@ -99,7 +99,7 @@ public final Search search() { return search; } - public final Entities entities() { + public final ClientEntities entities() { return entities; } diff --git a/src/main/java/com/glean/api_client/glean_api_client/ClientEntities.java b/src/main/java/com/glean/api_client/glean_api_client/ClientEntities.java new file mode 100644 index 00000000..b5a038d1 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/ClientEntities.java @@ -0,0 +1,143 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 43c5ec4923c3 + */ +package com.glean.api_client.glean_api_client; + +import static com.glean.api_client.glean_api_client.operations.Operations.RequestOperation; + +import com.glean.api_client.glean_api_client.models.components.ListEntitiesRequest; +import com.glean.api_client.glean_api_client.models.components.PeopleRequest; +import com.glean.api_client.glean_api_client.models.operations.ListentitiesRequest; +import com.glean.api_client.glean_api_client.models.operations.ListentitiesRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.ListentitiesResponse; +import com.glean.api_client.glean_api_client.models.operations.PeopleRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.PeopleResponse; +import com.glean.api_client.glean_api_client.operations.Listentities; +import com.glean.api_client.glean_api_client.operations.People; +import com.glean.api_client.glean_api_client.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class ClientEntities { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncClientEntities asyncSDK; + + ClientEntities(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncClientEntities(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncClientEntities async() { + return asyncSDK; + } + + /** + * List entities + * + *

List some set of details for all entities that fit the given criteria and return in the requested + * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 + * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for + * people entities. + * + * @return The call builder + */ + public ListentitiesRequestBuilder list() { + return new ListentitiesRequestBuilder(sdkConfiguration); + } + + /** + * List entities + * + *

List some set of details for all entities that fit the given criteria and return in the requested + * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 + * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for + * people entities. + * + * @param listEntitiesRequest + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public ListentitiesResponse list(ListEntitiesRequest listEntitiesRequest) { + return list(Optional.empty(), listEntitiesRequest); + } + + /** + * List entities + * + *

List some set of details for all entities that fit the given criteria and return in the requested + * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 + * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for + * people entities. + * + * @param locale The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. + * @param listEntitiesRequest + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public ListentitiesResponse list(Optional locale, ListEntitiesRequest listEntitiesRequest) { + ListentitiesRequest request = + ListentitiesRequest + .builder() + .locale(locale) + .listEntitiesRequest(listEntitiesRequest) + .build(); + RequestOperation operation + = new Listentities.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Read people + * + *

Read people details for the given IDs. + * + * @return The call builder + */ + public PeopleRequestBuilder readPeople() { + return new PeopleRequestBuilder(sdkConfiguration); + } + + /** + * Read people + * + *

Read people details for the given IDs. + * + * @param peopleRequest + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PeopleResponse readPeople(PeopleRequest peopleRequest) { + return readPeople(Optional.empty(), peopleRequest); + } + + /** + * Read people + * + *

Read people details for the given IDs. + * + * @param locale The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. + * @param peopleRequest + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PeopleResponse readPeople(Optional locale, PeopleRequest peopleRequest) { + com.glean.api_client.glean_api_client.models.operations.PeopleRequest request = + com.glean.api_client.glean_api_client.models.operations.PeopleRequest + .builder() + .locale(locale) + .peopleRequest(peopleRequest) + .build(); + RequestOperation operation + = new People.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/Datasources.java b/src/main/java/com/glean/api_client/glean_api_client/Datasources.java index 316245fd..3f6dae5d 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/Datasources.java +++ b/src/main/java/com/glean/api_client/glean_api_client/Datasources.java @@ -6,14 +6,22 @@ import static com.glean.api_client.glean_api_client.operations.Operations.RequestOperation; +import com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest; import com.glean.api_client.glean_api_client.models.components.UpdateDatasourceConfigurationRequest; +import com.glean.api_client.glean_api_client.models.operations.GetDatasourceCredentialStatusRequest; +import com.glean.api_client.glean_api_client.models.operations.GetDatasourceCredentialStatusRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.GetDatasourceCredentialStatusResponse; import com.glean.api_client.glean_api_client.models.operations.GetDatasourceInstanceConfigurationRequest; import com.glean.api_client.glean_api_client.models.operations.GetDatasourceInstanceConfigurationRequestBuilder; import com.glean.api_client.glean_api_client.models.operations.GetDatasourceInstanceConfigurationResponse; +import com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsResponse; import com.glean.api_client.glean_api_client.models.operations.UpdateDatasourceInstanceConfigurationRequest; import com.glean.api_client.glean_api_client.models.operations.UpdateDatasourceInstanceConfigurationRequestBuilder; import com.glean.api_client.glean_api_client.models.operations.UpdateDatasourceInstanceConfigurationResponse; +import com.glean.api_client.glean_api_client.operations.GetDatasourceCredentialStatus; import com.glean.api_client.glean_api_client.operations.GetDatasourceInstanceConfiguration; +import com.glean.api_client.glean_api_client.operations.RotateDatasourceCredentials; import com.glean.api_client.glean_api_client.operations.UpdateDatasourceInstanceConfiguration; import com.glean.api_client.glean_api_client.utils.Headers; import java.lang.String; @@ -117,4 +125,86 @@ public UpdateDatasourceInstanceConfigurationResponse updateDatasourceInstanceCon return operation.handleResponse(operation.doRequest(request)); } + /** + * Get datasource instance credential status + * + *

Returns the current credential status for a datasource instance. Access is limited to callers with + * the ADMIN scope; the handler enforces this check. + * + * @return The call builder + */ + public GetDatasourceCredentialStatusRequestBuilder getDatasourceCredentialStatus() { + return new GetDatasourceCredentialStatusRequestBuilder(sdkConfiguration); + } + + /** + * Get datasource instance credential status + * + *

Returns the current credential status for a datasource instance. Access is limited to callers with + * the ADMIN scope; the handler enforces this check. + * + * @param datasourceInstanceId The full datasource instance identifier (e.g. o365sharepoint_abc123) + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetDatasourceCredentialStatusResponse getDatasourceCredentialStatus(String datasourceInstanceId) { + GetDatasourceCredentialStatusRequest request = + GetDatasourceCredentialStatusRequest + .builder() + .datasourceInstanceId(datasourceInstanceId) + .build(); + RequestOperation operation + = new GetDatasourceCredentialStatus.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Rotate datasource instance credentials + * + *

Rotates the credentials that a datasource instance uses to connect to its upstream system. Replaces + * the active credential material with the supplied values and returns the credential status after + * rotation. Access is limited to callers with the ADMIN scope; the handler enforces this check. + * Only keys recognized as credential material for the datasource type may be set in + * `credentials.values` (e.g. `clientSecret`, `apiToken`, `privateKey`, depending on the configured + * auth method). Unrecognized keys, or keys that correspond to non-credential configuration, cause a + * 400; other instance configuration must be updated via PATCH + * /configure/datasources/{datasourceId}/instances/{instanceId}. + * + * @return The call builder + */ + public RotateDatasourceCredentialsRequestBuilder rotateDatasourceCredentials() { + return new RotateDatasourceCredentialsRequestBuilder(sdkConfiguration); + } + + /** + * Rotate datasource instance credentials + * + *

Rotates the credentials that a datasource instance uses to connect to its upstream system. Replaces + * the active credential material with the supplied values and returns the credential status after + * rotation. Access is limited to callers with the ADMIN scope; the handler enforces this check. + * Only keys recognized as credential material for the datasource type may be set in + * `credentials.values` (e.g. `clientSecret`, `apiToken`, `privateKey`, depending on the configured + * auth method). Unrecognized keys, or keys that correspond to non-credential configuration, cause a + * 400; other instance configuration must be updated via PATCH + * /configure/datasources/{datasourceId}/instances/{instanceId}. + * + * @param datasourceInstanceId The full datasource instance identifier (e.g. o365sharepoint_abc123) + * @param rotateDatasourceCredentialsRequest Request to rotate the credentials used by a datasource instance. Replaces the active credential material with the supplied values. + * `credentials.values` must contain only keys recognized as credential material for the datasource type (for example `clientSecret` for OAuth, `apiToken` for API-token auth, `privateKey` for certificate auth). Unrecognized keys, or keys that correspond to non-credential configuration, cause a 400; use the configure endpoint to change non-credential config. + * + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public RotateDatasourceCredentialsResponse rotateDatasourceCredentials(String datasourceInstanceId, RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest) { + com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest request = + com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest + .builder() + .datasourceInstanceId(datasourceInstanceId) + .rotateDatasourceCredentialsRequest(rotateDatasourceCredentialsRequest) + .build(); + RequestOperation operation + = new RotateDatasourceCredentials.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + } diff --git a/src/main/java/com/glean/api_client/glean_api_client/Entities.java b/src/main/java/com/glean/api_client/glean_api_client/Entities.java index b6e71082..5706517d 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/Entities.java +++ b/src/main/java/com/glean/api_client/glean_api_client/Entities.java @@ -6,15 +6,10 @@ import static com.glean.api_client.glean_api_client.operations.Operations.RequestOperation; -import com.glean.api_client.glean_api_client.models.components.ListEntitiesRequest; -import com.glean.api_client.glean_api_client.models.components.PeopleRequest; -import com.glean.api_client.glean_api_client.models.operations.ListentitiesRequest; -import com.glean.api_client.glean_api_client.models.operations.ListentitiesRequestBuilder; -import com.glean.api_client.glean_api_client.models.operations.ListentitiesResponse; -import com.glean.api_client.glean_api_client.models.operations.PeopleRequestBuilder; -import com.glean.api_client.glean_api_client.models.operations.PeopleResponse; -import com.glean.api_client.glean_api_client.operations.Listentities; -import com.glean.api_client.glean_api_client.operations.People; +import com.glean.api_client.glean_api_client.models.operations.GetPersonPhotoRequest; +import com.glean.api_client.glean_api_client.models.operations.GetPersonPhotoRequestBuilder; +import com.glean.api_client.glean_api_client.models.operations.GetPersonPhotoResponse; +import com.glean.api_client.glean_api_client.operations.GetPersonPhoto; import com.glean.api_client.glean_api_client.utils.Headers; import java.lang.String; import java.util.Optional; @@ -40,103 +35,64 @@ public AsyncEntities async() { } /** - * List entities + * Get person photo * - *

List some set of details for all entities that fit the given criteria and return in the requested - * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 - * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for - * people entities. + *

Returns the profile photo bytes for a person whose photo is stored in Glean (crawled from an + * identity source or user-uploaded via admin console). Photos hosted externally (e.g. Slack CDN) are + * not served by this endpoint; callers should follow the photoUrl from /people or /listentities + * directly. + * + *

Responses include a Cache-Control header (max-age=3600) to reduce redundant fetches. * * @return The call builder */ - public ListentitiesRequestBuilder list() { - return new ListentitiesRequestBuilder(sdkConfiguration); + public GetPersonPhotoRequestBuilder getPersonPhoto() { + return new GetPersonPhotoRequestBuilder(sdkConfiguration); } /** - * List entities + * Get person photo * - *

List some set of details for all entities that fit the given criteria and return in the requested - * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 - * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for - * people entities. + *

Returns the profile photo bytes for a person whose photo is stored in Glean (crawled from an + * identity source or user-uploaded via admin console). Photos hosted externally (e.g. Slack CDN) are + * not served by this endpoint; callers should follow the photoUrl from /people or /listentities + * directly. * - * @param listEntitiesRequest - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public ListentitiesResponse list(ListEntitiesRequest listEntitiesRequest) { - return list(Optional.empty(), listEntitiesRequest); - } - - /** - * List entities + *

Responses include a Cache-Control header (max-age=3600) to reduce redundant fetches. * - *

List some set of details for all entities that fit the given criteria and return in the requested - * order. Does not support negation in filters, assumes relation type EQUALS. There is a limit of 10000 - * entities that can be retrieved via this endpoint, except when using FULL_DIRECTORY request type for - * people entities. - * - * @param locale The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. - * @param listEntitiesRequest + * @param personId The obfuscated ID of the person whose photo to retrieve. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public ListentitiesResponse list(Optional locale, ListEntitiesRequest listEntitiesRequest) { - ListentitiesRequest request = - ListentitiesRequest - .builder() - .locale(locale) - .listEntitiesRequest(listEntitiesRequest) - .build(); - RequestOperation operation - = new Listentities.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); + public GetPersonPhotoResponse getPersonPhoto(String personId) { + return getPersonPhoto(personId, Optional.empty()); } /** - * Read people - * - *

Read people details for the given IDs. + * Get person photo * - * @return The call builder - */ - public PeopleRequestBuilder readPeople() { - return new PeopleRequestBuilder(sdkConfiguration); - } - - /** - * Read people - * - *

Read people details for the given IDs. - * - * @param peopleRequest - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PeopleResponse readPeople(PeopleRequest peopleRequest) { - return readPeople(Optional.empty(), peopleRequest); - } - - /** - * Read people + *

Returns the profile photo bytes for a person whose photo is stored in Glean (crawled from an + * identity source or user-uploaded via admin console). Photos hosted externally (e.g. Slack CDN) are + * not served by this endpoint; callers should follow the photoUrl from /people or /listentities + * directly. * - *

Read people details for the given IDs. + *

Responses include a Cache-Control header (max-age=3600) to reduce redundant fetches. * - * @param locale The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`. - * @param peopleRequest + * @param personId The obfuscated ID of the person whose photo to retrieve. + * @param ds Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the datasource is derived from the person's stored photo URL or the deployment's primary person datasource. + * * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PeopleResponse readPeople(Optional locale, PeopleRequest peopleRequest) { - com.glean.api_client.glean_api_client.models.operations.PeopleRequest request = - com.glean.api_client.glean_api_client.models.operations.PeopleRequest + public GetPersonPhotoResponse getPersonPhoto(String personId, Optional ds) { + GetPersonPhotoRequest request = + GetPersonPhotoRequest .builder() - .locale(locale) - .peopleRequest(peopleRequest) + .personId(personId) + .ds(ds) .build(); - RequestOperation operation - = new People.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetPersonPhoto.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/src/main/java/com/glean/api_client/glean_api_client/Glean.java b/src/main/java/com/glean/api_client/glean_api_client/Glean.java index 6c1e055b..d49c3b3c 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/Glean.java +++ b/src/main/java/com/glean/api_client/glean_api_client/Glean.java @@ -63,6 +63,9 @@ public class Glean { private final Authentication authentication; + private final Entities entities; + + private final Indexing indexing; @@ -86,6 +89,11 @@ public Authentication authentication() { } + public Entities entities() { + return entities; + } + + public Indexing indexing() { return indexing; } @@ -269,6 +277,7 @@ public Glean(SDKConfiguration sdkConfiguration) { sdkConfiguration.initialize(); this.client = new Client(sdkConfiguration); this.authentication = new Authentication(sdkConfiguration); + this.entities = new Entities(sdkConfiguration); this.indexing = new Indexing(sdkConfiguration); this.governance = new Governance(sdkConfiguration); this.datasources = new Datasources(sdkConfiguration); diff --git a/src/main/java/com/glean/api_client/glean_api_client/SDKConfiguration.java b/src/main/java/com/glean/api_client/glean_api_client/SDKConfiguration.java index 308a8482..646e53da 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/SDKConfiguration.java +++ b/src/main/java/com/glean/api_client/glean_api_client/SDKConfiguration.java @@ -25,8 +25,8 @@ public class SDKConfiguration { private static final String LANGUAGE = "java"; public static final String OPENAPI_DOC_VERSION = "0.9.0"; - public static final String SDK_VERSION = "0.12.38"; - public static final String GEN_VERSION = "2.881.2"; + public static final String SDK_VERSION = "0.13.0"; + public static final String GEN_VERSION = "2.882.0"; private static final String BASE_PACKAGE = "com.glean.api_client.glean_api_client"; public static final String USER_AGENT = String.format("speakeasy-sdk/%s %s %s %s %s", diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/AddCollectionItemsErrorErrorType.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/AddCollectionItemsErrorErrorType.java index 5d51dbd7..2998506c 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/AddCollectionItemsErrorErrorType.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/AddCollectionItemsErrorErrorType.java @@ -22,6 +22,7 @@ public class AddCollectionItemsErrorErrorType { public static final AddCollectionItemsErrorErrorType EXISTING_ITEM = new AddCollectionItemsErrorErrorType("EXISTING_ITEM"); + public static final AddCollectionItemsErrorErrorType CORRUPT_ITEM = new AddCollectionItemsErrorErrorType("CORRUPT_ITEM"); // This map will grow whenever a Color gets created with a new // unrecognized value (a potential memory leak if the user is not @@ -96,19 +97,22 @@ public static AddCollectionItemsErrorErrorType[] values() { private static final Map createValuesMap() { Map map = new LinkedHashMap<>(); map.put("EXISTING_ITEM", EXISTING_ITEM); + map.put("CORRUPT_ITEM", CORRUPT_ITEM); return map; } private static final Map createEnumsMap() { Map map = new HashMap<>(); map.put("EXISTING_ITEM", AddCollectionItemsErrorErrorTypeEnum.EXISTING_ITEM); + map.put("CORRUPT_ITEM", AddCollectionItemsErrorErrorTypeEnum.CORRUPT_ITEM); return map; } public enum AddCollectionItemsErrorErrorTypeEnum { - EXISTING_ITEM("EXISTING_ITEM"),; + EXISTING_ITEM("EXISTING_ITEM"), + CORRUPT_ITEM("CORRUPT_ITEM"),; private final String value; diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentUseCaseInsight.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentUseCaseInsight.java new file mode 100644 index 00000000..b6ca3475 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentUseCaseInsight.java @@ -0,0 +1,560 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 8be03b038a72 + */ +package com.glean.api_client.glean_api_client.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Boolean; +import java.lang.Float; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class AgentUseCaseInsight { + /** + * Use case name + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("useCase") + private Optional useCase; + + /** + * Total number of runs for this use case over the specified time period. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("runCount") + private Optional runCount; + + /** + * Percentage change in runs compared to the previous equivalent time period. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("trend") + private Optional trend; + + /** + * Comma-separated list of the top departments using this use case. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("topDepartments") + private Optional topDepartments; + + /** + * ID of the most-used agent for this use case. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("topAgentId") + private Optional topAgentId; + + /** + * Name of the most-used agent for this use case. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("topAgentName") + private Optional topAgentName; + + /** + * Defines how to render an icon + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("topAgentIcon") + private Optional topAgentIcon; + + /** + * Indicates whether the top agent has been deleted. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("topAgentIsDeleted") + private Optional topAgentIsDeleted; + + @JsonCreator + public AgentUseCaseInsight( + @JsonProperty("useCase") Optional useCase, + @JsonProperty("runCount") Optional runCount, + @JsonProperty("trend") Optional trend, + @JsonProperty("topDepartments") Optional topDepartments, + @JsonProperty("topAgentId") Optional topAgentId, + @JsonProperty("topAgentName") Optional topAgentName, + @JsonProperty("topAgentIcon") Optional topAgentIcon, + @JsonProperty("topAgentIsDeleted") Optional topAgentIsDeleted) { + Utils.checkNotNull(useCase, "useCase"); + Utils.checkNotNull(runCount, "runCount"); + Utils.checkNotNull(trend, "trend"); + Utils.checkNotNull(topDepartments, "topDepartments"); + Utils.checkNotNull(topAgentId, "topAgentId"); + Utils.checkNotNull(topAgentName, "topAgentName"); + Utils.checkNotNull(topAgentIcon, "topAgentIcon"); + Utils.checkNotNull(topAgentIsDeleted, "topAgentIsDeleted"); + this.useCase = useCase; + this.runCount = runCount; + this.trend = trend; + this.topDepartments = topDepartments; + this.topAgentId = topAgentId; + this.topAgentName = topAgentName; + this.topAgentIcon = topAgentIcon; + this.topAgentIsDeleted = topAgentIsDeleted; + } + + public AgentUseCaseInsight() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Use case name + */ + @JsonIgnore + public Optional useCase() { + return useCase; + } + + /** + * Total number of runs for this use case over the specified time period. + */ + @JsonIgnore + public Optional runCount() { + return runCount; + } + + /** + * Percentage change in runs compared to the previous equivalent time period. + */ + @JsonIgnore + public Optional trend() { + return trend; + } + + /** + * Comma-separated list of the top departments using this use case. + */ + @JsonIgnore + public Optional topDepartments() { + return topDepartments; + } + + /** + * ID of the most-used agent for this use case. + */ + @JsonIgnore + public Optional topAgentId() { + return topAgentId; + } + + /** + * Name of the most-used agent for this use case. + */ + @JsonIgnore + public Optional topAgentName() { + return topAgentName; + } + + /** + * Defines how to render an icon + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional topAgentIcon() { + return (Optional) topAgentIcon; + } + + /** + * Indicates whether the top agent has been deleted. + */ + @JsonIgnore + public Optional topAgentIsDeleted() { + return topAgentIsDeleted; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Use case name + */ + public AgentUseCaseInsight withUseCase(String useCase) { + Utils.checkNotNull(useCase, "useCase"); + this.useCase = Optional.ofNullable(useCase); + return this; + } + + + /** + * Use case name + */ + public AgentUseCaseInsight withUseCase(Optional useCase) { + Utils.checkNotNull(useCase, "useCase"); + this.useCase = useCase; + return this; + } + + /** + * Total number of runs for this use case over the specified time period. + */ + public AgentUseCaseInsight withRunCount(long runCount) { + Utils.checkNotNull(runCount, "runCount"); + this.runCount = Optional.ofNullable(runCount); + return this; + } + + + /** + * Total number of runs for this use case over the specified time period. + */ + public AgentUseCaseInsight withRunCount(Optional runCount) { + Utils.checkNotNull(runCount, "runCount"); + this.runCount = runCount; + return this; + } + + /** + * Percentage change in runs compared to the previous equivalent time period. + */ + public AgentUseCaseInsight withTrend(float trend) { + Utils.checkNotNull(trend, "trend"); + this.trend = Optional.ofNullable(trend); + return this; + } + + + /** + * Percentage change in runs compared to the previous equivalent time period. + */ + public AgentUseCaseInsight withTrend(Optional trend) { + Utils.checkNotNull(trend, "trend"); + this.trend = trend; + return this; + } + + /** + * Comma-separated list of the top departments using this use case. + */ + public AgentUseCaseInsight withTopDepartments(String topDepartments) { + Utils.checkNotNull(topDepartments, "topDepartments"); + this.topDepartments = Optional.ofNullable(topDepartments); + return this; + } + + + /** + * Comma-separated list of the top departments using this use case. + */ + public AgentUseCaseInsight withTopDepartments(Optional topDepartments) { + Utils.checkNotNull(topDepartments, "topDepartments"); + this.topDepartments = topDepartments; + return this; + } + + /** + * ID of the most-used agent for this use case. + */ + public AgentUseCaseInsight withTopAgentId(String topAgentId) { + Utils.checkNotNull(topAgentId, "topAgentId"); + this.topAgentId = Optional.ofNullable(topAgentId); + return this; + } + + + /** + * ID of the most-used agent for this use case. + */ + public AgentUseCaseInsight withTopAgentId(Optional topAgentId) { + Utils.checkNotNull(topAgentId, "topAgentId"); + this.topAgentId = topAgentId; + return this; + } + + /** + * Name of the most-used agent for this use case. + */ + public AgentUseCaseInsight withTopAgentName(String topAgentName) { + Utils.checkNotNull(topAgentName, "topAgentName"); + this.topAgentName = Optional.ofNullable(topAgentName); + return this; + } + + + /** + * Name of the most-used agent for this use case. + */ + public AgentUseCaseInsight withTopAgentName(Optional topAgentName) { + Utils.checkNotNull(topAgentName, "topAgentName"); + this.topAgentName = topAgentName; + return this; + } + + /** + * Defines how to render an icon + */ + public AgentUseCaseInsight withTopAgentIcon(IconConfig topAgentIcon) { + Utils.checkNotNull(topAgentIcon, "topAgentIcon"); + this.topAgentIcon = Optional.ofNullable(topAgentIcon); + return this; + } + + + /** + * Defines how to render an icon + */ + public AgentUseCaseInsight withTopAgentIcon(Optional topAgentIcon) { + Utils.checkNotNull(topAgentIcon, "topAgentIcon"); + this.topAgentIcon = topAgentIcon; + return this; + } + + /** + * Indicates whether the top agent has been deleted. + */ + public AgentUseCaseInsight withTopAgentIsDeleted(boolean topAgentIsDeleted) { + Utils.checkNotNull(topAgentIsDeleted, "topAgentIsDeleted"); + this.topAgentIsDeleted = Optional.ofNullable(topAgentIsDeleted); + return this; + } + + + /** + * Indicates whether the top agent has been deleted. + */ + public AgentUseCaseInsight withTopAgentIsDeleted(Optional topAgentIsDeleted) { + Utils.checkNotNull(topAgentIsDeleted, "topAgentIsDeleted"); + this.topAgentIsDeleted = topAgentIsDeleted; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AgentUseCaseInsight other = (AgentUseCaseInsight) o; + return + Utils.enhancedDeepEquals(this.useCase, other.useCase) && + Utils.enhancedDeepEquals(this.runCount, other.runCount) && + Utils.enhancedDeepEquals(this.trend, other.trend) && + Utils.enhancedDeepEquals(this.topDepartments, other.topDepartments) && + Utils.enhancedDeepEquals(this.topAgentId, other.topAgentId) && + Utils.enhancedDeepEquals(this.topAgentName, other.topAgentName) && + Utils.enhancedDeepEquals(this.topAgentIcon, other.topAgentIcon) && + Utils.enhancedDeepEquals(this.topAgentIsDeleted, other.topAgentIsDeleted); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + useCase, runCount, trend, + topDepartments, topAgentId, topAgentName, + topAgentIcon, topAgentIsDeleted); + } + + @Override + public String toString() { + return Utils.toString(AgentUseCaseInsight.class, + "useCase", useCase, + "runCount", runCount, + "trend", trend, + "topDepartments", topDepartments, + "topAgentId", topAgentId, + "topAgentName", topAgentName, + "topAgentIcon", topAgentIcon, + "topAgentIsDeleted", topAgentIsDeleted); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional useCase = Optional.empty(); + + private Optional runCount = Optional.empty(); + + private Optional trend = Optional.empty(); + + private Optional topDepartments = Optional.empty(); + + private Optional topAgentId = Optional.empty(); + + private Optional topAgentName = Optional.empty(); + + private Optional topAgentIcon = Optional.empty(); + + private Optional topAgentIsDeleted = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Use case name + */ + public Builder useCase(String useCase) { + Utils.checkNotNull(useCase, "useCase"); + this.useCase = Optional.ofNullable(useCase); + return this; + } + + /** + * Use case name + */ + public Builder useCase(Optional useCase) { + Utils.checkNotNull(useCase, "useCase"); + this.useCase = useCase; + return this; + } + + + /** + * Total number of runs for this use case over the specified time period. + */ + public Builder runCount(long runCount) { + Utils.checkNotNull(runCount, "runCount"); + this.runCount = Optional.ofNullable(runCount); + return this; + } + + /** + * Total number of runs for this use case over the specified time period. + */ + public Builder runCount(Optional runCount) { + Utils.checkNotNull(runCount, "runCount"); + this.runCount = runCount; + return this; + } + + + /** + * Percentage change in runs compared to the previous equivalent time period. + */ + public Builder trend(float trend) { + Utils.checkNotNull(trend, "trend"); + this.trend = Optional.ofNullable(trend); + return this; + } + + /** + * Percentage change in runs compared to the previous equivalent time period. + */ + public Builder trend(Optional trend) { + Utils.checkNotNull(trend, "trend"); + this.trend = trend; + return this; + } + + + /** + * Comma-separated list of the top departments using this use case. + */ + public Builder topDepartments(String topDepartments) { + Utils.checkNotNull(topDepartments, "topDepartments"); + this.topDepartments = Optional.ofNullable(topDepartments); + return this; + } + + /** + * Comma-separated list of the top departments using this use case. + */ + public Builder topDepartments(Optional topDepartments) { + Utils.checkNotNull(topDepartments, "topDepartments"); + this.topDepartments = topDepartments; + return this; + } + + + /** + * ID of the most-used agent for this use case. + */ + public Builder topAgentId(String topAgentId) { + Utils.checkNotNull(topAgentId, "topAgentId"); + this.topAgentId = Optional.ofNullable(topAgentId); + return this; + } + + /** + * ID of the most-used agent for this use case. + */ + public Builder topAgentId(Optional topAgentId) { + Utils.checkNotNull(topAgentId, "topAgentId"); + this.topAgentId = topAgentId; + return this; + } + + + /** + * Name of the most-used agent for this use case. + */ + public Builder topAgentName(String topAgentName) { + Utils.checkNotNull(topAgentName, "topAgentName"); + this.topAgentName = Optional.ofNullable(topAgentName); + return this; + } + + /** + * Name of the most-used agent for this use case. + */ + public Builder topAgentName(Optional topAgentName) { + Utils.checkNotNull(topAgentName, "topAgentName"); + this.topAgentName = topAgentName; + return this; + } + + + /** + * Defines how to render an icon + */ + public Builder topAgentIcon(IconConfig topAgentIcon) { + Utils.checkNotNull(topAgentIcon, "topAgentIcon"); + this.topAgentIcon = Optional.ofNullable(topAgentIcon); + return this; + } + + /** + * Defines how to render an icon + */ + public Builder topAgentIcon(Optional topAgentIcon) { + Utils.checkNotNull(topAgentIcon, "topAgentIcon"); + this.topAgentIcon = topAgentIcon; + return this; + } + + + /** + * Indicates whether the top agent has been deleted. + */ + public Builder topAgentIsDeleted(boolean topAgentIsDeleted) { + Utils.checkNotNull(topAgentIsDeleted, "topAgentIsDeleted"); + this.topAgentIsDeleted = Optional.ofNullable(topAgentIsDeleted); + return this; + } + + /** + * Indicates whether the top agent has been deleted. + */ + public Builder topAgentIsDeleted(Optional topAgentIsDeleted) { + Utils.checkNotNull(topAgentIsDeleted, "topAgentIsDeleted"); + this.topAgentIsDeleted = topAgentIsDeleted; + return this; + } + + public AgentUseCaseInsight build() { + + return new AgentUseCaseInsight( + useCase, runCount, trend, + topDepartments, topAgentId, topAgentName, + topAgentIcon, topAgentIsDeleted); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Request.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Request.java index e0113f89..6e4b9141 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Request.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Request.java @@ -32,6 +32,13 @@ public class AgentsInsightsV2Request { @JsonProperty("departments") private Optional> departments; + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("managerEmails") + private Optional> managerEmails; + @JsonInclude(Include.NON_ABSENT) @JsonProperty("dayRange") @@ -41,17 +48,21 @@ public class AgentsInsightsV2Request { public AgentsInsightsV2Request( @JsonProperty("agentIds") Optional> agentIds, @JsonProperty("departments") Optional> departments, + @JsonProperty("managerEmails") Optional> managerEmails, @JsonProperty("dayRange") Optional dayRange) { Utils.checkNotNull(agentIds, "agentIds"); Utils.checkNotNull(departments, "departments"); + Utils.checkNotNull(managerEmails, "managerEmails"); Utils.checkNotNull(dayRange, "dayRange"); this.agentIds = agentIds; this.departments = departments; + this.managerEmails = managerEmails; this.dayRange = dayRange; } public AgentsInsightsV2Request() { - this(Optional.empty(), Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -72,6 +83,15 @@ public Optional> departments() { return (Optional>) departments; } + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> managerEmails() { + return (Optional>) managerEmails; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional dayRange() { @@ -121,6 +141,25 @@ public AgentsInsightsV2Request withDepartments(Optional> return this; } + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public AgentsInsightsV2Request withManagerEmails(List managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = Optional.ofNullable(managerEmails); + return this; + } + + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public AgentsInsightsV2Request withManagerEmails(Optional> managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = managerEmails; + return this; + } + public AgentsInsightsV2Request withDayRange(Period dayRange) { Utils.checkNotNull(dayRange, "dayRange"); this.dayRange = Optional.ofNullable(dayRange); @@ -146,13 +185,15 @@ public boolean equals(java.lang.Object o) { return Utils.enhancedDeepEquals(this.agentIds, other.agentIds) && Utils.enhancedDeepEquals(this.departments, other.departments) && + Utils.enhancedDeepEquals(this.managerEmails, other.managerEmails) && Utils.enhancedDeepEquals(this.dayRange, other.dayRange); } @Override public int hashCode() { return Utils.enhancedHash( - agentIds, departments, dayRange); + agentIds, departments, managerEmails, + dayRange); } @Override @@ -160,6 +201,7 @@ public String toString() { return Utils.toString(AgentsInsightsV2Request.class, "agentIds", agentIds, "departments", departments, + "managerEmails", managerEmails, "dayRange", dayRange); } @@ -170,6 +212,8 @@ public final static class Builder { private Optional> departments = Optional.empty(); + private Optional> managerEmails = Optional.empty(); + private Optional dayRange = Optional.empty(); private Builder() { @@ -215,6 +259,25 @@ public Builder departments(Optional> departments) { } + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerEmails(List managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = Optional.ofNullable(managerEmails); + return this; + } + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerEmails(Optional> managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = managerEmails; + return this; + } + + public Builder dayRange(Period dayRange) { Utils.checkNotNull(dayRange, "dayRange"); this.dayRange = Optional.ofNullable(dayRange); @@ -230,7 +293,8 @@ public Builder dayRange(Optional dayRange) { public AgentsInsightsV2Request build() { return new AgentsInsightsV2Request( - agentIds, departments, dayRange); + agentIds, departments, managerEmails, + dayRange); } } diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Response.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Response.java index 229f6f44..6c995859 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Response.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/AgentsInsightsV2Response.java @@ -20,14 +20,14 @@ public class AgentsInsightsV2Response { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("monthlyActiveUsers") private Optional monthlyActiveUsers; /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("weeklyActiveUsers") @@ -61,6 +61,11 @@ public class AgentsInsightsV2Response { private Optional> topAgentsInsights; + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("topUseCasesInsights") + private Optional> topUseCasesInsights; + + @JsonInclude(Include.NON_ABSENT) @JsonProperty("agentsUsageByDepartmentInsights") private Optional> agentsUsageByDepartmentInsights; @@ -116,6 +121,7 @@ public AgentsInsightsV2Response( @JsonProperty("dailyActiveUserTimeseries") Optional dailyActiveUserTimeseries, @JsonProperty("sharedAgentsCount") Optional sharedAgentsCount, @JsonProperty("topAgentsInsights") Optional> topAgentsInsights, + @JsonProperty("topUseCasesInsights") Optional> topUseCasesInsights, @JsonProperty("agentsUsageByDepartmentInsights") Optional> agentsUsageByDepartmentInsights, @JsonProperty("agentUsersInsights") Optional> agentUsersInsights, @JsonProperty("agentsTimeSavedInsights") Optional> agentsTimeSavedInsights, @@ -132,6 +138,7 @@ public AgentsInsightsV2Response( Utils.checkNotNull(dailyActiveUserTimeseries, "dailyActiveUserTimeseries"); Utils.checkNotNull(sharedAgentsCount, "sharedAgentsCount"); Utils.checkNotNull(topAgentsInsights, "topAgentsInsights"); + Utils.checkNotNull(topUseCasesInsights, "topUseCasesInsights"); Utils.checkNotNull(agentsUsageByDepartmentInsights, "agentsUsageByDepartmentInsights"); Utils.checkNotNull(agentUsersInsights, "agentUsersInsights"); Utils.checkNotNull(agentsTimeSavedInsights, "agentsTimeSavedInsights"); @@ -148,6 +155,7 @@ public AgentsInsightsV2Response( this.dailyActiveUserTimeseries = dailyActiveUserTimeseries; this.sharedAgentsCount = sharedAgentsCount; this.topAgentsInsights = topAgentsInsights; + this.topUseCasesInsights = topUseCasesInsights; this.agentsUsageByDepartmentInsights = agentsUsageByDepartmentInsights; this.agentUsersInsights = agentUsersInsights; this.agentsTimeSavedInsights = agentsTimeSavedInsights; @@ -165,11 +173,11 @@ public AgentsInsightsV2Response() { Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonIgnore public Optional monthlyActiveUsers() { @@ -177,7 +185,7 @@ public Optional monthlyActiveUsers() { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonIgnore public Optional weeklyActiveUsers() { @@ -216,6 +224,12 @@ public Optional> topAgentsInsights() { return (Optional>) topAgentsInsights; } + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> topUseCasesInsights() { + return (Optional>) topUseCasesInsights; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional> agentsUsageByDepartmentInsights() { @@ -279,7 +293,7 @@ public static Builder builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public AgentsInsightsV2Response withMonthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -289,7 +303,7 @@ public AgentsInsightsV2Response withMonthlyActiveUsers(long monthlyActiveUsers) /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public AgentsInsightsV2Response withMonthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -298,7 +312,7 @@ public AgentsInsightsV2Response withMonthlyActiveUsers(Optional monthlyAct } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public AgentsInsightsV2Response withWeeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -308,7 +322,7 @@ public AgentsInsightsV2Response withWeeklyActiveUsers(long weeklyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public AgentsInsightsV2Response withWeeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -387,6 +401,19 @@ public AgentsInsightsV2Response withTopAgentsInsights(Optional topUseCasesInsights) { + Utils.checkNotNull(topUseCasesInsights, "topUseCasesInsights"); + this.topUseCasesInsights = Optional.ofNullable(topUseCasesInsights); + return this; + } + + + public AgentsInsightsV2Response withTopUseCasesInsights(Optional> topUseCasesInsights) { + Utils.checkNotNull(topUseCasesInsights, "topUseCasesInsights"); + this.topUseCasesInsights = topUseCasesInsights; + return this; + } + public AgentsInsightsV2Response withAgentsUsageByDepartmentInsights(List agentsUsageByDepartmentInsights) { Utils.checkNotNull(agentsUsageByDepartmentInsights, "agentsUsageByDepartmentInsights"); this.agentsUsageByDepartmentInsights = Optional.ofNullable(agentsUsageByDepartmentInsights); @@ -527,6 +554,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.dailyActiveUserTimeseries, other.dailyActiveUserTimeseries) && Utils.enhancedDeepEquals(this.sharedAgentsCount, other.sharedAgentsCount) && Utils.enhancedDeepEquals(this.topAgentsInsights, other.topAgentsInsights) && + Utils.enhancedDeepEquals(this.topUseCasesInsights, other.topUseCasesInsights) && Utils.enhancedDeepEquals(this.agentsUsageByDepartmentInsights, other.agentsUsageByDepartmentInsights) && Utils.enhancedDeepEquals(this.agentUsersInsights, other.agentUsersInsights) && Utils.enhancedDeepEquals(this.agentsTimeSavedInsights, other.agentsTimeSavedInsights) && @@ -543,10 +571,10 @@ public int hashCode() { return Utils.enhancedHash( monthlyActiveUsers, weeklyActiveUsers, monthlyActiveUserTimeseries, weeklyActiveUserTimeseries, dailyActiveUserTimeseries, sharedAgentsCount, - topAgentsInsights, agentsUsageByDepartmentInsights, agentUsersInsights, - agentsTimeSavedInsights, dailyAgentRunsTimeseries, successfulRunsTimeseries, - failedRunsTimeseries, pausedRunsTimeseries, upvotesTimeseries, - downvotesTimeseries); + topAgentsInsights, topUseCasesInsights, agentsUsageByDepartmentInsights, + agentUsersInsights, agentsTimeSavedInsights, dailyAgentRunsTimeseries, + successfulRunsTimeseries, failedRunsTimeseries, pausedRunsTimeseries, + upvotesTimeseries, downvotesTimeseries); } @Override @@ -559,6 +587,7 @@ public String toString() { "dailyActiveUserTimeseries", dailyActiveUserTimeseries, "sharedAgentsCount", sharedAgentsCount, "topAgentsInsights", topAgentsInsights, + "topUseCasesInsights", topUseCasesInsights, "agentsUsageByDepartmentInsights", agentsUsageByDepartmentInsights, "agentUsersInsights", agentUsersInsights, "agentsTimeSavedInsights", agentsTimeSavedInsights, @@ -587,6 +616,8 @@ public final static class Builder { private Optional> topAgentsInsights = Optional.empty(); + private Optional> topUseCasesInsights = Optional.empty(); + private Optional> agentsUsageByDepartmentInsights = Optional.empty(); private Optional> agentUsersInsights = Optional.empty(); @@ -611,7 +642,7 @@ private Builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -620,7 +651,7 @@ public Builder monthlyActiveUsers(long monthlyActiveUsers) { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -630,7 +661,7 @@ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -639,7 +670,7 @@ public Builder weeklyActiveUsers(long weeklyActiveUsers) { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -719,6 +750,19 @@ public Builder topAgentsInsights(Optional> topAg } + public Builder topUseCasesInsights(List topUseCasesInsights) { + Utils.checkNotNull(topUseCasesInsights, "topUseCasesInsights"); + this.topUseCasesInsights = Optional.ofNullable(topUseCasesInsights); + return this; + } + + public Builder topUseCasesInsights(Optional> topUseCasesInsights) { + Utils.checkNotNull(topUseCasesInsights, "topUseCasesInsights"); + this.topUseCasesInsights = topUseCasesInsights; + return this; + } + + public Builder agentsUsageByDepartmentInsights(List agentsUsageByDepartmentInsights) { Utils.checkNotNull(agentsUsageByDepartmentInsights, "agentsUsageByDepartmentInsights"); this.agentsUsageByDepartmentInsights = Optional.ofNullable(agentsUsageByDepartmentInsights); @@ -846,10 +890,10 @@ public AgentsInsightsV2Response build() { return new AgentsInsightsV2Response( monthlyActiveUsers, weeklyActiveUsers, monthlyActiveUserTimeseries, weeklyActiveUserTimeseries, dailyActiveUserTimeseries, sharedAgentsCount, - topAgentsInsights, agentsUsageByDepartmentInsights, agentUsersInsights, - agentsTimeSavedInsights, dailyAgentRunsTimeseries, successfulRunsTimeseries, - failedRunsTimeseries, pausedRunsTimeseries, upvotesTimeseries, - downvotesTimeseries); + topAgentsInsights, topUseCasesInsights, agentsUsageByDepartmentInsights, + agentUsersInsights, agentsTimeSavedInsights, dailyAgentRunsTimeseries, + successfulRunsTimeseries, failedRunsTimeseries, pausedRunsTimeseries, + upvotesTimeseries, downvotesTimeseries); } } diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/AssistantInsightsResponse.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/AssistantInsightsResponse.java index 6277c7fb..84209052 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/AssistantInsightsResponse.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/AssistantInsightsResponse.java @@ -20,14 +20,14 @@ public class AssistantInsightsResponse { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("monthlyActiveUsers") private Optional monthlyActiveUsers; /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("weeklyActiveUsers") @@ -152,7 +152,7 @@ public AssistantInsightsResponse() { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonIgnore public Optional monthlyActiveUsers() { @@ -160,7 +160,7 @@ public Optional monthlyActiveUsers() { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonIgnore public Optional weeklyActiveUsers() { @@ -249,7 +249,7 @@ public static Builder builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public AssistantInsightsResponse withMonthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -259,7 +259,7 @@ public AssistantInsightsResponse withMonthlyActiveUsers(long monthlyActiveUsers) /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public AssistantInsightsResponse withMonthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -268,7 +268,7 @@ public AssistantInsightsResponse withMonthlyActiveUsers(Optional monthlyAc } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public AssistantInsightsResponse withWeeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -278,7 +278,7 @@ public AssistantInsightsResponse withWeeklyActiveUsers(long weeklyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public AssistantInsightsResponse withWeeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -546,7 +546,7 @@ private Builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -555,7 +555,7 @@ public Builder monthlyActiveUsers(long monthlyActiveUsers) { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -565,7 +565,7 @@ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -574,7 +574,7 @@ public Builder weeklyActiveUsers(long weeklyActiveUsers) { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/BreakdownType.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/BreakdownType.java new file mode 100644 index 00000000..b9934a59 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/BreakdownType.java @@ -0,0 +1,43 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 22c9cfa5fd83 + */ +package com.glean.api_client.glean_api_client.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BreakdownType + * + *

Type of breakdown to return. + */ +public enum BreakdownType { + USERS("USERS"), + HOST_APPLICATIONS("HOST_APPLICATIONS"), + TOOLS("TOOLS"), + SERVERS("SERVERS"); + + @JsonValue + private final String value; + + BreakdownType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BreakdownType o: BreakdownType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/CollectionErrorErrorCode.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/CollectionErrorErrorCode.java index 855e861c..fe6a556f 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/CollectionErrorErrorCode.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/CollectionErrorErrorCode.java @@ -28,6 +28,7 @@ public class CollectionErrorErrorCode { public static final CollectionErrorErrorCode HEIGHT_VIOLATION = new CollectionErrorErrorCode("HEIGHT_VIOLATION"); public static final CollectionErrorErrorCode WIDTH_VIOLATION = new CollectionErrorErrorCode("WIDTH_VIOLATION"); public static final CollectionErrorErrorCode NO_PERMISSIONS = new CollectionErrorErrorCode("NO_PERMISSIONS"); + public static final CollectionErrorErrorCode CORRUPT_ITEM = new CollectionErrorErrorCode("CORRUPT_ITEM"); // This map will grow whenever a Color gets created with a new // unrecognized value (a potential memory leak if the user is not @@ -108,6 +109,7 @@ private static final Map createValuesMap() { map.put("HEIGHT_VIOLATION", HEIGHT_VIOLATION); map.put("WIDTH_VIOLATION", WIDTH_VIOLATION); map.put("NO_PERMISSIONS", NO_PERMISSIONS); + map.put("CORRUPT_ITEM", CORRUPT_ITEM); return map; } @@ -120,6 +122,7 @@ private static final Map createEnumsMap() map.put("HEIGHT_VIOLATION", CollectionErrorErrorCodeEnum.HEIGHT_VIOLATION); map.put("WIDTH_VIOLATION", CollectionErrorErrorCodeEnum.WIDTH_VIOLATION); map.put("NO_PERMISSIONS", CollectionErrorErrorCodeEnum.NO_PERMISSIONS); + map.put("CORRUPT_ITEM", CollectionErrorErrorCodeEnum.CORRUPT_ITEM); return map; } @@ -132,7 +135,8 @@ public enum CollectionErrorErrorCodeEnum { CONCURRENT_HIERARCHY_EDIT("CONCURRENT_HIERARCHY_EDIT"), HEIGHT_VIOLATION("HEIGHT_VIOLATION"), WIDTH_VIOLATION("WIDTH_VIOLATION"), - NO_PERMISSIONS("NO_PERMISSIONS"),; + NO_PERMISSIONS("NO_PERMISSIONS"), + CORRUPT_ITEM("CORRUPT_ITEM"),; private final String value; diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/CurrentActiveUsers.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/CurrentActiveUsers.java index 3339cfa9..682bf0a8 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/CurrentActiveUsers.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/CurrentActiveUsers.java @@ -18,14 +18,14 @@ public class CurrentActiveUsers { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("monthlyActiveUsers") private Optional monthlyActiveUsers; /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("weeklyActiveUsers") @@ -46,7 +46,7 @@ public CurrentActiveUsers() { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonIgnore public Optional monthlyActiveUsers() { @@ -54,7 +54,7 @@ public Optional monthlyActiveUsers() { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonIgnore public Optional weeklyActiveUsers() { @@ -67,7 +67,7 @@ public static Builder builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public CurrentActiveUsers withMonthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -77,7 +77,7 @@ public CurrentActiveUsers withMonthlyActiveUsers(long monthlyActiveUsers) { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public CurrentActiveUsers withMonthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -86,7 +86,7 @@ public CurrentActiveUsers withMonthlyActiveUsers(Optional monthlyActiveUse } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public CurrentActiveUsers withWeeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -96,7 +96,7 @@ public CurrentActiveUsers withWeeklyActiveUsers(long weeklyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public CurrentActiveUsers withWeeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -144,7 +144,7 @@ private Builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -153,7 +153,7 @@ public Builder monthlyActiveUsers(long monthlyActiveUsers) { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -163,7 +163,7 @@ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -172,7 +172,7 @@ public Builder weeklyActiveUsers(long weeklyActiveUsers) { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatus.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatus.java new file mode 100644 index 00000000..3948af87 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatus.java @@ -0,0 +1,148 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 8ce4a048ef1e + */ +package com.glean.api_client.glean_api_client.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.Override; +import java.lang.String; +import java.util.HashMap; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; + +/** + * Wrapper for an "open" enum that can handle unknown values from API responses + * without runtime errors. Instances are immutable singletons with reference equality. + * Use {@code asEnum()} for switch expressions. + */ +/** + * DatasourceCredentialStatus + * + *

Lifecycle state of the credentials installed for a datasource instance. Mirrors the internal admin + * Status enum so the handler can surface the same health signals already tracked today. EXPIRING_SOON + * is represented as VALID_WITH_WARNINGS (with detail in `message`); EXPIRED is surfaced as INVALID + * plus a non-null `expiresAt` in the past. + */ +public class DatasourceCredentialStatus { + + public static final DatasourceCredentialStatus VALID = new DatasourceCredentialStatus("VALID"); + public static final DatasourceCredentialStatus VALID_WITH_WARNINGS = new DatasourceCredentialStatus("VALID_WITH_WARNINGS"); + public static final DatasourceCredentialStatus VALIDATING = new DatasourceCredentialStatus("VALIDATING"); + public static final DatasourceCredentialStatus INVALID = new DatasourceCredentialStatus("INVALID"); + public static final DatasourceCredentialStatus MISSING = new DatasourceCredentialStatus("MISSING"); + + // This map will grow whenever a Color gets created with a new + // unrecognized value (a potential memory leak if the user is not + // careful). Keep this field lower case to avoid clashing with + // generated member names which will always be upper cased (Java + // convention) + private static final Map values = createValuesMap(); + private static final Map enums = createEnumsMap(); + + private final String value; + + private DatasourceCredentialStatus(String value) { + this.value = value; + } + + /** + * Returns a DatasourceCredentialStatus with the given value. For a specific value the + * returned object will always be a singleton so reference equality + * is satisfied when the values are the same. + * + * @param value value to be wrapped as DatasourceCredentialStatus + */ + @JsonCreator + public static DatasourceCredentialStatus of(String value) { + synchronized (DatasourceCredentialStatus.class) { + return values.computeIfAbsent(value, v -> new DatasourceCredentialStatus(v)); + } + } + + @JsonValue + public String value() { + return value; + } + + public Optional asEnum() { + return Optional.ofNullable(enums.getOrDefault(value, null)); + } + + public boolean isKnown() { + return asEnum().isPresent(); + } + + @Override + public int hashCode() { + return Objects.hash(value); + } + + @Override + public boolean equals(java.lang.Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + DatasourceCredentialStatus other = (DatasourceCredentialStatus) obj; + return Objects.equals(value, other.value); + } + + @Override + public String toString() { + return "DatasourceCredentialStatus [value=" + value + "]"; + } + + // return an array just like an enum + public static DatasourceCredentialStatus[] values() { + synchronized (DatasourceCredentialStatus.class) { + return values.values().toArray(new DatasourceCredentialStatus[] {}); + } + } + + private static final Map createValuesMap() { + Map map = new LinkedHashMap<>(); + map.put("VALID", VALID); + map.put("VALID_WITH_WARNINGS", VALID_WITH_WARNINGS); + map.put("VALIDATING", VALIDATING); + map.put("INVALID", INVALID); + map.put("MISSING", MISSING); + return map; + } + + private static final Map createEnumsMap() { + Map map = new HashMap<>(); + map.put("VALID", DatasourceCredentialStatusEnum.VALID); + map.put("VALID_WITH_WARNINGS", DatasourceCredentialStatusEnum.VALID_WITH_WARNINGS); + map.put("VALIDATING", DatasourceCredentialStatusEnum.VALIDATING); + map.put("INVALID", DatasourceCredentialStatusEnum.INVALID); + map.put("MISSING", DatasourceCredentialStatusEnum.MISSING); + return map; + } + + + public enum DatasourceCredentialStatusEnum { + + VALID("VALID"), + VALID_WITH_WARNINGS("VALID_WITH_WARNINGS"), + VALIDATING("VALIDATING"), + INVALID("INVALID"), + MISSING("MISSING"),; + + private final String value; + + private DatasourceCredentialStatusEnum(String value) { + this.value = value; + } + + public String value() { + return value; + } + } +} + diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatusResponse.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatusResponse.java new file mode 100644 index 00000000..54dc377a --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/DatasourceCredentialStatusResponse.java @@ -0,0 +1,316 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 6aa3d770bcc1 + */ +package com.glean.api_client.glean_api_client.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.time.OffsetDateTime; +import java.util.Optional; + +/** + * DatasourceCredentialStatusResponse + * + *

Status of the credentials currently installed for a datasource instance. + */ +public class DatasourceCredentialStatusResponse { + /** + * Lifecycle state of the credentials installed for a datasource instance. Mirrors the internal admin + * Status enum so the handler can surface the same health signals already tracked today. EXPIRING_SOON + * is represented as VALID_WITH_WARNINGS (with detail in `message`); EXPIRED is surfaced as INVALID + * plus a non-null `expiresAt` in the past. + */ + @JsonProperty("status") + private DatasourceCredentialStatus status; + + /** + * When the credentials were last rotated. Omitted when not known. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("lastRotatedAt") + private Optional lastRotatedAt; + + /** + * When the active credentials expire. Omitted when not known or not applicable to this credential + * type. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("expiresAt") + private Optional expiresAt; + + /** + * Optional human-readable detail about the current credential status. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + @JsonCreator + public DatasourceCredentialStatusResponse( + @JsonProperty("status") DatasourceCredentialStatus status, + @JsonProperty("lastRotatedAt") Optional lastRotatedAt, + @JsonProperty("expiresAt") Optional expiresAt, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(lastRotatedAt, "lastRotatedAt"); + Utils.checkNotNull(expiresAt, "expiresAt"); + Utils.checkNotNull(message, "message"); + this.status = status; + this.lastRotatedAt = lastRotatedAt; + this.expiresAt = expiresAt; + this.message = message; + } + + public DatasourceCredentialStatusResponse( + DatasourceCredentialStatus status) { + this(status, Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * Lifecycle state of the credentials installed for a datasource instance. Mirrors the internal admin + * Status enum so the handler can surface the same health signals already tracked today. EXPIRING_SOON + * is represented as VALID_WITH_WARNINGS (with detail in `message`); EXPIRED is surfaced as INVALID + * plus a non-null `expiresAt` in the past. + */ + @JsonIgnore + public DatasourceCredentialStatus status() { + return status; + } + + /** + * When the credentials were last rotated. Omitted when not known. + */ + @JsonIgnore + public Optional lastRotatedAt() { + return lastRotatedAt; + } + + /** + * When the active credentials expire. Omitted when not known or not applicable to this credential + * type. + */ + @JsonIgnore + public Optional expiresAt() { + return expiresAt; + } + + /** + * Optional human-readable detail about the current credential status. + */ + @JsonIgnore + public Optional message() { + return message; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Lifecycle state of the credentials installed for a datasource instance. Mirrors the internal admin + * Status enum so the handler can surface the same health signals already tracked today. EXPIRING_SOON + * is represented as VALID_WITH_WARNINGS (with detail in `message`); EXPIRED is surfaced as INVALID + * plus a non-null `expiresAt` in the past. + */ + public DatasourceCredentialStatusResponse withStatus(DatasourceCredentialStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * When the credentials were last rotated. Omitted when not known. + */ + public DatasourceCredentialStatusResponse withLastRotatedAt(OffsetDateTime lastRotatedAt) { + Utils.checkNotNull(lastRotatedAt, "lastRotatedAt"); + this.lastRotatedAt = Optional.ofNullable(lastRotatedAt); + return this; + } + + + /** + * When the credentials were last rotated. Omitted when not known. + */ + public DatasourceCredentialStatusResponse withLastRotatedAt(Optional lastRotatedAt) { + Utils.checkNotNull(lastRotatedAt, "lastRotatedAt"); + this.lastRotatedAt = lastRotatedAt; + return this; + } + + /** + * When the active credentials expire. Omitted when not known or not applicable to this credential + * type. + */ + public DatasourceCredentialStatusResponse withExpiresAt(OffsetDateTime expiresAt) { + Utils.checkNotNull(expiresAt, "expiresAt"); + this.expiresAt = Optional.ofNullable(expiresAt); + return this; + } + + + /** + * When the active credentials expire. Omitted when not known or not applicable to this credential + * type. + */ + public DatasourceCredentialStatusResponse withExpiresAt(Optional expiresAt) { + Utils.checkNotNull(expiresAt, "expiresAt"); + this.expiresAt = expiresAt; + return this; + } + + /** + * Optional human-readable detail about the current credential status. + */ + public DatasourceCredentialStatusResponse withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Optional human-readable detail about the current credential status. + */ + public DatasourceCredentialStatusResponse withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DatasourceCredentialStatusResponse other = (DatasourceCredentialStatusResponse) o; + return + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.lastRotatedAt, other.lastRotatedAt) && + Utils.enhancedDeepEquals(this.expiresAt, other.expiresAt) && + Utils.enhancedDeepEquals(this.message, other.message); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + status, lastRotatedAt, expiresAt, + message); + } + + @Override + public String toString() { + return Utils.toString(DatasourceCredentialStatusResponse.class, + "status", status, + "lastRotatedAt", lastRotatedAt, + "expiresAt", expiresAt, + "message", message); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private DatasourceCredentialStatus status; + + private Optional lastRotatedAt = Optional.empty(); + + private Optional expiresAt = Optional.empty(); + + private Optional message = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Lifecycle state of the credentials installed for a datasource instance. Mirrors the internal admin + * Status enum so the handler can surface the same health signals already tracked today. EXPIRING_SOON + * is represented as VALID_WITH_WARNINGS (with detail in `message`); EXPIRED is surfaced as INVALID + * plus a non-null `expiresAt` in the past. + */ + public Builder status(DatasourceCredentialStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * When the credentials were last rotated. Omitted when not known. + */ + public Builder lastRotatedAt(OffsetDateTime lastRotatedAt) { + Utils.checkNotNull(lastRotatedAt, "lastRotatedAt"); + this.lastRotatedAt = Optional.ofNullable(lastRotatedAt); + return this; + } + + /** + * When the credentials were last rotated. Omitted when not known. + */ + public Builder lastRotatedAt(Optional lastRotatedAt) { + Utils.checkNotNull(lastRotatedAt, "lastRotatedAt"); + this.lastRotatedAt = lastRotatedAt; + return this; + } + + + /** + * When the active credentials expire. Omitted when not known or not applicable to this credential + * type. + */ + public Builder expiresAt(OffsetDateTime expiresAt) { + Utils.checkNotNull(expiresAt, "expiresAt"); + this.expiresAt = Optional.ofNullable(expiresAt); + return this; + } + + /** + * When the active credentials expire. Omitted when not known or not applicable to this credential + * type. + */ + public Builder expiresAt(Optional expiresAt) { + Utils.checkNotNull(expiresAt, "expiresAt"); + this.expiresAt = expiresAt; + return this; + } + + + /** + * Optional human-readable detail about the current credential status. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Optional human-readable detail about the current credential status. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public DatasourceCredentialStatusResponse build() { + + return new DatasourceCredentialStatusResponse( + status, lastRotatedAt, expiresAt, + message); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/EditCollectionResponseErrorCode.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/EditCollectionResponseErrorCode.java index 145894a1..4a071696 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/EditCollectionResponseErrorCode.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/EditCollectionResponseErrorCode.java @@ -28,6 +28,7 @@ public class EditCollectionResponseErrorCode { public static final EditCollectionResponseErrorCode HEIGHT_VIOLATION = new EditCollectionResponseErrorCode("HEIGHT_VIOLATION"); public static final EditCollectionResponseErrorCode WIDTH_VIOLATION = new EditCollectionResponseErrorCode("WIDTH_VIOLATION"); public static final EditCollectionResponseErrorCode NO_PERMISSIONS = new EditCollectionResponseErrorCode("NO_PERMISSIONS"); + public static final EditCollectionResponseErrorCode CORRUPT_ITEM = new EditCollectionResponseErrorCode("CORRUPT_ITEM"); // This map will grow whenever a Color gets created with a new // unrecognized value (a potential memory leak if the user is not @@ -108,6 +109,7 @@ private static final Map createValuesMa map.put("HEIGHT_VIOLATION", HEIGHT_VIOLATION); map.put("WIDTH_VIOLATION", WIDTH_VIOLATION); map.put("NO_PERMISSIONS", NO_PERMISSIONS); + map.put("CORRUPT_ITEM", CORRUPT_ITEM); return map; } @@ -120,6 +122,7 @@ private static final Map createEnum map.put("HEIGHT_VIOLATION", EditCollectionResponseErrorCodeEnum.HEIGHT_VIOLATION); map.put("WIDTH_VIOLATION", EditCollectionResponseErrorCodeEnum.WIDTH_VIOLATION); map.put("NO_PERMISSIONS", EditCollectionResponseErrorCodeEnum.NO_PERMISSIONS); + map.put("CORRUPT_ITEM", EditCollectionResponseErrorCodeEnum.CORRUPT_ITEM); return map; } @@ -132,7 +135,8 @@ public enum EditCollectionResponseErrorCodeEnum { CONCURRENT_HIERARCHY_EDIT("CONCURRENT_HIERARCHY_EDIT"), HEIGHT_VIOLATION("HEIGHT_VIOLATION"), WIDTH_VIOLATION("WIDTH_VIOLATION"), - NO_PERMISSIONS("NO_PERMISSIONS"),; + NO_PERMISSIONS("NO_PERMISSIONS"), + CORRUPT_ITEM("CORRUPT_ITEM"),; private final String value; diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/FeedRequestCategory.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/FeedRequestCategory.java index 16c04adb..38779aa2 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/FeedRequestCategory.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/FeedRequestCategory.java @@ -45,7 +45,10 @@ public enum FeedRequestCategory { FOLLOW_UP("FOLLOW_UP"), MILESTONE_TIMELINE_CHECK("MILESTONE_TIMELINE_CHECK"), PROJECT_DISCUSSION_DIGEST("PROJECT_DISCUSSION_DIGEST"), - PROJECT_NEXT_STEP("PROJECT_NEXT_STEP"); + PROJECT_FOCUS_BLOCK("PROJECT_FOCUS_BLOCK"), + PROJECT_NEXT_STEP("PROJECT_NEXT_STEP"), + DEMO_CARD("DEMO_CARD"), + OOO_PLANNER("OOO_PLANNER"); @JsonValue private final String value; diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/FeedResultCategory.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/FeedResultCategory.java index fdc07be5..0531cd53 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/FeedResultCategory.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/FeedResultCategory.java @@ -61,7 +61,10 @@ public class FeedResultCategory { public static final FeedResultCategory FOLLOW_UP = new FeedResultCategory("FOLLOW_UP"); public static final FeedResultCategory MILESTONE_TIMELINE_CHECK = new FeedResultCategory("MILESTONE_TIMELINE_CHECK"); public static final FeedResultCategory PROJECT_DISCUSSION_DIGEST = new FeedResultCategory("PROJECT_DISCUSSION_DIGEST"); + public static final FeedResultCategory PROJECT_FOCUS_BLOCK = new FeedResultCategory("PROJECT_FOCUS_BLOCK"); public static final FeedResultCategory PROJECT_NEXT_STEP = new FeedResultCategory("PROJECT_NEXT_STEP"); + public static final FeedResultCategory DEMO_CARD = new FeedResultCategory("DEMO_CARD"); + public static final FeedResultCategory OOO_PLANNER = new FeedResultCategory("OOO_PLANNER"); // This map will grow whenever a Color gets created with a new // unrecognized value (a potential memory leak if the user is not @@ -170,7 +173,10 @@ private static final Map createValuesMap() { map.put("FOLLOW_UP", FOLLOW_UP); map.put("MILESTONE_TIMELINE_CHECK", MILESTONE_TIMELINE_CHECK); map.put("PROJECT_DISCUSSION_DIGEST", PROJECT_DISCUSSION_DIGEST); + map.put("PROJECT_FOCUS_BLOCK", PROJECT_FOCUS_BLOCK); map.put("PROJECT_NEXT_STEP", PROJECT_NEXT_STEP); + map.put("DEMO_CARD", DEMO_CARD); + map.put("OOO_PLANNER", OOO_PLANNER); return map; } @@ -211,7 +217,10 @@ private static final Map createEnumsMap() { map.put("FOLLOW_UP", FeedResultCategoryEnum.FOLLOW_UP); map.put("MILESTONE_TIMELINE_CHECK", FeedResultCategoryEnum.MILESTONE_TIMELINE_CHECK); map.put("PROJECT_DISCUSSION_DIGEST", FeedResultCategoryEnum.PROJECT_DISCUSSION_DIGEST); + map.put("PROJECT_FOCUS_BLOCK", FeedResultCategoryEnum.PROJECT_FOCUS_BLOCK); map.put("PROJECT_NEXT_STEP", FeedResultCategoryEnum.PROJECT_NEXT_STEP); + map.put("DEMO_CARD", FeedResultCategoryEnum.DEMO_CARD); + map.put("OOO_PLANNER", FeedResultCategoryEnum.OOO_PLANNER); return map; } @@ -253,7 +262,10 @@ public enum FeedResultCategoryEnum { FOLLOW_UP("FOLLOW_UP"), MILESTONE_TIMELINE_CHECK("MILESTONE_TIMELINE_CHECK"), PROJECT_DISCUSSION_DIGEST("PROJECT_DISCUSSION_DIGEST"), - PROJECT_NEXT_STEP("PROJECT_NEXT_STEP"),; + PROJECT_FOCUS_BLOCK("PROJECT_FOCUS_BLOCK"), + PROJECT_NEXT_STEP("PROJECT_NEXT_STEP"), + DEMO_CARD("DEMO_CARD"), + OOO_PLANNER("OOO_PLANNER"),; private final String value; diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsAssistantRequest.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsAssistantRequest.java index e04efb3f..1f9ee23f 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsAssistantRequest.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsAssistantRequest.java @@ -25,6 +25,13 @@ public class InsightsAssistantRequest { @JsonProperty("departments") private Optional> departments; + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("managerEmails") + private Optional> managerEmails; + @JsonInclude(Include.NON_ABSENT) @JsonProperty("dayRange") @@ -33,15 +40,18 @@ public class InsightsAssistantRequest { @JsonCreator public InsightsAssistantRequest( @JsonProperty("departments") Optional> departments, + @JsonProperty("managerEmails") Optional> managerEmails, @JsonProperty("dayRange") Optional dayRange) { Utils.checkNotNull(departments, "departments"); + Utils.checkNotNull(managerEmails, "managerEmails"); Utils.checkNotNull(dayRange, "dayRange"); this.departments = departments; + this.managerEmails = managerEmails; this.dayRange = dayRange; } public InsightsAssistantRequest() { - this(Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), Optional.empty()); } /** @@ -53,6 +63,15 @@ public Optional> departments() { return (Optional>) departments; } + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> managerEmails() { + return (Optional>) managerEmails; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional dayRange() { @@ -83,6 +102,25 @@ public InsightsAssistantRequest withDepartments(Optional> return this; } + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public InsightsAssistantRequest withManagerEmails(List managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = Optional.ofNullable(managerEmails); + return this; + } + + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public InsightsAssistantRequest withManagerEmails(Optional> managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = managerEmails; + return this; + } + public InsightsAssistantRequest withDayRange(Period dayRange) { Utils.checkNotNull(dayRange, "dayRange"); this.dayRange = Optional.ofNullable(dayRange); @@ -107,19 +145,21 @@ public boolean equals(java.lang.Object o) { InsightsAssistantRequest other = (InsightsAssistantRequest) o; return Utils.enhancedDeepEquals(this.departments, other.departments) && + Utils.enhancedDeepEquals(this.managerEmails, other.managerEmails) && Utils.enhancedDeepEquals(this.dayRange, other.dayRange); } @Override public int hashCode() { return Utils.enhancedHash( - departments, dayRange); + departments, managerEmails, dayRange); } @Override public String toString() { return Utils.toString(InsightsAssistantRequest.class, "departments", departments, + "managerEmails", managerEmails, "dayRange", dayRange); } @@ -128,6 +168,8 @@ public final static class Builder { private Optional> departments = Optional.empty(); + private Optional> managerEmails = Optional.empty(); + private Optional dayRange = Optional.empty(); private Builder() { @@ -154,6 +196,25 @@ public Builder departments(Optional> departments) { } + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerEmails(List managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = Optional.ofNullable(managerEmails); + return this; + } + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerEmails(Optional> managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = managerEmails; + return this; + } + + public Builder dayRange(Period dayRange) { Utils.checkNotNull(dayRange, "dayRange"); this.dayRange = Optional.ofNullable(dayRange); @@ -169,7 +230,7 @@ public Builder dayRange(Optional dayRange) { public InsightsAssistantRequest build() { return new InsightsAssistantRequest( - departments, dayRange); + departments, managerEmails, dayRange); } } diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsChatSummary.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsChatSummary.java index 28c1ee3b..4aaa1511 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsChatSummary.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsChatSummary.java @@ -18,14 +18,14 @@ public class InsightsChatSummary { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("monthlyActiveUsers") private Optional monthlyActiveUsers; /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("weeklyActiveUsers") @@ -67,7 +67,7 @@ public InsightsChatSummary() { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonIgnore public Optional monthlyActiveUsers() { @@ -75,7 +75,7 @@ public Optional monthlyActiveUsers() { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonIgnore public Optional weeklyActiveUsers() { @@ -104,7 +104,7 @@ public static Builder builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public InsightsChatSummary withMonthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -114,7 +114,7 @@ public InsightsChatSummary withMonthlyActiveUsers(long monthlyActiveUsers) { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public InsightsChatSummary withMonthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -123,7 +123,7 @@ public InsightsChatSummary withMonthlyActiveUsers(Optional monthlyActiveUs } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public InsightsChatSummary withWeeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -133,7 +133,7 @@ public InsightsChatSummary withWeeklyActiveUsers(long weeklyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public InsightsChatSummary withWeeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -228,7 +228,7 @@ private Builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -237,7 +237,7 @@ public Builder monthlyActiveUsers(long monthlyActiveUsers) { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -247,7 +247,7 @@ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -256,7 +256,7 @@ public Builder weeklyActiveUsers(long weeklyActiveUsers) { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewRequest.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewRequest.java index b8ec936b..d0a44604 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewRequest.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewRequest.java @@ -25,6 +25,13 @@ public class InsightsOverviewRequest { @JsonProperty("departments") private Optional> departments; + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("managerEmails") + private Optional> managerEmails; + @JsonInclude(Include.NON_ABSENT) @JsonProperty("dayRange") @@ -33,15 +40,18 @@ public class InsightsOverviewRequest { @JsonCreator public InsightsOverviewRequest( @JsonProperty("departments") Optional> departments, + @JsonProperty("managerEmails") Optional> managerEmails, @JsonProperty("dayRange") Optional dayRange) { Utils.checkNotNull(departments, "departments"); + Utils.checkNotNull(managerEmails, "managerEmails"); Utils.checkNotNull(dayRange, "dayRange"); this.departments = departments; + this.managerEmails = managerEmails; this.dayRange = dayRange; } public InsightsOverviewRequest() { - this(Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), Optional.empty()); } /** @@ -53,6 +63,15 @@ public Optional> departments() { return (Optional>) departments; } + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> managerEmails() { + return (Optional>) managerEmails; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional dayRange() { @@ -83,6 +102,25 @@ public InsightsOverviewRequest withDepartments(Optional> return this; } + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public InsightsOverviewRequest withManagerEmails(List managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = Optional.ofNullable(managerEmails); + return this; + } + + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public InsightsOverviewRequest withManagerEmails(Optional> managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = managerEmails; + return this; + } + public InsightsOverviewRequest withDayRange(Period dayRange) { Utils.checkNotNull(dayRange, "dayRange"); this.dayRange = Optional.ofNullable(dayRange); @@ -107,19 +145,21 @@ public boolean equals(java.lang.Object o) { InsightsOverviewRequest other = (InsightsOverviewRequest) o; return Utils.enhancedDeepEquals(this.departments, other.departments) && + Utils.enhancedDeepEquals(this.managerEmails, other.managerEmails) && Utils.enhancedDeepEquals(this.dayRange, other.dayRange); } @Override public int hashCode() { return Utils.enhancedHash( - departments, dayRange); + departments, managerEmails, dayRange); } @Override public String toString() { return Utils.toString(InsightsOverviewRequest.class, "departments", departments, + "managerEmails", managerEmails, "dayRange", dayRange); } @@ -128,6 +168,8 @@ public final static class Builder { private Optional> departments = Optional.empty(); + private Optional> managerEmails = Optional.empty(); + private Optional dayRange = Optional.empty(); private Builder() { @@ -154,6 +196,25 @@ public Builder departments(Optional> departments) { } + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerEmails(List managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = Optional.ofNullable(managerEmails); + return this; + } + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerEmails(Optional> managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = managerEmails; + return this; + } + + public Builder dayRange(Period dayRange) { Utils.checkNotNull(dayRange, "dayRange"); this.dayRange = Optional.ofNullable(dayRange); @@ -169,7 +230,7 @@ public Builder dayRange(Optional dayRange) { public InsightsOverviewRequest build() { return new InsightsOverviewRequest( - departments, dayRange); + departments, managerEmails, dayRange); } } diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewResponse.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewResponse.java index ba67584f..e08b82f5 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewResponse.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsOverviewResponse.java @@ -22,14 +22,14 @@ public class InsightsOverviewResponse { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("monthlyActiveUsers") private Optional monthlyActiveUsers; /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("weeklyActiveUsers") @@ -319,7 +319,7 @@ public InsightsOverviewResponse() { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonIgnore public Optional monthlyActiveUsers() { @@ -327,7 +327,7 @@ public Optional monthlyActiveUsers() { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonIgnore public Optional weeklyActiveUsers() { @@ -543,7 +543,7 @@ public static Builder builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public InsightsOverviewResponse withMonthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -553,7 +553,7 @@ public InsightsOverviewResponse withMonthlyActiveUsers(long monthlyActiveUsers) /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public InsightsOverviewResponse withMonthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -562,7 +562,7 @@ public InsightsOverviewResponse withMonthlyActiveUsers(Optional monthlyAct } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public InsightsOverviewResponse withWeeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -572,7 +572,7 @@ public InsightsOverviewResponse withWeeklyActiveUsers(long weeklyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public InsightsOverviewResponse withWeeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -1194,7 +1194,7 @@ private Builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -1203,7 +1203,7 @@ public Builder monthlyActiveUsers(long monthlyActiveUsers) { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -1213,7 +1213,7 @@ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -1222,7 +1222,7 @@ public Builder weeklyActiveUsers(long weeklyActiveUsers) { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsRequest.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsRequest.java index 10a5aae4..58b725bb 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsRequest.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsRequest.java @@ -33,6 +33,11 @@ public class InsightsRequest { @JsonProperty("agentsRequest") private Optional agentsRequest; + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("mcpBreakdownRequest") + private Optional mcpBreakdownRequest; + /** * If true, suppresses the generation of per-user Insights in the response. Default is false. */ @@ -45,20 +50,23 @@ public InsightsRequest( @JsonProperty("overviewRequest") Optional overviewRequest, @JsonProperty("assistantRequest") Optional assistantRequest, @JsonProperty("agentsRequest") Optional agentsRequest, + @JsonProperty("mcpBreakdownRequest") Optional mcpBreakdownRequest, @JsonProperty("disablePerUserInsights") Optional disablePerUserInsights) { Utils.checkNotNull(overviewRequest, "overviewRequest"); Utils.checkNotNull(assistantRequest, "assistantRequest"); Utils.checkNotNull(agentsRequest, "agentsRequest"); + Utils.checkNotNull(mcpBreakdownRequest, "mcpBreakdownRequest"); Utils.checkNotNull(disablePerUserInsights, "disablePerUserInsights"); this.overviewRequest = overviewRequest; this.assistantRequest = assistantRequest; this.agentsRequest = agentsRequest; + this.mcpBreakdownRequest = mcpBreakdownRequest; this.disablePerUserInsights = disablePerUserInsights; } public InsightsRequest() { this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } @SuppressWarnings("unchecked") @@ -79,6 +87,12 @@ public Optional agentsRequest() { return (Optional) agentsRequest; } + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional mcpBreakdownRequest() { + return (Optional) mcpBreakdownRequest; + } + /** * If true, suppresses the generation of per-user Insights in the response. Default is false. */ @@ -131,6 +145,19 @@ public InsightsRequest withAgentsRequest(Optional mcpBreakdownRequest) { + Utils.checkNotNull(mcpBreakdownRequest, "mcpBreakdownRequest"); + this.mcpBreakdownRequest = mcpBreakdownRequest; + return this; + } + /** * If true, suppresses the generation of per-user Insights in the response. Default is false. */ @@ -163,6 +190,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.overviewRequest, other.overviewRequest) && Utils.enhancedDeepEquals(this.assistantRequest, other.assistantRequest) && Utils.enhancedDeepEquals(this.agentsRequest, other.agentsRequest) && + Utils.enhancedDeepEquals(this.mcpBreakdownRequest, other.mcpBreakdownRequest) && Utils.enhancedDeepEquals(this.disablePerUserInsights, other.disablePerUserInsights); } @@ -170,7 +198,7 @@ public boolean equals(java.lang.Object o) { public int hashCode() { return Utils.enhancedHash( overviewRequest, assistantRequest, agentsRequest, - disablePerUserInsights); + mcpBreakdownRequest, disablePerUserInsights); } @Override @@ -179,6 +207,7 @@ public String toString() { "overviewRequest", overviewRequest, "assistantRequest", assistantRequest, "agentsRequest", agentsRequest, + "mcpBreakdownRequest", mcpBreakdownRequest, "disablePerUserInsights", disablePerUserInsights); } @@ -191,6 +220,8 @@ public final static class Builder { private Optional agentsRequest = Optional.empty(); + private Optional mcpBreakdownRequest = Optional.empty(); + private Optional disablePerUserInsights = Optional.empty(); private Builder() { @@ -237,6 +268,19 @@ public Builder agentsRequest(Optional agentsR } + public Builder mcpBreakdownRequest(McpBreakdownInsightsRequest mcpBreakdownRequest) { + Utils.checkNotNull(mcpBreakdownRequest, "mcpBreakdownRequest"); + this.mcpBreakdownRequest = Optional.ofNullable(mcpBreakdownRequest); + return this; + } + + public Builder mcpBreakdownRequest(Optional mcpBreakdownRequest) { + Utils.checkNotNull(mcpBreakdownRequest, "mcpBreakdownRequest"); + this.mcpBreakdownRequest = mcpBreakdownRequest; + return this; + } + + /** * If true, suppresses the generation of per-user Insights in the response. Default is false. */ @@ -259,7 +303,7 @@ public InsightsRequest build() { return new InsightsRequest( overviewRequest, assistantRequest, agentsRequest, - disablePerUserInsights); + mcpBreakdownRequest, disablePerUserInsights); } } diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsSearchSummary.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsSearchSummary.java index ed1fc5e5..3dc7eb61 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsSearchSummary.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/InsightsSearchSummary.java @@ -18,14 +18,14 @@ public class InsightsSearchSummary { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("monthlyActiveUsers") private Optional monthlyActiveUsers; /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("weeklyActiveUsers") @@ -67,7 +67,7 @@ public InsightsSearchSummary() { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ @JsonIgnore public Optional monthlyActiveUsers() { @@ -75,7 +75,7 @@ public Optional monthlyActiveUsers() { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ @JsonIgnore public Optional weeklyActiveUsers() { @@ -104,7 +104,7 @@ public static Builder builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public InsightsSearchSummary withMonthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -114,7 +114,7 @@ public InsightsSearchSummary withMonthlyActiveUsers(long monthlyActiveUsers) { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public InsightsSearchSummary withMonthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -123,7 +123,7 @@ public InsightsSearchSummary withMonthlyActiveUsers(Optional monthlyActive } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public InsightsSearchSummary withWeeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -133,7 +133,7 @@ public InsightsSearchSummary withWeeklyActiveUsers(long weeklyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public InsightsSearchSummary withWeeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -228,7 +228,7 @@ private Builder() { /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(long monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -237,7 +237,7 @@ public Builder monthlyActiveUsers(long monthlyActiveUsers) { } /** - * Number of current Monthly Active Users, in the specified departments. + * Number of current Monthly Active Users. */ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { Utils.checkNotNull(monthlyActiveUsers, "monthlyActiveUsers"); @@ -247,7 +247,7 @@ public Builder monthlyActiveUsers(Optional monthlyActiveUsers) { /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(long weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); @@ -256,7 +256,7 @@ public Builder weeklyActiveUsers(long weeklyActiveUsers) { } /** - * Number of current Weekly Active Users, in the specified departments. + * Number of current Weekly Active Users. */ public Builder weeklyActiveUsers(Optional weeklyActiveUsers) { Utils.checkNotNull(weeklyActiveUsers, "weeklyActiveUsers"); diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/JustificationType.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/JustificationType.java index 6e1ed2a7..627be1af 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/JustificationType.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/JustificationType.java @@ -74,7 +74,10 @@ public class JustificationType { public static final JustificationType FOLLOW_UP = new JustificationType("FOLLOW_UP"); public static final JustificationType MILESTONE_TIMELINE_CHECK = new JustificationType("MILESTONE_TIMELINE_CHECK"); public static final JustificationType PROJECT_DISCUSSION_DIGEST = new JustificationType("PROJECT_DISCUSSION_DIGEST"); + public static final JustificationType PROJECT_FOCUS_BLOCK = new JustificationType("PROJECT_FOCUS_BLOCK"); public static final JustificationType PROJECT_NEXT_STEP = new JustificationType("PROJECT_NEXT_STEP"); + public static final JustificationType DEMO_CARD = new JustificationType("DEMO_CARD"); + public static final JustificationType OOO_PLANNER = new JustificationType("OOO_PLANNER"); // This map will grow whenever a Color gets created with a new // unrecognized value (a potential memory leak if the user is not @@ -196,7 +199,10 @@ private static final Map createValuesMap() { map.put("FOLLOW_UP", FOLLOW_UP); map.put("MILESTONE_TIMELINE_CHECK", MILESTONE_TIMELINE_CHECK); map.put("PROJECT_DISCUSSION_DIGEST", PROJECT_DISCUSSION_DIGEST); + map.put("PROJECT_FOCUS_BLOCK", PROJECT_FOCUS_BLOCK); map.put("PROJECT_NEXT_STEP", PROJECT_NEXT_STEP); + map.put("DEMO_CARD", DEMO_CARD); + map.put("OOO_PLANNER", OOO_PLANNER); return map; } @@ -250,7 +256,10 @@ private static final Map createEnumsMap() { map.put("FOLLOW_UP", JustificationTypeEnum.FOLLOW_UP); map.put("MILESTONE_TIMELINE_CHECK", JustificationTypeEnum.MILESTONE_TIMELINE_CHECK); map.put("PROJECT_DISCUSSION_DIGEST", JustificationTypeEnum.PROJECT_DISCUSSION_DIGEST); + map.put("PROJECT_FOCUS_BLOCK", JustificationTypeEnum.PROJECT_FOCUS_BLOCK); map.put("PROJECT_NEXT_STEP", JustificationTypeEnum.PROJECT_NEXT_STEP); + map.put("DEMO_CARD", JustificationTypeEnum.DEMO_CARD); + map.put("OOO_PLANNER", JustificationTypeEnum.OOO_PLANNER); return map; } @@ -305,7 +314,10 @@ public enum JustificationTypeEnum { FOLLOW_UP("FOLLOW_UP"), MILESTONE_TIMELINE_CHECK("MILESTONE_TIMELINE_CHECK"), PROJECT_DISCUSSION_DIGEST("PROJECT_DISCUSSION_DIGEST"), - PROJECT_NEXT_STEP("PROJECT_NEXT_STEP"),; + PROJECT_FOCUS_BLOCK("PROJECT_FOCUS_BLOCK"), + PROJECT_NEXT_STEP("PROJECT_NEXT_STEP"), + DEMO_CARD("DEMO_CARD"), + OOO_PLANNER("OOO_PLANNER"),; private final String value; diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/McpBreakdownInsightsRequest.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/McpBreakdownInsightsRequest.java new file mode 100644 index 00000000..821e4fa5 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/McpBreakdownInsightsRequest.java @@ -0,0 +1,548 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 89a6d0bf179d + */ +package com.glean.api_client.glean_api_client.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; + + +public class McpBreakdownInsightsRequest { + /** + * Departments for which Insights are requested. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("departments") + private Optional> departments; + + /** + * Manager user IDs whose teams should be filtered for. Empty array means no filtering. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("managerIds") + private Optional> managerIds; + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("managerEmails") + private Optional> managerEmails; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("dayRange") + private Optional dayRange; + + /** + * Type of breakdown to return. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("breakdownType") + private Optional breakdownType; + + /** + * Host applications to filter by. Empty array means all host applications. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("hostApplications") + private Optional> hostApplications; + + /** + * MCP tools to filter by. Empty array means all tools. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("tools") + private Optional> tools; + + /** + * MCP servers to filter by. Empty array means all servers. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("servers") + private Optional> servers; + + @JsonCreator + public McpBreakdownInsightsRequest( + @JsonProperty("departments") Optional> departments, + @JsonProperty("managerIds") Optional> managerIds, + @JsonProperty("managerEmails") Optional> managerEmails, + @JsonProperty("dayRange") Optional dayRange, + @JsonProperty("breakdownType") Optional breakdownType, + @JsonProperty("hostApplications") Optional> hostApplications, + @JsonProperty("tools") Optional> tools, + @JsonProperty("servers") Optional> servers) { + Utils.checkNotNull(departments, "departments"); + Utils.checkNotNull(managerIds, "managerIds"); + Utils.checkNotNull(managerEmails, "managerEmails"); + Utils.checkNotNull(dayRange, "dayRange"); + Utils.checkNotNull(breakdownType, "breakdownType"); + Utils.checkNotNull(hostApplications, "hostApplications"); + Utils.checkNotNull(tools, "tools"); + Utils.checkNotNull(servers, "servers"); + this.departments = departments; + this.managerIds = managerIds; + this.managerEmails = managerEmails; + this.dayRange = dayRange; + this.breakdownType = breakdownType; + this.hostApplications = hostApplications; + this.tools = tools; + this.servers = servers; + } + + public McpBreakdownInsightsRequest() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Departments for which Insights are requested. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> departments() { + return (Optional>) departments; + } + + /** + * Manager user IDs whose teams should be filtered for. Empty array means no filtering. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> managerIds() { + return (Optional>) managerIds; + } + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> managerEmails() { + return (Optional>) managerEmails; + } + + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional dayRange() { + return (Optional) dayRange; + } + + /** + * Type of breakdown to return. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional breakdownType() { + return (Optional) breakdownType; + } + + /** + * Host applications to filter by. Empty array means all host applications. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> hostApplications() { + return (Optional>) hostApplications; + } + + /** + * MCP tools to filter by. Empty array means all tools. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> tools() { + return (Optional>) tools; + } + + /** + * MCP servers to filter by. Empty array means all servers. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> servers() { + return (Optional>) servers; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Departments for which Insights are requested. + */ + public McpBreakdownInsightsRequest withDepartments(List departments) { + Utils.checkNotNull(departments, "departments"); + this.departments = Optional.ofNullable(departments); + return this; + } + + + /** + * Departments for which Insights are requested. + */ + public McpBreakdownInsightsRequest withDepartments(Optional> departments) { + Utils.checkNotNull(departments, "departments"); + this.departments = departments; + return this; + } + + /** + * Manager user IDs whose teams should be filtered for. Empty array means no filtering. + */ + public McpBreakdownInsightsRequest withManagerIds(List managerIds) { + Utils.checkNotNull(managerIds, "managerIds"); + this.managerIds = Optional.ofNullable(managerIds); + return this; + } + + + /** + * Manager user IDs whose teams should be filtered for. Empty array means no filtering. + */ + public McpBreakdownInsightsRequest withManagerIds(Optional> managerIds) { + Utils.checkNotNull(managerIds, "managerIds"); + this.managerIds = managerIds; + return this; + } + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public McpBreakdownInsightsRequest withManagerEmails(List managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = Optional.ofNullable(managerEmails); + return this; + } + + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public McpBreakdownInsightsRequest withManagerEmails(Optional> managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = managerEmails; + return this; + } + + public McpBreakdownInsightsRequest withDayRange(Period dayRange) { + Utils.checkNotNull(dayRange, "dayRange"); + this.dayRange = Optional.ofNullable(dayRange); + return this; + } + + + public McpBreakdownInsightsRequest withDayRange(Optional dayRange) { + Utils.checkNotNull(dayRange, "dayRange"); + this.dayRange = dayRange; + return this; + } + + /** + * Type of breakdown to return. + */ + public McpBreakdownInsightsRequest withBreakdownType(BreakdownType breakdownType) { + Utils.checkNotNull(breakdownType, "breakdownType"); + this.breakdownType = Optional.ofNullable(breakdownType); + return this; + } + + + /** + * Type of breakdown to return. + */ + public McpBreakdownInsightsRequest withBreakdownType(Optional breakdownType) { + Utils.checkNotNull(breakdownType, "breakdownType"); + this.breakdownType = breakdownType; + return this; + } + + /** + * Host applications to filter by. Empty array means all host applications. + */ + public McpBreakdownInsightsRequest withHostApplications(List hostApplications) { + Utils.checkNotNull(hostApplications, "hostApplications"); + this.hostApplications = Optional.ofNullable(hostApplications); + return this; + } + + + /** + * Host applications to filter by. Empty array means all host applications. + */ + public McpBreakdownInsightsRequest withHostApplications(Optional> hostApplications) { + Utils.checkNotNull(hostApplications, "hostApplications"); + this.hostApplications = hostApplications; + return this; + } + + /** + * MCP tools to filter by. Empty array means all tools. + */ + public McpBreakdownInsightsRequest withTools(List tools) { + Utils.checkNotNull(tools, "tools"); + this.tools = Optional.ofNullable(tools); + return this; + } + + + /** + * MCP tools to filter by. Empty array means all tools. + */ + public McpBreakdownInsightsRequest withTools(Optional> tools) { + Utils.checkNotNull(tools, "tools"); + this.tools = tools; + return this; + } + + /** + * MCP servers to filter by. Empty array means all servers. + */ + public McpBreakdownInsightsRequest withServers(List servers) { + Utils.checkNotNull(servers, "servers"); + this.servers = Optional.ofNullable(servers); + return this; + } + + + /** + * MCP servers to filter by. Empty array means all servers. + */ + public McpBreakdownInsightsRequest withServers(Optional> servers) { + Utils.checkNotNull(servers, "servers"); + this.servers = servers; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + McpBreakdownInsightsRequest other = (McpBreakdownInsightsRequest) o; + return + Utils.enhancedDeepEquals(this.departments, other.departments) && + Utils.enhancedDeepEquals(this.managerIds, other.managerIds) && + Utils.enhancedDeepEquals(this.managerEmails, other.managerEmails) && + Utils.enhancedDeepEquals(this.dayRange, other.dayRange) && + Utils.enhancedDeepEquals(this.breakdownType, other.breakdownType) && + Utils.enhancedDeepEquals(this.hostApplications, other.hostApplications) && + Utils.enhancedDeepEquals(this.tools, other.tools) && + Utils.enhancedDeepEquals(this.servers, other.servers); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + departments, managerIds, managerEmails, + dayRange, breakdownType, hostApplications, + tools, servers); + } + + @Override + public String toString() { + return Utils.toString(McpBreakdownInsightsRequest.class, + "departments", departments, + "managerIds", managerIds, + "managerEmails", managerEmails, + "dayRange", dayRange, + "breakdownType", breakdownType, + "hostApplications", hostApplications, + "tools", tools, + "servers", servers); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional> departments = Optional.empty(); + + private Optional> managerIds = Optional.empty(); + + private Optional> managerEmails = Optional.empty(); + + private Optional dayRange = Optional.empty(); + + private Optional breakdownType = Optional.empty(); + + private Optional> hostApplications = Optional.empty(); + + private Optional> tools = Optional.empty(); + + private Optional> servers = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Departments for which Insights are requested. + */ + public Builder departments(List departments) { + Utils.checkNotNull(departments, "departments"); + this.departments = Optional.ofNullable(departments); + return this; + } + + /** + * Departments for which Insights are requested. + */ + public Builder departments(Optional> departments) { + Utils.checkNotNull(departments, "departments"); + this.departments = departments; + return this; + } + + + /** + * Manager user IDs whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerIds(List managerIds) { + Utils.checkNotNull(managerIds, "managerIds"); + this.managerIds = Optional.ofNullable(managerIds); + return this; + } + + /** + * Manager user IDs whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerIds(Optional> managerIds) { + Utils.checkNotNull(managerIds, "managerIds"); + this.managerIds = managerIds; + return this; + } + + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerEmails(List managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = Optional.ofNullable(managerEmails); + return this; + } + + /** + * Manager emails whose teams should be filtered for. Empty array means no filtering. + */ + public Builder managerEmails(Optional> managerEmails) { + Utils.checkNotNull(managerEmails, "managerEmails"); + this.managerEmails = managerEmails; + return this; + } + + + public Builder dayRange(Period dayRange) { + Utils.checkNotNull(dayRange, "dayRange"); + this.dayRange = Optional.ofNullable(dayRange); + return this; + } + + public Builder dayRange(Optional dayRange) { + Utils.checkNotNull(dayRange, "dayRange"); + this.dayRange = dayRange; + return this; + } + + + /** + * Type of breakdown to return. + */ + public Builder breakdownType(BreakdownType breakdownType) { + Utils.checkNotNull(breakdownType, "breakdownType"); + this.breakdownType = Optional.ofNullable(breakdownType); + return this; + } + + /** + * Type of breakdown to return. + */ + public Builder breakdownType(Optional breakdownType) { + Utils.checkNotNull(breakdownType, "breakdownType"); + this.breakdownType = breakdownType; + return this; + } + + + /** + * Host applications to filter by. Empty array means all host applications. + */ + public Builder hostApplications(List hostApplications) { + Utils.checkNotNull(hostApplications, "hostApplications"); + this.hostApplications = Optional.ofNullable(hostApplications); + return this; + } + + /** + * Host applications to filter by. Empty array means all host applications. + */ + public Builder hostApplications(Optional> hostApplications) { + Utils.checkNotNull(hostApplications, "hostApplications"); + this.hostApplications = hostApplications; + return this; + } + + + /** + * MCP tools to filter by. Empty array means all tools. + */ + public Builder tools(List tools) { + Utils.checkNotNull(tools, "tools"); + this.tools = Optional.ofNullable(tools); + return this; + } + + /** + * MCP tools to filter by. Empty array means all tools. + */ + public Builder tools(Optional> tools) { + Utils.checkNotNull(tools, "tools"); + this.tools = tools; + return this; + } + + + /** + * MCP servers to filter by. Empty array means all servers. + */ + public Builder servers(List servers) { + Utils.checkNotNull(servers, "servers"); + this.servers = Optional.ofNullable(servers); + return this; + } + + /** + * MCP servers to filter by. Empty array means all servers. + */ + public Builder servers(Optional> servers) { + Utils.checkNotNull(servers, "servers"); + this.servers = servers; + return this; + } + + public McpBreakdownInsightsRequest build() { + + return new McpBreakdownInsightsRequest( + departments, managerIds, managerEmails, + dayRange, breakdownType, hostApplications, + tools, servers); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/RotateDatasourceCredentialsRequest.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/RotateDatasourceCredentialsRequest.java new file mode 100644 index 00000000..90d0b16b --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/RotateDatasourceCredentialsRequest.java @@ -0,0 +1,111 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 3289b4dd3617 + */ +package com.glean.api_client.glean_api_client.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * RotateDatasourceCredentialsRequest + * + *

Request to rotate the credentials used by a datasource instance. Replaces the active credential + * material with the supplied values. + * `credentials.values` must contain only keys recognized as credential material for the datasource + * type (for example `clientSecret` for OAuth, `apiToken` for API-token auth, `privateKey` for + * certificate auth). Unrecognized keys, or keys that correspond to non-credential configuration, cause + * a 400; use the configure endpoint to change non-credential config. + */ +public class RotateDatasourceCredentialsRequest { + /** + * Configuration for a datasource instance + */ + @JsonProperty("credentials") + private DatasourceInstanceConfiguration credentials; + + @JsonCreator + public RotateDatasourceCredentialsRequest( + @JsonProperty("credentials") DatasourceInstanceConfiguration credentials) { + Utils.checkNotNull(credentials, "credentials"); + this.credentials = credentials; + } + + /** + * Configuration for a datasource instance + */ + @JsonIgnore + public DatasourceInstanceConfiguration credentials() { + return credentials; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Configuration for a datasource instance + */ + public RotateDatasourceCredentialsRequest withCredentials(DatasourceInstanceConfiguration credentials) { + Utils.checkNotNull(credentials, "credentials"); + this.credentials = credentials; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RotateDatasourceCredentialsRequest other = (RotateDatasourceCredentialsRequest) o; + return + Utils.enhancedDeepEquals(this.credentials, other.credentials); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + credentials); + } + + @Override + public String toString() { + return Utils.toString(RotateDatasourceCredentialsRequest.class, + "credentials", credentials); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private DatasourceInstanceConfiguration credentials; + + private Builder() { + // force use of static builder() method + } + + + /** + * Configuration for a datasource instance + */ + public Builder credentials(DatasourceInstanceConfiguration credentials) { + Utils.checkNotNull(credentials, "credentials"); + this.credentials = credentials; + return this; + } + + public RotateDatasourceCredentialsRequest build() { + + return new RotateDatasourceCredentialsRequest( + credentials); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/UgcType.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/UgcType.java index f6198804..bbf4832b 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/UgcType.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/UgcType.java @@ -38,6 +38,7 @@ public class UgcType { public static final UgcType SHORTCUTS_TYPE = new UgcType("SHORTCUTS_TYPE"); public static final UgcType SLIDE_TYPE = new UgcType("SLIDE_TYPE"); public static final UgcType SPREADSHEET_TYPE = new UgcType("SPREADSHEET_TYPE"); + public static final UgcType INLINE_HTML_TYPE = new UgcType("INLINE_HTML_TYPE"); public static final UgcType WORKFLOWS_TYPE = new UgcType("WORKFLOWS_TYPE"); // This map will grow whenever a Color gets created with a new @@ -129,6 +130,7 @@ private static final Map createValuesMap() { map.put("SHORTCUTS_TYPE", SHORTCUTS_TYPE); map.put("SLIDE_TYPE", SLIDE_TYPE); map.put("SPREADSHEET_TYPE", SPREADSHEET_TYPE); + map.put("INLINE_HTML_TYPE", INLINE_HTML_TYPE); map.put("WORKFLOWS_TYPE", WORKFLOWS_TYPE); return map; } @@ -152,6 +154,7 @@ private static final Map createEnumsMap() { map.put("SHORTCUTS_TYPE", UgcTypeEnum.SHORTCUTS_TYPE); map.put("SLIDE_TYPE", UgcTypeEnum.SLIDE_TYPE); map.put("SPREADSHEET_TYPE", UgcTypeEnum.SPREADSHEET_TYPE); + map.put("INLINE_HTML_TYPE", UgcTypeEnum.INLINE_HTML_TYPE); map.put("WORKFLOWS_TYPE", UgcTypeEnum.WORKFLOWS_TYPE); return map; } @@ -176,6 +179,7 @@ public enum UgcTypeEnum { SHORTCUTS_TYPE("SHORTCUTS_TYPE"), SLIDE_TYPE("SLIDE_TYPE"), SPREADSHEET_TYPE("SPREADSHEET_TYPE"), + INLINE_HTML_TYPE("INLINE_HTML_TYPE"), WORKFLOWS_TYPE("WORKFLOWS_TYPE"),; private final String value; diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/components/Workflow.java b/src/main/java/com/glean/api_client/glean_api_client/models/components/Workflow.java index 8baff52b..2adad3bb 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/components/Workflow.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/components/Workflow.java @@ -52,6 +52,19 @@ public class Workflow { private Optional lastDraftSavedAt; + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("lastDraftSavedBy") + private Optional lastDraftSavedBy; + + /** + * ID of the VCS user (e.g. GitHub username) who last saved the draft. Set only by the draft save path + * via the external Git integration API. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("lastDraftGitAuthorId") + private Optional lastDraftGitAuthorId; + + @JsonInclude(Include.NON_ABSENT) @JsonProperty("lastUpdatedBy") private Optional lastUpdatedBy; @@ -75,6 +88,8 @@ public Workflow( @JsonProperty("createTimestamp") Optional createTimestamp, @JsonProperty("lastUpdateTimestamp") Optional lastUpdateTimestamp, @JsonProperty("lastDraftSavedAt") Optional lastDraftSavedAt, + @JsonProperty("lastDraftSavedBy") Optional lastDraftSavedBy, + @JsonProperty("lastDraftGitAuthorId") Optional lastDraftGitAuthorId, @JsonProperty("lastUpdatedBy") Optional lastUpdatedBy, @JsonProperty("permissions") Optional permissions, @JsonProperty("id") Optional id) { @@ -83,6 +98,8 @@ public Workflow( Utils.checkNotNull(createTimestamp, "createTimestamp"); Utils.checkNotNull(lastUpdateTimestamp, "lastUpdateTimestamp"); Utils.checkNotNull(lastDraftSavedAt, "lastDraftSavedAt"); + Utils.checkNotNull(lastDraftSavedBy, "lastDraftSavedBy"); + Utils.checkNotNull(lastDraftGitAuthorId, "lastDraftGitAuthorId"); Utils.checkNotNull(lastUpdatedBy, "lastUpdatedBy"); Utils.checkNotNull(permissions, "permissions"); Utils.checkNotNull(id, "id"); @@ -91,6 +108,8 @@ public Workflow( this.createTimestamp = createTimestamp; this.lastUpdateTimestamp = lastUpdateTimestamp; this.lastDraftSavedAt = lastDraftSavedAt; + this.lastDraftSavedBy = lastDraftSavedBy; + this.lastDraftGitAuthorId = lastDraftGitAuthorId; this.lastUpdatedBy = lastUpdatedBy; this.permissions = permissions; this.id = id; @@ -99,7 +118,8 @@ public Workflow( public Workflow() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -140,6 +160,21 @@ public Optional lastDraftSavedAt() { return lastDraftSavedAt; } + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional lastDraftSavedBy() { + return (Optional) lastDraftSavedBy; + } + + /** + * ID of the VCS user (e.g. GitHub username) who last saved the draft. Set only by the draft save path + * via the external Git integration API. + */ + @JsonIgnore + public Optional lastDraftGitAuthorId() { + return lastDraftGitAuthorId; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional lastUpdatedBy() { @@ -254,6 +289,40 @@ public Workflow withLastDraftSavedAt(Optional lastDraftSavedAt) { return this; } + public Workflow withLastDraftSavedBy(Person lastDraftSavedBy) { + Utils.checkNotNull(lastDraftSavedBy, "lastDraftSavedBy"); + this.lastDraftSavedBy = Optional.ofNullable(lastDraftSavedBy); + return this; + } + + + public Workflow withLastDraftSavedBy(Optional lastDraftSavedBy) { + Utils.checkNotNull(lastDraftSavedBy, "lastDraftSavedBy"); + this.lastDraftSavedBy = lastDraftSavedBy; + return this; + } + + /** + * ID of the VCS user (e.g. GitHub username) who last saved the draft. Set only by the draft save path + * via the external Git integration API. + */ + public Workflow withLastDraftGitAuthorId(String lastDraftGitAuthorId) { + Utils.checkNotNull(lastDraftGitAuthorId, "lastDraftGitAuthorId"); + this.lastDraftGitAuthorId = Optional.ofNullable(lastDraftGitAuthorId); + return this; + } + + + /** + * ID of the VCS user (e.g. GitHub username) who last saved the draft. Set only by the draft save path + * via the external Git integration API. + */ + public Workflow withLastDraftGitAuthorId(Optional lastDraftGitAuthorId) { + Utils.checkNotNull(lastDraftGitAuthorId, "lastDraftGitAuthorId"); + this.lastDraftGitAuthorId = lastDraftGitAuthorId; + return this; + } + public Workflow withLastUpdatedBy(Person lastUpdatedBy) { Utils.checkNotNull(lastUpdatedBy, "lastUpdatedBy"); this.lastUpdatedBy = Optional.ofNullable(lastUpdatedBy); @@ -314,6 +383,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.createTimestamp, other.createTimestamp) && Utils.enhancedDeepEquals(this.lastUpdateTimestamp, other.lastUpdateTimestamp) && Utils.enhancedDeepEquals(this.lastDraftSavedAt, other.lastDraftSavedAt) && + Utils.enhancedDeepEquals(this.lastDraftSavedBy, other.lastDraftSavedBy) && + Utils.enhancedDeepEquals(this.lastDraftGitAuthorId, other.lastDraftGitAuthorId) && Utils.enhancedDeepEquals(this.lastUpdatedBy, other.lastUpdatedBy) && Utils.enhancedDeepEquals(this.permissions, other.permissions) && Utils.enhancedDeepEquals(this.id, other.id); @@ -323,8 +394,9 @@ public boolean equals(java.lang.Object o) { public int hashCode() { return Utils.enhancedHash( name, author, createTimestamp, - lastUpdateTimestamp, lastDraftSavedAt, lastUpdatedBy, - permissions, id); + lastUpdateTimestamp, lastDraftSavedAt, lastDraftSavedBy, + lastDraftGitAuthorId, lastUpdatedBy, permissions, + id); } @Override @@ -335,6 +407,8 @@ public String toString() { "createTimestamp", createTimestamp, "lastUpdateTimestamp", lastUpdateTimestamp, "lastDraftSavedAt", lastDraftSavedAt, + "lastDraftSavedBy", lastDraftSavedBy, + "lastDraftGitAuthorId", lastDraftGitAuthorId, "lastUpdatedBy", lastUpdatedBy, "permissions", permissions, "id", id); @@ -353,6 +427,10 @@ public final static class Builder { private Optional lastDraftSavedAt = Optional.empty(); + private Optional lastDraftSavedBy = Optional.empty(); + + private Optional lastDraftGitAuthorId = Optional.empty(); + private Optional lastUpdatedBy = Optional.empty(); private Optional permissions = Optional.empty(); @@ -453,6 +531,40 @@ public Builder lastDraftSavedAt(Optional lastDraftSavedAt) { } + public Builder lastDraftSavedBy(Person lastDraftSavedBy) { + Utils.checkNotNull(lastDraftSavedBy, "lastDraftSavedBy"); + this.lastDraftSavedBy = Optional.ofNullable(lastDraftSavedBy); + return this; + } + + public Builder lastDraftSavedBy(Optional lastDraftSavedBy) { + Utils.checkNotNull(lastDraftSavedBy, "lastDraftSavedBy"); + this.lastDraftSavedBy = lastDraftSavedBy; + return this; + } + + + /** + * ID of the VCS user (e.g. GitHub username) who last saved the draft. Set only by the draft save path + * via the external Git integration API. + */ + public Builder lastDraftGitAuthorId(String lastDraftGitAuthorId) { + Utils.checkNotNull(lastDraftGitAuthorId, "lastDraftGitAuthorId"); + this.lastDraftGitAuthorId = Optional.ofNullable(lastDraftGitAuthorId); + return this; + } + + /** + * ID of the VCS user (e.g. GitHub username) who last saved the draft. Set only by the draft save path + * via the external Git integration API. + */ + public Builder lastDraftGitAuthorId(Optional lastDraftGitAuthorId) { + Utils.checkNotNull(lastDraftGitAuthorId, "lastDraftGitAuthorId"); + this.lastDraftGitAuthorId = lastDraftGitAuthorId; + return this; + } + + public Builder lastUpdatedBy(Person lastUpdatedBy) { Utils.checkNotNull(lastUpdatedBy, "lastUpdatedBy"); this.lastUpdatedBy = Optional.ofNullable(lastUpdatedBy); @@ -501,8 +613,9 @@ public Workflow build() { return new Workflow( name, author, createTimestamp, - lastUpdateTimestamp, lastDraftSavedAt, lastUpdatedBy, - permissions, id); + lastUpdateTimestamp, lastDraftSavedAt, lastDraftSavedBy, + lastDraftGitAuthorId, lastUpdatedBy, permissions, + id); } } diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/errors/ErrorCode.java b/src/main/java/com/glean/api_client/glean_api_client/models/errors/ErrorCode.java index bbfff4a1..d41c9dd2 100644 --- a/src/main/java/com/glean/api_client/glean_api_client/models/errors/ErrorCode.java +++ b/src/main/java/com/glean/api_client/glean_api_client/models/errors/ErrorCode.java @@ -28,6 +28,7 @@ public class ErrorCode { public static final ErrorCode HEIGHT_VIOLATION = new ErrorCode("HEIGHT_VIOLATION"); public static final ErrorCode WIDTH_VIOLATION = new ErrorCode("WIDTH_VIOLATION"); public static final ErrorCode NO_PERMISSIONS = new ErrorCode("NO_PERMISSIONS"); + public static final ErrorCode CORRUPT_ITEM = new ErrorCode("CORRUPT_ITEM"); // This map will grow whenever a Color gets created with a new // unrecognized value (a potential memory leak if the user is not @@ -108,6 +109,7 @@ private static final Map createValuesMap() { map.put("HEIGHT_VIOLATION", HEIGHT_VIOLATION); map.put("WIDTH_VIOLATION", WIDTH_VIOLATION); map.put("NO_PERMISSIONS", NO_PERMISSIONS); + map.put("CORRUPT_ITEM", CORRUPT_ITEM); return map; } @@ -120,6 +122,7 @@ private static final Map createEnumsMap() { map.put("HEIGHT_VIOLATION", ErrorCodeEnum.HEIGHT_VIOLATION); map.put("WIDTH_VIOLATION", ErrorCodeEnum.WIDTH_VIOLATION); map.put("NO_PERMISSIONS", ErrorCodeEnum.NO_PERMISSIONS); + map.put("CORRUPT_ITEM", ErrorCodeEnum.CORRUPT_ITEM); return map; } @@ -132,7 +135,8 @@ public enum ErrorCodeEnum { CONCURRENT_HIERARCHY_EDIT("CONCURRENT_HIERARCHY_EDIT"), HEIGHT_VIOLATION("HEIGHT_VIOLATION"), WIDTH_VIOLATION("WIDTH_VIOLATION"), - NO_PERMISSIONS("NO_PERMISSIONS"),; + NO_PERMISSIONS("NO_PERMISSIONS"), + CORRUPT_ITEM("CORRUPT_ITEM"),; private final String value; diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequest.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequest.java new file mode 100644 index 00000000..9adcc4fa --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequest.java @@ -0,0 +1,102 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 54388988d5f7 + */ +package com.glean.api_client.glean_api_client.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.glean.api_client.glean_api_client.utils.SpeakeasyMetadata; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class GetDatasourceCredentialStatusRequest { + /** + * The full datasource instance identifier (e.g. o365sharepoint_abc123) + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=datasourceInstanceId") + private String datasourceInstanceId; + + @JsonCreator + public GetDatasourceCredentialStatusRequest( + String datasourceInstanceId) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + this.datasourceInstanceId = datasourceInstanceId; + } + + /** + * The full datasource instance identifier (e.g. o365sharepoint_abc123) + */ + @JsonIgnore + public String datasourceInstanceId() { + return datasourceInstanceId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The full datasource instance identifier (e.g. o365sharepoint_abc123) + */ + public GetDatasourceCredentialStatusRequest withDatasourceInstanceId(String datasourceInstanceId) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + this.datasourceInstanceId = datasourceInstanceId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetDatasourceCredentialStatusRequest other = (GetDatasourceCredentialStatusRequest) o; + return + Utils.enhancedDeepEquals(this.datasourceInstanceId, other.datasourceInstanceId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + datasourceInstanceId); + } + + @Override + public String toString() { + return Utils.toString(GetDatasourceCredentialStatusRequest.class, + "datasourceInstanceId", datasourceInstanceId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String datasourceInstanceId; + + private Builder() { + // force use of static builder() method + } + + + /** + * The full datasource instance identifier (e.g. o365sharepoint_abc123) + */ + public Builder datasourceInstanceId(String datasourceInstanceId) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + this.datasourceInstanceId = datasourceInstanceId; + return this; + } + + public GetDatasourceCredentialStatusRequest build() { + + return new GetDatasourceCredentialStatusRequest( + datasourceInstanceId); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequestBuilder.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequestBuilder.java new file mode 100644 index 00000000..9d74a8f3 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusRequestBuilder.java @@ -0,0 +1,47 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 72f7fb8e0956 + */ +package com.glean.api_client.glean_api_client.models.operations; + +import static com.glean.api_client.glean_api_client.operations.Operations.RequestOperation; + +import com.glean.api_client.glean_api_client.SDKConfiguration; +import com.glean.api_client.glean_api_client.operations.GetDatasourceCredentialStatus; +import com.glean.api_client.glean_api_client.utils.Headers; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.String; + +public class GetDatasourceCredentialStatusRequestBuilder { + + private String datasourceInstanceId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetDatasourceCredentialStatusRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetDatasourceCredentialStatusRequestBuilder datasourceInstanceId(String datasourceInstanceId) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + this.datasourceInstanceId = datasourceInstanceId; + return this; + } + + + private GetDatasourceCredentialStatusRequest buildRequest() { + + GetDatasourceCredentialStatusRequest request = new GetDatasourceCredentialStatusRequest(datasourceInstanceId); + + return request; + } + + public GetDatasourceCredentialStatusResponse call() { + + RequestOperation operation + = new GetDatasourceCredentialStatus.Sync(sdkConfiguration, _headers); + GetDatasourceCredentialStatusRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusResponse.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusResponse.java new file mode 100644 index 00000000..cc413136 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetDatasourceCredentialStatusResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 3a19b00e6bf5 + */ +package com.glean.api_client.glean_api_client.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.glean.api_client.glean_api_client.models.components.DatasourceCredentialStatusResponse; +import com.glean.api_client.glean_api_client.utils.Response; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetDatasourceCredentialStatusResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional datasourceCredentialStatusResponse; + + @JsonCreator + public GetDatasourceCredentialStatusResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + } + + public GetDatasourceCredentialStatusResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional datasourceCredentialStatusResponse() { + return (Optional) datasourceCredentialStatusResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetDatasourceCredentialStatusResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetDatasourceCredentialStatusResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetDatasourceCredentialStatusResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public GetDatasourceCredentialStatusResponse withDatasourceCredentialStatusResponse(DatasourceCredentialStatusResponse datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = Optional.ofNullable(datasourceCredentialStatusResponse); + return this; + } + + + /** + * OK + */ + public GetDatasourceCredentialStatusResponse withDatasourceCredentialStatusResponse(Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetDatasourceCredentialStatusResponse other = (GetDatasourceCredentialStatusResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.datasourceCredentialStatusResponse, other.datasourceCredentialStatusResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + datasourceCredentialStatusResponse); + } + + @Override + public String toString() { + return Utils.toString(GetDatasourceCredentialStatusResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "datasourceCredentialStatusResponse", datasourceCredentialStatusResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional datasourceCredentialStatusResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder datasourceCredentialStatusResponse(DatasourceCredentialStatusResponse datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = Optional.ofNullable(datasourceCredentialStatusResponse); + return this; + } + + /** + * OK + */ + public Builder datasourceCredentialStatusResponse(Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + return this; + } + + public GetDatasourceCredentialStatusResponse build() { + + return new GetDatasourceCredentialStatusResponse( + contentType, statusCode, rawResponse, + datasourceCredentialStatusResponse); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequest.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequest.java new file mode 100644 index 00000000..3c091990 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequest.java @@ -0,0 +1,179 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 09b36d9c5470 + */ +package com.glean.api_client.glean_api_client.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.glean.api_client.glean_api_client.utils.SpeakeasyMetadata; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class GetPersonPhotoRequest { + /** + * The obfuscated ID of the person whose photo to retrieve. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=person_id") + private String personId; + + /** + * Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the + * datasource is derived from the person's stored photo URL or the deployment's primary person + * datasource. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=ds") + private Optional ds; + + @JsonCreator + public GetPersonPhotoRequest( + String personId, + Optional ds) { + Utils.checkNotNull(personId, "personId"); + Utils.checkNotNull(ds, "ds"); + this.personId = personId; + this.ds = ds; + } + + public GetPersonPhotoRequest( + String personId) { + this(personId, Optional.empty()); + } + + /** + * The obfuscated ID of the person whose photo to retrieve. + */ + @JsonIgnore + public String personId() { + return personId; + } + + /** + * Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the + * datasource is derived from the person's stored photo URL or the deployment's primary person + * datasource. + */ + @JsonIgnore + public Optional ds() { + return ds; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The obfuscated ID of the person whose photo to retrieve. + */ + public GetPersonPhotoRequest withPersonId(String personId) { + Utils.checkNotNull(personId, "personId"); + this.personId = personId; + return this; + } + + /** + * Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the + * datasource is derived from the person's stored photo URL or the deployment's primary person + * datasource. + */ + public GetPersonPhotoRequest withDs(String ds) { + Utils.checkNotNull(ds, "ds"); + this.ds = Optional.ofNullable(ds); + return this; + } + + + /** + * Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the + * datasource is derived from the person's stored photo URL or the deployment's primary person + * datasource. + */ + public GetPersonPhotoRequest withDs(Optional ds) { + Utils.checkNotNull(ds, "ds"); + this.ds = ds; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetPersonPhotoRequest other = (GetPersonPhotoRequest) o; + return + Utils.enhancedDeepEquals(this.personId, other.personId) && + Utils.enhancedDeepEquals(this.ds, other.ds); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + personId, ds); + } + + @Override + public String toString() { + return Utils.toString(GetPersonPhotoRequest.class, + "personId", personId, + "ds", ds); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String personId; + + private Optional ds = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The obfuscated ID of the person whose photo to retrieve. + */ + public Builder personId(String personId) { + Utils.checkNotNull(personId, "personId"); + this.personId = personId; + return this; + } + + + /** + * Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the + * datasource is derived from the person's stored photo URL or the deployment's primary person + * datasource. + */ + public Builder ds(String ds) { + Utils.checkNotNull(ds, "ds"); + this.ds = Optional.ofNullable(ds); + return this; + } + + /** + * Optional datasource override for crawled photos (e.g. AZURE, GDRIVE, OKTA). When omitted, the + * datasource is derived from the person's stored photo URL or the deployment's primary person + * datasource. + */ + public Builder ds(Optional ds) { + Utils.checkNotNull(ds, "ds"); + this.ds = ds; + return this; + } + + public GetPersonPhotoRequest build() { + + return new GetPersonPhotoRequest( + personId, ds); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequestBuilder.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequestBuilder.java new file mode 100644 index 00000000..848d8951 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoRequestBuilder.java @@ -0,0 +1,62 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 7e879d5dffbe + */ +package com.glean.api_client.glean_api_client.models.operations; + +import static com.glean.api_client.glean_api_client.operations.Operations.RequestOperation; + +import com.glean.api_client.glean_api_client.SDKConfiguration; +import com.glean.api_client.glean_api_client.operations.GetPersonPhoto; +import com.glean.api_client.glean_api_client.utils.Headers; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetPersonPhotoRequestBuilder { + + private String personId; + private Optional ds = Optional.empty(); + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetPersonPhotoRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetPersonPhotoRequestBuilder personId(String personId) { + Utils.checkNotNull(personId, "personId"); + this.personId = personId; + return this; + } + + public GetPersonPhotoRequestBuilder ds(String ds) { + Utils.checkNotNull(ds, "ds"); + this.ds = Optional.of(ds); + return this; + } + + public GetPersonPhotoRequestBuilder ds(Optional ds) { + Utils.checkNotNull(ds, "ds"); + this.ds = ds; + return this; + } + + + private GetPersonPhotoRequest buildRequest() { + + GetPersonPhotoRequest request = new GetPersonPhotoRequest(personId, + ds); + + return request; + } + + public GetPersonPhotoResponse call() { + + RequestOperation operation + = new GetPersonPhoto.Sync(sdkConfiguration, _headers); + GetPersonPhotoRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoResponse.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoResponse.java new file mode 100644 index 00000000..5fa8111d --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/GetPersonPhotoResponse.java @@ -0,0 +1,344 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: a38cd0a76d92 + */ +package com.glean.api_client.glean_api_client.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.glean.api_client.glean_api_client.utils.Response; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Map; +import java.util.Optional; + + +public class GetPersonPhotoResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Photo bytes returned successfully. + */ + private Optional twoHundredImagePngResponseStream; + + /** + * Photo bytes returned successfully. + */ + private Optional twoHundredImageJpegResponseStream; + + + private Map> headers; + + @JsonCreator + public GetPersonPhotoResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional twoHundredImagePngResponseStream, + Optional twoHundredImageJpegResponseStream, + Map> headers) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + headers = Utils.emptyMapIfNull(headers); + Utils.checkNotNull(headers, "headers"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.twoHundredImagePngResponseStream = twoHundredImagePngResponseStream; + this.twoHundredImageJpegResponseStream = twoHundredImageJpegResponseStream; + this.headers = headers; + } + + public GetPersonPhotoResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Map> headers) { + this(contentType, statusCode, rawResponse, + Optional.empty(), Optional.empty(), headers); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Photo bytes returned successfully. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional twoHundredImagePngResponseStream() { + return (Optional) twoHundredImagePngResponseStream; + } + + /** + * Photo bytes returned successfully. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional twoHundredImageJpegResponseStream() { + return (Optional) twoHundredImageJpegResponseStream; + } + + @JsonIgnore + public Map> headers() { + return headers; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetPersonPhotoResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetPersonPhotoResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetPersonPhotoResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Photo bytes returned successfully. + */ + public GetPersonPhotoResponse withTwoHundredImagePngResponseStream(InputStream twoHundredImagePngResponseStream) { + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + this.twoHundredImagePngResponseStream = Optional.ofNullable(twoHundredImagePngResponseStream); + return this; + } + + + /** + * Photo bytes returned successfully. + */ + public GetPersonPhotoResponse withTwoHundredImagePngResponseStream(Optional twoHundredImagePngResponseStream) { + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + this.twoHundredImagePngResponseStream = twoHundredImagePngResponseStream; + return this; + } + + /** + * Photo bytes returned successfully. + */ + public GetPersonPhotoResponse withTwoHundredImageJpegResponseStream(InputStream twoHundredImageJpegResponseStream) { + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + this.twoHundredImageJpegResponseStream = Optional.ofNullable(twoHundredImageJpegResponseStream); + return this; + } + + + /** + * Photo bytes returned successfully. + */ + public GetPersonPhotoResponse withTwoHundredImageJpegResponseStream(Optional twoHundredImageJpegResponseStream) { + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + this.twoHundredImageJpegResponseStream = twoHundredImageJpegResponseStream; + return this; + } + + public GetPersonPhotoResponse withHeaders(Map> headers) { + Utils.checkNotNull(headers, "headers"); + this.headers = headers; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetPersonPhotoResponse other = (GetPersonPhotoResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.twoHundredImagePngResponseStream, other.twoHundredImagePngResponseStream) && + Utils.enhancedDeepEquals(this.twoHundredImageJpegResponseStream, other.twoHundredImageJpegResponseStream) && + Utils.enhancedDeepEquals(this.headers, other.headers); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + twoHundredImagePngResponseStream, twoHundredImageJpegResponseStream, headers); + } + + @Override + public String toString() { + return Utils.toString(GetPersonPhotoResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "twoHundredImagePngResponseStream", twoHundredImagePngResponseStream, + "twoHundredImageJpegResponseStream", twoHundredImageJpegResponseStream, + "headers", headers); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional twoHundredImagePngResponseStream = Optional.empty(); + + private Optional twoHundredImageJpegResponseStream = Optional.empty(); + + private Map> headers; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Photo bytes returned successfully. + */ + public Builder twoHundredImagePngResponseStream(InputStream twoHundredImagePngResponseStream) { + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + this.twoHundredImagePngResponseStream = Optional.ofNullable(twoHundredImagePngResponseStream); + return this; + } + + /** + * Photo bytes returned successfully. + */ + public Builder twoHundredImagePngResponseStream(Optional twoHundredImagePngResponseStream) { + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + this.twoHundredImagePngResponseStream = twoHundredImagePngResponseStream; + return this; + } + + + /** + * Photo bytes returned successfully. + */ + public Builder twoHundredImageJpegResponseStream(InputStream twoHundredImageJpegResponseStream) { + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + this.twoHundredImageJpegResponseStream = Optional.ofNullable(twoHundredImageJpegResponseStream); + return this; + } + + /** + * Photo bytes returned successfully. + */ + public Builder twoHundredImageJpegResponseStream(Optional twoHundredImageJpegResponseStream) { + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + this.twoHundredImageJpegResponseStream = twoHundredImageJpegResponseStream; + return this; + } + + + public Builder headers(Map> headers) { + Utils.checkNotNull(headers, "headers"); + this.headers = headers; + return this; + } + + public GetPersonPhotoResponse build() { + + return new GetPersonPhotoResponse( + contentType, statusCode, rawResponse, + twoHundredImagePngResponseStream, twoHundredImageJpegResponseStream, headers); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequest.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequest.java new file mode 100644 index 00000000..d3e4511c --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequest.java @@ -0,0 +1,131 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 745ebb281581 + */ +package com.glean.api_client.glean_api_client.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.glean.api_client.glean_api_client.utils.SpeakeasyMetadata; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class RotateDatasourceCredentialsRequest { + /** + * The full datasource instance identifier (e.g. o365sharepoint_abc123) + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=datasourceInstanceId") + private String datasourceInstanceId; + + + @SpeakeasyMetadata("request:mediaType=application/json") + private com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest; + + @JsonCreator + public RotateDatasourceCredentialsRequest( + String datasourceInstanceId, + com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + Utils.checkNotNull(rotateDatasourceCredentialsRequest, "rotateDatasourceCredentialsRequest"); + this.datasourceInstanceId = datasourceInstanceId; + this.rotateDatasourceCredentialsRequest = rotateDatasourceCredentialsRequest; + } + + /** + * The full datasource instance identifier (e.g. o365sharepoint_abc123) + */ + @JsonIgnore + public String datasourceInstanceId() { + return datasourceInstanceId; + } + + @JsonIgnore + public com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest() { + return rotateDatasourceCredentialsRequest; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The full datasource instance identifier (e.g. o365sharepoint_abc123) + */ + public RotateDatasourceCredentialsRequest withDatasourceInstanceId(String datasourceInstanceId) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + this.datasourceInstanceId = datasourceInstanceId; + return this; + } + + public RotateDatasourceCredentialsRequest withRotateDatasourceCredentialsRequest(com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest) { + Utils.checkNotNull(rotateDatasourceCredentialsRequest, "rotateDatasourceCredentialsRequest"); + this.rotateDatasourceCredentialsRequest = rotateDatasourceCredentialsRequest; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RotateDatasourceCredentialsRequest other = (RotateDatasourceCredentialsRequest) o; + return + Utils.enhancedDeepEquals(this.datasourceInstanceId, other.datasourceInstanceId) && + Utils.enhancedDeepEquals(this.rotateDatasourceCredentialsRequest, other.rotateDatasourceCredentialsRequest); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + datasourceInstanceId, rotateDatasourceCredentialsRequest); + } + + @Override + public String toString() { + return Utils.toString(RotateDatasourceCredentialsRequest.class, + "datasourceInstanceId", datasourceInstanceId, + "rotateDatasourceCredentialsRequest", rotateDatasourceCredentialsRequest); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String datasourceInstanceId; + + private com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest; + + private Builder() { + // force use of static builder() method + } + + + /** + * The full datasource instance identifier (e.g. o365sharepoint_abc123) + */ + public Builder datasourceInstanceId(String datasourceInstanceId) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + this.datasourceInstanceId = datasourceInstanceId; + return this; + } + + + public Builder rotateDatasourceCredentialsRequest(com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest) { + Utils.checkNotNull(rotateDatasourceCredentialsRequest, "rotateDatasourceCredentialsRequest"); + this.rotateDatasourceCredentialsRequest = rotateDatasourceCredentialsRequest; + return this; + } + + public RotateDatasourceCredentialsRequest build() { + + return new RotateDatasourceCredentialsRequest( + datasourceInstanceId, rotateDatasourceCredentialsRequest); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequestBuilder.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequestBuilder.java new file mode 100644 index 00000000..69e72adf --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsRequestBuilder.java @@ -0,0 +1,56 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 9b020cd5c52b + */ +package com.glean.api_client.glean_api_client.models.operations; + +import static com.glean.api_client.glean_api_client.operations.Operations.RequestOperation; + +import com.glean.api_client.glean_api_client.SDKConfiguration; +import com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest; +import com.glean.api_client.glean_api_client.operations.RotateDatasourceCredentials; +import com.glean.api_client.glean_api_client.utils.Headers; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.String; + +public class RotateDatasourceCredentialsRequestBuilder { + + private String datasourceInstanceId; + private RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public RotateDatasourceCredentialsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public RotateDatasourceCredentialsRequestBuilder datasourceInstanceId(String datasourceInstanceId) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + this.datasourceInstanceId = datasourceInstanceId; + return this; + } + + public RotateDatasourceCredentialsRequestBuilder rotateDatasourceCredentialsRequest(RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest) { + Utils.checkNotNull(rotateDatasourceCredentialsRequest, "rotateDatasourceCredentialsRequest"); + this.rotateDatasourceCredentialsRequest = rotateDatasourceCredentialsRequest; + return this; + } + + + private com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest buildRequest() { + + com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest request = new com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest(datasourceInstanceId, + rotateDatasourceCredentialsRequest); + + return request; + } + + public RotateDatasourceCredentialsResponse call() { + + RequestOperation operation + = new RotateDatasourceCredentials.Sync(sdkConfiguration, _headers); + com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsResponse.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsResponse.java new file mode 100644 index 00000000..d6686240 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/RotateDatasourceCredentialsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: c9cd40c8a35b + */ +package com.glean.api_client.glean_api_client.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.glean.api_client.glean_api_client.models.components.DatasourceCredentialStatusResponse; +import com.glean.api_client.glean_api_client.utils.Response; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class RotateDatasourceCredentialsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional datasourceCredentialStatusResponse; + + @JsonCreator + public RotateDatasourceCredentialsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + } + + public RotateDatasourceCredentialsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional datasourceCredentialStatusResponse() { + return (Optional) datasourceCredentialStatusResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public RotateDatasourceCredentialsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public RotateDatasourceCredentialsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public RotateDatasourceCredentialsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public RotateDatasourceCredentialsResponse withDatasourceCredentialStatusResponse(DatasourceCredentialStatusResponse datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = Optional.ofNullable(datasourceCredentialStatusResponse); + return this; + } + + + /** + * OK + */ + public RotateDatasourceCredentialsResponse withDatasourceCredentialStatusResponse(Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RotateDatasourceCredentialsResponse other = (RotateDatasourceCredentialsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.datasourceCredentialStatusResponse, other.datasourceCredentialStatusResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + datasourceCredentialStatusResponse); + } + + @Override + public String toString() { + return Utils.toString(RotateDatasourceCredentialsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "datasourceCredentialStatusResponse", datasourceCredentialStatusResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional datasourceCredentialStatusResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder datasourceCredentialStatusResponse(DatasourceCredentialStatusResponse datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = Optional.ofNullable(datasourceCredentialStatusResponse); + return this; + } + + /** + * OK + */ + public Builder datasourceCredentialStatusResponse(Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + return this; + } + + public RotateDatasourceCredentialsResponse build() { + + return new RotateDatasourceCredentialsResponse( + contentType, statusCode, rawResponse, + datasourceCredentialStatusResponse); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceCredentialStatusRequestBuilder.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceCredentialStatusRequestBuilder.java new file mode 100644 index 00000000..86330b8f --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceCredentialStatusRequestBuilder.java @@ -0,0 +1,50 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 9c7d9528a7b4 + */ +package com.glean.api_client.glean_api_client.models.operations.async; + +import static com.glean.api_client.glean_api_client.operations.Operations.AsyncRequestOperation; + +import com.glean.api_client.glean_api_client.SDKConfiguration; +import com.glean.api_client.glean_api_client.models.operations.GetDatasourceCredentialStatusRequest; +import com.glean.api_client.glean_api_client.operations.GetDatasourceCredentialStatus; +import com.glean.api_client.glean_api_client.utils.Headers; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.String; +import java.util.concurrent.CompletableFuture; + +public class GetDatasourceCredentialStatusRequestBuilder { + + private String datasourceInstanceId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetDatasourceCredentialStatusRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetDatasourceCredentialStatusRequestBuilder datasourceInstanceId(String datasourceInstanceId) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + this.datasourceInstanceId = datasourceInstanceId; + return this; + } + + + private GetDatasourceCredentialStatusRequest buildRequest() { + + GetDatasourceCredentialStatusRequest request = new GetDatasourceCredentialStatusRequest(datasourceInstanceId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetDatasourceCredentialStatus.Async(sdkConfiguration, _headers); + GetDatasourceCredentialStatusRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceCredentialStatusResponse.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceCredentialStatusResponse.java new file mode 100644 index 00000000..4e967b41 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetDatasourceCredentialStatusResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: f3e85a5d5b2b + */ +package com.glean.api_client.glean_api_client.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.glean.api_client.glean_api_client.models.components.DatasourceCredentialStatusResponse; +import com.glean.api_client.glean_api_client.utils.AsyncResponse; +import com.glean.api_client.glean_api_client.utils.Blob; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetDatasourceCredentialStatusResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional datasourceCredentialStatusResponse; + + @JsonCreator + public GetDatasourceCredentialStatusResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + } + + public GetDatasourceCredentialStatusResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional datasourceCredentialStatusResponse() { + return (Optional) datasourceCredentialStatusResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetDatasourceCredentialStatusResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetDatasourceCredentialStatusResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetDatasourceCredentialStatusResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public GetDatasourceCredentialStatusResponse withDatasourceCredentialStatusResponse(DatasourceCredentialStatusResponse datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = Optional.ofNullable(datasourceCredentialStatusResponse); + return this; + } + + + /** + * OK + */ + public GetDatasourceCredentialStatusResponse withDatasourceCredentialStatusResponse(Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetDatasourceCredentialStatusResponse other = (GetDatasourceCredentialStatusResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.datasourceCredentialStatusResponse, other.datasourceCredentialStatusResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + datasourceCredentialStatusResponse); + } + + @Override + public String toString() { + return Utils.toString(GetDatasourceCredentialStatusResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "datasourceCredentialStatusResponse", datasourceCredentialStatusResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional datasourceCredentialStatusResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder datasourceCredentialStatusResponse(DatasourceCredentialStatusResponse datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = Optional.ofNullable(datasourceCredentialStatusResponse); + return this; + } + + /** + * OK + */ + public Builder datasourceCredentialStatusResponse(Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + return this; + } + + public GetDatasourceCredentialStatusResponse build() { + + return new GetDatasourceCredentialStatusResponse( + contentType, statusCode, rawResponse, + datasourceCredentialStatusResponse); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetPersonPhotoRequestBuilder.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetPersonPhotoRequestBuilder.java new file mode 100644 index 00000000..441a6aae --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetPersonPhotoRequestBuilder.java @@ -0,0 +1,65 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: fcdcb06f045b + */ +package com.glean.api_client.glean_api_client.models.operations.async; + +import static com.glean.api_client.glean_api_client.operations.Operations.AsyncRequestOperation; + +import com.glean.api_client.glean_api_client.SDKConfiguration; +import com.glean.api_client.glean_api_client.models.operations.GetPersonPhotoRequest; +import com.glean.api_client.glean_api_client.operations.GetPersonPhoto; +import com.glean.api_client.glean_api_client.utils.Headers; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetPersonPhotoRequestBuilder { + + private String personId; + private Optional ds = Optional.empty(); + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetPersonPhotoRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetPersonPhotoRequestBuilder personId(String personId) { + Utils.checkNotNull(personId, "personId"); + this.personId = personId; + return this; + } + + public GetPersonPhotoRequestBuilder ds(String ds) { + Utils.checkNotNull(ds, "ds"); + this.ds = Optional.of(ds); + return this; + } + + public GetPersonPhotoRequestBuilder ds(Optional ds) { + Utils.checkNotNull(ds, "ds"); + this.ds = ds; + return this; + } + + + private GetPersonPhotoRequest buildRequest() { + + GetPersonPhotoRequest request = new GetPersonPhotoRequest(personId, + ds); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetPersonPhoto.Async(sdkConfiguration, _headers); + GetPersonPhotoRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetPersonPhotoResponse.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetPersonPhotoResponse.java new file mode 100644 index 00000000..75fa920a --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/GetPersonPhotoResponse.java @@ -0,0 +1,344 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 5edea3e97a40 + */ +package com.glean.api_client.glean_api_client.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.glean.api_client.glean_api_client.utils.AsyncResponse; +import com.glean.api_client.glean_api_client.utils.Blob; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Map; +import java.util.Optional; + + +public class GetPersonPhotoResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Photo bytes returned successfully. + */ + private Optional twoHundredImagePngResponseStream; + + /** + * Photo bytes returned successfully. + */ + private Optional twoHundredImageJpegResponseStream; + + + private Map> headers; + + @JsonCreator + public GetPersonPhotoResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional twoHundredImagePngResponseStream, + Optional twoHundredImageJpegResponseStream, + Map> headers) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + headers = Utils.emptyMapIfNull(headers); + Utils.checkNotNull(headers, "headers"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.twoHundredImagePngResponseStream = twoHundredImagePngResponseStream; + this.twoHundredImageJpegResponseStream = twoHundredImageJpegResponseStream; + this.headers = headers; + } + + public GetPersonPhotoResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Map> headers) { + this(contentType, statusCode, rawResponse, + Optional.empty(), Optional.empty(), headers); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Photo bytes returned successfully. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional twoHundredImagePngResponseStream() { + return (Optional) twoHundredImagePngResponseStream; + } + + /** + * Photo bytes returned successfully. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional twoHundredImageJpegResponseStream() { + return (Optional) twoHundredImageJpegResponseStream; + } + + @JsonIgnore + public Map> headers() { + return headers; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetPersonPhotoResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetPersonPhotoResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetPersonPhotoResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Photo bytes returned successfully. + */ + public GetPersonPhotoResponse withTwoHundredImagePngResponseStream(Blob twoHundredImagePngResponseStream) { + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + this.twoHundredImagePngResponseStream = Optional.ofNullable(twoHundredImagePngResponseStream); + return this; + } + + + /** + * Photo bytes returned successfully. + */ + public GetPersonPhotoResponse withTwoHundredImagePngResponseStream(Optional twoHundredImagePngResponseStream) { + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + this.twoHundredImagePngResponseStream = twoHundredImagePngResponseStream; + return this; + } + + /** + * Photo bytes returned successfully. + */ + public GetPersonPhotoResponse withTwoHundredImageJpegResponseStream(Blob twoHundredImageJpegResponseStream) { + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + this.twoHundredImageJpegResponseStream = Optional.ofNullable(twoHundredImageJpegResponseStream); + return this; + } + + + /** + * Photo bytes returned successfully. + */ + public GetPersonPhotoResponse withTwoHundredImageJpegResponseStream(Optional twoHundredImageJpegResponseStream) { + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + this.twoHundredImageJpegResponseStream = twoHundredImageJpegResponseStream; + return this; + } + + public GetPersonPhotoResponse withHeaders(Map> headers) { + Utils.checkNotNull(headers, "headers"); + this.headers = headers; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetPersonPhotoResponse other = (GetPersonPhotoResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.twoHundredImagePngResponseStream, other.twoHundredImagePngResponseStream) && + Utils.enhancedDeepEquals(this.twoHundredImageJpegResponseStream, other.twoHundredImageJpegResponseStream) && + Utils.enhancedDeepEquals(this.headers, other.headers); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + twoHundredImagePngResponseStream, twoHundredImageJpegResponseStream, headers); + } + + @Override + public String toString() { + return Utils.toString(GetPersonPhotoResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "twoHundredImagePngResponseStream", twoHundredImagePngResponseStream, + "twoHundredImageJpegResponseStream", twoHundredImageJpegResponseStream, + "headers", headers); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional twoHundredImagePngResponseStream = Optional.empty(); + + private Optional twoHundredImageJpegResponseStream = Optional.empty(); + + private Map> headers; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Photo bytes returned successfully. + */ + public Builder twoHundredImagePngResponseStream(Blob twoHundredImagePngResponseStream) { + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + this.twoHundredImagePngResponseStream = Optional.ofNullable(twoHundredImagePngResponseStream); + return this; + } + + /** + * Photo bytes returned successfully. + */ + public Builder twoHundredImagePngResponseStream(Optional twoHundredImagePngResponseStream) { + Utils.checkNotNull(twoHundredImagePngResponseStream, "twoHundredImagePngResponseStream"); + this.twoHundredImagePngResponseStream = twoHundredImagePngResponseStream; + return this; + } + + + /** + * Photo bytes returned successfully. + */ + public Builder twoHundredImageJpegResponseStream(Blob twoHundredImageJpegResponseStream) { + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + this.twoHundredImageJpegResponseStream = Optional.ofNullable(twoHundredImageJpegResponseStream); + return this; + } + + /** + * Photo bytes returned successfully. + */ + public Builder twoHundredImageJpegResponseStream(Optional twoHundredImageJpegResponseStream) { + Utils.checkNotNull(twoHundredImageJpegResponseStream, "twoHundredImageJpegResponseStream"); + this.twoHundredImageJpegResponseStream = twoHundredImageJpegResponseStream; + return this; + } + + + public Builder headers(Map> headers) { + Utils.checkNotNull(headers, "headers"); + this.headers = headers; + return this; + } + + public GetPersonPhotoResponse build() { + + return new GetPersonPhotoResponse( + contentType, statusCode, rawResponse, + twoHundredImagePngResponseStream, twoHundredImageJpegResponseStream, headers); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/RotateDatasourceCredentialsRequestBuilder.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/RotateDatasourceCredentialsRequestBuilder.java new file mode 100644 index 00000000..e4c61236 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/RotateDatasourceCredentialsRequestBuilder.java @@ -0,0 +1,58 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 5e8509595826 + */ +package com.glean.api_client.glean_api_client.models.operations.async; + +import static com.glean.api_client.glean_api_client.operations.Operations.AsyncRequestOperation; + +import com.glean.api_client.glean_api_client.SDKConfiguration; +import com.glean.api_client.glean_api_client.models.components.RotateDatasourceCredentialsRequest; +import com.glean.api_client.glean_api_client.operations.RotateDatasourceCredentials; +import com.glean.api_client.glean_api_client.utils.Headers; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.String; +import java.util.concurrent.CompletableFuture; + +public class RotateDatasourceCredentialsRequestBuilder { + + private String datasourceInstanceId; + private RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public RotateDatasourceCredentialsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public RotateDatasourceCredentialsRequestBuilder datasourceInstanceId(String datasourceInstanceId) { + Utils.checkNotNull(datasourceInstanceId, "datasourceInstanceId"); + this.datasourceInstanceId = datasourceInstanceId; + return this; + } + + public RotateDatasourceCredentialsRequestBuilder rotateDatasourceCredentialsRequest(RotateDatasourceCredentialsRequest rotateDatasourceCredentialsRequest) { + Utils.checkNotNull(rotateDatasourceCredentialsRequest, "rotateDatasourceCredentialsRequest"); + this.rotateDatasourceCredentialsRequest = rotateDatasourceCredentialsRequest; + return this; + } + + + private com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest buildRequest() { + + com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest request = new com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest(datasourceInstanceId, + rotateDatasourceCredentialsRequest); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new RotateDatasourceCredentials.Async(sdkConfiguration, _headers); + com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/RotateDatasourceCredentialsResponse.java b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/RotateDatasourceCredentialsResponse.java new file mode 100644 index 00000000..700a8969 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/models/operations/async/RotateDatasourceCredentialsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 572c78332148 + */ +package com.glean.api_client.glean_api_client.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.glean.api_client.glean_api_client.models.components.DatasourceCredentialStatusResponse; +import com.glean.api_client.glean_api_client.utils.AsyncResponse; +import com.glean.api_client.glean_api_client.utils.Blob; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class RotateDatasourceCredentialsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional datasourceCredentialStatusResponse; + + @JsonCreator + public RotateDatasourceCredentialsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + } + + public RotateDatasourceCredentialsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional datasourceCredentialStatusResponse() { + return (Optional) datasourceCredentialStatusResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public RotateDatasourceCredentialsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public RotateDatasourceCredentialsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public RotateDatasourceCredentialsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public RotateDatasourceCredentialsResponse withDatasourceCredentialStatusResponse(DatasourceCredentialStatusResponse datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = Optional.ofNullable(datasourceCredentialStatusResponse); + return this; + } + + + /** + * OK + */ + public RotateDatasourceCredentialsResponse withDatasourceCredentialStatusResponse(Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + RotateDatasourceCredentialsResponse other = (RotateDatasourceCredentialsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.datasourceCredentialStatusResponse, other.datasourceCredentialStatusResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + datasourceCredentialStatusResponse); + } + + @Override + public String toString() { + return Utils.toString(RotateDatasourceCredentialsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "datasourceCredentialStatusResponse", datasourceCredentialStatusResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional datasourceCredentialStatusResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder datasourceCredentialStatusResponse(DatasourceCredentialStatusResponse datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = Optional.ofNullable(datasourceCredentialStatusResponse); + return this; + } + + /** + * OK + */ + public Builder datasourceCredentialStatusResponse(Optional datasourceCredentialStatusResponse) { + Utils.checkNotNull(datasourceCredentialStatusResponse, "datasourceCredentialStatusResponse"); + this.datasourceCredentialStatusResponse = datasourceCredentialStatusResponse; + return this; + } + + public RotateDatasourceCredentialsResponse build() { + + return new RotateDatasourceCredentialsResponse( + contentType, statusCode, rawResponse, + datasourceCredentialStatusResponse); + } + + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/operations/GetDatasourceCredentialStatus.java b/src/main/java/com/glean/api_client/glean_api_client/operations/GetDatasourceCredentialStatus.java new file mode 100644 index 00000000..a9b1049e --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/operations/GetDatasourceCredentialStatus.java @@ -0,0 +1,262 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 03caec3de5f5 + */ +package com.glean.api_client.glean_api_client.operations; + +import static com.glean.api_client.glean_api_client.operations.Operations.RequestOperation; +import static com.glean.api_client.glean_api_client.utils.Exceptions.unchecked; +import static com.glean.api_client.glean_api_client.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.glean.api_client.glean_api_client.SDKConfiguration; +import com.glean.api_client.glean_api_client.SecuritySource; +import com.glean.api_client.glean_api_client.models.components.DatasourceCredentialStatusResponse; +import com.glean.api_client.glean_api_client.models.errors.APIException; +import com.glean.api_client.glean_api_client.models.errors.ErrorResponse; +import com.glean.api_client.glean_api_client.models.operations.GetDatasourceCredentialStatusRequest; +import com.glean.api_client.glean_api_client.models.operations.GetDatasourceCredentialStatusResponse; +import com.glean.api_client.glean_api_client.utils.Blob; +import com.glean.api_client.glean_api_client.utils.HTTPClient; +import com.glean.api_client.glean_api_client.utils.HTTPRequest; +import com.glean.api_client.glean_api_client.utils.Headers; +import com.glean.api_client.glean_api_client.utils.Hook.AfterErrorContextImpl; +import com.glean.api_client.glean_api_client.utils.Hook.AfterSuccessContextImpl; +import com.glean.api_client.glean_api_client.utils.Hook.BeforeRequestContextImpl; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetDatasourceCredentialStatus { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = Utils.templateUrl( + this.sdkConfiguration.serverUrl(), this.sdkConfiguration.getServerVariableDefaults()); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "getDatasourceCredentialStatus", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "getDatasourceCredentialStatus", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "getDatasourceCredentialStatus", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/rest/api/v1/datasource/{datasourceInstanceId}/credentialstatus", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity()); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetDatasourceCredentialStatusRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetDatasourceCredentialStatusRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetDatasourceCredentialStatusRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetDatasourceCredentialStatusResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetDatasourceCredentialStatusResponse.Builder resBuilder = + GetDatasourceCredentialStatusResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetDatasourceCredentialStatusResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withDatasourceCredentialStatusResponse(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "400", "403", "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw ErrorResponse.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "401", "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetDatasourceCredentialStatusRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetDatasourceCredentialStatusRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetDatasourceCredentialStatusRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.glean.api_client.glean_api_client.models.operations.async.GetDatasourceCredentialStatusResponse.Builder resBuilder = + com.glean.api_client.glean_api_client.models.operations.async.GetDatasourceCredentialStatusResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.glean.api_client.glean_api_client.models.operations.async.GetDatasourceCredentialStatusResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withDatasourceCredentialStatusResponse); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "400", "403", "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return ErrorResponse.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "401", "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/operations/GetPersonPhoto.java b/src/main/java/com/glean/api_client/glean_api_client/operations/GetPersonPhoto.java new file mode 100644 index 00000000..1f9d8756 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/operations/GetPersonPhoto.java @@ -0,0 +1,266 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: 5d8e90bc9bec + */ +package com.glean.api_client.glean_api_client.operations; + +import static com.glean.api_client.glean_api_client.operations.Operations.RequestOperation; +import static com.glean.api_client.glean_api_client.utils.Exceptions.unchecked; +import static com.glean.api_client.glean_api_client.operations.Operations.AsyncRequestOperation; + +import com.glean.api_client.glean_api_client.SDKConfiguration; +import com.glean.api_client.glean_api_client.SecuritySource; +import com.glean.api_client.glean_api_client.models.errors.APIException; +import com.glean.api_client.glean_api_client.models.operations.GetPersonPhotoRequest; +import com.glean.api_client.glean_api_client.models.operations.GetPersonPhotoResponse; +import com.glean.api_client.glean_api_client.utils.Blob; +import com.glean.api_client.glean_api_client.utils.HTTPClient; +import com.glean.api_client.glean_api_client.utils.HTTPRequest; +import com.glean.api_client.glean_api_client.utils.Headers; +import com.glean.api_client.glean_api_client.utils.Hook.AfterErrorContextImpl; +import com.glean.api_client.glean_api_client.utils.Hook.AfterSuccessContextImpl; +import com.glean.api_client.glean_api_client.utils.Hook.BeforeRequestContextImpl; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetPersonPhoto { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = Utils.templateUrl( + this.sdkConfiguration.serverUrl(), this.sdkConfiguration.getServerVariableDefaults()); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "getPersonPhoto", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "getPersonPhoto", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "getPersonPhoto", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/rest/api/v1/people/{person_id}/photo", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "image/jpeg;q=1, image/png;q=0") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity()); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetPersonPhotoRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetPersonPhotoRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetPersonPhotoRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetPersonPhotoResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetPersonPhotoResponse.Builder resBuilder = + GetPersonPhotoResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + if (Utils.statusCodeMatches(response.statusCode(), "200") && Utils.contentTypeMatches(contentType, "image/png")) { + resBuilder.twoHundredImagePngResponseStream(response.body()); + } + if (Utils.statusCodeMatches(response.statusCode(), "200") && Utils.contentTypeMatches(contentType, "image/jpeg")) { + resBuilder.twoHundredImageJpegResponseStream(response.body()); + } + + GetPersonPhotoResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + res.withHeaders(response.headers().map()); + if (Utils.contentTypeMatches(contentType, "image/png")) { + return res; + } else if (Utils.contentTypeMatches(contentType, "image/jpeg")) { + return res; + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "400", "401", "404", "429", "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetPersonPhotoRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetPersonPhotoRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetPersonPhotoRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.glean.api_client.glean_api_client.models.operations.async.GetPersonPhotoResponse.Builder resBuilder = + com.glean.api_client.glean_api_client.models.operations.async.GetPersonPhotoResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + if (Utils.statusCodeMatches(response.statusCode(), "200") && Utils.contentTypeMatches(contentType, "image/png")) { + resBuilder.twoHundredImagePngResponseStream(response.body()); + } + if (Utils.statusCodeMatches(response.statusCode(), "200") && Utils.contentTypeMatches(contentType, "image/jpeg")) { + resBuilder.twoHundredImageJpegResponseStream(response.body()); + } + + com.glean.api_client.glean_api_client.models.operations.async.GetPersonPhotoResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + res.withHeaders(response.headers().map()); + if (Utils.contentTypeMatches(contentType, "image/png")) { + return CompletableFuture.completedFuture(res); + } else if (Utils.contentTypeMatches(contentType, "image/jpeg")) { + return CompletableFuture.completedFuture(res); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "400", "401", "404", "429", "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/src/main/java/com/glean/api_client/glean_api_client/operations/RotateDatasourceCredentials.java b/src/main/java/com/glean/api_client/glean_api_client/operations/RotateDatasourceCredentials.java new file mode 100644 index 00000000..e5743dc2 --- /dev/null +++ b/src/main/java/com/glean/api_client/glean_api_client/operations/RotateDatasourceCredentials.java @@ -0,0 +1,279 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + * @generated-id: dcb749627166 + */ +package com.glean.api_client.glean_api_client.operations; + +import static com.glean.api_client.glean_api_client.operations.Operations.RequestOperation; +import static com.glean.api_client.glean_api_client.utils.Exceptions.unchecked; +import static com.glean.api_client.glean_api_client.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.glean.api_client.glean_api_client.SDKConfiguration; +import com.glean.api_client.glean_api_client.SecuritySource; +import com.glean.api_client.glean_api_client.models.components.DatasourceCredentialStatusResponse; +import com.glean.api_client.glean_api_client.models.errors.APIException; +import com.glean.api_client.glean_api_client.models.errors.ErrorResponse; +import com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsRequest; +import com.glean.api_client.glean_api_client.models.operations.RotateDatasourceCredentialsResponse; +import com.glean.api_client.glean_api_client.utils.Blob; +import com.glean.api_client.glean_api_client.utils.HTTPClient; +import com.glean.api_client.glean_api_client.utils.HTTPRequest; +import com.glean.api_client.glean_api_client.utils.Headers; +import com.glean.api_client.glean_api_client.utils.Hook.AfterErrorContextImpl; +import com.glean.api_client.glean_api_client.utils.Hook.AfterSuccessContextImpl; +import com.glean.api_client.glean_api_client.utils.Hook.BeforeRequestContextImpl; +import com.glean.api_client.glean_api_client.utils.SerializedBody; +import com.glean.api_client.glean_api_client.utils.Utils.JsonShape; +import com.glean.api_client.glean_api_client.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.IllegalArgumentException; +import java.lang.Object; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class RotateDatasourceCredentials { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = Utils.templateUrl( + this.sdkConfiguration.serverUrl(), this.sdkConfiguration.getServerVariableDefaults()); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "rotateDatasourceCredentials", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "rotateDatasourceCredentials", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "rotateDatasourceCredentials", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass, TypeReference typeReference) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/rest/api/v1/datasource/{datasourceInstanceId}/credentials", + request, null); + HTTPRequest req = new HTTPRequest(url, "POST"); + Object convertedRequest = Utils.convertToShape( + request, + JsonShape.DEFAULT, + typeReference); + SerializedBody serializedRequestBody = Utils.serializeRequestBody( + convertedRequest, + "rotateDatasourceCredentialsRequest", + "json", + false); + if (serializedRequestBody == null) { + throw new IllegalArgumentException("Request body is required"); + } + req.setBody(Optional.ofNullable(serializedRequestBody)); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity()); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(RotateDatasourceCredentialsRequest request) throws Exception { + HttpRequest req = buildRequest(request, RotateDatasourceCredentialsRequest.class, new TypeReference() {}); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(RotateDatasourceCredentialsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public RotateDatasourceCredentialsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + RotateDatasourceCredentialsResponse.Builder resBuilder = + RotateDatasourceCredentialsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + RotateDatasourceCredentialsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withDatasourceCredentialStatusResponse(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "400", "403", "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw ErrorResponse.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "401", "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(RotateDatasourceCredentialsRequest request) throws Exception { + HttpRequest req = buildRequest(request, RotateDatasourceCredentialsRequest.class, new TypeReference() {}); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(RotateDatasourceCredentialsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.glean.api_client.glean_api_client.models.operations.async.RotateDatasourceCredentialsResponse.Builder resBuilder = + com.glean.api_client.glean_api_client.models.operations.async.RotateDatasourceCredentialsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.glean.api_client.glean_api_client.models.operations.async.RotateDatasourceCredentialsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withDatasourceCredentialStatusResponse); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "400", "403", "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return ErrorResponse.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "401", "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} From 0e35a20ccb7b72e5266c2698cb1ff4455faa913a Mon Sep 17 00:00:00 2001 From: "speakeasy-github[bot]" <128539517+speakeasy-github[bot]@users.noreply.github.com> Date: Wed, 6 May 2026 03:55:02 +0000 Subject: [PATCH 2/2] empty commit to trigger [run-tests] workflow