@neon/tools 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,6 @@
1
- import { zAcceptProjectTransferRequestBody, zAcceptProjectTransferRequestPath, zAddBranchNeonAuthOauthProviderBody, zAddBranchNeonAuthOauthProviderPath, zAddBranchNeonAuthTrustedDomainBody, zAddBranchNeonAuthTrustedDomainPath, zAddNeonAuthDomainToRedirectUriWhitelistBody, zAddNeonAuthDomainToRedirectUriWhitelistPath, zAddNeonAuthOauthProviderBody, zAddNeonAuthOauthProviderPath, zAddProjectJwksBody, zAddProjectJwksPath, zAssignOrganizationVpcEndpointBody, zAssignOrganizationVpcEndpointPath, zAssignProjectVpcEndpointBody, zAssignProjectVpcEndpointPath, zCountProjectBranchesPath, zCountProjectBranchesQuery, zCreateApiKeyBody, zCreateBranchNeonAuthNewUserBody, zCreateBranchNeonAuthNewUserPath, zCreateCredentialBody, zCreateCredentialPath, zCreateNeonAuthBody, zCreateNeonAuthIntegrationBody, zCreateNeonAuthNewUserBody, zCreateNeonAuthPath, zCreateNeonAuthProviderSdkKeysBody, zCreateOrgApiKeyBody, zCreateOrgApiKeyPath, zCreateOrganizationInvitationsBody, zCreateOrganizationInvitationsPath, zCreateProjectBody, zCreateProjectBranchAnonymizedBody, zCreateProjectBranchAnonymizedPath, zCreateProjectBranchBody, zCreateProjectBranchBucketBody, zCreateProjectBranchBucketPath, zCreateProjectBranchDataApiBody, zCreateProjectBranchDataApiPath, zCreateProjectBranchDatabaseBody, zCreateProjectBranchDatabasePath, zCreateProjectBranchFunctionDeploymentBody, zCreateProjectBranchFunctionDeploymentPath, zCreateProjectBranchPath, zCreateProjectBranchRoleBody, zCreateProjectBranchRolePath, zCreateProjectEndpointBody, zCreateProjectEndpointPath, zCreateProjectTransferRequestBody, zCreateProjectTransferRequestPath, zCreateSnapshotPath, zCreateSnapshotQuery, zDeleteBranchNeonAuthOauthProviderPath, zDeleteBranchNeonAuthTrustedDomainBody, zDeleteBranchNeonAuthTrustedDomainPath, zDeleteBranchNeonAuthUserPath, zDeleteNeonAuthDomainFromRedirectUriWhitelistBody, zDeleteNeonAuthDomainFromRedirectUriWhitelistPath, zDeleteNeonAuthIntegrationBody, zDeleteNeonAuthIntegrationPath, zDeleteNeonAuthOauthProviderPath, zDeleteNeonAuthUserPath, zDeleteOrganizationSpendingLimitPath, zDeleteOrganizationVpcEndpointPath, zDeleteProjectBranchBucketObjectPath, zDeleteProjectBranchBucketObjectsByPrefixPath, zDeleteProjectBranchBucketObjectsByPrefixQuery, zDeleteProjectBranchBucketPath, zDeleteProjectBranchDataApiPath, zDeleteProjectBranchDatabasePath, zDeleteProjectBranchFunctionPath, zDeleteProjectBranchPath, zDeleteProjectBranchQuery, zDeleteProjectBranchRolePath, zDeleteProjectEndpointPath, zDeleteProjectJwksPath, zDeleteProjectPath, zDeleteProjectVpcEndpointPath, zDeleteSnapshotPath, zDisableNeonAuthBody, zDisableNeonAuthPath, zFinalizeRestoreBranchBody, zFinalizeRestoreBranchPath, zGetActiveRegionsQuery, zGetAnonymizedBranchStatusPath, zGetAvailablePreloadLibrariesPath, zGetConnectionUriPath, zGetConnectionUriQuery, zGetConsumptionHistoryPerBranchV2Query, zGetConsumptionHistoryPerProjectQuery, zGetConsumptionHistoryPerProjectV2Query, zGetMaskingRulesPath, zGetNeonAuthAllowLocalhostPath, zGetNeonAuthEmailAndPasswordConfigPath, zGetNeonAuthEmailProviderPath, zGetNeonAuthEmailServerPath, zGetNeonAuthPath, zGetNeonAuthPhoneNumberPluginPath, zGetNeonAuthPluginConfigsPath, zGetNeonAuthWebhookConfigPath, zGetOrganizationInvitationsPath, zGetOrganizationMemberPath, zGetOrganizationMembersPath, zGetOrganizationMembersQuery, zGetOrganizationPath, zGetOrganizationSpendingLimitPath, zGetOrganizationVpcEndpointDetailsPath, zGetProjectAdvisorSecurityIssuesPath, zGetProjectAdvisorSecurityIssuesQuery, zGetProjectBranchAiGatewayPath, zGetProjectBranchBucketObjectPath, zGetProjectBranchDataApiPath, zGetProjectBranchDatabasePath, zGetProjectBranchFunctionPath, zGetProjectBranchPath, zGetProjectBranchRolePasswordPath, zGetProjectBranchRolePath, zGetProjectBranchSchemaComparisonPath, zGetProjectBranchSchemaComparisonQuery, zGetProjectBranchSchemaPath, zGetProjectBranchSchemaQuery, zGetProjectBranchStoragePath, zGetProjectEndpointPath, zGetProjectJwksPath, zGetProjectOperationPath, zGetProjectPath, zGetSnapshotSchedulePath, zGrantPermissionToProjectBody, zGrantPermissionToProjectPath, zListBranchNeonAuthOauthProvidersPath, zListBranchNeonAuthTrustedDomainsPath, zListCredentialsPath, zListNeonAuthIntegrationsPath, zListNeonAuthOauthProvidersPath, zListNeonAuthRedirectUriWhitelistDomainsPath, zListOrgApiKeysPath, zListOrganizationVpcEndpointsAllRegionsPath, zListOrganizationVpcEndpointsPath, zListProjectBranchBucketObjectsPath, zListProjectBranchBucketObjectsQuery, zListProjectBranchBucketsPath, zListProjectBranchDatabasesPath, zListProjectBranchEndpointsPath, zListProjectBranchFunctionsPath, zListProjectBranchFunctionsQuery, zListProjectBranchLogFieldValuesPath, zListProjectBranchLogFieldValuesQuery, zListProjectBranchLogFieldsPath, zListProjectBranchRolesPath, zListProjectBranchesPath, zListProjectBranchesQuery, zListProjectEndpointsPath, zListProjectMembersPath, zListProjectMembersQuery, zListProjectOperationsPath, zListProjectOperationsQuery, zListProjectPermissionsPath, zListProjectVpcEndpointsPath, zListProjectsQuery, zListSharedProjectsQuery, zListSnapshotsPath, zPresignProjectBranchBucketObjectBody, zPresignProjectBranchBucketObjectPath, zQueryProjectBranchLogsBody, zQueryProjectBranchLogsPath, zRecoverProjectPath, zRemoveOrganizationMemberPath, zRemoveProjectMemberRolePath, zRemoveProjectMemberRoleQuery, zResetProjectBranchRolePasswordPath, zRestartProjectEndpointPath, zRestoreProjectBranchBody, zRestoreProjectBranchPath, zRestoreSnapshotBody, zRestoreSnapshotPath, zRestoreSnapshotQuery, zRevokeApiKeyPath, zRevokeCredentialPath, zRevokeOrgApiKeyPath, zRevokePermissionFromProjectPath, zSendNeonAuthTestEmailBody, zSendNeonAuthTestEmailPath, zSetDefaultProjectBranchPath, zSetOrganizationSpendingLimitBody, zSetOrganizationSpendingLimitPath, zSetProjectMemberRoleBody, zSetProjectMemberRolePath, zSetProjectMemberRoleQuery, zSetSnapshotScheduleBody, zSetSnapshotSchedulePath, zStartAnonymizationPath, zStartProjectEndpointPath, zSuspendProjectEndpointPath, zTransferNeonAuthProviderProjectBody, zTransferProjectsFromOrgToOrgBody, zTransferProjectsFromOrgToOrgPath, zTransferProjectsFromUserToOrgBody, zUpdateBranchNeonAuthOauthProviderBody, zUpdateBranchNeonAuthOauthProviderPath, zUpdateMaskingRulesBody, zUpdateMaskingRulesPath, zUpdateNeonAuthAllowLocalhostBody, zUpdateNeonAuthAllowLocalhostPath, zUpdateNeonAuthConfigBody, zUpdateNeonAuthConfigPath, zUpdateNeonAuthEmailAndPasswordConfigBody, zUpdateNeonAuthEmailAndPasswordConfigPath, zUpdateNeonAuthEmailProviderBody, zUpdateNeonAuthEmailProviderPath, zUpdateNeonAuthEmailServerBody, zUpdateNeonAuthEmailServerPath, zUpdateNeonAuthMagicLinkPluginBody, zUpdateNeonAuthMagicLinkPluginPath, zUpdateNeonAuthOauthProviderBody, zUpdateNeonAuthOauthProviderPath, zUpdateNeonAuthOrganizationPluginBody, zUpdateNeonAuthOrganizationPluginPath, zUpdateNeonAuthPhoneNumberPluginBody, zUpdateNeonAuthPhoneNumberPluginPath, zUpdateNeonAuthUserRoleBody, zUpdateNeonAuthUserRolePath, zUpdateNeonAuthWebhookConfigBody, zUpdateNeonAuthWebhookConfigPath, zUpdateOrganizationMemberBody, zUpdateOrganizationMemberPath, zUpdateProjectBody, zUpdateProjectBranchBody, zUpdateProjectBranchDataApiBody, zUpdateProjectBranchDataApiPath, zUpdateProjectBranchDatabaseBody, zUpdateProjectBranchDatabasePath, zUpdateProjectBranchFunctionBody, zUpdateProjectBranchFunctionPath, zUpdateProjectBranchPath, zUpdateProjectEndpointBody, zUpdateProjectEndpointPath, zUpdateProjectPath, zUpdateSnapshotBody, zUpdateSnapshotPath } from "./generated/zod.gen.js";
1
+ import { zAcceptProjectTransferRequestBody, zAcceptProjectTransferRequestPath, zAddBranchNeonAuthOauthProviderBody, zAddBranchNeonAuthOauthProviderPath, zAddBranchNeonAuthTrustedDomainBody, zAddBranchNeonAuthTrustedDomainPath, zAddNeonAuthDomainToRedirectUriWhitelistBody, zAddNeonAuthDomainToRedirectUriWhitelistPath, zAddNeonAuthOauthProviderBody, zAddNeonAuthOauthProviderPath, zAddProjectJwksBody, zAddProjectJwksPath, zAssignOrganizationVpcEndpointBody, zAssignOrganizationVpcEndpointPath, zAssignProjectVpcEndpointBody, zAssignProjectVpcEndpointPath, zCountProjectBranchesPath, zCountProjectBranchesQuery, zCreateApiKeyBody, zCreateBranchNeonAuthNewUserBody, zCreateBranchNeonAuthNewUserPath, zCreateCredentialBody, zCreateCredentialPath, zCreateNeonAuthBody, zCreateNeonAuthIntegrationBody, zCreateNeonAuthNewUserBody, zCreateNeonAuthPath, zCreateNeonAuthProviderSdkKeysBody, zCreateOrgApiKeyBody, zCreateOrgApiKeyPath, zCreateOrganizationInvitationsBody, zCreateOrganizationInvitationsPath, zCreateProjectBody, zCreateProjectBranchAnonymizedBody, zCreateProjectBranchAnonymizedPath, zCreateProjectBranchBody, zCreateProjectBranchBucketBody, zCreateProjectBranchBucketPath, zCreateProjectBranchDataApiBody, zCreateProjectBranchDataApiPath, zCreateProjectBranchDatabaseBody, zCreateProjectBranchDatabasePath, zCreateProjectBranchFunctionDeploymentBody, zCreateProjectBranchFunctionDeploymentPath, zCreateProjectBranchPath, zCreateProjectBranchRoleBody, zCreateProjectBranchRolePath, zCreateProjectEndpointBody, zCreateProjectEndpointPath, zCreateProjectTransferRequestBody, zCreateProjectTransferRequestPath, zCreateSnapshotPath, zCreateSnapshotQuery, zDeleteBranchNeonAuthOauthProviderPath, zDeleteBranchNeonAuthTrustedDomainBody, zDeleteBranchNeonAuthTrustedDomainPath, zDeleteBranchNeonAuthUserPath, zDeleteNeonAuthDomainFromRedirectUriWhitelistBody, zDeleteNeonAuthDomainFromRedirectUriWhitelistPath, zDeleteNeonAuthIntegrationBody, zDeleteNeonAuthIntegrationPath, zDeleteNeonAuthOauthProviderPath, zDeleteNeonAuthUserPath, zDeleteOrganizationSpendingLimitPath, zDeleteOrganizationVpcEndpointPath, zDeleteProjectBranchBucketObjectPath, zDeleteProjectBranchBucketObjectsByPrefixPath, zDeleteProjectBranchBucketObjectsByPrefixQuery, zDeleteProjectBranchBucketPath, zDeleteProjectBranchDataApiPath, zDeleteProjectBranchDatabasePath, zDeleteProjectBranchFunctionPath, zDeleteProjectBranchPath, zDeleteProjectBranchQuery, zDeleteProjectBranchRolePath, zDeleteProjectEndpointPath, zDeleteProjectJwksPath, zDeleteProjectPath, zDeleteProjectVpcEndpointPath, zDeleteSnapshotPath, zDisableNeonAuthBody, zDisableNeonAuthPath, zFinalizeRestoreBranchBody, zFinalizeRestoreBranchPath, zGetActiveRegionsQuery, zGetAnonymizedBranchStatusPath, zGetAvailablePreloadLibrariesPath, zGetConnectionUriPath, zGetConnectionUriQuery, zGetConsumptionHistoryPerBranchV2Query, zGetConsumptionHistoryPerProjectQuery, zGetConsumptionHistoryPerProjectV2Query, zGetMaskingRulesPath, zGetNeonAuthAllowLocalhostPath, zGetNeonAuthEmailAndPasswordConfigPath, zGetNeonAuthEmailProviderPath, zGetNeonAuthEmailServerPath, zGetNeonAuthPath, zGetNeonAuthPhoneNumberPluginPath, zGetNeonAuthPluginConfigsPath, zGetNeonAuthWebhookConfigPath, zGetOrganizationInvitationsPath, zGetOrganizationMemberPath, zGetOrganizationMembersPath, zGetOrganizationMembersQuery, zGetOrganizationPath, zGetOrganizationSpendingLimitPath, zGetOrganizationVpcEndpointDetailsPath, zGetProjectAdvisorSecurityIssuesPath, zGetProjectAdvisorSecurityIssuesQuery, zGetProjectBranchAiGatewayPath, zGetProjectBranchBucketObjectPath, zGetProjectBranchDataApiPath, zGetProjectBranchDatabasePath, zGetProjectBranchFunctionPath, zGetProjectBranchPath, zGetProjectBranchRolePasswordPath, zGetProjectBranchRolePath, zGetProjectBranchSchemaComparisonPath, zGetProjectBranchSchemaComparisonQuery, zGetProjectBranchSchemaPath, zGetProjectBranchSchemaQuery, zGetProjectBranchStoragePath, zGetProjectEndpointPath, zGetProjectJwksPath, zGetProjectOperationPath, zGetProjectPath, zGetSnapshotSchedulePath, zGrantPermissionToProjectBody, zGrantPermissionToProjectPath, zListBranchNeonAuthOauthProvidersPath, zListBranchNeonAuthTrustedDomainsPath, zListCredentialsPath, zListNeonAuthIntegrationsPath, zListNeonAuthOauthProvidersPath, zListNeonAuthRedirectUriWhitelistDomainsPath, zListOrgApiKeysPath, zListOrganizationVpcEndpointsAllRegionsPath, zListOrganizationVpcEndpointsPath, zListProjectBranchBucketObjectsPath, zListProjectBranchBucketObjectsQuery, zListProjectBranchBucketsPath, zListProjectBranchDatabasesPath, zListProjectBranchEndpointsPath, zListProjectBranchFunctionsPath, zListProjectBranchFunctionsQuery, zListProjectBranchLogFieldValuesPath, zListProjectBranchLogFieldValuesQuery, zListProjectBranchLogFieldsPath, zListProjectBranchRolesPath, zListProjectBranchesPath, zListProjectBranchesQuery, zListProjectEndpointsPath, zListProjectMembersPath, zListProjectMembersQuery, zListProjectOperationsPath, zListProjectOperationsQuery, zListProjectPermissionsPath, zListProjectVpcEndpointsPath, zListProjectsQuery, zListSharedProjectsQuery, zListSnapshotsPath, zPresignProjectBranchBucketObjectBody, zPresignProjectBranchBucketObjectPath, zQueryProjectBranchLogsBody, zQueryProjectBranchLogsPath, zRecoverProjectPath, zRemoveOrganizationMemberPath, zRemoveProjectMemberRolePath, zRemoveProjectMemberRoleQuery, zResetProjectBranchRolePasswordPath, zRestartProjectEndpointPath, zRestoreProjectBranchBody, zRestoreProjectBranchPath, zRestoreSnapshotBody, zRestoreSnapshotPath, zRevokeApiKeyPath, zRevokeCredentialPath, zRevokeOrgApiKeyPath, zRevokePermissionFromProjectPath, zSendNeonAuthTestEmailBody, zSendNeonAuthTestEmailPath, zSetDefaultProjectBranchPath, zSetOrganizationSpendingLimitBody, zSetOrganizationSpendingLimitPath, zSetProjectMemberRoleBody, zSetProjectMemberRolePath, zSetProjectMemberRoleQuery, zSetSnapshotScheduleBody, zSetSnapshotSchedulePath, zStartAnonymizationPath, zStartProjectEndpointPath, zSuspendProjectEndpointPath, zTransferNeonAuthProviderProjectBody, zTransferProjectsFromOrgToOrgBody, zTransferProjectsFromOrgToOrgPath, zTransferProjectsFromUserToOrgBody, zUpdateBranchNeonAuthOauthProviderBody, zUpdateBranchNeonAuthOauthProviderPath, zUpdateMaskingRulesBody, zUpdateMaskingRulesPath, zUpdateNeonAuthAllowLocalhostBody, zUpdateNeonAuthAllowLocalhostPath, zUpdateNeonAuthConfigBody, zUpdateNeonAuthConfigPath, zUpdateNeonAuthEmailAndPasswordConfigBody, zUpdateNeonAuthEmailAndPasswordConfigPath, zUpdateNeonAuthEmailProviderBody, zUpdateNeonAuthEmailProviderPath, zUpdateNeonAuthEmailServerBody, zUpdateNeonAuthEmailServerPath, zUpdateNeonAuthMagicLinkPluginBody, zUpdateNeonAuthMagicLinkPluginPath, zUpdateNeonAuthOauthProviderBody, zUpdateNeonAuthOauthProviderPath, zUpdateNeonAuthOrganizationPluginBody, zUpdateNeonAuthOrganizationPluginPath, zUpdateNeonAuthPhoneNumberPluginBody, zUpdateNeonAuthPhoneNumberPluginPath, zUpdateNeonAuthUserRoleBody, zUpdateNeonAuthUserRolePath, zUpdateNeonAuthWebhookConfigBody, zUpdateNeonAuthWebhookConfigPath, zUpdateOrganizationMemberBody, zUpdateOrganizationMemberPath, zUpdateProjectBody, zUpdateProjectBranchBody, zUpdateProjectBranchDataApiBody, zUpdateProjectBranchDataApiPath, zUpdateProjectBranchDatabaseBody, zUpdateProjectBranchDatabasePath, zUpdateProjectBranchFunctionBody, zUpdateProjectBranchFunctionPath, zUpdateProjectBranchPath, zUpdateProjectEndpointBody, zUpdateProjectEndpointPath, zUpdateProjectPath, zUpdateSnapshotBody, zUpdateSnapshotPath } from "./generated/zod.gen.js";
2
2
  import { decodeBase64 } from "./lib/binary.js";
3
+ import { decodeBinaryFields, optionalGroup } from "./lib/envelope.js";
3
4
  import { bindOperation, defineOperation } from "./lib/operation.js";
4
5
  import * as z from "zod";
5
6
  import * as raw from "@neon/sdk/raw";
@@ -181,8 +182,9 @@ const operationFactories = {
181
182
  title: "Accept a project transfer request",
182
183
  description: "Accepts a transfer request for the specified project, transferring it to the specified organization\nor user. If org_id is not passed, the project will be transferred to the current user or organization account.\n",
183
184
  inputSchema: z.strictObject({
184
- body: zAcceptProjectTransferRequestBody.optional(),
185
- path: zAcceptProjectTransferRequestPath
185
+ "project_id": zAcceptProjectTransferRequestPath.shape.project_id,
186
+ "request_id": zAcceptProjectTransferRequestPath.shape.request_id,
187
+ "org_id": zAcceptProjectTransferRequestBody.shape.org_id.optional()
186
188
  }),
187
189
  annotations: {
188
190
  readOnlyHint: false,
@@ -198,7 +200,11 @@ const operationFactories = {
198
200
  tags: ["Project"]
199
201
  },
200
202
  invoke: (client, input, signal) => raw.acceptProjectTransferRequest({
201
- ...input,
203
+ path: optionalGroup({
204
+ "project_id": input["project_id"],
205
+ "request_id": input["request_id"]
206
+ }, true),
207
+ body: optionalGroup({ "org_id": input["org_id"] }, false),
202
208
  client,
203
209
  signal,
204
210
  throwOnError: true
@@ -210,8 +216,12 @@ const operationFactories = {
210
216
  title: "Add an OAuth provider",
211
217
  description: "Adds an OAuth provider configuration to the specified branch's Neon Auth integration.\nAfter adding, users can authenticate using the configured provider.\n",
212
218
  inputSchema: z.strictObject({
213
- body: zAddBranchNeonAuthOauthProviderBody,
214
- path: zAddBranchNeonAuthOauthProviderPath
219
+ "project_id": zAddBranchNeonAuthOauthProviderPath.shape.project_id,
220
+ "branch_id": zAddBranchNeonAuthOauthProviderPath.shape.branch_id,
221
+ "id": zAddBranchNeonAuthOauthProviderBody.shape.id,
222
+ "client_id": zAddBranchNeonAuthOauthProviderBody.shape.client_id,
223
+ "client_secret": zAddBranchNeonAuthOauthProviderBody.shape.client_secret,
224
+ "microsoft_tenant_id": zAddBranchNeonAuthOauthProviderBody.shape.microsoft_tenant_id
215
225
  }),
216
226
  annotations: {
217
227
  readOnlyHint: false,
@@ -227,7 +237,16 @@ const operationFactories = {
227
237
  tags: ["Auth"]
228
238
  },
229
239
  invoke: (client, input, signal) => raw.addBranchNeonAuthOauthProvider({
230
- ...input,
240
+ path: optionalGroup({
241
+ "project_id": input["project_id"],
242
+ "branch_id": input["branch_id"]
243
+ }, true),
244
+ body: optionalGroup({
245
+ "id": input["id"],
246
+ "client_id": input["client_id"],
247
+ "client_secret": input["client_secret"],
248
+ "microsoft_tenant_id": input["microsoft_tenant_id"]
249
+ }, true),
231
250
  client,
232
251
  signal,
233
252
  throwOnError: true
@@ -239,8 +258,10 @@ const operationFactories = {
239
258
  title: "Add domain to redirect_uri whitelist",
240
259
  description: "Adds a domain to the redirect URI whitelist for the specified branch.\nOnly domains in this list are permitted as redirect targets after authentication.\n",
241
260
  inputSchema: z.strictObject({
242
- body: zAddBranchNeonAuthTrustedDomainBody,
243
- path: zAddBranchNeonAuthTrustedDomainPath
261
+ "project_id": zAddBranchNeonAuthTrustedDomainPath.shape.project_id,
262
+ "branch_id": zAddBranchNeonAuthTrustedDomainPath.shape.branch_id,
263
+ "domain": zAddBranchNeonAuthTrustedDomainBody.shape.domain,
264
+ "auth_provider": zAddBranchNeonAuthTrustedDomainBody.shape.auth_provider
244
265
  }),
245
266
  annotations: {
246
267
  readOnlyHint: false,
@@ -256,7 +277,14 @@ const operationFactories = {
256
277
  tags: ["Auth"]
257
278
  },
258
279
  invoke: (client, input, signal) => raw.addBranchNeonAuthTrustedDomain({
259
- ...input,
280
+ path: optionalGroup({
281
+ "project_id": input["project_id"],
282
+ "branch_id": input["branch_id"]
283
+ }, true),
284
+ body: optionalGroup({
285
+ "domain": input["domain"],
286
+ "auth_provider": input["auth_provider"]
287
+ }, true),
260
288
  client,
261
289
  signal,
262
290
  throwOnError: true
@@ -268,8 +296,9 @@ const operationFactories = {
268
296
  title: "Add trusted redirect URI domain",
269
297
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/domains` instead. Removal scheduled for March 1, 2026.\n",
270
298
  inputSchema: z.strictObject({
271
- body: zAddNeonAuthDomainToRedirectUriWhitelistBody,
272
- path: zAddNeonAuthDomainToRedirectUriWhitelistPath
299
+ "project_id": zAddNeonAuthDomainToRedirectUriWhitelistPath.shape.project_id,
300
+ "domain": zAddNeonAuthDomainToRedirectUriWhitelistBody.shape.domain,
301
+ "auth_provider": zAddNeonAuthDomainToRedirectUriWhitelistBody.shape.auth_provider
273
302
  }),
274
303
  annotations: {
275
304
  readOnlyHint: false,
@@ -285,7 +314,11 @@ const operationFactories = {
285
314
  tags: ["Auth (legacy)"]
286
315
  },
287
316
  invoke: (client, input, signal) => raw.addNeonAuthDomainToRedirectUriWhitelist({
288
- ...input,
317
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
318
+ body: optionalGroup({
319
+ "domain": input["domain"],
320
+ "auth_provider": input["auth_provider"]
321
+ }, true),
289
322
  client,
290
323
  signal,
291
324
  throwOnError: true
@@ -297,8 +330,11 @@ const operationFactories = {
297
330
  title: "Add an OAuth provider",
298
331
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/oauth_providers` instead. Removal scheduled for March 1, 2026.\n",
299
332
  inputSchema: z.strictObject({
300
- body: zAddNeonAuthOauthProviderBody,
301
- path: zAddNeonAuthOauthProviderPath
333
+ "project_id": zAddNeonAuthOauthProviderPath.shape.project_id,
334
+ "id": zAddNeonAuthOauthProviderBody.shape.id,
335
+ "client_id": zAddNeonAuthOauthProviderBody.shape.client_id,
336
+ "client_secret": zAddNeonAuthOauthProviderBody.shape.client_secret,
337
+ "microsoft_tenant_id": zAddNeonAuthOauthProviderBody.shape.microsoft_tenant_id
302
338
  }),
303
339
  annotations: {
304
340
  readOnlyHint: false,
@@ -314,7 +350,13 @@ const operationFactories = {
314
350
  tags: ["Auth (legacy)"]
315
351
  },
316
352
  invoke: (client, input, signal) => raw.addNeonAuthOauthProvider({
317
- ...input,
353
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
354
+ body: optionalGroup({
355
+ "id": input["id"],
356
+ "client_id": input["client_id"],
357
+ "client_secret": input["client_secret"],
358
+ "microsoft_tenant_id": input["microsoft_tenant_id"]
359
+ }, true),
318
360
  client,
319
361
  signal,
320
362
  throwOnError: true
@@ -326,8 +368,13 @@ const operationFactories = {
326
368
  title: "Add JWKS URL",
327
369
  description: "Adds a JWKS URL to the specified project for verifying JWTs used as the authentication mechanism.\n\nThe URL must be a valid HTTPS URL that returns a JSON Web Key Set.\n\nThe `provider_name` field allows you to specify which authentication provider you're using (e.g., Clerk, Auth0, AWS Cognito).\n\nThe `branch_id` scopes the JWKS URL to specific branches; if not specified, it applies to all branches.\n\nThe `role_names` scopes the URL to specific roles; if not specified, default roles are used (`authenticator`, `authenticated`, `anonymous`).\n\nThe `jwt_audience` specifies which `aud` values are accepted in JWTs.\n",
328
370
  inputSchema: z.strictObject({
329
- body: zAddProjectJwksBody,
330
- path: zAddProjectJwksPath
371
+ "project_id": zAddProjectJwksPath.shape.project_id,
372
+ "jwks_url": zAddProjectJwksBody.shape.jwks_url,
373
+ "provider_name": zAddProjectJwksBody.shape.provider_name,
374
+ "branch_id": zAddProjectJwksBody.shape.branch_id,
375
+ "jwt_audience": zAddProjectJwksBody.shape.jwt_audience,
376
+ "role_names": zAddProjectJwksBody.shape.role_names,
377
+ "skip_role_creation": zAddProjectJwksBody.shape.skip_role_creation
331
378
  }),
332
379
  annotations: {
333
380
  readOnlyHint: false,
@@ -343,7 +390,15 @@ const operationFactories = {
343
390
  tags: ["Project"]
344
391
  },
345
392
  invoke: (client, input, signal) => raw.addProjectJwks({
346
- ...input,
393
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
394
+ body: optionalGroup({
395
+ "jwks_url": input["jwks_url"],
396
+ "provider_name": input["provider_name"],
397
+ "branch_id": input["branch_id"],
398
+ "jwt_audience": input["jwt_audience"],
399
+ "role_names": input["role_names"],
400
+ "skip_role_creation": input["skip_role_creation"]
401
+ }, true),
347
402
  client,
348
403
  signal,
349
404
  throwOnError: true
@@ -355,8 +410,10 @@ const operationFactories = {
355
410
  title: "Assign or update VPC endpoint",
356
411
  description: "Assigns a VPC endpoint to a Neon organization or updates its existing assignment.\n",
357
412
  inputSchema: z.strictObject({
358
- body: zAssignOrganizationVpcEndpointBody,
359
- path: zAssignOrganizationVpcEndpointPath
413
+ "org_id": zAssignOrganizationVpcEndpointPath.shape.org_id,
414
+ "region_id": zAssignOrganizationVpcEndpointPath.shape.region_id,
415
+ "vpc_endpoint_id": zAssignOrganizationVpcEndpointPath.shape.vpc_endpoint_id,
416
+ "label": zAssignOrganizationVpcEndpointBody.shape.label
360
417
  }),
361
418
  annotations: {
362
419
  readOnlyHint: false,
@@ -372,7 +429,12 @@ const operationFactories = {
372
429
  tags: ["Organizations"]
373
430
  },
374
431
  invoke: (client, input, signal) => raw.assignOrganizationVpcEndpoint({
375
- ...input,
432
+ path: optionalGroup({
433
+ "org_id": input["org_id"],
434
+ "region_id": input["region_id"],
435
+ "vpc_endpoint_id": input["vpc_endpoint_id"]
436
+ }, true),
437
+ body: optionalGroup({ "label": input["label"] }, true),
376
438
  client,
377
439
  signal,
378
440
  throwOnError: true
@@ -384,8 +446,9 @@ const operationFactories = {
384
446
  title: "Set VPC endpoint restriction",
385
447
  description: "Sets or updates a VPC endpoint restriction for a Neon project.\nWhen a VPC endpoint restriction is set, the project only accepts connections\nfrom the specified VPC.\nA VPC endpoint can be set as a restriction only after it is assigned to the\nparent organization of the Neon project.\n",
386
448
  inputSchema: z.strictObject({
387
- body: zAssignProjectVpcEndpointBody,
388
- path: zAssignProjectVpcEndpointPath
449
+ "project_id": zAssignProjectVpcEndpointPath.shape.project_id,
450
+ "vpc_endpoint_id": zAssignProjectVpcEndpointPath.shape.vpc_endpoint_id,
451
+ "label": zAssignProjectVpcEndpointBody.shape.label
389
452
  }),
390
453
  annotations: {
391
454
  readOnlyHint: false,
@@ -401,7 +464,11 @@ const operationFactories = {
401
464
  tags: ["Project"]
402
465
  },
403
466
  invoke: (client, input, signal) => raw.assignProjectVpcEndpoint({
404
- ...input,
467
+ path: optionalGroup({
468
+ "project_id": input["project_id"],
469
+ "vpc_endpoint_id": input["vpc_endpoint_id"]
470
+ }, true),
471
+ body: optionalGroup({ "label": input["label"] }, true),
405
472
  client,
406
473
  signal,
407
474
  throwOnError: true
@@ -413,8 +480,8 @@ const operationFactories = {
413
480
  title: "Retrieve number of branches",
414
481
  description: "Retrieves the total number of branches in the specified project.\nSupports an optional `search` parameter to count branches matching a name filter.\n",
415
482
  inputSchema: z.strictObject({
416
- path: zCountProjectBranchesPath,
417
- query: zCountProjectBranchesQuery.optional()
483
+ "project_id": zCountProjectBranchesPath.shape.project_id,
484
+ "search": zCountProjectBranchesQuery.shape.search.optional()
418
485
  }),
419
486
  annotations: {
420
487
  readOnlyHint: true,
@@ -429,7 +496,8 @@ const operationFactories = {
429
496
  tags: ["Branch"]
430
497
  },
431
498
  invoke: (client, input, signal) => raw.countProjectBranches({
432
- ...input,
499
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
500
+ query: optionalGroup({ "search": input["search"] }, false),
433
501
  client,
434
502
  signal,
435
503
  throwOnError: true
@@ -440,7 +508,7 @@ const operationFactories = {
440
508
  id: "create_api_key",
441
509
  title: "Create API key",
442
510
  description: "Creates an API key.\nThe `key_name` is a user-specified name for the key.\nReturns an `id` and `key`; the `key` is a randomly generated, 64-bit token required to access the Neon API.\nStore the key securely — it is only returned once.\nAPI keys can also be managed in the Neon Console.\nSee [Manage API keys](https://neon.com/docs/manage/api-keys/).\n",
443
- inputSchema: z.strictObject({ body: zCreateApiKeyBody }),
511
+ inputSchema: z.strictObject({ "key_name": zCreateApiKeyBody.shape.key_name }),
444
512
  annotations: {
445
513
  readOnlyHint: false,
446
514
  destructiveHint: true,
@@ -455,7 +523,7 @@ const operationFactories = {
455
523
  tags: ["API Key"]
456
524
  },
457
525
  invoke: (client, input, signal) => raw.createApiKey({
458
- ...input,
526
+ body: optionalGroup({ "key_name": input["key_name"] }, true),
459
527
  client,
460
528
  signal,
461
529
  throwOnError: true
@@ -467,8 +535,10 @@ const operationFactories = {
467
535
  title: "Create new auth user",
468
536
  description: "Creates a new user in the Neon Auth user directory for the specified branch.\nThe user is created in the `neon_auth.users_sync` table and can immediately authenticate\nusing the branch's configured auth providers.\n",
469
537
  inputSchema: z.strictObject({
470
- body: zCreateBranchNeonAuthNewUserBody,
471
- path: zCreateBranchNeonAuthNewUserPath
538
+ "project_id": zCreateBranchNeonAuthNewUserPath.shape.project_id,
539
+ "branch_id": zCreateBranchNeonAuthNewUserPath.shape.branch_id,
540
+ "email": zCreateBranchNeonAuthNewUserBody.shape.email,
541
+ "name": zCreateBranchNeonAuthNewUserBody.shape.name
472
542
  }),
473
543
  annotations: {
474
544
  readOnlyHint: false,
@@ -484,7 +554,14 @@ const operationFactories = {
484
554
  tags: ["Auth"]
485
555
  },
486
556
  invoke: (client, input, signal) => raw.createBranchNeonAuthNewUser({
487
- ...input,
557
+ path: optionalGroup({
558
+ "project_id": input["project_id"],
559
+ "branch_id": input["branch_id"]
560
+ }, true),
561
+ body: optionalGroup({
562
+ "email": input["email"],
563
+ "name": input["name"]
564
+ }, true),
488
565
  client,
489
566
  signal,
490
567
  throwOnError: true
@@ -496,8 +573,11 @@ const operationFactories = {
496
573
  title: "Issue a scoped credential on the branch",
497
574
  description: "Issues a new scoped service credential anchored to the specified\nbranch. The response carries `api_token` and `s3_secret_access_key`\nexactly once — they are not stored server-side.\n\n**Note**: This endpoint is currently in Beta.\n",
498
575
  inputSchema: z.strictObject({
499
- body: zCreateCredentialBody,
500
- path: zCreateCredentialPath
576
+ "project_id": zCreateCredentialPath.shape.project_id,
577
+ "branch_id": zCreateCredentialPath.shape.branch_id,
578
+ "name": zCreateCredentialBody.shape.name,
579
+ "scopes": zCreateCredentialBody.shape.scopes,
580
+ "principal_type": zCreateCredentialBody.shape.principal_type
501
581
  }),
502
582
  annotations: {
503
583
  readOnlyHint: false,
@@ -513,7 +593,15 @@ const operationFactories = {
513
593
  tags: ["Credentials"]
514
594
  },
515
595
  invoke: (client, input, signal) => raw.createCredential({
516
- ...input,
596
+ path: optionalGroup({
597
+ "project_id": input["project_id"],
598
+ "branch_id": input["branch_id"]
599
+ }, true),
600
+ body: optionalGroup({
601
+ "name": input["name"],
602
+ "scopes": input["scopes"],
603
+ "principal_type": input["principal_type"]
604
+ }, true),
517
605
  client,
518
606
  signal,
519
607
  throwOnError: true
@@ -525,8 +613,10 @@ const operationFactories = {
525
613
  title: "Enable Neon Auth for the branch",
526
614
  description: "Enables Neon Auth for the specified branch by connecting it to an authentication provider.\nCreating the integration provisions the `neon_auth` schema in the branch database, which stores user identity data synchronized from the provider.\n",
527
615
  inputSchema: z.strictObject({
528
- body: zCreateNeonAuthBody,
529
- path: zCreateNeonAuthPath
616
+ "project_id": zCreateNeonAuthPath.shape.project_id,
617
+ "branch_id": zCreateNeonAuthPath.shape.branch_id,
618
+ "auth_provider": zCreateNeonAuthBody.shape.auth_provider,
619
+ "database_name": zCreateNeonAuthBody.shape.database_name
530
620
  }),
531
621
  annotations: {
532
622
  readOnlyHint: false,
@@ -542,7 +632,14 @@ const operationFactories = {
542
632
  tags: ["Auth"]
543
633
  },
544
634
  invoke: (client, input, signal) => raw.createNeonAuth({
545
- ...input,
635
+ path: optionalGroup({
636
+ "project_id": input["project_id"],
637
+ "branch_id": input["branch_id"]
638
+ }, true),
639
+ body: optionalGroup({
640
+ "auth_provider": input["auth_provider"],
641
+ "database_name": input["database_name"]
642
+ }, true),
546
643
  client,
547
644
  signal,
548
645
  throwOnError: true
@@ -553,7 +650,13 @@ const operationFactories = {
553
650
  id: "create_neon_auth_integration",
554
651
  title: "Create Neon Auth integration",
555
652
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth` instead. Removal scheduled for March 1, 2026.\nUse this endpoint if the frontend integration flow can't be used.\n",
556
- inputSchema: z.strictObject({ body: zCreateNeonAuthIntegrationBody }),
653
+ inputSchema: z.strictObject({
654
+ "auth_provider": zCreateNeonAuthIntegrationBody.shape.auth_provider,
655
+ "project_id": zCreateNeonAuthIntegrationBody.shape.project_id,
656
+ "branch_id": zCreateNeonAuthIntegrationBody.shape.branch_id,
657
+ "database_name": zCreateNeonAuthIntegrationBody.shape.database_name,
658
+ "role_name": zCreateNeonAuthIntegrationBody.shape.role_name
659
+ }),
557
660
  annotations: {
558
661
  readOnlyHint: false,
559
662
  destructiveHint: true,
@@ -568,7 +671,13 @@ const operationFactories = {
568
671
  tags: ["Auth (legacy)"]
569
672
  },
570
673
  invoke: (client, input, signal) => raw.createNeonAuthIntegration({
571
- ...input,
674
+ body: optionalGroup({
675
+ "auth_provider": input["auth_provider"],
676
+ "project_id": input["project_id"],
677
+ "branch_id": input["branch_id"],
678
+ "database_name": input["database_name"],
679
+ "role_name": input["role_name"]
680
+ }, true),
572
681
  client,
573
682
  signal,
574
683
  throwOnError: true
@@ -579,7 +688,12 @@ const operationFactories = {
579
688
  id: "create_neon_auth_new_user",
580
689
  title: "Create new auth user",
581
690
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/users` instead. Removal scheduled for March 1, 2026.\nThe user will be created in your neon_auth.users_sync table and automatically propagated to your auth project, whether Neon-managed or provider-owned.\n",
582
- inputSchema: z.strictObject({ body: zCreateNeonAuthNewUserBody }),
691
+ inputSchema: z.strictObject({
692
+ "project_id": zCreateNeonAuthNewUserBody.shape.project_id,
693
+ "auth_provider": zCreateNeonAuthNewUserBody.shape.auth_provider,
694
+ "email": zCreateNeonAuthNewUserBody.shape.email,
695
+ "name": zCreateNeonAuthNewUserBody.shape.name
696
+ }),
583
697
  annotations: {
584
698
  readOnlyHint: false,
585
699
  destructiveHint: true,
@@ -594,7 +708,12 @@ const operationFactories = {
594
708
  tags: ["Auth (legacy)"]
595
709
  },
596
710
  invoke: (client, input, signal) => raw.createNeonAuthNewUser({
597
- ...input,
711
+ body: optionalGroup({
712
+ "project_id": input["project_id"],
713
+ "auth_provider": input["auth_provider"],
714
+ "email": input["email"],
715
+ "name": input["name"]
716
+ }, true),
598
717
  client,
599
718
  signal,
600
719
  throwOnError: true
@@ -605,7 +724,10 @@ const operationFactories = {
605
724
  id: "create_neon_auth_provider_sdk_keys",
606
725
  title: "Create Auth Provider SDK keys",
607
726
  description: "Generates SDK or API Keys for the auth provider. These might be called different things depending\non the auth provider you're using, but are generally used for setting up the frontend and backend SDKs.\n",
608
- inputSchema: z.strictObject({ body: zCreateNeonAuthProviderSdkKeysBody }),
727
+ inputSchema: z.strictObject({
728
+ "project_id": zCreateNeonAuthProviderSdkKeysBody.shape.project_id,
729
+ "auth_provider": zCreateNeonAuthProviderSdkKeysBody.shape.auth_provider
730
+ }),
609
731
  annotations: {
610
732
  readOnlyHint: false,
611
733
  destructiveHint: true,
@@ -620,7 +742,10 @@ const operationFactories = {
620
742
  tags: ["Auth (legacy)"]
621
743
  },
622
744
  invoke: (client, input, signal) => raw.createNeonAuthProviderSdkKeys({
623
- ...input,
745
+ body: optionalGroup({
746
+ "project_id": input["project_id"],
747
+ "auth_provider": input["auth_provider"]
748
+ }, true),
624
749
  client,
625
750
  signal,
626
751
  throwOnError: true
@@ -632,8 +757,8 @@ const operationFactories = {
632
757
  title: "Create organization invitations",
633
758
  description: "Creates invitations for a specific organization.\nIf the invited user has an existing account, they automatically join as a member.\nIf they don't yet have an account, they are invited to create one, after which they become a member.\nEach invited user receives an email notification.\n",
634
759
  inputSchema: z.strictObject({
635
- body: zCreateOrganizationInvitationsBody,
636
- path: zCreateOrganizationInvitationsPath
760
+ "org_id": zCreateOrganizationInvitationsPath.shape.org_id,
761
+ "invitations": zCreateOrganizationInvitationsBody.shape.invitations
637
762
  }),
638
763
  annotations: {
639
764
  readOnlyHint: false,
@@ -649,7 +774,8 @@ const operationFactories = {
649
774
  tags: ["Organizations"]
650
775
  },
651
776
  invoke: (client, input, signal) => raw.createOrganizationInvitations({
652
- ...input,
777
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
778
+ body: optionalGroup({ "invitations": input["invitations"] }, true),
653
779
  client,
654
780
  signal,
655
781
  throwOnError: true
@@ -661,8 +787,9 @@ const operationFactories = {
661
787
  title: "Create organization API key",
662
788
  description: "Creates an API key for the specified organization.\nThe `key_name` is a user-specified name for the key.\nReturns an `id` and `key`; the `key` is a randomly generated, 64-bit token required to access the Neon API.\nStore the key securely — it is only returned once.\nAPI keys can also be managed in the Neon Console.\nSee [Manage API keys](https://neon.com/docs/manage/api-keys/).\n",
663
789
  inputSchema: z.strictObject({
664
- body: zCreateOrgApiKeyBody,
665
- path: zCreateOrgApiKeyPath
790
+ "org_id": zCreateOrgApiKeyPath.shape.org_id,
791
+ "key_name": zCreateOrgApiKeyBody.shape.key_name,
792
+ "project_id": zCreateOrgApiKeyBody.shape.project_id
666
793
  }),
667
794
  annotations: {
668
795
  readOnlyHint: false,
@@ -678,7 +805,11 @@ const operationFactories = {
678
805
  tags: ["Organizations"]
679
806
  },
680
807
  invoke: (client, input, signal) => raw.createOrgApiKey({
681
- ...input,
808
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
809
+ body: optionalGroup({
810
+ "key_name": input["key_name"],
811
+ "project_id": input["project_id"]
812
+ }, true),
682
813
  client,
683
814
  signal,
684
815
  throwOnError: true
@@ -689,7 +820,20 @@ const operationFactories = {
689
820
  id: "create_project",
690
821
  title: "Create project",
691
822
  description: "Creates a Neon project within an organization.\nIf using a personal API key, include the `org_id` parameter to specify which organization to create the project in.\nIf using an org API key, `org_id` is automatically inferred from the key.\nPlan limits define how many projects you can create.\nFor more information, see [Manage projects](https://neon.com/docs/manage/projects/).\n\nYou can specify a region and Postgres version in the request body.\nNeon supports Postgres 14 through 18, with 19 rolling out to enabled regions.\nFor supported regions and `region_id` values, see [Regions](https://neon.com/docs/introduction/regions/).\n",
692
- inputSchema: z.strictObject({ body: zCreateProjectBody }),
823
+ inputSchema: z.strictObject({
824
+ "settings": zCreateProjectBody.shape.project.shape.settings,
825
+ "name": zCreateProjectBody.shape.project.shape.name,
826
+ "branch": zCreateProjectBody.shape.project.shape.branch,
827
+ "autoscaling_limit_min_cu": zCreateProjectBody.shape.project.shape.autoscaling_limit_min_cu,
828
+ "autoscaling_limit_max_cu": zCreateProjectBody.shape.project.shape.autoscaling_limit_max_cu,
829
+ "provisioner": zCreateProjectBody.shape.project.shape.provisioner,
830
+ "region_id": zCreateProjectBody.shape.project.shape.region_id,
831
+ "default_endpoint_settings": zCreateProjectBody.shape.project.shape.default_endpoint_settings,
832
+ "pg_version": zCreateProjectBody.shape.project.shape.pg_version,
833
+ "store_passwords": zCreateProjectBody.shape.project.shape.store_passwords,
834
+ "history_retention_seconds": zCreateProjectBody.shape.project.shape.history_retention_seconds,
835
+ "org_id": zCreateProjectBody.shape.project.shape.org_id
836
+ }),
693
837
  annotations: {
694
838
  readOnlyHint: false,
695
839
  destructiveHint: true,
@@ -704,7 +848,20 @@ const operationFactories = {
704
848
  tags: ["Project"]
705
849
  },
706
850
  invoke: (client, input, signal) => raw.createProject({
707
- ...input,
851
+ body: optionalGroup({ "project": optionalGroup({
852
+ "settings": input["settings"],
853
+ "name": input["name"],
854
+ "branch": input["branch"],
855
+ "autoscaling_limit_min_cu": input["autoscaling_limit_min_cu"],
856
+ "autoscaling_limit_max_cu": input["autoscaling_limit_max_cu"],
857
+ "provisioner": input["provisioner"],
858
+ "region_id": input["region_id"],
859
+ "default_endpoint_settings": input["default_endpoint_settings"],
860
+ "pg_version": input["pg_version"],
861
+ "store_passwords": input["store_passwords"],
862
+ "history_retention_seconds": input["history_retention_seconds"],
863
+ "org_id": input["org_id"]
864
+ }, true) }, true),
708
865
  client,
709
866
  signal,
710
867
  throwOnError: true
@@ -716,8 +873,10 @@ const operationFactories = {
716
873
  title: "Create branch",
717
874
  description: "Creates a branch in the specified project.\nNo request body is required, but you can specify one to create a compute endpoint or select a non-default parent branch.\nBy default, the branch is created from the project's default branch with no compute endpoint, and the branch name is auto-generated.\nTo access the branch, add a `read_write` endpoint.\nEach branch supports one read-write endpoint and multiple read-only endpoints.\nFor related information, see [Manage branches](https://neon.com/docs/manage/branches/).\n",
718
875
  inputSchema: z.strictObject({
719
- body: zCreateProjectBranchBody.optional(),
720
- path: zCreateProjectBranchPath
876
+ "project_id": zCreateProjectBranchPath.shape.project_id,
877
+ "endpoints": zCreateProjectBranchBody.shape.endpoints.optional(),
878
+ "branch": zCreateProjectBranchBody.shape.branch.optional(),
879
+ "annotation_value": zCreateProjectBranchBody.shape.annotation_value.optional()
721
880
  }),
722
881
  annotations: {
723
882
  readOnlyHint: false,
@@ -733,7 +892,12 @@ const operationFactories = {
733
892
  tags: ["Branch"]
734
893
  },
735
894
  invoke: (client, input, signal) => raw.createProjectBranch({
736
- ...input,
895
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
896
+ body: optionalGroup({
897
+ "endpoints": input["endpoints"],
898
+ "branch": input["branch"],
899
+ "annotation_value": input["annotation_value"]
900
+ }, false),
737
901
  client,
738
902
  signal,
739
903
  throwOnError: true
@@ -745,8 +909,11 @@ const operationFactories = {
745
909
  title: "Create anonymized branch",
746
910
  description: "Creates a new branch with anonymized data using PostgreSQL Anonymizer for static masking.\nThis allows developers to work with masked production data.\nOptionally, provide `masking_rules` to set initial masking rules for the branch\nand `start_anonymization` to automatically start anonymization after creation. This\ncombines functionality of updating masking rules and starting anonymization into the\nbranch creation request.\n\n**Note**: This endpoint is currently in Beta.\n",
747
911
  inputSchema: z.strictObject({
748
- body: zCreateProjectBranchAnonymizedBody,
749
- path: zCreateProjectBranchAnonymizedPath
912
+ "project_id": zCreateProjectBranchAnonymizedPath.shape.project_id,
913
+ "annotation_value": zCreateProjectBranchAnonymizedBody.shape.annotation_value,
914
+ "branch_create": zCreateProjectBranchAnonymizedBody.shape.branch_create,
915
+ "masking_rules": zCreateProjectBranchAnonymizedBody.shape.masking_rules,
916
+ "start_anonymization": zCreateProjectBranchAnonymizedBody.shape.start_anonymization
750
917
  }),
751
918
  annotations: {
752
919
  readOnlyHint: false,
@@ -762,7 +929,13 @@ const operationFactories = {
762
929
  tags: ["Branch"]
763
930
  },
764
931
  invoke: (client, input, signal) => raw.createProjectBranchAnonymized({
765
- ...input,
932
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
933
+ body: optionalGroup({
934
+ "annotation_value": input["annotation_value"],
935
+ "branch_create": input["branch_create"],
936
+ "masking_rules": input["masking_rules"],
937
+ "start_anonymization": input["start_anonymization"]
938
+ }, true),
766
939
  client,
767
940
  signal,
768
941
  throwOnError: true
@@ -774,8 +947,10 @@ const operationFactories = {
774
947
  title: "Create a bucket on the branch",
775
948
  description: "Creates a new branchable object storage bucket on the specified branch.\nBuckets are managed by the Neon Platform branchable object storage service.\n\n**Note**: This endpoint is currently in Beta.\n",
776
949
  inputSchema: z.strictObject({
777
- body: zCreateProjectBranchBucketBody,
778
- path: zCreateProjectBranchBucketPath
950
+ "project_id": zCreateProjectBranchBucketPath.shape.project_id,
951
+ "branch_id": zCreateProjectBranchBucketPath.shape.branch_id,
952
+ "name": zCreateProjectBranchBucketBody.shape.name,
953
+ "access_level": zCreateProjectBranchBucketBody.shape.access_level
779
954
  }),
780
955
  annotations: {
781
956
  readOnlyHint: false,
@@ -791,7 +966,14 @@ const operationFactories = {
791
966
  tags: ["Buckets"]
792
967
  },
793
968
  invoke: (client, input, signal) => raw.createProjectBranchBucket({
794
- ...input,
969
+ path: optionalGroup({
970
+ "project_id": input["project_id"],
971
+ "branch_id": input["branch_id"]
972
+ }, true),
973
+ body: optionalGroup({
974
+ "name": input["name"],
975
+ "access_level": input["access_level"]
976
+ }, true),
795
977
  client,
796
978
  signal,
797
979
  throwOnError: true
@@ -803,8 +985,16 @@ const operationFactories = {
803
985
  title: "Create Neon Data API",
804
986
  description: "Creates a new instance of Neon Data API in the specified branch.\nThe Data API exposes a REST interface over the branch database. The `database_name` path parameter determines which database the API serves.\n",
805
987
  inputSchema: z.strictObject({
806
- body: zCreateProjectBranchDataApiBody.optional(),
807
- path: zCreateProjectBranchDataApiPath
988
+ "project_id": zCreateProjectBranchDataApiPath.shape.project_id,
989
+ "branch_id": zCreateProjectBranchDataApiPath.shape.branch_id,
990
+ "database_name": zCreateProjectBranchDataApiPath.shape.database_name,
991
+ "auth_provider": zCreateProjectBranchDataApiBody.shape.auth_provider.optional(),
992
+ "jwks_url": zCreateProjectBranchDataApiBody.shape.jwks_url.optional(),
993
+ "provider_name": zCreateProjectBranchDataApiBody.shape.provider_name.optional(),
994
+ "jwt_audience": zCreateProjectBranchDataApiBody.shape.jwt_audience.optional(),
995
+ "add_default_grants": zCreateProjectBranchDataApiBody.shape.add_default_grants.optional(),
996
+ "skip_auth_schema": zCreateProjectBranchDataApiBody.shape.skip_auth_schema.optional(),
997
+ "settings": zCreateProjectBranchDataApiBody.shape.settings.optional()
808
998
  }),
809
999
  annotations: {
810
1000
  readOnlyHint: false,
@@ -820,7 +1010,20 @@ const operationFactories = {
820
1010
  tags: ["DataAPI"]
821
1011
  },
822
1012
  invoke: (client, input, signal) => raw.createProjectBranchDataApi({
823
- ...input,
1013
+ path: optionalGroup({
1014
+ "project_id": input["project_id"],
1015
+ "branch_id": input["branch_id"],
1016
+ "database_name": input["database_name"]
1017
+ }, true),
1018
+ body: optionalGroup({
1019
+ "auth_provider": input["auth_provider"],
1020
+ "jwks_url": input["jwks_url"],
1021
+ "provider_name": input["provider_name"],
1022
+ "jwt_audience": input["jwt_audience"],
1023
+ "add_default_grants": input["add_default_grants"],
1024
+ "skip_auth_schema": input["skip_auth_schema"],
1025
+ "settings": input["settings"]
1026
+ }, false),
824
1027
  client,
825
1028
  signal,
826
1029
  throwOnError: true
@@ -832,8 +1035,10 @@ const operationFactories = {
832
1035
  title: "Create database",
833
1036
  description: "Creates a database in the specified branch.\nA branch can have multiple databases.\nFor related information, see [Manage databases](https://neon.com/docs/manage/databases/).\n",
834
1037
  inputSchema: z.strictObject({
835
- body: zCreateProjectBranchDatabaseBody,
836
- path: zCreateProjectBranchDatabasePath
1038
+ "project_id": zCreateProjectBranchDatabasePath.shape.project_id,
1039
+ "branch_id": zCreateProjectBranchDatabasePath.shape.branch_id,
1040
+ "name": zCreateProjectBranchDatabaseBody.shape.database.shape.name,
1041
+ "owner_name": zCreateProjectBranchDatabaseBody.shape.database.shape.owner_name
837
1042
  }),
838
1043
  annotations: {
839
1044
  readOnlyHint: false,
@@ -849,7 +1054,14 @@ const operationFactories = {
849
1054
  tags: ["Branch"]
850
1055
  },
851
1056
  invoke: (client, input, signal) => raw.createProjectBranchDatabase({
852
- ...input,
1057
+ path: optionalGroup({
1058
+ "project_id": input["project_id"],
1059
+ "branch_id": input["branch_id"]
1060
+ }, true),
1061
+ body: optionalGroup({ "database": optionalGroup({
1062
+ "name": input["name"],
1063
+ "owner_name": input["owner_name"]
1064
+ }, true) }, true),
853
1065
  client,
854
1066
  signal,
855
1067
  throwOnError: true
@@ -861,8 +1073,12 @@ const operationFactories = {
861
1073
  title: "Deploy code to a function",
862
1074
  description: "Creates a deployment for the function. Supply any subset of zip,\nenvironment, and runtime; omitted fields inherit the\nfunction's latest version. At least one field must be supplied. The\nfirst deployment of a function must include zip. The newest deployment\nbecomes active.\n\n**Note**: This endpoint is currently in Beta.\n",
863
1075
  inputSchema: z.strictObject({
864
- body: zCreateProjectBranchFunctionDeploymentBody.safeExtend({ "zip": z.base64().describe("Base64-encoded binary file contents.").optional() }),
865
- path: zCreateProjectBranchFunctionDeploymentPath
1076
+ "project_id": zCreateProjectBranchFunctionDeploymentPath.shape.project_id,
1077
+ "branch_id": zCreateProjectBranchFunctionDeploymentPath.shape.branch_id,
1078
+ "slug": zCreateProjectBranchFunctionDeploymentPath.shape.slug,
1079
+ "zip": z.base64().describe("Base64-encoded binary file contents.").optional(),
1080
+ "runtime": zCreateProjectBranchFunctionDeploymentBody.shape.runtime,
1081
+ "environment": zCreateProjectBranchFunctionDeploymentBody.shape.environment
866
1082
  }),
867
1083
  annotations: {
868
1084
  readOnlyHint: false,
@@ -877,19 +1093,21 @@ const operationFactories = {
877
1093
  deprecated: false,
878
1094
  tags: ["Functions"]
879
1095
  },
880
- invoke: (client, input, signal) => {
881
- const { ["zip"]: binary0, ...body } = input.body;
882
- return raw.createProjectBranchFunctionDeployment({
883
- ...input,
884
- body: {
885
- ...body,
886
- ...binary0 === void 0 ? {} : { "zip": decodeBase64(binary0) }
887
- },
888
- client,
889
- signal,
890
- throwOnError: true
891
- });
892
- }
1096
+ invoke: (client, input, signal) => raw.createProjectBranchFunctionDeployment({
1097
+ path: optionalGroup({
1098
+ "project_id": input["project_id"],
1099
+ "branch_id": input["branch_id"],
1100
+ "slug": input["slug"]
1101
+ }, true),
1102
+ body: decodeBinaryFields(optionalGroup({
1103
+ "zip": input["zip"],
1104
+ "runtime": input["runtime"],
1105
+ "environment": input["environment"]
1106
+ }, true), ["zip"], decodeBase64),
1107
+ client,
1108
+ signal,
1109
+ throwOnError: true
1110
+ })
893
1111
  }), client),
894
1112
  "createProjectBranchRole": (client) => bindOperation(defineOperation({
895
1113
  operationId: "createProjectBranchRole",
@@ -897,8 +1115,10 @@ const operationFactories = {
897
1115
  title: "Create role",
898
1116
  description: "Creates a Postgres role in the specified branch.\nFor related information, see [Manage roles](https://neon.com/docs/manage/roles/).\n\nConnections established to the active compute endpoint will be dropped.\nIf the compute endpoint is idle, the endpoint becomes active for a short period of time and is suspended afterward.\n",
899
1117
  inputSchema: z.strictObject({
900
- body: zCreateProjectBranchRoleBody,
901
- path: zCreateProjectBranchRolePath
1118
+ "project_id": zCreateProjectBranchRolePath.shape.project_id,
1119
+ "branch_id": zCreateProjectBranchRolePath.shape.branch_id,
1120
+ "name": zCreateProjectBranchRoleBody.shape.role.shape.name,
1121
+ "no_login": zCreateProjectBranchRoleBody.shape.role.shape.no_login
902
1122
  }),
903
1123
  annotations: {
904
1124
  readOnlyHint: false,
@@ -914,7 +1134,14 @@ const operationFactories = {
914
1134
  tags: ["Branch"]
915
1135
  },
916
1136
  invoke: (client, input, signal) => raw.createProjectBranchRole({
917
- ...input,
1137
+ path: optionalGroup({
1138
+ "project_id": input["project_id"],
1139
+ "branch_id": input["branch_id"]
1140
+ }, true),
1141
+ body: optionalGroup({ "role": optionalGroup({
1142
+ "name": input["name"],
1143
+ "no_login": input["no_login"]
1144
+ }, true) }, true),
918
1145
  client,
919
1146
  signal,
920
1147
  throwOnError: true
@@ -926,8 +1153,20 @@ const operationFactories = {
926
1153
  title: "Create compute endpoint",
927
1154
  description: "Creates a compute endpoint for the specified branch.\nA compute endpoint is a Neon compute instance.\nThere is a maximum of one read-write compute endpoint per branch.\nIf the specified branch already has a read-write compute endpoint, the operation fails.\nA branch can have multiple read-only compute endpoints.\n\nFor more information about compute endpoints, see [Manage computes](https://neon.com/docs/manage/endpoints/).\n",
928
1155
  inputSchema: z.strictObject({
929
- body: zCreateProjectEndpointBody,
930
- path: zCreateProjectEndpointPath
1156
+ "project_id": zCreateProjectEndpointPath.shape.project_id,
1157
+ "branch_id": zCreateProjectEndpointBody.shape.endpoint.shape.branch_id,
1158
+ "region_id": zCreateProjectEndpointBody.shape.endpoint.shape.region_id,
1159
+ "type": zCreateProjectEndpointBody.shape.endpoint.shape.type,
1160
+ "settings": zCreateProjectEndpointBody.shape.endpoint.shape.settings,
1161
+ "autoscaling_limit_min_cu": zCreateProjectEndpointBody.shape.endpoint.shape.autoscaling_limit_min_cu,
1162
+ "autoscaling_limit_max_cu": zCreateProjectEndpointBody.shape.endpoint.shape.autoscaling_limit_max_cu,
1163
+ "provisioner": zCreateProjectEndpointBody.shape.endpoint.shape.provisioner,
1164
+ "pooler_enabled": zCreateProjectEndpointBody.shape.endpoint.shape.pooler_enabled,
1165
+ "pooler_mode": zCreateProjectEndpointBody.shape.endpoint.shape.pooler_mode,
1166
+ "disabled": zCreateProjectEndpointBody.shape.endpoint.shape.disabled,
1167
+ "passwordless_access": zCreateProjectEndpointBody.shape.endpoint.shape.passwordless_access,
1168
+ "suspend_timeout_seconds": zCreateProjectEndpointBody.shape.endpoint.shape.suspend_timeout_seconds,
1169
+ "name": zCreateProjectEndpointBody.shape.endpoint.shape.name
931
1170
  }),
932
1171
  annotations: {
933
1172
  readOnlyHint: false,
@@ -943,7 +1182,22 @@ const operationFactories = {
943
1182
  tags: ["Endpoint"]
944
1183
  },
945
1184
  invoke: (client, input, signal) => raw.createProjectEndpoint({
946
- ...input,
1185
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
1186
+ body: optionalGroup({ "endpoint": optionalGroup({
1187
+ "branch_id": input["branch_id"],
1188
+ "region_id": input["region_id"],
1189
+ "type": input["type"],
1190
+ "settings": input["settings"],
1191
+ "autoscaling_limit_min_cu": input["autoscaling_limit_min_cu"],
1192
+ "autoscaling_limit_max_cu": input["autoscaling_limit_max_cu"],
1193
+ "provisioner": input["provisioner"],
1194
+ "pooler_enabled": input["pooler_enabled"],
1195
+ "pooler_mode": input["pooler_mode"],
1196
+ "disabled": input["disabled"],
1197
+ "passwordless_access": input["passwordless_access"],
1198
+ "suspend_timeout_seconds": input["suspend_timeout_seconds"],
1199
+ "name": input["name"]
1200
+ }, true) }, true),
947
1201
  client,
948
1202
  signal,
949
1203
  throwOnError: true
@@ -955,8 +1209,8 @@ const operationFactories = {
955
1209
  title: "Create a project transfer request",
956
1210
  description: "Creates a transfer request for the specified project. The request expires after a set period.\nTo accept the request, the recipient calls `PUT /projects/{project_id}/transfer_requests/{request_id}`\nor uses the Neon Console claim link.\nThe optional `ru` parameter redirects the recipient after acceptance.\n",
957
1211
  inputSchema: z.strictObject({
958
- body: zCreateProjectTransferRequestBody.optional(),
959
- path: zCreateProjectTransferRequestPath
1212
+ "project_id": zCreateProjectTransferRequestPath.shape.project_id,
1213
+ "ttl_seconds": zCreateProjectTransferRequestBody.shape.ttl_seconds.optional()
960
1214
  }),
961
1215
  annotations: {
962
1216
  readOnlyHint: false,
@@ -972,7 +1226,8 @@ const operationFactories = {
972
1226
  tags: ["Project"]
973
1227
  },
974
1228
  invoke: (client, input, signal) => raw.createProjectTransferRequest({
975
- ...input,
1229
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
1230
+ body: optionalGroup({ "ttl_seconds": input["ttl_seconds"] }, false),
976
1231
  client,
977
1232
  signal,
978
1233
  throwOnError: true
@@ -984,8 +1239,12 @@ const operationFactories = {
984
1239
  title: "Create snapshot",
985
1240
  description: "Creates a snapshot from the specified branch.\nThis operation may initiate an asynchronous process.\n",
986
1241
  inputSchema: z.strictObject({
987
- path: zCreateSnapshotPath,
988
- query: zCreateSnapshotQuery.optional()
1242
+ "project_id": zCreateSnapshotPath.shape.project_id,
1243
+ "branch_id": zCreateSnapshotPath.shape.branch_id,
1244
+ "lsn": zCreateSnapshotQuery.shape.lsn.optional(),
1245
+ "timestamp": zCreateSnapshotQuery.shape.timestamp.optional(),
1246
+ "name": zCreateSnapshotQuery.shape.name.optional(),
1247
+ "expires_at": zCreateSnapshotQuery.shape.expires_at.optional()
989
1248
  }),
990
1249
  annotations: {
991
1250
  readOnlyHint: false,
@@ -1001,7 +1260,16 @@ const operationFactories = {
1001
1260
  tags: ["Snapshot"]
1002
1261
  },
1003
1262
  invoke: (client, input, signal) => raw.createSnapshot({
1004
- ...input,
1263
+ path: optionalGroup({
1264
+ "project_id": input["project_id"],
1265
+ "branch_id": input["branch_id"]
1266
+ }, true),
1267
+ query: optionalGroup({
1268
+ "lsn": input["lsn"],
1269
+ "timestamp": input["timestamp"],
1270
+ "name": input["name"],
1271
+ "expires_at": input["expires_at"]
1272
+ }, false),
1005
1273
  client,
1006
1274
  signal,
1007
1275
  throwOnError: true
@@ -1012,7 +1280,11 @@ const operationFactories = {
1012
1280
  id: "delete_branch_neon_auth_oauth_provider",
1013
1281
  title: "Delete OAuth provider",
1014
1282
  description: "Deletes an OAuth provider from the specified project.\n",
1015
- inputSchema: z.strictObject({ path: zDeleteBranchNeonAuthOauthProviderPath }),
1283
+ inputSchema: z.strictObject({
1284
+ "project_id": zDeleteBranchNeonAuthOauthProviderPath.shape.project_id,
1285
+ "branch_id": zDeleteBranchNeonAuthOauthProviderPath.shape.branch_id,
1286
+ "oauth_provider_id": zDeleteBranchNeonAuthOauthProviderPath.shape.oauth_provider_id
1287
+ }),
1016
1288
  annotations: {
1017
1289
  readOnlyHint: false,
1018
1290
  destructiveHint: true,
@@ -1027,7 +1299,11 @@ const operationFactories = {
1027
1299
  tags: ["Auth"]
1028
1300
  },
1029
1301
  invoke: (client, input, signal) => raw.deleteBranchNeonAuthOauthProvider({
1030
- ...input,
1302
+ path: optionalGroup({
1303
+ "project_id": input["project_id"],
1304
+ "branch_id": input["branch_id"],
1305
+ "oauth_provider_id": input["oauth_provider_id"]
1306
+ }, true),
1031
1307
  client,
1032
1308
  signal,
1033
1309
  throwOnError: true
@@ -1039,8 +1315,10 @@ const operationFactories = {
1039
1315
  title: "Delete domain from redirect_uri whitelist",
1040
1316
  description: "Removes a domain from the redirect URI whitelist for the specified branch.\nAfter removal, the domain can no longer be used as a redirect target after authentication.\n",
1041
1317
  inputSchema: z.strictObject({
1042
- body: zDeleteBranchNeonAuthTrustedDomainBody,
1043
- path: zDeleteBranchNeonAuthTrustedDomainPath
1318
+ "project_id": zDeleteBranchNeonAuthTrustedDomainPath.shape.project_id,
1319
+ "branch_id": zDeleteBranchNeonAuthTrustedDomainPath.shape.branch_id,
1320
+ "auth_provider": zDeleteBranchNeonAuthTrustedDomainBody.shape.auth_provider,
1321
+ "domains": zDeleteBranchNeonAuthTrustedDomainBody.shape.domains
1044
1322
  }),
1045
1323
  annotations: {
1046
1324
  readOnlyHint: false,
@@ -1056,7 +1334,14 @@ const operationFactories = {
1056
1334
  tags: ["Auth"]
1057
1335
  },
1058
1336
  invoke: (client, input, signal) => raw.deleteBranchNeonAuthTrustedDomain({
1059
- ...input,
1337
+ path: optionalGroup({
1338
+ "project_id": input["project_id"],
1339
+ "branch_id": input["branch_id"]
1340
+ }, true),
1341
+ body: optionalGroup({
1342
+ "auth_provider": input["auth_provider"],
1343
+ "domains": input["domains"]
1344
+ }, true),
1060
1345
  client,
1061
1346
  signal,
1062
1347
  throwOnError: true
@@ -1067,7 +1352,11 @@ const operationFactories = {
1067
1352
  id: "delete_branch_neon_auth_user",
1068
1353
  title: "Delete auth user",
1069
1354
  description: "Deletes the specified user from the Neon Auth user directory for the specified branch.\nRemoves the user record from `neon_auth.users_sync`. This action cannot be undone.\n",
1070
- inputSchema: z.strictObject({ path: zDeleteBranchNeonAuthUserPath }),
1355
+ inputSchema: z.strictObject({
1356
+ "project_id": zDeleteBranchNeonAuthUserPath.shape.project_id,
1357
+ "branch_id": zDeleteBranchNeonAuthUserPath.shape.branch_id,
1358
+ "auth_user_id": zDeleteBranchNeonAuthUserPath.shape.auth_user_id
1359
+ }),
1071
1360
  annotations: {
1072
1361
  readOnlyHint: false,
1073
1362
  destructiveHint: true,
@@ -1082,7 +1371,11 @@ const operationFactories = {
1082
1371
  tags: ["Auth"]
1083
1372
  },
1084
1373
  invoke: (client, input, signal) => raw.deleteBranchNeonAuthUser({
1085
- ...input,
1374
+ path: optionalGroup({
1375
+ "project_id": input["project_id"],
1376
+ "branch_id": input["branch_id"],
1377
+ "auth_user_id": input["auth_user_id"]
1378
+ }, true),
1086
1379
  client,
1087
1380
  signal,
1088
1381
  throwOnError: true
@@ -1094,8 +1387,9 @@ const operationFactories = {
1094
1387
  title: "Delete trusted redirect URI domain",
1095
1388
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/domains` instead. Removal scheduled for March 1, 2026.\n",
1096
1389
  inputSchema: z.strictObject({
1097
- body: zDeleteNeonAuthDomainFromRedirectUriWhitelistBody,
1098
- path: zDeleteNeonAuthDomainFromRedirectUriWhitelistPath
1390
+ "project_id": zDeleteNeonAuthDomainFromRedirectUriWhitelistPath.shape.project_id,
1391
+ "auth_provider": zDeleteNeonAuthDomainFromRedirectUriWhitelistBody.shape.auth_provider,
1392
+ "domains": zDeleteNeonAuthDomainFromRedirectUriWhitelistBody.shape.domains
1099
1393
  }),
1100
1394
  annotations: {
1101
1395
  readOnlyHint: false,
@@ -1111,7 +1405,11 @@ const operationFactories = {
1111
1405
  tags: ["Auth (legacy)"]
1112
1406
  },
1113
1407
  invoke: (client, input, signal) => raw.deleteNeonAuthDomainFromRedirectUriWhitelist({
1114
- ...input,
1408
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
1409
+ body: optionalGroup({
1410
+ "auth_provider": input["auth_provider"],
1411
+ "domains": input["domains"]
1412
+ }, true),
1115
1413
  client,
1116
1414
  signal,
1117
1415
  throwOnError: true
@@ -1123,8 +1421,9 @@ const operationFactories = {
1123
1421
  title: "Delete integration with auth provider",
1124
1422
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth` instead. Removal scheduled for March 1, 2026.",
1125
1423
  inputSchema: z.strictObject({
1126
- body: zDeleteNeonAuthIntegrationBody.optional(),
1127
- path: zDeleteNeonAuthIntegrationPath
1424
+ "project_id": zDeleteNeonAuthIntegrationPath.shape.project_id,
1425
+ "auth_provider": zDeleteNeonAuthIntegrationPath.shape.auth_provider,
1426
+ "delete_data": zDeleteNeonAuthIntegrationBody.shape.delete_data.optional()
1128
1427
  }),
1129
1428
  annotations: {
1130
1429
  readOnlyHint: false,
@@ -1140,7 +1439,11 @@ const operationFactories = {
1140
1439
  tags: ["Auth (legacy)"]
1141
1440
  },
1142
1441
  invoke: (client, input, signal) => raw.deleteNeonAuthIntegration({
1143
- ...input,
1442
+ path: optionalGroup({
1443
+ "project_id": input["project_id"],
1444
+ "auth_provider": input["auth_provider"]
1445
+ }, true),
1446
+ body: optionalGroup({ "delete_data": input["delete_data"] }, false),
1144
1447
  client,
1145
1448
  signal,
1146
1449
  throwOnError: true
@@ -1151,7 +1454,10 @@ const operationFactories = {
1151
1454
  id: "delete_neon_auth_oauth_provider",
1152
1455
  title: "Delete OAuth provider",
1153
1456
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/oauth_providers/{oauth_provider_id}` instead. Removal scheduled for March 1, 2026.\n",
1154
- inputSchema: z.strictObject({ path: zDeleteNeonAuthOauthProviderPath }),
1457
+ inputSchema: z.strictObject({
1458
+ "project_id": zDeleteNeonAuthOauthProviderPath.shape.project_id,
1459
+ "oauth_provider_id": zDeleteNeonAuthOauthProviderPath.shape.oauth_provider_id
1460
+ }),
1155
1461
  annotations: {
1156
1462
  readOnlyHint: false,
1157
1463
  destructiveHint: true,
@@ -1166,7 +1472,10 @@ const operationFactories = {
1166
1472
  tags: ["Auth (legacy)"]
1167
1473
  },
1168
1474
  invoke: (client, input, signal) => raw.deleteNeonAuthOauthProvider({
1169
- ...input,
1475
+ path: optionalGroup({
1476
+ "project_id": input["project_id"],
1477
+ "oauth_provider_id": input["oauth_provider_id"]
1478
+ }, true),
1170
1479
  client,
1171
1480
  signal,
1172
1481
  throwOnError: true
@@ -1177,7 +1486,10 @@ const operationFactories = {
1177
1486
  id: "delete_neon_auth_user",
1178
1487
  title: "Delete auth user",
1179
1488
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/users/{auth_user_id}` instead. Removal scheduled for March 1, 2026.\n",
1180
- inputSchema: z.strictObject({ path: zDeleteNeonAuthUserPath }),
1489
+ inputSchema: z.strictObject({
1490
+ "project_id": zDeleteNeonAuthUserPath.shape.project_id,
1491
+ "auth_user_id": zDeleteNeonAuthUserPath.shape.auth_user_id
1492
+ }),
1181
1493
  annotations: {
1182
1494
  readOnlyHint: false,
1183
1495
  destructiveHint: true,
@@ -1192,7 +1504,10 @@ const operationFactories = {
1192
1504
  tags: ["Auth (legacy)"]
1193
1505
  },
1194
1506
  invoke: (client, input, signal) => raw.deleteNeonAuthUser({
1195
- ...input,
1507
+ path: optionalGroup({
1508
+ "project_id": input["project_id"],
1509
+ "auth_user_id": input["auth_user_id"]
1510
+ }, true),
1196
1511
  client,
1197
1512
  signal,
1198
1513
  throwOnError: true
@@ -1203,7 +1518,7 @@ const operationFactories = {
1203
1518
  id: "delete_organization_spending_limit",
1204
1519
  title: "Remove organization spending limit",
1205
1520
  description: "Removes the configured monthly spending limit for the specified organization.\nIdempotent — removing an already-unset limit still succeeds.\nAvailable to organization admins on Launch and Scale plans only.\n",
1206
- inputSchema: z.strictObject({ path: zDeleteOrganizationSpendingLimitPath }),
1521
+ inputSchema: z.strictObject({ "org_id": zDeleteOrganizationSpendingLimitPath.shape.org_id }),
1207
1522
  annotations: {
1208
1523
  readOnlyHint: false,
1209
1524
  destructiveHint: true,
@@ -1218,7 +1533,7 @@ const operationFactories = {
1218
1533
  tags: ["Organizations"]
1219
1534
  },
1220
1535
  invoke: (client, input, signal) => raw.deleteOrganizationSpendingLimit({
1221
- ...input,
1536
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
1222
1537
  client,
1223
1538
  signal,
1224
1539
  throwOnError: true
@@ -1229,7 +1544,11 @@ const operationFactories = {
1229
1544
  id: "delete_organization_vpc_endpoint",
1230
1545
  title: "Delete VPC endpoint",
1231
1546
  description: "Deletes the VPC endpoint from the specified Neon organization.\nIf you delete a VPC endpoint from a Neon organization, that VPC endpoint cannot\nbe added back to the Neon organization.\n",
1232
- inputSchema: z.strictObject({ path: zDeleteOrganizationVpcEndpointPath }),
1547
+ inputSchema: z.strictObject({
1548
+ "org_id": zDeleteOrganizationVpcEndpointPath.shape.org_id,
1549
+ "region_id": zDeleteOrganizationVpcEndpointPath.shape.region_id,
1550
+ "vpc_endpoint_id": zDeleteOrganizationVpcEndpointPath.shape.vpc_endpoint_id
1551
+ }),
1233
1552
  annotations: {
1234
1553
  readOnlyHint: false,
1235
1554
  destructiveHint: true,
@@ -1244,7 +1563,11 @@ const operationFactories = {
1244
1563
  tags: ["Organizations"]
1245
1564
  },
1246
1565
  invoke: (client, input, signal) => raw.deleteOrganizationVpcEndpoint({
1247
- ...input,
1566
+ path: optionalGroup({
1567
+ "org_id": input["org_id"],
1568
+ "region_id": input["region_id"],
1569
+ "vpc_endpoint_id": input["vpc_endpoint_id"]
1570
+ }, true),
1248
1571
  client,
1249
1572
  signal,
1250
1573
  throwOnError: true
@@ -1255,7 +1578,7 @@ const operationFactories = {
1255
1578
  id: "delete_project",
1256
1579
  title: "Delete project",
1257
1580
  description: "Deletes the specified project and all its endpoints, branches, databases, and users.\nDeleted projects can be recovered within 7 days using `POST /projects/{project_id}/recover`.\nTo list recoverable projects, use `GET /projects?recoverable=true`.\n",
1258
- inputSchema: z.strictObject({ path: zDeleteProjectPath }),
1581
+ inputSchema: z.strictObject({ "project_id": zDeleteProjectPath.shape.project_id }),
1259
1582
  annotations: {
1260
1583
  readOnlyHint: false,
1261
1584
  destructiveHint: true,
@@ -1270,7 +1593,7 @@ const operationFactories = {
1270
1593
  tags: ["Project"]
1271
1594
  },
1272
1595
  invoke: (client, input, signal) => raw.deleteProject({
1273
- ...input,
1596
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
1274
1597
  client,
1275
1598
  signal,
1276
1599
  throwOnError: true
@@ -1282,8 +1605,9 @@ const operationFactories = {
1282
1605
  title: "Delete branch",
1283
1606
  description: "Deletes the specified branch from a project and places all compute endpoints into an idle state, breaking existing client connections.\n\nThe deletion completes after all operations finish.\nYou cannot delete a project's root or default branch, or a branch that has a child branch.\nA project must have at least one branch.\n\nBy default, deleted branches can be recovered within a 7-day grace period.\nUse the `hard_delete` parameter to permanently delete the branch immediately.\nFor related information, see [Manage branches](https://neon.com/docs/manage/branches/).\n",
1284
1607
  inputSchema: z.strictObject({
1285
- path: zDeleteProjectBranchPath,
1286
- query: zDeleteProjectBranchQuery.optional()
1608
+ "project_id": zDeleteProjectBranchPath.shape.project_id,
1609
+ "branch_id": zDeleteProjectBranchPath.shape.branch_id,
1610
+ "hard_delete": zDeleteProjectBranchQuery.shape.hard_delete.optional()
1287
1611
  }),
1288
1612
  annotations: {
1289
1613
  readOnlyHint: false,
@@ -1299,7 +1623,11 @@ const operationFactories = {
1299
1623
  tags: ["Branch"]
1300
1624
  },
1301
1625
  invoke: (client, input, signal) => raw.deleteProjectBranch({
1302
- ...input,
1626
+ path: optionalGroup({
1627
+ "project_id": input["project_id"],
1628
+ "branch_id": input["branch_id"]
1629
+ }, true),
1630
+ query: optionalGroup({ "hard_delete": input["hard_delete"] }, false),
1303
1631
  client,
1304
1632
  signal,
1305
1633
  throwOnError: true
@@ -1310,7 +1638,11 @@ const operationFactories = {
1310
1638
  id: "delete_project_branch_bucket",
1311
1639
  title: "Delete a bucket on the branch",
1312
1640
  description: "Deletes the named bucket from the specified branch.\n\n**Note**: This endpoint is currently in Beta.\n",
1313
- inputSchema: z.strictObject({ path: zDeleteProjectBranchBucketPath }),
1641
+ inputSchema: z.strictObject({
1642
+ "project_id": zDeleteProjectBranchBucketPath.shape.project_id,
1643
+ "branch_id": zDeleteProjectBranchBucketPath.shape.branch_id,
1644
+ "bucket_name": zDeleteProjectBranchBucketPath.shape.bucket_name
1645
+ }),
1314
1646
  annotations: {
1315
1647
  readOnlyHint: false,
1316
1648
  destructiveHint: true,
@@ -1325,7 +1657,11 @@ const operationFactories = {
1325
1657
  tags: ["Buckets"]
1326
1658
  },
1327
1659
  invoke: (client, input, signal) => raw.deleteProjectBranchBucket({
1328
- ...input,
1660
+ path: optionalGroup({
1661
+ "project_id": input["project_id"],
1662
+ "branch_id": input["branch_id"],
1663
+ "bucket_name": input["bucket_name"]
1664
+ }, true),
1329
1665
  client,
1330
1666
  signal,
1331
1667
  throwOnError: true
@@ -1336,7 +1672,12 @@ const operationFactories = {
1336
1672
  id: "delete_project_branch_bucket_object",
1337
1673
  title: "Delete an object in a bucket",
1338
1674
  description: "Deletes the named object from the bucket on the specified branch.\nServed by the user's session (no customer S3 credentials required).\n\n**Note**: This endpoint is currently in Beta.\n",
1339
- inputSchema: z.strictObject({ path: zDeleteProjectBranchBucketObjectPath }),
1675
+ inputSchema: z.strictObject({
1676
+ "project_id": zDeleteProjectBranchBucketObjectPath.shape.project_id,
1677
+ "branch_id": zDeleteProjectBranchBucketObjectPath.shape.branch_id,
1678
+ "bucket_name": zDeleteProjectBranchBucketObjectPath.shape.bucket_name,
1679
+ "object_key": zDeleteProjectBranchBucketObjectPath.shape.object_key
1680
+ }),
1340
1681
  annotations: {
1341
1682
  readOnlyHint: false,
1342
1683
  destructiveHint: true,
@@ -1351,7 +1692,12 @@ const operationFactories = {
1351
1692
  tags: ["Buckets"]
1352
1693
  },
1353
1694
  invoke: (client, input, signal) => raw.deleteProjectBranchBucketObject({
1354
- ...input,
1695
+ path: optionalGroup({
1696
+ "project_id": input["project_id"],
1697
+ "branch_id": input["branch_id"],
1698
+ "bucket_name": input["bucket_name"],
1699
+ "object_key": input["object_key"]
1700
+ }, true),
1355
1701
  client,
1356
1702
  signal,
1357
1703
  throwOnError: true
@@ -1363,8 +1709,10 @@ const operationFactories = {
1363
1709
  title: "Delete every object under a key prefix (folder) in a bucket",
1364
1710
  description: "Soft-deletes every object on the specified branch whose key starts with\n`prefix`, in a single call. Intended to back a \"delete folder\" action in\nan object browser: a `prefix` of `app/avatars/` removes every object\nbeneath that folder. Served by the user's session (no customer S3\ncredentials required).\n\n`prefix` must be non-empty, end with `/`, be at most 1024 bytes, and\ncontain no control characters - a partial-segment prefix cannot\naccidentally delete sibling keys. Returns the number of objects\nsoft-deleted (`deleted`), which may be 0 when no live object matched the\nprefix on this branch.\n\nOnly objects physically present on this branch are tombstoned; objects\ninherited from an ancestor branch via copy-on-write (not materialized on\nthis branch) are out of scope.\n\n**Note**: This endpoint is currently in Beta.\n",
1365
1711
  inputSchema: z.strictObject({
1366
- path: zDeleteProjectBranchBucketObjectsByPrefixPath,
1367
- query: zDeleteProjectBranchBucketObjectsByPrefixQuery
1712
+ "project_id": zDeleteProjectBranchBucketObjectsByPrefixPath.shape.project_id,
1713
+ "branch_id": zDeleteProjectBranchBucketObjectsByPrefixPath.shape.branch_id,
1714
+ "bucket_name": zDeleteProjectBranchBucketObjectsByPrefixPath.shape.bucket_name,
1715
+ "prefix": zDeleteProjectBranchBucketObjectsByPrefixQuery.shape.prefix
1368
1716
  }),
1369
1717
  annotations: {
1370
1718
  readOnlyHint: false,
@@ -1380,7 +1728,12 @@ const operationFactories = {
1380
1728
  tags: ["Buckets"]
1381
1729
  },
1382
1730
  invoke: (client, input, signal) => raw.deleteProjectBranchBucketObjectsByPrefix({
1383
- ...input,
1731
+ path: optionalGroup({
1732
+ "project_id": input["project_id"],
1733
+ "branch_id": input["branch_id"],
1734
+ "bucket_name": input["bucket_name"]
1735
+ }, true),
1736
+ query: optionalGroup({ "prefix": input["prefix"] }, true),
1384
1737
  client,
1385
1738
  signal,
1386
1739
  throwOnError: true
@@ -1391,7 +1744,11 @@ const operationFactories = {
1391
1744
  id: "delete_project_branch_data_api",
1392
1745
  title: "Delete Neon Data API",
1393
1746
  description: "Deletes the Neon Data API for the specified branch.\nExisting connections using the Data API endpoint will fail after deletion.\n",
1394
- inputSchema: z.strictObject({ path: zDeleteProjectBranchDataApiPath }),
1747
+ inputSchema: z.strictObject({
1748
+ "project_id": zDeleteProjectBranchDataApiPath.shape.project_id,
1749
+ "branch_id": zDeleteProjectBranchDataApiPath.shape.branch_id,
1750
+ "database_name": zDeleteProjectBranchDataApiPath.shape.database_name
1751
+ }),
1395
1752
  annotations: {
1396
1753
  readOnlyHint: false,
1397
1754
  destructiveHint: true,
@@ -1406,7 +1763,11 @@ const operationFactories = {
1406
1763
  tags: ["DataAPI"]
1407
1764
  },
1408
1765
  invoke: (client, input, signal) => raw.deleteProjectBranchDataApi({
1409
- ...input,
1766
+ path: optionalGroup({
1767
+ "project_id": input["project_id"],
1768
+ "branch_id": input["branch_id"],
1769
+ "database_name": input["database_name"]
1770
+ }, true),
1410
1771
  client,
1411
1772
  signal,
1412
1773
  throwOnError: true
@@ -1417,7 +1778,11 @@ const operationFactories = {
1417
1778
  id: "delete_project_branch_database",
1418
1779
  title: "Delete database",
1419
1780
  description: "Deletes the specified database from the branch.\nFor related information, see [Manage databases](https://neon.com/docs/manage/databases/).\n",
1420
- inputSchema: z.strictObject({ path: zDeleteProjectBranchDatabasePath }),
1781
+ inputSchema: z.strictObject({
1782
+ "project_id": zDeleteProjectBranchDatabasePath.shape.project_id,
1783
+ "branch_id": zDeleteProjectBranchDatabasePath.shape.branch_id,
1784
+ "database_name": zDeleteProjectBranchDatabasePath.shape.database_name
1785
+ }),
1421
1786
  annotations: {
1422
1787
  readOnlyHint: false,
1423
1788
  destructiveHint: true,
@@ -1432,7 +1797,11 @@ const operationFactories = {
1432
1797
  tags: ["Branch"]
1433
1798
  },
1434
1799
  invoke: (client, input, signal) => raw.deleteProjectBranchDatabase({
1435
- ...input,
1800
+ path: optionalGroup({
1801
+ "project_id": input["project_id"],
1802
+ "branch_id": input["branch_id"],
1803
+ "database_name": input["database_name"]
1804
+ }, true),
1436
1805
  client,
1437
1806
  signal,
1438
1807
  throwOnError: true
@@ -1443,7 +1812,11 @@ const operationFactories = {
1443
1812
  id: "delete_project_branch_function",
1444
1813
  title: "Delete a function on the branch",
1445
1814
  description: "Deletes the function identified by its slug.\n\n**Note**: This endpoint is currently in Beta.\n",
1446
- inputSchema: z.strictObject({ path: zDeleteProjectBranchFunctionPath }),
1815
+ inputSchema: z.strictObject({
1816
+ "project_id": zDeleteProjectBranchFunctionPath.shape.project_id,
1817
+ "branch_id": zDeleteProjectBranchFunctionPath.shape.branch_id,
1818
+ "slug": zDeleteProjectBranchFunctionPath.shape.slug
1819
+ }),
1447
1820
  annotations: {
1448
1821
  readOnlyHint: false,
1449
1822
  destructiveHint: true,
@@ -1458,7 +1831,11 @@ const operationFactories = {
1458
1831
  tags: ["Functions"]
1459
1832
  },
1460
1833
  invoke: (client, input, signal) => raw.deleteProjectBranchFunction({
1461
- ...input,
1834
+ path: optionalGroup({
1835
+ "project_id": input["project_id"],
1836
+ "branch_id": input["branch_id"],
1837
+ "slug": input["slug"]
1838
+ }, true),
1462
1839
  client,
1463
1840
  signal,
1464
1841
  throwOnError: true
@@ -1469,7 +1846,11 @@ const operationFactories = {
1469
1846
  id: "delete_project_branch_role",
1470
1847
  title: "Delete role",
1471
1848
  description: "Deletes the specified Postgres role from the branch.\nFor related information, see [Manage roles](https://neon.com/docs/manage/roles/).\n",
1472
- inputSchema: z.strictObject({ path: zDeleteProjectBranchRolePath }),
1849
+ inputSchema: z.strictObject({
1850
+ "project_id": zDeleteProjectBranchRolePath.shape.project_id,
1851
+ "branch_id": zDeleteProjectBranchRolePath.shape.branch_id,
1852
+ "role_name": zDeleteProjectBranchRolePath.shape.role_name
1853
+ }),
1473
1854
  annotations: {
1474
1855
  readOnlyHint: false,
1475
1856
  destructiveHint: true,
@@ -1484,7 +1865,11 @@ const operationFactories = {
1484
1865
  tags: ["Branch"]
1485
1866
  },
1486
1867
  invoke: (client, input, signal) => raw.deleteProjectBranchRole({
1487
- ...input,
1868
+ path: optionalGroup({
1869
+ "project_id": input["project_id"],
1870
+ "branch_id": input["branch_id"],
1871
+ "role_name": input["role_name"]
1872
+ }, true),
1488
1873
  client,
1489
1874
  signal,
1490
1875
  throwOnError: true
@@ -1495,7 +1880,10 @@ const operationFactories = {
1495
1880
  id: "delete_project_endpoint",
1496
1881
  title: "Delete compute endpoint",
1497
1882
  description: "Deletes the specified compute endpoint.\nA compute endpoint is a Neon compute instance.\nDeleting a compute endpoint drops existing network connections to the compute endpoint.\nThe deletion is completed when the last operation in the chain finishes successfully.\n\nAn `endpoint_id` has an `ep-` prefix.\nFor information about compute endpoints, see [Manage computes](https://neon.com/docs/manage/endpoints/).\n",
1498
- inputSchema: z.strictObject({ path: zDeleteProjectEndpointPath }),
1883
+ inputSchema: z.strictObject({
1884
+ "project_id": zDeleteProjectEndpointPath.shape.project_id,
1885
+ "endpoint_id": zDeleteProjectEndpointPath.shape.endpoint_id
1886
+ }),
1499
1887
  annotations: {
1500
1888
  readOnlyHint: false,
1501
1889
  destructiveHint: true,
@@ -1510,7 +1898,10 @@ const operationFactories = {
1510
1898
  tags: ["Endpoint"]
1511
1899
  },
1512
1900
  invoke: (client, input, signal) => raw.deleteProjectEndpoint({
1513
- ...input,
1901
+ path: optionalGroup({
1902
+ "project_id": input["project_id"],
1903
+ "endpoint_id": input["endpoint_id"]
1904
+ }, true),
1514
1905
  client,
1515
1906
  signal,
1516
1907
  throwOnError: true
@@ -1521,7 +1912,10 @@ const operationFactories = {
1521
1912
  id: "delete_project_jwks",
1522
1913
  title: "Delete JWKS URL",
1523
1914
  description: "Removes the specified JWKS URL from the project.\nJWTs signed by keys from the removed URL can no longer authenticate to the project's endpoints.\n",
1524
- inputSchema: z.strictObject({ path: zDeleteProjectJwksPath }),
1915
+ inputSchema: z.strictObject({
1916
+ "project_id": zDeleteProjectJwksPath.shape.project_id,
1917
+ "jwks_id": zDeleteProjectJwksPath.shape.jwks_id
1918
+ }),
1525
1919
  annotations: {
1526
1920
  readOnlyHint: false,
1527
1921
  destructiveHint: true,
@@ -1536,7 +1930,10 @@ const operationFactories = {
1536
1930
  tags: ["Project"]
1537
1931
  },
1538
1932
  invoke: (client, input, signal) => raw.deleteProjectJwks({
1539
- ...input,
1933
+ path: optionalGroup({
1934
+ "project_id": input["project_id"],
1935
+ "jwks_id": input["jwks_id"]
1936
+ }, true),
1540
1937
  client,
1541
1938
  signal,
1542
1939
  throwOnError: true
@@ -1547,7 +1944,10 @@ const operationFactories = {
1547
1944
  id: "delete_project_vpc_endpoint",
1548
1945
  title: "Delete VPC endpoint restriction",
1549
1946
  description: "Removes the specified VPC endpoint restriction from a Neon project.\n",
1550
- inputSchema: z.strictObject({ path: zDeleteProjectVpcEndpointPath }),
1947
+ inputSchema: z.strictObject({
1948
+ "project_id": zDeleteProjectVpcEndpointPath.shape.project_id,
1949
+ "vpc_endpoint_id": zDeleteProjectVpcEndpointPath.shape.vpc_endpoint_id
1950
+ }),
1551
1951
  annotations: {
1552
1952
  readOnlyHint: false,
1553
1953
  destructiveHint: true,
@@ -1562,7 +1962,10 @@ const operationFactories = {
1562
1962
  tags: ["Project"]
1563
1963
  },
1564
1964
  invoke: (client, input, signal) => raw.deleteProjectVpcEndpoint({
1565
- ...input,
1965
+ path: optionalGroup({
1966
+ "project_id": input["project_id"],
1967
+ "vpc_endpoint_id": input["vpc_endpoint_id"]
1968
+ }, true),
1566
1969
  client,
1567
1970
  signal,
1568
1971
  throwOnError: true
@@ -1573,7 +1976,10 @@ const operationFactories = {
1573
1976
  id: "delete_snapshot",
1574
1977
  title: "Delete snapshot",
1575
1978
  description: "Deletes the specified snapshot.\n",
1576
- inputSchema: z.strictObject({ path: zDeleteSnapshotPath }),
1979
+ inputSchema: z.strictObject({
1980
+ "project_id": zDeleteSnapshotPath.shape.project_id,
1981
+ "snapshot_id": zDeleteSnapshotPath.shape.snapshot_id
1982
+ }),
1577
1983
  annotations: {
1578
1984
  readOnlyHint: false,
1579
1985
  destructiveHint: true,
@@ -1588,7 +1994,10 @@ const operationFactories = {
1588
1994
  tags: ["Snapshot"]
1589
1995
  },
1590
1996
  invoke: (client, input, signal) => raw.deleteSnapshot({
1591
- ...input,
1997
+ path: optionalGroup({
1998
+ "project_id": input["project_id"],
1999
+ "snapshot_id": input["snapshot_id"]
2000
+ }, true),
1592
2001
  client,
1593
2002
  signal,
1594
2003
  throwOnError: true
@@ -1600,8 +2009,9 @@ const operationFactories = {
1600
2009
  title: "Disable Neon Auth for the branch",
1601
2010
  description: "Disables the Neon Auth integration for the specified branch, removing the connection\nto the authentication provider.\nIf `delete_data` is `true`, also deletes the `neon_auth` schema and all associated tables\nfrom the branch database.\nThe integration can be re-enabled by calling `POST /projects/{project_id}/branches/{branch_id}/auth`.\n",
1602
2011
  inputSchema: z.strictObject({
1603
- body: zDisableNeonAuthBody.optional(),
1604
- path: zDisableNeonAuthPath
2012
+ "project_id": zDisableNeonAuthPath.shape.project_id,
2013
+ "branch_id": zDisableNeonAuthPath.shape.branch_id,
2014
+ "delete_data": zDisableNeonAuthBody.shape.delete_data.optional()
1605
2015
  }),
1606
2016
  annotations: {
1607
2017
  readOnlyHint: false,
@@ -1617,7 +2027,11 @@ const operationFactories = {
1617
2027
  tags: ["Auth"]
1618
2028
  },
1619
2029
  invoke: (client, input, signal) => raw.disableNeonAuth({
1620
- ...input,
2030
+ path: optionalGroup({
2031
+ "project_id": input["project_id"],
2032
+ "branch_id": input["branch_id"]
2033
+ }, true),
2034
+ body: optionalGroup({ "delete_data": input["delete_data"] }, false),
1621
2035
  client,
1622
2036
  signal,
1623
2037
  throwOnError: true
@@ -1629,8 +2043,9 @@ const operationFactories = {
1629
2043
  title: "Finalize branch restore from snapshot",
1630
2044
  description: "Finalize the restore operation for a branch created from a snapshot.\nThis operation updates the branch so it functions as the original branch it replaced.\nThis includes:\n - Reassigning any computes from the original branch to the restored branch (this will restart the computes)\n - Renaming the restored branch to the original branch's name\n - Renaming the original branch so it no longer uses the original name\n\nThis operation only applies to branches created using the `restoreSnapshot` endpoint with `finalize_restore: false`.\n",
1631
2045
  inputSchema: z.strictObject({
1632
- body: zFinalizeRestoreBranchBody.optional(),
1633
- path: zFinalizeRestoreBranchPath
2046
+ "project_id": zFinalizeRestoreBranchPath.shape.project_id,
2047
+ "branch_id": zFinalizeRestoreBranchPath.shape.branch_id,
2048
+ "name": zFinalizeRestoreBranchBody.shape.name.optional()
1634
2049
  }),
1635
2050
  annotations: {
1636
2051
  readOnlyHint: false,
@@ -1646,7 +2061,11 @@ const operationFactories = {
1646
2061
  tags: ["Branch"]
1647
2062
  },
1648
2063
  invoke: (client, input, signal) => raw.finalizeRestoreBranch({
1649
- ...input,
2064
+ path: optionalGroup({
2065
+ "project_id": input["project_id"],
2066
+ "branch_id": input["branch_id"]
2067
+ }, true),
2068
+ body: optionalGroup({ "name": input["name"] }, false),
1650
2069
  client,
1651
2070
  signal,
1652
2071
  throwOnError: true
@@ -1657,7 +2076,7 @@ const operationFactories = {
1657
2076
  id: "get_active_regions",
1658
2077
  title: "List supported regions",
1659
2078
  description: "Lists supported Neon regions.\n\n**Note:** Not all regions are available to all organizations. Pass the `org_id`\nparameter to get an accurate list of regions available to your organization.\n",
1660
- inputSchema: z.strictObject({ query: zGetActiveRegionsQuery.optional() }),
2079
+ inputSchema: z.strictObject({ "org_id": zGetActiveRegionsQuery.shape.org_id.optional() }),
1661
2080
  annotations: {
1662
2081
  readOnlyHint: true,
1663
2082
  openWorldHint: true
@@ -1671,7 +2090,7 @@ const operationFactories = {
1671
2090
  tags: ["Region"]
1672
2091
  },
1673
2092
  invoke: (client, input, signal) => raw.getActiveRegions({
1674
- ...input,
2093
+ query: optionalGroup({ "org_id": input["org_id"] }, false),
1675
2094
  client,
1676
2095
  signal,
1677
2096
  throwOnError: true
@@ -1682,7 +2101,10 @@ const operationFactories = {
1682
2101
  id: "get_anonymized_branch_status",
1683
2102
  title: "Retrieve anonymized branch status",
1684
2103
  description: "Retrieves the current status of an anonymized branch, including its state and progress information.\nThis endpoint allows you to monitor the anonymization process from initialization through completion.\nOnly anonymized branches will have status information available.\n\n**Note**: This endpoint is currently in Beta.\n",
1685
- inputSchema: z.strictObject({ path: zGetAnonymizedBranchStatusPath }),
2104
+ inputSchema: z.strictObject({
2105
+ "project_id": zGetAnonymizedBranchStatusPath.shape.project_id,
2106
+ "branch_id": zGetAnonymizedBranchStatusPath.shape.branch_id
2107
+ }),
1686
2108
  annotations: {
1687
2109
  readOnlyHint: true,
1688
2110
  openWorldHint: true
@@ -1696,7 +2118,10 @@ const operationFactories = {
1696
2118
  tags: ["Branch"]
1697
2119
  },
1698
2120
  invoke: (client, input, signal) => raw.getAnonymizedBranchStatus({
1699
- ...input,
2121
+ path: optionalGroup({
2122
+ "project_id": input["project_id"],
2123
+ "branch_id": input["branch_id"]
2124
+ }, true),
1700
2125
  client,
1701
2126
  signal,
1702
2127
  throwOnError: true
@@ -1721,7 +2146,6 @@ const operationFactories = {
1721
2146
  tags: ["Users"]
1722
2147
  },
1723
2148
  invoke: (client, input, signal) => raw.getAuthDetails({
1724
- ...input,
1725
2149
  client,
1726
2150
  signal,
1727
2151
  throwOnError: true
@@ -1732,7 +2156,7 @@ const operationFactories = {
1732
2156
  id: "get_available_preload_libraries",
1733
2157
  title: "List available shared preload libraries",
1734
2158
  description: "Returns the shared preload libraries available for the specified project's Postgres version.\nShared preload libraries are Postgres extensions that require the `shared_preload_libraries`\nsetting and a compute restart to activate.\nUse this list to determine which libraries can be enabled in the project's\n`settings.preload_libraries` configuration.\n",
1735
- inputSchema: z.strictObject({ path: zGetAvailablePreloadLibrariesPath }),
2159
+ inputSchema: z.strictObject({ "project_id": zGetAvailablePreloadLibrariesPath.shape.project_id }),
1736
2160
  annotations: {
1737
2161
  readOnlyHint: true,
1738
2162
  openWorldHint: true
@@ -1746,7 +2170,7 @@ const operationFactories = {
1746
2170
  tags: ["Project"]
1747
2171
  },
1748
2172
  invoke: (client, input, signal) => raw.getAvailablePreloadLibraries({
1749
- ...input,
2173
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
1750
2174
  client,
1751
2175
  signal,
1752
2176
  throwOnError: true
@@ -1758,8 +2182,12 @@ const operationFactories = {
1758
2182
  title: "Retrieve connection URI",
1759
2183
  description: "Retrieves a connection URI for the specified database.\nThe URI uses the standard PostgreSQL connection string format. Set `pooled=true` to include the `-pooler` suffix for a connection pooler URI.\n",
1760
2184
  inputSchema: z.strictObject({
1761
- path: zGetConnectionUriPath,
1762
- query: zGetConnectionUriQuery
2185
+ "project_id": zGetConnectionUriPath.shape.project_id,
2186
+ "branch_id": zGetConnectionUriQuery.shape.branch_id,
2187
+ "endpoint_id": zGetConnectionUriQuery.shape.endpoint_id,
2188
+ "database_name": zGetConnectionUriQuery.shape.database_name,
2189
+ "role_name": zGetConnectionUriQuery.shape.role_name,
2190
+ "pooled": zGetConnectionUriQuery.shape.pooled
1763
2191
  }),
1764
2192
  annotations: {
1765
2193
  readOnlyHint: true,
@@ -1774,7 +2202,14 @@ const operationFactories = {
1774
2202
  tags: ["Project"]
1775
2203
  },
1776
2204
  invoke: (client, input, signal) => raw.getConnectionUri({
1777
- ...input,
2205
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
2206
+ query: optionalGroup({
2207
+ "branch_id": input["branch_id"],
2208
+ "endpoint_id": input["endpoint_id"],
2209
+ "database_name": input["database_name"],
2210
+ "role_name": input["role_name"],
2211
+ "pooled": input["pooled"]
2212
+ }, true),
1778
2213
  client,
1779
2214
  signal,
1780
2215
  throwOnError: true
@@ -1785,7 +2220,17 @@ const operationFactories = {
1785
2220
  id: "get_consumption_history_per_branch_v2",
1786
2221
  title: "Retrieve branch consumption metrics",
1787
2222
  description: "Returns consumption metrics for each branch across one or more projects listed in\n`project_ids` (1 to 100 projects). Available for accounts on paid usage-based Launch, Scale,\nAgent, and Enterprise plans.\n\nHistory starts when the account first ingests branch-level consumption data.\n\nThe `metrics` query parameter is required. Only these six values are supported on this\nendpoint:\n`compute_unit_seconds`, `root_branch_bytes_month`, `child_branch_bytes_month`,\n`instant_restore_bytes_month`, `public_network_transfer_bytes`, `private_network_transfer_bytes`.\n\nThis endpoint does not support `extra_branches_month` or `snapshot_storage_bytes_month`.\nUse `GET /consumption_history/v2/projects` for those.\n\nConsumption metrics within each branch are returned in ascending time order (oldest first).\nThis request does not wake project computes.\n",
1788
- inputSchema: z.strictObject({ query: zGetConsumptionHistoryPerBranchV2Query }),
2223
+ inputSchema: z.strictObject({
2224
+ "cursor": zGetConsumptionHistoryPerBranchV2Query.shape.cursor,
2225
+ "limit": zGetConsumptionHistoryPerBranchV2Query.shape.limit,
2226
+ "project_ids": zGetConsumptionHistoryPerBranchV2Query.shape.project_ids,
2227
+ "branch_ids": zGetConsumptionHistoryPerBranchV2Query.shape.branch_ids,
2228
+ "from": zGetConsumptionHistoryPerBranchV2Query.shape.from,
2229
+ "to": zGetConsumptionHistoryPerBranchV2Query.shape.to,
2230
+ "granularity": zGetConsumptionHistoryPerBranchV2Query.shape.granularity,
2231
+ "org_id": zGetConsumptionHistoryPerBranchV2Query.shape.org_id,
2232
+ "metrics": zGetConsumptionHistoryPerBranchV2Query.shape.metrics
2233
+ }),
1789
2234
  annotations: {
1790
2235
  readOnlyHint: true,
1791
2236
  openWorldHint: true
@@ -1799,7 +2244,17 @@ const operationFactories = {
1799
2244
  tags: ["Consumption"]
1800
2245
  },
1801
2246
  invoke: (client, input, signal) => raw.getConsumptionHistoryPerBranchV2({
1802
- ...input,
2247
+ query: optionalGroup({
2248
+ "cursor": input["cursor"],
2249
+ "limit": input["limit"],
2250
+ "project_ids": input["project_ids"],
2251
+ "branch_ids": input["branch_ids"],
2252
+ "from": input["from"],
2253
+ "to": input["to"],
2254
+ "granularity": input["granularity"],
2255
+ "org_id": input["org_id"],
2256
+ "metrics": input["metrics"]
2257
+ }, true),
1803
2258
  client,
1804
2259
  signal,
1805
2260
  throwOnError: true
@@ -1810,7 +2265,17 @@ const operationFactories = {
1810
2265
  id: "get_consumption_history_per_project",
1811
2266
  title: "Retrieve project consumption metrics (legacy plans)",
1812
2267
  description: "Retrieves consumption metrics for Scale, Business, and Enterprise plan projects. History begins at the time of upgrade.\nResults are ordered by time in ascending order (oldest to newest).\nIssuing a call to this API does not wake a project's compute endpoint.\n",
1813
- inputSchema: z.strictObject({ query: zGetConsumptionHistoryPerProjectQuery }),
2268
+ inputSchema: z.strictObject({
2269
+ "cursor": zGetConsumptionHistoryPerProjectQuery.shape.cursor,
2270
+ "limit": zGetConsumptionHistoryPerProjectQuery.shape.limit,
2271
+ "project_ids": zGetConsumptionHistoryPerProjectQuery.shape.project_ids,
2272
+ "from": zGetConsumptionHistoryPerProjectQuery.shape.from,
2273
+ "to": zGetConsumptionHistoryPerProjectQuery.shape.to,
2274
+ "granularity": zGetConsumptionHistoryPerProjectQuery.shape.granularity,
2275
+ "org_id": zGetConsumptionHistoryPerProjectQuery.shape.org_id,
2276
+ "include_v1_metrics": zGetConsumptionHistoryPerProjectQuery.shape.include_v1_metrics,
2277
+ "metrics": zGetConsumptionHistoryPerProjectQuery.shape.metrics
2278
+ }),
1814
2279
  annotations: {
1815
2280
  readOnlyHint: true,
1816
2281
  openWorldHint: true
@@ -1824,7 +2289,17 @@ const operationFactories = {
1824
2289
  tags: ["Consumption"]
1825
2290
  },
1826
2291
  invoke: (client, input, signal) => raw.getConsumptionHistoryPerProject({
1827
- ...input,
2292
+ query: optionalGroup({
2293
+ "cursor": input["cursor"],
2294
+ "limit": input["limit"],
2295
+ "project_ids": input["project_ids"],
2296
+ "from": input["from"],
2297
+ "to": input["to"],
2298
+ "granularity": input["granularity"],
2299
+ "org_id": input["org_id"],
2300
+ "include_v1_metrics": input["include_v1_metrics"],
2301
+ "metrics": input["metrics"]
2302
+ }, true),
1828
2303
  client,
1829
2304
  signal,
1830
2305
  throwOnError: true
@@ -1835,7 +2310,16 @@ const operationFactories = {
1835
2310
  id: "get_consumption_history_per_project_v2",
1836
2311
  title: "Retrieve project consumption metrics",
1837
2312
  description: "Returns consumption metrics for up to `limit` projects per page. If `project_ids` is omitted,\nprojects in the organization are included across pages (use `cursor`). If `project_ids` is\nprovided, the response is limited to those projects (up to 100). Available for accounts on\nLaunch, Scale, Agent, Business, and Enterprise plans.\n\nHistory starts when the account upgrades to an eligible plan.\n\nThe `metrics` query parameter is required. Supported values:\n`compute_unit_seconds`, `root_branch_bytes_month`, `child_branch_bytes_month`,\n`instant_restore_bytes_month`, `public_network_transfer_bytes`, `private_network_transfer_bytes`,\n`extra_branches_month`, `snapshot_storage_bytes_month`.\n\nConsumption metrics within each project are returned in ascending time order (oldest first).\nThis request does not wake project computes.\n",
1838
- inputSchema: z.strictObject({ query: zGetConsumptionHistoryPerProjectV2Query }),
2313
+ inputSchema: z.strictObject({
2314
+ "cursor": zGetConsumptionHistoryPerProjectV2Query.shape.cursor,
2315
+ "limit": zGetConsumptionHistoryPerProjectV2Query.shape.limit,
2316
+ "project_ids": zGetConsumptionHistoryPerProjectV2Query.shape.project_ids,
2317
+ "from": zGetConsumptionHistoryPerProjectV2Query.shape.from,
2318
+ "to": zGetConsumptionHistoryPerProjectV2Query.shape.to,
2319
+ "granularity": zGetConsumptionHistoryPerProjectV2Query.shape.granularity,
2320
+ "org_id": zGetConsumptionHistoryPerProjectV2Query.shape.org_id,
2321
+ "metrics": zGetConsumptionHistoryPerProjectV2Query.shape.metrics
2322
+ }),
1839
2323
  annotations: {
1840
2324
  readOnlyHint: true,
1841
2325
  openWorldHint: true
@@ -1849,7 +2333,16 @@ const operationFactories = {
1849
2333
  tags: ["Consumption"]
1850
2334
  },
1851
2335
  invoke: (client, input, signal) => raw.getConsumptionHistoryPerProjectV2({
1852
- ...input,
2336
+ query: optionalGroup({
2337
+ "cursor": input["cursor"],
2338
+ "limit": input["limit"],
2339
+ "project_ids": input["project_ids"],
2340
+ "from": input["from"],
2341
+ "to": input["to"],
2342
+ "granularity": input["granularity"],
2343
+ "org_id": input["org_id"],
2344
+ "metrics": input["metrics"]
2345
+ }, true),
1853
2346
  client,
1854
2347
  signal,
1855
2348
  throwOnError: true
@@ -1874,7 +2367,6 @@ const operationFactories = {
1874
2367
  tags: ["Users"]
1875
2368
  },
1876
2369
  invoke: (client, input, signal) => raw.getCurrentUserInfo({
1877
- ...input,
1878
2370
  client,
1879
2371
  signal,
1880
2372
  throwOnError: true
@@ -1899,7 +2391,6 @@ const operationFactories = {
1899
2391
  tags: ["Users", "Organizations"]
1900
2392
  },
1901
2393
  invoke: (client, input, signal) => raw.getCurrentUserOrganizations({
1902
- ...input,
1903
2394
  client,
1904
2395
  signal,
1905
2396
  throwOnError: true
@@ -1910,7 +2401,10 @@ const operationFactories = {
1910
2401
  id: "get_masking_rules",
1911
2402
  title: "Retrieve masking rules",
1912
2403
  description: "Retrieves the masking rules for the specified anonymized branch.\nMasking rules define how sensitive data should be anonymized using PostgreSQL Anonymizer.\n\n**Note**: This endpoint is currently in Beta.\n",
1913
- inputSchema: z.strictObject({ path: zGetMaskingRulesPath }),
2404
+ inputSchema: z.strictObject({
2405
+ "project_id": zGetMaskingRulesPath.shape.project_id,
2406
+ "branch_id": zGetMaskingRulesPath.shape.branch_id
2407
+ }),
1914
2408
  annotations: {
1915
2409
  readOnlyHint: true,
1916
2410
  openWorldHint: true
@@ -1924,7 +2418,10 @@ const operationFactories = {
1924
2418
  tags: ["Branch"]
1925
2419
  },
1926
2420
  invoke: (client, input, signal) => raw.getMaskingRules({
1927
- ...input,
2421
+ path: optionalGroup({
2422
+ "project_id": input["project_id"],
2423
+ "branch_id": input["branch_id"]
2424
+ }, true),
1928
2425
  client,
1929
2426
  signal,
1930
2427
  throwOnError: true
@@ -1935,7 +2432,10 @@ const operationFactories = {
1935
2432
  id: "get_neon_auth",
1936
2433
  title: "Retrieve Neon Auth details for the branch",
1937
2434
  description: "Retrieves the Neon Auth integration details for the specified branch,\nincluding the auth provider type and integration status.\n",
1938
- inputSchema: z.strictObject({ path: zGetNeonAuthPath }),
2435
+ inputSchema: z.strictObject({
2436
+ "project_id": zGetNeonAuthPath.shape.project_id,
2437
+ "branch_id": zGetNeonAuthPath.shape.branch_id
2438
+ }),
1939
2439
  annotations: {
1940
2440
  readOnlyHint: true,
1941
2441
  openWorldHint: true
@@ -1949,7 +2449,10 @@ const operationFactories = {
1949
2449
  tags: ["Auth"]
1950
2450
  },
1951
2451
  invoke: (client, input, signal) => raw.getNeonAuth({
1952
- ...input,
2452
+ path: optionalGroup({
2453
+ "project_id": input["project_id"],
2454
+ "branch_id": input["branch_id"]
2455
+ }, true),
1953
2456
  client,
1954
2457
  signal,
1955
2458
  throwOnError: true
@@ -1960,7 +2463,10 @@ const operationFactories = {
1960
2463
  id: "get_neon_auth_allow_localhost",
1961
2464
  title: "Retrieve localhost allow setting",
1962
2465
  description: "Retrieves the localhost allow setting for the specified branch's Neon Auth integration.\nWhen enabled, authentication flows work from `localhost` without adding it to the redirect URI whitelist.\n",
1963
- inputSchema: z.strictObject({ path: zGetNeonAuthAllowLocalhostPath }),
2466
+ inputSchema: z.strictObject({
2467
+ "project_id": zGetNeonAuthAllowLocalhostPath.shape.project_id,
2468
+ "branch_id": zGetNeonAuthAllowLocalhostPath.shape.branch_id
2469
+ }),
1964
2470
  annotations: {
1965
2471
  readOnlyHint: true,
1966
2472
  openWorldHint: true
@@ -1974,7 +2480,10 @@ const operationFactories = {
1974
2480
  tags: ["Auth"]
1975
2481
  },
1976
2482
  invoke: (client, input, signal) => raw.getNeonAuthAllowLocalhost({
1977
- ...input,
2483
+ path: optionalGroup({
2484
+ "project_id": input["project_id"],
2485
+ "branch_id": input["branch_id"]
2486
+ }, true),
1978
2487
  client,
1979
2488
  signal,
1980
2489
  throwOnError: true
@@ -1985,7 +2494,10 @@ const operationFactories = {
1985
2494
  id: "get_neon_auth_email_and_password_config",
1986
2495
  title: "Retrieve email and password configuration",
1987
2496
  description: "Retrieves the email and password authentication configuration for the specified branch's Neon Auth integration,\nincluding whether it is enabled and the email verification method.\n",
1988
- inputSchema: z.strictObject({ path: zGetNeonAuthEmailAndPasswordConfigPath }),
2497
+ inputSchema: z.strictObject({
2498
+ "project_id": zGetNeonAuthEmailAndPasswordConfigPath.shape.project_id,
2499
+ "branch_id": zGetNeonAuthEmailAndPasswordConfigPath.shape.branch_id
2500
+ }),
1989
2501
  annotations: {
1990
2502
  readOnlyHint: true,
1991
2503
  openWorldHint: true
@@ -1999,7 +2511,10 @@ const operationFactories = {
1999
2511
  tags: ["Auth"]
2000
2512
  },
2001
2513
  invoke: (client, input, signal) => raw.getNeonAuthEmailAndPasswordConfig({
2002
- ...input,
2514
+ path: optionalGroup({
2515
+ "project_id": input["project_id"],
2516
+ "branch_id": input["branch_id"]
2517
+ }, true),
2003
2518
  client,
2004
2519
  signal,
2005
2520
  throwOnError: true
@@ -2010,7 +2525,10 @@ const operationFactories = {
2010
2525
  id: "get_neon_auth_email_provider",
2011
2526
  title: "Retrieve email provider configuration",
2012
2527
  description: "Retrieves the email provider configuration for the specified branch's Neon Auth integration,\nincluding the provider type and server settings.\n",
2013
- inputSchema: z.strictObject({ path: zGetNeonAuthEmailProviderPath }),
2528
+ inputSchema: z.strictObject({
2529
+ "project_id": zGetNeonAuthEmailProviderPath.shape.project_id,
2530
+ "branch_id": zGetNeonAuthEmailProviderPath.shape.branch_id
2531
+ }),
2014
2532
  annotations: {
2015
2533
  readOnlyHint: true,
2016
2534
  openWorldHint: true
@@ -2024,7 +2542,10 @@ const operationFactories = {
2024
2542
  tags: ["Auth"]
2025
2543
  },
2026
2544
  invoke: (client, input, signal) => raw.getNeonAuthEmailProvider({
2027
- ...input,
2545
+ path: optionalGroup({
2546
+ "project_id": input["project_id"],
2547
+ "branch_id": input["branch_id"]
2548
+ }, true),
2028
2549
  client,
2029
2550
  signal,
2030
2551
  throwOnError: true
@@ -2035,7 +2556,7 @@ const operationFactories = {
2035
2556
  id: "get_neon_auth_email_server",
2036
2557
  title: "Retrieve email server configuration",
2037
2558
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/email_provider` instead. Removal scheduled for March 1, 2026.\n",
2038
- inputSchema: z.strictObject({ path: zGetNeonAuthEmailServerPath }),
2559
+ inputSchema: z.strictObject({ "project_id": zGetNeonAuthEmailServerPath.shape.project_id }),
2039
2560
  annotations: {
2040
2561
  readOnlyHint: true,
2041
2562
  openWorldHint: true
@@ -2049,7 +2570,7 @@ const operationFactories = {
2049
2570
  tags: ["Auth (legacy)"]
2050
2571
  },
2051
2572
  invoke: (client, input, signal) => raw.getNeonAuthEmailServer({
2052
- ...input,
2573
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
2053
2574
  client,
2054
2575
  signal,
2055
2576
  throwOnError: true
@@ -2060,7 +2581,10 @@ const operationFactories = {
2060
2581
  id: "get_neon_auth_phone_number_plugin",
2061
2582
  title: "Retrieve phone number plugin configuration",
2062
2583
  description: "Returns the phone number plugin configuration for Neon Auth.\nThe phone number plugin enables phone-based OTP authentication.\n",
2063
- inputSchema: z.strictObject({ path: zGetNeonAuthPhoneNumberPluginPath }),
2584
+ inputSchema: z.strictObject({
2585
+ "project_id": zGetNeonAuthPhoneNumberPluginPath.shape.project_id,
2586
+ "branch_id": zGetNeonAuthPhoneNumberPluginPath.shape.branch_id
2587
+ }),
2064
2588
  annotations: {
2065
2589
  readOnlyHint: true,
2066
2590
  openWorldHint: true
@@ -2074,7 +2598,10 @@ const operationFactories = {
2074
2598
  tags: ["Auth"]
2075
2599
  },
2076
2600
  invoke: (client, input, signal) => raw.getNeonAuthPhoneNumberPlugin({
2077
- ...input,
2601
+ path: optionalGroup({
2602
+ "project_id": input["project_id"],
2603
+ "branch_id": input["branch_id"]
2604
+ }, true),
2078
2605
  client,
2079
2606
  signal,
2080
2607
  throwOnError: true
@@ -2085,7 +2612,10 @@ const operationFactories = {
2085
2612
  id: "get_neon_auth_plugin_configs",
2086
2613
  title: "Retrieve Neon Auth plugin configurations",
2087
2614
  description: "Returns all plugin configurations for Neon Auth in a single response.\nThis endpoint aggregates organization, email provider, email and password,\nOAuth providers, and localhost settings.\n",
2088
- inputSchema: z.strictObject({ path: zGetNeonAuthPluginConfigsPath }),
2615
+ inputSchema: z.strictObject({
2616
+ "project_id": zGetNeonAuthPluginConfigsPath.shape.project_id,
2617
+ "branch_id": zGetNeonAuthPluginConfigsPath.shape.branch_id
2618
+ }),
2089
2619
  annotations: {
2090
2620
  readOnlyHint: true,
2091
2621
  openWorldHint: true
@@ -2099,7 +2629,10 @@ const operationFactories = {
2099
2629
  tags: ["Auth"]
2100
2630
  },
2101
2631
  invoke: (client, input, signal) => raw.getNeonAuthPluginConfigs({
2102
- ...input,
2632
+ path: optionalGroup({
2633
+ "project_id": input["project_id"],
2634
+ "branch_id": input["branch_id"]
2635
+ }, true),
2103
2636
  client,
2104
2637
  signal,
2105
2638
  throwOnError: true
@@ -2110,7 +2643,10 @@ const operationFactories = {
2110
2643
  id: "get_neon_auth_webhook_config",
2111
2644
  title: "Retrieve Neon Auth webhook configuration",
2112
2645
  description: "Returns the webhook configuration for the specified branch's Neon Auth integration,\nincluding the endpoint URL and the events that trigger it.\n",
2113
- inputSchema: z.strictObject({ path: zGetNeonAuthWebhookConfigPath }),
2646
+ inputSchema: z.strictObject({
2647
+ "project_id": zGetNeonAuthWebhookConfigPath.shape.project_id,
2648
+ "branch_id": zGetNeonAuthWebhookConfigPath.shape.branch_id
2649
+ }),
2114
2650
  annotations: {
2115
2651
  readOnlyHint: true,
2116
2652
  openWorldHint: true
@@ -2124,7 +2660,10 @@ const operationFactories = {
2124
2660
  tags: ["Auth"]
2125
2661
  },
2126
2662
  invoke: (client, input, signal) => raw.getNeonAuthWebhookConfig({
2127
- ...input,
2663
+ path: optionalGroup({
2664
+ "project_id": input["project_id"],
2665
+ "branch_id": input["branch_id"]
2666
+ }, true),
2128
2667
  client,
2129
2668
  signal,
2130
2669
  throwOnError: true
@@ -2135,7 +2674,7 @@ const operationFactories = {
2135
2674
  id: "get_organization",
2136
2675
  title: "Retrieve organization details",
2137
2676
  description: "Retrieves details for the specified organization, including its name, plan, and configuration.\n",
2138
- inputSchema: z.strictObject({ path: zGetOrganizationPath }),
2677
+ inputSchema: z.strictObject({ "org_id": zGetOrganizationPath.shape.org_id }),
2139
2678
  annotations: {
2140
2679
  readOnlyHint: true,
2141
2680
  openWorldHint: true
@@ -2149,7 +2688,7 @@ const operationFactories = {
2149
2688
  tags: ["Organizations"]
2150
2689
  },
2151
2690
  invoke: (client, input, signal) => raw.getOrganization({
2152
- ...input,
2691
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
2153
2692
  client,
2154
2693
  signal,
2155
2694
  throwOnError: true
@@ -2160,7 +2699,7 @@ const operationFactories = {
2160
2699
  id: "get_organization_invitations",
2161
2700
  title: "List organization invitations",
2162
2701
  description: "Retrieves pending and accepted invitations for the specified organization.\n",
2163
- inputSchema: z.strictObject({ path: zGetOrganizationInvitationsPath }),
2702
+ inputSchema: z.strictObject({ "org_id": zGetOrganizationInvitationsPath.shape.org_id }),
2164
2703
  annotations: {
2165
2704
  readOnlyHint: true,
2166
2705
  openWorldHint: true
@@ -2174,7 +2713,7 @@ const operationFactories = {
2174
2713
  tags: ["Organizations"]
2175
2714
  },
2176
2715
  invoke: (client, input, signal) => raw.getOrganizationInvitations({
2177
- ...input,
2716
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
2178
2717
  client,
2179
2718
  signal,
2180
2719
  throwOnError: true
@@ -2185,7 +2724,10 @@ const operationFactories = {
2185
2724
  id: "get_organization_member",
2186
2725
  title: "Retrieve organization member details",
2187
2726
  description: "Retrieves information about the specified organization member.\n",
2188
- inputSchema: z.strictObject({ path: zGetOrganizationMemberPath }),
2727
+ inputSchema: z.strictObject({
2728
+ "org_id": zGetOrganizationMemberPath.shape.org_id,
2729
+ "member_id": zGetOrganizationMemberPath.shape.member_id
2730
+ }),
2189
2731
  annotations: {
2190
2732
  readOnlyHint: true,
2191
2733
  openWorldHint: true
@@ -2199,7 +2741,10 @@ const operationFactories = {
2199
2741
  tags: ["Organizations"]
2200
2742
  },
2201
2743
  invoke: (client, input, signal) => raw.getOrganizationMember({
2202
- ...input,
2744
+ path: optionalGroup({
2745
+ "org_id": input["org_id"],
2746
+ "member_id": input["member_id"]
2747
+ }, true),
2203
2748
  client,
2204
2749
  signal,
2205
2750
  throwOnError: true
@@ -2211,8 +2756,11 @@ const operationFactories = {
2211
2756
  title: "List organization members",
2212
2757
  description: "Retrieves a paginated list of members for the specified organization.\n",
2213
2758
  inputSchema: z.strictObject({
2214
- path: zGetOrganizationMembersPath,
2215
- query: zGetOrganizationMembersQuery.optional()
2759
+ "org_id": zGetOrganizationMembersPath.shape.org_id,
2760
+ "sort_by": zGetOrganizationMembersQuery.shape.sort_by.optional(),
2761
+ "cursor": zGetOrganizationMembersQuery.shape.cursor.optional(),
2762
+ "sort_order": zGetOrganizationMembersQuery.shape.sort_order.optional(),
2763
+ "limit": zGetOrganizationMembersQuery.shape.limit.optional()
2216
2764
  }),
2217
2765
  annotations: {
2218
2766
  readOnlyHint: true,
@@ -2227,7 +2775,13 @@ const operationFactories = {
2227
2775
  tags: ["Organizations"]
2228
2776
  },
2229
2777
  invoke: (client, input, signal) => raw.getOrganizationMembers({
2230
- ...input,
2778
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
2779
+ query: optionalGroup({
2780
+ "sort_by": input["sort_by"],
2781
+ "cursor": input["cursor"],
2782
+ "sort_order": input["sort_order"],
2783
+ "limit": input["limit"]
2784
+ }, false),
2231
2785
  client,
2232
2786
  signal,
2233
2787
  throwOnError: true
@@ -2238,7 +2792,7 @@ const operationFactories = {
2238
2792
  id: "get_organization_spending_limit",
2239
2793
  title: "Retrieve organization spending limit",
2240
2794
  description: "Returns the configured monthly spending limit for the specified organization.\n`spending_limit_cents: null` indicates that no limit is currently set.\nAvailable to organization members with read access on Launch and Scale plans only.\n",
2241
- inputSchema: z.strictObject({ path: zGetOrganizationSpendingLimitPath }),
2795
+ inputSchema: z.strictObject({ "org_id": zGetOrganizationSpendingLimitPath.shape.org_id }),
2242
2796
  annotations: {
2243
2797
  readOnlyHint: true,
2244
2798
  openWorldHint: true
@@ -2252,7 +2806,7 @@ const operationFactories = {
2252
2806
  tags: ["Organizations"]
2253
2807
  },
2254
2808
  invoke: (client, input, signal) => raw.getOrganizationSpendingLimit({
2255
- ...input,
2809
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
2256
2810
  client,
2257
2811
  signal,
2258
2812
  throwOnError: true
@@ -2263,7 +2817,11 @@ const operationFactories = {
2263
2817
  id: "get_organization_vpc_endpoint_details",
2264
2818
  title: "Retrieve VPC endpoint details",
2265
2819
  description: "Retrieves the current state and configuration details of a specified VPC endpoint.\n",
2266
- inputSchema: z.strictObject({ path: zGetOrganizationVpcEndpointDetailsPath }),
2820
+ inputSchema: z.strictObject({
2821
+ "org_id": zGetOrganizationVpcEndpointDetailsPath.shape.org_id,
2822
+ "region_id": zGetOrganizationVpcEndpointDetailsPath.shape.region_id,
2823
+ "vpc_endpoint_id": zGetOrganizationVpcEndpointDetailsPath.shape.vpc_endpoint_id
2824
+ }),
2267
2825
  annotations: {
2268
2826
  readOnlyHint: true,
2269
2827
  openWorldHint: true
@@ -2277,7 +2835,11 @@ const operationFactories = {
2277
2835
  tags: ["Organizations"]
2278
2836
  },
2279
2837
  invoke: (client, input, signal) => raw.getOrganizationVpcEndpointDetails({
2280
- ...input,
2838
+ path: optionalGroup({
2839
+ "org_id": input["org_id"],
2840
+ "region_id": input["region_id"],
2841
+ "vpc_endpoint_id": input["vpc_endpoint_id"]
2842
+ }, true),
2281
2843
  client,
2282
2844
  signal,
2283
2845
  throwOnError: true
@@ -2288,7 +2850,7 @@ const operationFactories = {
2288
2850
  id: "get_project",
2289
2851
  title: "Retrieve project details",
2290
2852
  description: "Retrieves information about the specified project.\nReturned details include the project settings, compute configuration, history retention, owner information, and current usage metrics.\n",
2291
- inputSchema: z.strictObject({ path: zGetProjectPath }),
2853
+ inputSchema: z.strictObject({ "project_id": zGetProjectPath.shape.project_id }),
2292
2854
  annotations: {
2293
2855
  readOnlyHint: true,
2294
2856
  openWorldHint: true
@@ -2302,7 +2864,7 @@ const operationFactories = {
2302
2864
  tags: ["Project"]
2303
2865
  },
2304
2866
  invoke: (client, input, signal) => raw.getProject({
2305
- ...input,
2867
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
2306
2868
  client,
2307
2869
  signal,
2308
2870
  throwOnError: true
@@ -2314,8 +2876,11 @@ const operationFactories = {
2314
2876
  title: "Get advisor issues",
2315
2877
  description: "Analyzes the database for security and performance issues.\nReturns a list of issues categorized by severity (ERROR, WARN, INFO).\n\nRequires read access to the project and Data API enabled.\n",
2316
2878
  inputSchema: z.strictObject({
2317
- path: zGetProjectAdvisorSecurityIssuesPath,
2318
- query: zGetProjectAdvisorSecurityIssuesQuery.optional()
2879
+ "project_id": zGetProjectAdvisorSecurityIssuesPath.shape.project_id,
2880
+ "branch_id": zGetProjectAdvisorSecurityIssuesQuery.shape.branch_id.optional(),
2881
+ "database_name": zGetProjectAdvisorSecurityIssuesQuery.shape.database_name.optional(),
2882
+ "category": zGetProjectAdvisorSecurityIssuesQuery.shape.category.optional(),
2883
+ "min_severity": zGetProjectAdvisorSecurityIssuesQuery.shape.min_severity.optional()
2319
2884
  }),
2320
2885
  annotations: {
2321
2886
  readOnlyHint: true,
@@ -2330,7 +2895,13 @@ const operationFactories = {
2330
2895
  tags: ["Project"]
2331
2896
  },
2332
2897
  invoke: (client, input, signal) => raw.getProjectAdvisorSecurityIssues({
2333
- ...input,
2898
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
2899
+ query: optionalGroup({
2900
+ "branch_id": input["branch_id"],
2901
+ "database_name": input["database_name"],
2902
+ "category": input["category"],
2903
+ "min_severity": input["min_severity"]
2904
+ }, false),
2334
2905
  client,
2335
2906
  signal,
2336
2907
  throwOnError: true
@@ -2341,7 +2912,10 @@ const operationFactories = {
2341
2912
  id: "get_project_branch",
2342
2913
  title: "Retrieve branch details",
2343
2914
  description: "Retrieves information about the specified branch.\nA `branch_id` value has a `br-` prefix.\n\nEach Neon project is initially created with a root and default branch named `main`.\nA project can contain one or more branches.\nA parent branch is identified by a `parent_id` value, which is the `id` of the parent branch.\nFor related information, see [Manage branches](https://neon.com/docs/manage/branches/).\n",
2344
- inputSchema: z.strictObject({ path: zGetProjectBranchPath }),
2915
+ inputSchema: z.strictObject({
2916
+ "project_id": zGetProjectBranchPath.shape.project_id,
2917
+ "branch_id": zGetProjectBranchPath.shape.branch_id
2918
+ }),
2345
2919
  annotations: {
2346
2920
  readOnlyHint: true,
2347
2921
  openWorldHint: true
@@ -2355,7 +2929,10 @@ const operationFactories = {
2355
2929
  tags: ["Branch"]
2356
2930
  },
2357
2931
  invoke: (client, input, signal) => raw.getProjectBranch({
2358
- ...input,
2932
+ path: optionalGroup({
2933
+ "project_id": input["project_id"],
2934
+ "branch_id": input["branch_id"]
2935
+ }, true),
2359
2936
  client,
2360
2937
  signal,
2361
2938
  throwOnError: true
@@ -2366,7 +2943,10 @@ const operationFactories = {
2366
2943
  id: "get_project_branch_ai_gateway",
2367
2944
  title: "Get branch AI Gateway endpoint",
2368
2945
  description: "Returns the AI Gateway endpoint host for the specified branch, used to\nrender code-snippet base URLs. A 200 response means the branch is\nregistered and this region serves the AI gateway. A 404 response\nincludes a `reason` field indicating why the gateway is unavailable.\n\n**Note**: This endpoint is currently in Beta.\n",
2369
- inputSchema: z.strictObject({ path: zGetProjectBranchAiGatewayPath }),
2946
+ inputSchema: z.strictObject({
2947
+ "project_id": zGetProjectBranchAiGatewayPath.shape.project_id,
2948
+ "branch_id": zGetProjectBranchAiGatewayPath.shape.branch_id
2949
+ }),
2370
2950
  annotations: {
2371
2951
  readOnlyHint: true,
2372
2952
  openWorldHint: true
@@ -2380,7 +2960,10 @@ const operationFactories = {
2380
2960
  tags: ["AI Gateway"]
2381
2961
  },
2382
2962
  invoke: (client, input, signal) => raw.getProjectBranchAiGateway({
2383
- ...input,
2963
+ path: optionalGroup({
2964
+ "project_id": input["project_id"],
2965
+ "branch_id": input["branch_id"]
2966
+ }, true),
2384
2967
  client,
2385
2968
  signal,
2386
2969
  throwOnError: true
@@ -2391,7 +2974,12 @@ const operationFactories = {
2391
2974
  id: "get_project_branch_bucket_object",
2392
2975
  title: "Download an object's bytes",
2393
2976
  description: "Streams the raw bytes of the named object from the bucket on the\nspecified branch, including objects inherited from ancestor branches.\nServed by the user's session (no customer S3 credentials required).\n\nThe body is returned as `application/octet-stream` so a browser treats\nit as a download; the `Content-Length` and `ETag` response headers echo\nthe stored object metadata.\n\nBINARY-STREAM EXCEPTION TO THE BUILD-GENERATED-TYPES RULE (#7029): the\nsuccessful 200 body is the raw object stream, proxied verbatim from the\nplatform object storage admin endpoint. It is modeled as an\n`application/octet-stream` binary body (not a JSON response schema) and\nis streamed without buffering the whole object in memory. Error\nresponses still use the generated `GeneralError` shape.\n\n**Note**: This endpoint is currently in Beta.\n",
2394
- inputSchema: z.strictObject({ path: zGetProjectBranchBucketObjectPath }),
2977
+ inputSchema: z.strictObject({
2978
+ "project_id": zGetProjectBranchBucketObjectPath.shape.project_id,
2979
+ "branch_id": zGetProjectBranchBucketObjectPath.shape.branch_id,
2980
+ "bucket_name": zGetProjectBranchBucketObjectPath.shape.bucket_name,
2981
+ "object_key": zGetProjectBranchBucketObjectPath.shape.object_key
2982
+ }),
2395
2983
  annotations: {
2396
2984
  readOnlyHint: true,
2397
2985
  openWorldHint: true
@@ -2405,7 +2993,12 @@ const operationFactories = {
2405
2993
  tags: ["Buckets"]
2406
2994
  },
2407
2995
  invoke: (client, input, signal) => raw.getProjectBranchBucketObject({
2408
- ...input,
2996
+ path: optionalGroup({
2997
+ "project_id": input["project_id"],
2998
+ "branch_id": input["branch_id"],
2999
+ "bucket_name": input["bucket_name"],
3000
+ "object_key": input["object_key"]
3001
+ }, true),
2409
3002
  client,
2410
3003
  signal,
2411
3004
  throwOnError: true
@@ -2416,7 +3009,11 @@ const operationFactories = {
2416
3009
  id: "get_project_branch_data_api",
2417
3010
  title: "Retrieve Neon Data API configuration",
2418
3011
  description: "Retrieves the Neon Data API configuration for the specified branch,\nincluding endpoint URL, enabled state, and database settings.\n",
2419
- inputSchema: z.strictObject({ path: zGetProjectBranchDataApiPath }),
3012
+ inputSchema: z.strictObject({
3013
+ "project_id": zGetProjectBranchDataApiPath.shape.project_id,
3014
+ "branch_id": zGetProjectBranchDataApiPath.shape.branch_id,
3015
+ "database_name": zGetProjectBranchDataApiPath.shape.database_name
3016
+ }),
2420
3017
  annotations: {
2421
3018
  readOnlyHint: true,
2422
3019
  openWorldHint: true
@@ -2430,7 +3027,11 @@ const operationFactories = {
2430
3027
  tags: ["DataAPI"]
2431
3028
  },
2432
3029
  invoke: (client, input, signal) => raw.getProjectBranchDataApi({
2433
- ...input,
3030
+ path: optionalGroup({
3031
+ "project_id": input["project_id"],
3032
+ "branch_id": input["branch_id"],
3033
+ "database_name": input["database_name"]
3034
+ }, true),
2434
3035
  client,
2435
3036
  signal,
2436
3037
  throwOnError: true
@@ -2441,7 +3042,11 @@ const operationFactories = {
2441
3042
  id: "get_project_branch_database",
2442
3043
  title: "Retrieve database details",
2443
3044
  description: "Retrieves information about the specified database.\nFor related information, see [Manage databases](https://neon.com/docs/manage/databases/).\n",
2444
- inputSchema: z.strictObject({ path: zGetProjectBranchDatabasePath }),
3045
+ inputSchema: z.strictObject({
3046
+ "project_id": zGetProjectBranchDatabasePath.shape.project_id,
3047
+ "branch_id": zGetProjectBranchDatabasePath.shape.branch_id,
3048
+ "database_name": zGetProjectBranchDatabasePath.shape.database_name
3049
+ }),
2445
3050
  annotations: {
2446
3051
  readOnlyHint: true,
2447
3052
  openWorldHint: true
@@ -2455,7 +3060,11 @@ const operationFactories = {
2455
3060
  tags: ["Branch"]
2456
3061
  },
2457
3062
  invoke: (client, input, signal) => raw.getProjectBranchDatabase({
2458
- ...input,
3063
+ path: optionalGroup({
3064
+ "project_id": input["project_id"],
3065
+ "branch_id": input["branch_id"],
3066
+ "database_name": input["database_name"]
3067
+ }, true),
2459
3068
  client,
2460
3069
  signal,
2461
3070
  throwOnError: true
@@ -2466,7 +3075,11 @@ const operationFactories = {
2466
3075
  id: "get_project_branch_function",
2467
3076
  title: "Get function details",
2468
3077
  description: "Returns the function identified by its slug.\n\n**Note**: This endpoint is currently in Beta.\n",
2469
- inputSchema: z.strictObject({ path: zGetProjectBranchFunctionPath }),
3078
+ inputSchema: z.strictObject({
3079
+ "project_id": zGetProjectBranchFunctionPath.shape.project_id,
3080
+ "branch_id": zGetProjectBranchFunctionPath.shape.branch_id,
3081
+ "slug": zGetProjectBranchFunctionPath.shape.slug
3082
+ }),
2470
3083
  annotations: {
2471
3084
  readOnlyHint: true,
2472
3085
  openWorldHint: true
@@ -2480,7 +3093,11 @@ const operationFactories = {
2480
3093
  tags: ["Functions"]
2481
3094
  },
2482
3095
  invoke: (client, input, signal) => raw.getProjectBranchFunction({
2483
- ...input,
3096
+ path: optionalGroup({
3097
+ "project_id": input["project_id"],
3098
+ "branch_id": input["branch_id"],
3099
+ "slug": input["slug"]
3100
+ }, true),
2484
3101
  client,
2485
3102
  signal,
2486
3103
  throwOnError: true
@@ -2491,7 +3108,11 @@ const operationFactories = {
2491
3108
  id: "get_project_branch_role",
2492
3109
  title: "Retrieve role details",
2493
3110
  description: "Retrieves details about the specified role.\nIn Neon, the terms \"role\" and \"user\" are synonymous.\nFor related information, see [Manage roles](https://neon.com/docs/manage/roles/).\n",
2494
- inputSchema: z.strictObject({ path: zGetProjectBranchRolePath }),
3111
+ inputSchema: z.strictObject({
3112
+ "project_id": zGetProjectBranchRolePath.shape.project_id,
3113
+ "branch_id": zGetProjectBranchRolePath.shape.branch_id,
3114
+ "role_name": zGetProjectBranchRolePath.shape.role_name
3115
+ }),
2495
3116
  annotations: {
2496
3117
  readOnlyHint: true,
2497
3118
  openWorldHint: true
@@ -2505,7 +3126,11 @@ const operationFactories = {
2505
3126
  tags: ["Branch"]
2506
3127
  },
2507
3128
  invoke: (client, input, signal) => raw.getProjectBranchRole({
2508
- ...input,
3129
+ path: optionalGroup({
3130
+ "project_id": input["project_id"],
3131
+ "branch_id": input["branch_id"],
3132
+ "role_name": input["role_name"]
3133
+ }, true),
2509
3134
  client,
2510
3135
  signal,
2511
3136
  throwOnError: true
@@ -2516,7 +3141,11 @@ const operationFactories = {
2516
3141
  id: "get_project_branch_role_password",
2517
3142
  title: "Retrieve role password",
2518
3143
  description: "Retrieves the password for the specified Postgres role, if possible.\nFor related information, see [Manage roles](https://neon.com/docs/manage/roles/).\n",
2519
- inputSchema: z.strictObject({ path: zGetProjectBranchRolePasswordPath }),
3144
+ inputSchema: z.strictObject({
3145
+ "project_id": zGetProjectBranchRolePasswordPath.shape.project_id,
3146
+ "branch_id": zGetProjectBranchRolePasswordPath.shape.branch_id,
3147
+ "role_name": zGetProjectBranchRolePasswordPath.shape.role_name
3148
+ }),
2520
3149
  annotations: {
2521
3150
  readOnlyHint: true,
2522
3151
  openWorldHint: true
@@ -2530,7 +3159,11 @@ const operationFactories = {
2530
3159
  tags: ["Branch"]
2531
3160
  },
2532
3161
  invoke: (client, input, signal) => raw.getProjectBranchRolePassword({
2533
- ...input,
3162
+ path: optionalGroup({
3163
+ "project_id": input["project_id"],
3164
+ "branch_id": input["branch_id"],
3165
+ "role_name": input["role_name"]
3166
+ }, true),
2534
3167
  client,
2535
3168
  signal,
2536
3169
  throwOnError: true
@@ -2542,8 +3175,12 @@ const operationFactories = {
2542
3175
  title: "Retrieve database schema",
2543
3176
  description: "Retrieves the database schema. Specify `lsn` or `timestamp` (not both) to read at a point in time; omit both to read from the database's head.",
2544
3177
  inputSchema: z.strictObject({
2545
- path: zGetProjectBranchSchemaPath,
2546
- query: zGetProjectBranchSchemaQuery
3178
+ "project_id": zGetProjectBranchSchemaPath.shape.project_id,
3179
+ "branch_id": zGetProjectBranchSchemaPath.shape.branch_id,
3180
+ "db_name": zGetProjectBranchSchemaQuery.shape.db_name,
3181
+ "lsn": zGetProjectBranchSchemaQuery.shape.lsn,
3182
+ "timestamp": zGetProjectBranchSchemaQuery.shape.timestamp,
3183
+ "format": zGetProjectBranchSchemaQuery.shape.format
2547
3184
  }),
2548
3185
  annotations: {
2549
3186
  readOnlyHint: true,
@@ -2558,7 +3195,16 @@ const operationFactories = {
2558
3195
  tags: ["Branch"]
2559
3196
  },
2560
3197
  invoke: (client, input, signal) => raw.getProjectBranchSchema({
2561
- ...input,
3198
+ path: optionalGroup({
3199
+ "project_id": input["project_id"],
3200
+ "branch_id": input["branch_id"]
3201
+ }, true),
3202
+ query: optionalGroup({
3203
+ "db_name": input["db_name"],
3204
+ "lsn": input["lsn"],
3205
+ "timestamp": input["timestamp"],
3206
+ "format": input["format"]
3207
+ }, true),
2562
3208
  client,
2563
3209
  signal,
2564
3210
  throwOnError: true
@@ -2570,8 +3216,14 @@ const operationFactories = {
2570
3216
  title: "Compare database schema",
2571
3217
  description: "Compares the schema from the specified database with another branch's schema.",
2572
3218
  inputSchema: z.strictObject({
2573
- path: zGetProjectBranchSchemaComparisonPath,
2574
- query: zGetProjectBranchSchemaComparisonQuery
3219
+ "project_id": zGetProjectBranchSchemaComparisonPath.shape.project_id,
3220
+ "branch_id": zGetProjectBranchSchemaComparisonPath.shape.branch_id,
3221
+ "base_branch_id": zGetProjectBranchSchemaComparisonQuery.shape.base_branch_id,
3222
+ "db_name": zGetProjectBranchSchemaComparisonQuery.shape.db_name,
3223
+ "lsn": zGetProjectBranchSchemaComparisonQuery.shape.lsn,
3224
+ "timestamp": zGetProjectBranchSchemaComparisonQuery.shape.timestamp,
3225
+ "base_lsn": zGetProjectBranchSchemaComparisonQuery.shape.base_lsn,
3226
+ "base_timestamp": zGetProjectBranchSchemaComparisonQuery.shape.base_timestamp
2575
3227
  }),
2576
3228
  annotations: {
2577
3229
  readOnlyHint: true,
@@ -2586,7 +3238,18 @@ const operationFactories = {
2586
3238
  tags: ["Branch"]
2587
3239
  },
2588
3240
  invoke: (client, input, signal) => raw.getProjectBranchSchemaComparison({
2589
- ...input,
3241
+ path: optionalGroup({
3242
+ "project_id": input["project_id"],
3243
+ "branch_id": input["branch_id"]
3244
+ }, true),
3245
+ query: optionalGroup({
3246
+ "base_branch_id": input["base_branch_id"],
3247
+ "db_name": input["db_name"],
3248
+ "lsn": input["lsn"],
3249
+ "timestamp": input["timestamp"],
3250
+ "base_lsn": input["base_lsn"],
3251
+ "base_timestamp": input["base_timestamp"]
3252
+ }, true),
2590
3253
  client,
2591
3254
  signal,
2592
3255
  throwOnError: true
@@ -2597,7 +3260,10 @@ const operationFactories = {
2597
3260
  id: "get_project_branch_storage",
2598
3261
  title: "Get branch object storage state",
2599
3262
  description: "Returns whether branchable object storage is usable for the specified\nbranch. A 200 response means the branch is registered in the object storage\nservice and the S3 data plane will accept requests for it. A 404\nresponse includes a `reason` field indicating why object storage is unavailable.\n\n**Note**: This endpoint is currently in Beta.\n",
2600
- inputSchema: z.strictObject({ path: zGetProjectBranchStoragePath }),
3263
+ inputSchema: z.strictObject({
3264
+ "project_id": zGetProjectBranchStoragePath.shape.project_id,
3265
+ "branch_id": zGetProjectBranchStoragePath.shape.branch_id
3266
+ }),
2601
3267
  annotations: {
2602
3268
  readOnlyHint: true,
2603
3269
  openWorldHint: true
@@ -2611,7 +3277,10 @@ const operationFactories = {
2611
3277
  tags: ["Storage"]
2612
3278
  },
2613
3279
  invoke: (client, input, signal) => raw.getProjectBranchStorage({
2614
- ...input,
3280
+ path: optionalGroup({
3281
+ "project_id": input["project_id"],
3282
+ "branch_id": input["branch_id"]
3283
+ }, true),
2615
3284
  client,
2616
3285
  signal,
2617
3286
  throwOnError: true
@@ -2622,7 +3291,10 @@ const operationFactories = {
2622
3291
  id: "get_project_endpoint",
2623
3292
  title: "Retrieve compute endpoint details",
2624
3293
  description: "Retrieves information about the specified compute endpoint.\nA compute endpoint is a Neon compute instance.\nAn `endpoint_id` has an `ep-` prefix.\nFor information about compute endpoints, see [Manage computes](https://neon.com/docs/manage/endpoints/).\n",
2625
- inputSchema: z.strictObject({ path: zGetProjectEndpointPath }),
3294
+ inputSchema: z.strictObject({
3295
+ "project_id": zGetProjectEndpointPath.shape.project_id,
3296
+ "endpoint_id": zGetProjectEndpointPath.shape.endpoint_id
3297
+ }),
2626
3298
  annotations: {
2627
3299
  readOnlyHint: true,
2628
3300
  openWorldHint: true
@@ -2636,7 +3308,10 @@ const operationFactories = {
2636
3308
  tags: ["Endpoint"]
2637
3309
  },
2638
3310
  invoke: (client, input, signal) => raw.getProjectEndpoint({
2639
- ...input,
3311
+ path: optionalGroup({
3312
+ "project_id": input["project_id"],
3313
+ "endpoint_id": input["endpoint_id"]
3314
+ }, true),
2640
3315
  client,
2641
3316
  signal,
2642
3317
  throwOnError: true
@@ -2647,7 +3322,7 @@ const operationFactories = {
2647
3322
  id: "get_project_jwks",
2648
3323
  title: "List JWKS URLs",
2649
3324
  description: "Returns the JWKS URLs available for verifying JWTs used as the authentication mechanism for the specified project.\n",
2650
- inputSchema: z.strictObject({ path: zGetProjectJwksPath }),
3325
+ inputSchema: z.strictObject({ "project_id": zGetProjectJwksPath.shape.project_id }),
2651
3326
  annotations: {
2652
3327
  readOnlyHint: true,
2653
3328
  openWorldHint: true
@@ -2661,7 +3336,7 @@ const operationFactories = {
2661
3336
  tags: ["Project"]
2662
3337
  },
2663
3338
  invoke: (client, input, signal) => raw.getProjectJwks({
2664
- ...input,
3339
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
2665
3340
  client,
2666
3341
  signal,
2667
3342
  throwOnError: true
@@ -2672,7 +3347,10 @@ const operationFactories = {
2672
3347
  id: "get_project_operation",
2673
3348
  title: "Retrieve operation details",
2674
3349
  description: "Retrieves details for the specified operation.\nAn operation is an action performed on a Neon project resource.\n",
2675
- inputSchema: z.strictObject({ path: zGetProjectOperationPath }),
3350
+ inputSchema: z.strictObject({
3351
+ "project_id": zGetProjectOperationPath.shape.project_id,
3352
+ "operation_id": zGetProjectOperationPath.shape.operation_id
3353
+ }),
2676
3354
  annotations: {
2677
3355
  readOnlyHint: true,
2678
3356
  openWorldHint: true
@@ -2686,7 +3364,10 @@ const operationFactories = {
2686
3364
  tags: ["Operation"]
2687
3365
  },
2688
3366
  invoke: (client, input, signal) => raw.getProjectOperation({
2689
- ...input,
3367
+ path: optionalGroup({
3368
+ "project_id": input["project_id"],
3369
+ "operation_id": input["operation_id"]
3370
+ }, true),
2690
3371
  client,
2691
3372
  signal,
2692
3373
  throwOnError: true
@@ -2697,7 +3378,10 @@ const operationFactories = {
2697
3378
  id: "get_snapshot_schedule",
2698
3379
  title: "Retrieve backup schedule",
2699
3380
  description: "Returns the backup schedule for the specified branch, including the configured snapshot frequencies.\n",
2700
- inputSchema: z.strictObject({ path: zGetSnapshotSchedulePath }),
3381
+ inputSchema: z.strictObject({
3382
+ "project_id": zGetSnapshotSchedulePath.shape.project_id,
3383
+ "branch_id": zGetSnapshotSchedulePath.shape.branch_id
3384
+ }),
2701
3385
  annotations: {
2702
3386
  readOnlyHint: true,
2703
3387
  openWorldHint: true
@@ -2711,7 +3395,10 @@ const operationFactories = {
2711
3395
  tags: ["Snapshot"]
2712
3396
  },
2713
3397
  invoke: (client, input, signal) => raw.getSnapshotSchedule({
2714
- ...input,
3398
+ path: optionalGroup({
3399
+ "project_id": input["project_id"],
3400
+ "branch_id": input["branch_id"]
3401
+ }, true),
2715
3402
  client,
2716
3403
  signal,
2717
3404
  throwOnError: true
@@ -2723,8 +3410,8 @@ const operationFactories = {
2723
3410
  title: "Grant project access",
2724
3411
  description: "Grants project access to the account associated with the specified email address.\n",
2725
3412
  inputSchema: z.strictObject({
2726
- body: zGrantPermissionToProjectBody,
2727
- path: zGrantPermissionToProjectPath
3413
+ "project_id": zGrantPermissionToProjectPath.shape.project_id,
3414
+ "email": zGrantPermissionToProjectBody.shape.email
2728
3415
  }),
2729
3416
  annotations: {
2730
3417
  readOnlyHint: false,
@@ -2740,7 +3427,8 @@ const operationFactories = {
2740
3427
  tags: ["Project"]
2741
3428
  },
2742
3429
  invoke: (client, input, signal) => raw.grantPermissionToProject({
2743
- ...input,
3430
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
3431
+ body: optionalGroup({ "email": input["email"] }, true),
2744
3432
  client,
2745
3433
  signal,
2746
3434
  throwOnError: true
@@ -2765,7 +3453,6 @@ const operationFactories = {
2765
3453
  tags: ["API Key"]
2766
3454
  },
2767
3455
  invoke: (client, input, signal) => raw.listApiKeys({
2768
- ...input,
2769
3456
  client,
2770
3457
  signal,
2771
3458
  throwOnError: true
@@ -2776,7 +3463,10 @@ const operationFactories = {
2776
3463
  id: "list_branch_neon_auth_oauth_providers",
2777
3464
  title: "List OAuth providers for the branch",
2778
3465
  description: "Lists the OAuth providers configured for the specified branch's Neon Auth integration.\n",
2779
- inputSchema: z.strictObject({ path: zListBranchNeonAuthOauthProvidersPath }),
3466
+ inputSchema: z.strictObject({
3467
+ "project_id": zListBranchNeonAuthOauthProvidersPath.shape.project_id,
3468
+ "branch_id": zListBranchNeonAuthOauthProvidersPath.shape.branch_id
3469
+ }),
2780
3470
  annotations: {
2781
3471
  readOnlyHint: true,
2782
3472
  openWorldHint: true
@@ -2790,7 +3480,10 @@ const operationFactories = {
2790
3480
  tags: ["Auth"]
2791
3481
  },
2792
3482
  invoke: (client, input, signal) => raw.listBranchNeonAuthOauthProviders({
2793
- ...input,
3483
+ path: optionalGroup({
3484
+ "project_id": input["project_id"],
3485
+ "branch_id": input["branch_id"]
3486
+ }, true),
2794
3487
  client,
2795
3488
  signal,
2796
3489
  throwOnError: true
@@ -2801,7 +3494,10 @@ const operationFactories = {
2801
3494
  id: "list_branch_neon_auth_trusted_domains",
2802
3495
  title: "List domains in redirect_uri whitelist",
2803
3496
  description: "Lists the trusted domains in the redirect URI whitelist for the specified branch.\nOnly domains in this list are permitted as redirect targets after authentication.\n",
2804
- inputSchema: z.strictObject({ path: zListBranchNeonAuthTrustedDomainsPath }),
3497
+ inputSchema: z.strictObject({
3498
+ "project_id": zListBranchNeonAuthTrustedDomainsPath.shape.project_id,
3499
+ "branch_id": zListBranchNeonAuthTrustedDomainsPath.shape.branch_id
3500
+ }),
2805
3501
  annotations: {
2806
3502
  readOnlyHint: true,
2807
3503
  openWorldHint: true
@@ -2815,7 +3511,10 @@ const operationFactories = {
2815
3511
  tags: ["Auth"]
2816
3512
  },
2817
3513
  invoke: (client, input, signal) => raw.listBranchNeonAuthTrustedDomains({
2818
- ...input,
3514
+ path: optionalGroup({
3515
+ "project_id": input["project_id"],
3516
+ "branch_id": input["branch_id"]
3517
+ }, true),
2819
3518
  client,
2820
3519
  signal,
2821
3520
  throwOnError: true
@@ -2826,7 +3525,10 @@ const operationFactories = {
2826
3525
  id: "list_credentials",
2827
3526
  title: "List credentials on the branch",
2828
3527
  description: "Returns metadata for customer-issued credentials on the branch.\nSecrets are never included.\n\n**Note**: This endpoint is currently in Beta.\n",
2829
- inputSchema: z.strictObject({ path: zListCredentialsPath }),
3528
+ inputSchema: z.strictObject({
3529
+ "project_id": zListCredentialsPath.shape.project_id,
3530
+ "branch_id": zListCredentialsPath.shape.branch_id
3531
+ }),
2830
3532
  annotations: {
2831
3533
  readOnlyHint: true,
2832
3534
  openWorldHint: true
@@ -2840,7 +3542,10 @@ const operationFactories = {
2840
3542
  tags: ["Credentials"]
2841
3543
  },
2842
3544
  invoke: (client, input, signal) => raw.listCredentials({
2843
- ...input,
3545
+ path: optionalGroup({
3546
+ "project_id": input["project_id"],
3547
+ "branch_id": input["branch_id"]
3548
+ }, true),
2844
3549
  client,
2845
3550
  signal,
2846
3551
  throwOnError: true
@@ -2851,7 +3556,7 @@ const operationFactories = {
2851
3556
  id: "list_neon_auth_integrations",
2852
3557
  title: "List active integrations with auth providers",
2853
3558
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth` instead. Removal scheduled for March 1, 2026.",
2854
- inputSchema: z.strictObject({ path: zListNeonAuthIntegrationsPath }),
3559
+ inputSchema: z.strictObject({ "project_id": zListNeonAuthIntegrationsPath.shape.project_id }),
2855
3560
  annotations: {
2856
3561
  readOnlyHint: true,
2857
3562
  openWorldHint: true
@@ -2865,7 +3570,7 @@ const operationFactories = {
2865
3570
  tags: ["Auth (legacy)"]
2866
3571
  },
2867
3572
  invoke: (client, input, signal) => raw.listNeonAuthIntegrations({
2868
- ...input,
3573
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
2869
3574
  client,
2870
3575
  signal,
2871
3576
  throwOnError: true
@@ -2876,7 +3581,7 @@ const operationFactories = {
2876
3581
  id: "list_neon_auth_oauth_providers",
2877
3582
  title: "List OAuth providers",
2878
3583
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/oauth_providers` instead. Removal scheduled for March 1, 2026.\n",
2879
- inputSchema: z.strictObject({ path: zListNeonAuthOauthProvidersPath }),
3584
+ inputSchema: z.strictObject({ "project_id": zListNeonAuthOauthProvidersPath.shape.project_id }),
2880
3585
  annotations: {
2881
3586
  readOnlyHint: true,
2882
3587
  openWorldHint: true
@@ -2890,7 +3595,7 @@ const operationFactories = {
2890
3595
  tags: ["Auth (legacy)"]
2891
3596
  },
2892
3597
  invoke: (client, input, signal) => raw.listNeonAuthOauthProviders({
2893
- ...input,
3598
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
2894
3599
  client,
2895
3600
  signal,
2896
3601
  throwOnError: true
@@ -2901,7 +3606,7 @@ const operationFactories = {
2901
3606
  id: "list_neon_auth_redirect_uri_whitelist_domains",
2902
3607
  title: "List trusted redirect URI domains",
2903
3608
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/domains` instead. Removal scheduled for March 1, 2026.\n",
2904
- inputSchema: z.strictObject({ path: zListNeonAuthRedirectUriWhitelistDomainsPath }),
3609
+ inputSchema: z.strictObject({ "project_id": zListNeonAuthRedirectUriWhitelistDomainsPath.shape.project_id }),
2905
3610
  annotations: {
2906
3611
  readOnlyHint: true,
2907
3612
  openWorldHint: true
@@ -2915,7 +3620,7 @@ const operationFactories = {
2915
3620
  tags: ["Auth (legacy)"]
2916
3621
  },
2917
3622
  invoke: (client, input, signal) => raw.listNeonAuthRedirectUriWhitelistDomains({
2918
- ...input,
3623
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
2919
3624
  client,
2920
3625
  signal,
2921
3626
  throwOnError: true
@@ -2926,7 +3631,10 @@ const operationFactories = {
2926
3631
  id: "list_organization_vpc_endpoints",
2927
3632
  title: "List VPC endpoints",
2928
3633
  description: "Retrieves the list of VPC endpoints for the specified Neon organization.\n",
2929
- inputSchema: z.strictObject({ path: zListOrganizationVpcEndpointsPath }),
3634
+ inputSchema: z.strictObject({
3635
+ "org_id": zListOrganizationVpcEndpointsPath.shape.org_id,
3636
+ "region_id": zListOrganizationVpcEndpointsPath.shape.region_id
3637
+ }),
2930
3638
  annotations: {
2931
3639
  readOnlyHint: true,
2932
3640
  openWorldHint: true
@@ -2940,7 +3648,10 @@ const operationFactories = {
2940
3648
  tags: ["Organizations"]
2941
3649
  },
2942
3650
  invoke: (client, input, signal) => raw.listOrganizationVpcEndpoints({
2943
- ...input,
3651
+ path: optionalGroup({
3652
+ "org_id": input["org_id"],
3653
+ "region_id": input["region_id"]
3654
+ }, true),
2944
3655
  client,
2945
3656
  signal,
2946
3657
  throwOnError: true
@@ -2951,7 +3662,7 @@ const operationFactories = {
2951
3662
  id: "list_organization_vpc_endpoints_all_regions",
2952
3663
  title: "List VPC endpoints across all regions",
2953
3664
  description: "Retrieves the list of VPC endpoints for the specified Neon organization across all regions.\n",
2954
- inputSchema: z.strictObject({ path: zListOrganizationVpcEndpointsAllRegionsPath }),
3665
+ inputSchema: z.strictObject({ "org_id": zListOrganizationVpcEndpointsAllRegionsPath.shape.org_id }),
2955
3666
  annotations: {
2956
3667
  readOnlyHint: true,
2957
3668
  openWorldHint: true
@@ -2965,7 +3676,7 @@ const operationFactories = {
2965
3676
  tags: ["Organizations"]
2966
3677
  },
2967
3678
  invoke: (client, input, signal) => raw.listOrganizationVpcEndpointsAllRegions({
2968
- ...input,
3679
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
2969
3680
  client,
2970
3681
  signal,
2971
3682
  throwOnError: true
@@ -2976,7 +3687,7 @@ const operationFactories = {
2976
3687
  id: "list_org_api_keys",
2977
3688
  title: "List organization API keys",
2978
3689
  description: "Retrieves the API keys for the specified organization.\nThe response does not include API key tokens. A token is only provided when creating an API key.\nAPI keys can also be managed in the Neon Console.\nFor more information, see [Manage API keys](https://neon.com/docs/manage/api-keys/).\n",
2979
- inputSchema: z.strictObject({ path: zListOrgApiKeysPath }),
3690
+ inputSchema: z.strictObject({ "org_id": zListOrgApiKeysPath.shape.org_id }),
2980
3691
  annotations: {
2981
3692
  readOnlyHint: true,
2982
3693
  openWorldHint: true
@@ -2990,7 +3701,7 @@ const operationFactories = {
2990
3701
  tags: ["Organizations"]
2991
3702
  },
2992
3703
  invoke: (client, input, signal) => raw.listOrgApiKeys({
2993
- ...input,
3704
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
2994
3705
  client,
2995
3706
  signal,
2996
3707
  throwOnError: true
@@ -3002,8 +3713,13 @@ const operationFactories = {
3002
3713
  title: "List objects in a bucket",
3003
3714
  description: "Lists objects visible in the named bucket on the specified branch,\nincluding those inherited from ancestor branches. Listing is served by\nthe user's session (no customer S3 credentials required).\n\nWhen `delimiter` is supplied (typically `/`), keys are collapsed into\ncommon prefixes (`folders`) so callers can render a folder-style\nbrowser; keys that do not contain the delimiter after `prefix` are\nreturned as `objects`.\n\n**Note**: This endpoint is currently in Beta.\n",
3004
3715
  inputSchema: z.strictObject({
3005
- path: zListProjectBranchBucketObjectsPath,
3006
- query: zListProjectBranchBucketObjectsQuery.optional()
3716
+ "project_id": zListProjectBranchBucketObjectsPath.shape.project_id,
3717
+ "branch_id": zListProjectBranchBucketObjectsPath.shape.branch_id,
3718
+ "bucket_name": zListProjectBranchBucketObjectsPath.shape.bucket_name,
3719
+ "prefix": zListProjectBranchBucketObjectsQuery.shape.prefix.optional(),
3720
+ "delimiter": zListProjectBranchBucketObjectsQuery.shape.delimiter.optional(),
3721
+ "cursor": zListProjectBranchBucketObjectsQuery.shape.cursor.optional(),
3722
+ "limit": zListProjectBranchBucketObjectsQuery.shape.limit.optional()
3007
3723
  }),
3008
3724
  annotations: {
3009
3725
  readOnlyHint: true,
@@ -3018,7 +3734,17 @@ const operationFactories = {
3018
3734
  tags: ["Buckets"]
3019
3735
  },
3020
3736
  invoke: (client, input, signal) => raw.listProjectBranchBucketObjects({
3021
- ...input,
3737
+ path: optionalGroup({
3738
+ "project_id": input["project_id"],
3739
+ "branch_id": input["branch_id"],
3740
+ "bucket_name": input["bucket_name"]
3741
+ }, true),
3742
+ query: optionalGroup({
3743
+ "prefix": input["prefix"],
3744
+ "delimiter": input["delimiter"],
3745
+ "cursor": input["cursor"],
3746
+ "limit": input["limit"]
3747
+ }, false),
3022
3748
  client,
3023
3749
  signal,
3024
3750
  throwOnError: true
@@ -3029,7 +3755,10 @@ const operationFactories = {
3029
3755
  id: "list_project_branch_buckets",
3030
3756
  title: "List buckets on the branch",
3031
3757
  description: "Lists branchable object storage buckets visible on the specified branch,\nincluding those inherited from ancestor branches.\n\n**Note**: This endpoint is currently in Beta.\n",
3032
- inputSchema: z.strictObject({ path: zListProjectBranchBucketsPath }),
3758
+ inputSchema: z.strictObject({
3759
+ "project_id": zListProjectBranchBucketsPath.shape.project_id,
3760
+ "branch_id": zListProjectBranchBucketsPath.shape.branch_id
3761
+ }),
3033
3762
  annotations: {
3034
3763
  readOnlyHint: true,
3035
3764
  openWorldHint: true
@@ -3043,7 +3772,10 @@ const operationFactories = {
3043
3772
  tags: ["Buckets"]
3044
3773
  },
3045
3774
  invoke: (client, input, signal) => raw.listProjectBranchBuckets({
3046
- ...input,
3775
+ path: optionalGroup({
3776
+ "project_id": input["project_id"],
3777
+ "branch_id": input["branch_id"]
3778
+ }, true),
3047
3779
  client,
3048
3780
  signal,
3049
3781
  throwOnError: true
@@ -3054,7 +3786,10 @@ const operationFactories = {
3054
3786
  id: "list_project_branch_databases",
3055
3787
  title: "List databases",
3056
3788
  description: "Retrieves a list of databases for the specified branch.\nA branch can have multiple databases.\nFor related information, see [Manage databases](https://neon.com/docs/manage/databases/).\n",
3057
- inputSchema: z.strictObject({ path: zListProjectBranchDatabasesPath }),
3789
+ inputSchema: z.strictObject({
3790
+ "project_id": zListProjectBranchDatabasesPath.shape.project_id,
3791
+ "branch_id": zListProjectBranchDatabasesPath.shape.branch_id
3792
+ }),
3058
3793
  annotations: {
3059
3794
  readOnlyHint: true,
3060
3795
  openWorldHint: true
@@ -3068,7 +3803,10 @@ const operationFactories = {
3068
3803
  tags: ["Branch"]
3069
3804
  },
3070
3805
  invoke: (client, input, signal) => raw.listProjectBranchDatabases({
3071
- ...input,
3806
+ path: optionalGroup({
3807
+ "project_id": input["project_id"],
3808
+ "branch_id": input["branch_id"]
3809
+ }, true),
3072
3810
  client,
3073
3811
  signal,
3074
3812
  throwOnError: true
@@ -3079,7 +3817,10 @@ const operationFactories = {
3079
3817
  id: "list_project_branch_endpoints",
3080
3818
  title: "List branch endpoints",
3081
3819
  description: "Retrieves a list of compute endpoints for the specified branch.\nNeon permits only one read-write compute endpoint per branch.\nA branch can have multiple read-only compute endpoints.\n",
3082
- inputSchema: z.strictObject({ path: zListProjectBranchEndpointsPath }),
3820
+ inputSchema: z.strictObject({
3821
+ "project_id": zListProjectBranchEndpointsPath.shape.project_id,
3822
+ "branch_id": zListProjectBranchEndpointsPath.shape.branch_id
3823
+ }),
3083
3824
  annotations: {
3084
3825
  readOnlyHint: true,
3085
3826
  openWorldHint: true
@@ -3093,7 +3834,10 @@ const operationFactories = {
3093
3834
  tags: ["Branch"]
3094
3835
  },
3095
3836
  invoke: (client, input, signal) => raw.listProjectBranchEndpoints({
3096
- ...input,
3837
+ path: optionalGroup({
3838
+ "project_id": input["project_id"],
3839
+ "branch_id": input["branch_id"]
3840
+ }, true),
3097
3841
  client,
3098
3842
  signal,
3099
3843
  throwOnError: true
@@ -3105,8 +3849,13 @@ const operationFactories = {
3105
3849
  title: "List branches",
3106
3850
  description: "Retrieves a list of branches for the specified project.\n\nEach Neon project has a root branch named `main`.\nA `branch_id` value has a `br-` prefix.\nA project may contain child branches that were branched from `main` or from another branch.\nA parent branch is identified by the `parent_id` value, which is the `id` of the parent branch.\nFor related information, see [Manage branches](https://neon.com/docs/manage/branches/).\n",
3107
3851
  inputSchema: z.strictObject({
3108
- path: zListProjectBranchesPath,
3109
- query: zListProjectBranchesQuery.optional()
3852
+ "project_id": zListProjectBranchesPath.shape.project_id,
3853
+ "search": zListProjectBranchesQuery.shape.search.optional(),
3854
+ "sort_by": zListProjectBranchesQuery.shape.sort_by.optional(),
3855
+ "cursor": zListProjectBranchesQuery.shape.cursor.optional(),
3856
+ "sort_order": zListProjectBranchesQuery.shape.sort_order.optional(),
3857
+ "limit": zListProjectBranchesQuery.shape.limit.optional(),
3858
+ "include_deleted": zListProjectBranchesQuery.shape.include_deleted.optional()
3110
3859
  }),
3111
3860
  annotations: {
3112
3861
  readOnlyHint: true,
@@ -3121,7 +3870,15 @@ const operationFactories = {
3121
3870
  tags: ["Branch"]
3122
3871
  },
3123
3872
  invoke: (client, input, signal) => raw.listProjectBranches({
3124
- ...input,
3873
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
3874
+ query: optionalGroup({
3875
+ "search": input["search"],
3876
+ "sort_by": input["sort_by"],
3877
+ "cursor": input["cursor"],
3878
+ "sort_order": input["sort_order"],
3879
+ "limit": input["limit"],
3880
+ "include_deleted": input["include_deleted"]
3881
+ }, false),
3125
3882
  client,
3126
3883
  signal,
3127
3884
  throwOnError: true
@@ -3133,8 +3890,10 @@ const operationFactories = {
3133
3890
  title: "List functions on the branch",
3134
3891
  description: "Lists functions on the specified branch.\n\n**Note**: This endpoint is currently in Beta.\n",
3135
3892
  inputSchema: z.strictObject({
3136
- path: zListProjectBranchFunctionsPath,
3137
- query: zListProjectBranchFunctionsQuery.optional()
3893
+ "project_id": zListProjectBranchFunctionsPath.shape.project_id,
3894
+ "branch_id": zListProjectBranchFunctionsPath.shape.branch_id,
3895
+ "cursor": zListProjectBranchFunctionsQuery.shape.cursor.optional(),
3896
+ "limit": zListProjectBranchFunctionsQuery.shape.limit.optional()
3138
3897
  }),
3139
3898
  annotations: {
3140
3899
  readOnlyHint: true,
@@ -3149,7 +3908,14 @@ const operationFactories = {
3149
3908
  tags: ["Functions"]
3150
3909
  },
3151
3910
  invoke: (client, input, signal) => raw.listProjectBranchFunctions({
3152
- ...input,
3911
+ path: optionalGroup({
3912
+ "project_id": input["project_id"],
3913
+ "branch_id": input["branch_id"]
3914
+ }, true),
3915
+ query: optionalGroup({
3916
+ "cursor": input["cursor"],
3917
+ "limit": input["limit"]
3918
+ }, false),
3153
3919
  client,
3154
3920
  signal,
3155
3921
  throwOnError: true
@@ -3160,7 +3926,10 @@ const operationFactories = {
3160
3926
  id: "list_project_branch_log_fields",
3161
3927
  title: "List branch log fields",
3162
3928
  description: "Lists the low-cardinality log fields observed on this branch whose\ndistinct values can be discovered with the log field-values endpoint.\n\nThe set is computed per branch and grows as new fields are observed, so\ntreat it as data rather than a fixed list: discover a field here, then\npass it as `field_name` to the field-values endpoint.\n\n**Note**: This endpoint is currently in Private Beta.\n",
3163
- inputSchema: z.strictObject({ path: zListProjectBranchLogFieldsPath }),
3929
+ inputSchema: z.strictObject({
3930
+ "project_id": zListProjectBranchLogFieldsPath.shape.project_id,
3931
+ "branch_id": zListProjectBranchLogFieldsPath.shape.branch_id
3932
+ }),
3164
3933
  annotations: {
3165
3934
  readOnlyHint: true,
3166
3935
  openWorldHint: true
@@ -3174,7 +3943,10 @@ const operationFactories = {
3174
3943
  tags: ["Logs"]
3175
3944
  },
3176
3945
  invoke: (client, input, signal) => raw.listProjectBranchLogFields({
3177
- ...input,
3946
+ path: optionalGroup({
3947
+ "project_id": input["project_id"],
3948
+ "branch_id": input["branch_id"]
3949
+ }, true),
3178
3950
  client,
3179
3951
  signal,
3180
3952
  throwOnError: true
@@ -3186,8 +3958,14 @@ const operationFactories = {
3186
3958
  title: "List branch log field values",
3187
3959
  description: "Lists the distinct values observed for a low-cardinality log field in\nthe requested time range. Call the log fields endpoint first to learn\nwhich `field_name` values this branch supports; a field that branch has\nnever emitted is rejected with `unknown_field`.\n\nGive the window either as `since` or as an explicit `start_time`;\nsupplying both is rejected. If neither is given, the previous six hours\nare used. The maximum supported time range is seven days.\n\n**Note**: This endpoint is currently in Private Beta.\n",
3188
3960
  inputSchema: z.strictObject({
3189
- path: zListProjectBranchLogFieldValuesPath,
3190
- query: zListProjectBranchLogFieldValuesQuery.optional()
3961
+ "project_id": zListProjectBranchLogFieldValuesPath.shape.project_id,
3962
+ "branch_id": zListProjectBranchLogFieldValuesPath.shape.branch_id,
3963
+ "field_name": zListProjectBranchLogFieldValuesPath.shape.field_name,
3964
+ "since": zListProjectBranchLogFieldValuesQuery.shape.since.optional(),
3965
+ "start_time": zListProjectBranchLogFieldValuesQuery.shape.start_time.optional(),
3966
+ "end_time": zListProjectBranchLogFieldValuesQuery.shape.end_time.optional(),
3967
+ "source": zListProjectBranchLogFieldValuesQuery.shape.source.optional(),
3968
+ "limit": zListProjectBranchLogFieldValuesQuery.shape.limit.optional()
3191
3969
  }),
3192
3970
  annotations: {
3193
3971
  readOnlyHint: true,
@@ -3202,7 +3980,18 @@ const operationFactories = {
3202
3980
  tags: ["Logs"]
3203
3981
  },
3204
3982
  invoke: (client, input, signal) => raw.listProjectBranchLogFieldValues({
3205
- ...input,
3983
+ path: optionalGroup({
3984
+ "project_id": input["project_id"],
3985
+ "branch_id": input["branch_id"],
3986
+ "field_name": input["field_name"]
3987
+ }, true),
3988
+ query: optionalGroup({
3989
+ "since": input["since"],
3990
+ "start_time": input["start_time"],
3991
+ "end_time": input["end_time"],
3992
+ "source": input["source"],
3993
+ "limit": input["limit"]
3994
+ }, false),
3206
3995
  client,
3207
3996
  signal,
3208
3997
  throwOnError: true
@@ -3213,7 +4002,10 @@ const operationFactories = {
3213
4002
  id: "list_project_branch_roles",
3214
4003
  title: "List roles",
3215
4004
  description: "Retrieves a list of Postgres roles from the specified branch.\nFor related information, see [Manage roles](https://neon.com/docs/manage/roles/).\n",
3216
- inputSchema: z.strictObject({ path: zListProjectBranchRolesPath }),
4005
+ inputSchema: z.strictObject({
4006
+ "project_id": zListProjectBranchRolesPath.shape.project_id,
4007
+ "branch_id": zListProjectBranchRolesPath.shape.branch_id
4008
+ }),
3217
4009
  annotations: {
3218
4010
  readOnlyHint: true,
3219
4011
  openWorldHint: true
@@ -3227,7 +4019,10 @@ const operationFactories = {
3227
4019
  tags: ["Branch"]
3228
4020
  },
3229
4021
  invoke: (client, input, signal) => raw.listProjectBranchRoles({
3230
- ...input,
4022
+ path: optionalGroup({
4023
+ "project_id": input["project_id"],
4024
+ "branch_id": input["branch_id"]
4025
+ }, true),
3231
4026
  client,
3232
4027
  signal,
3233
4028
  throwOnError: true
@@ -3238,7 +4033,7 @@ const operationFactories = {
3238
4033
  id: "list_project_endpoints",
3239
4034
  title: "List compute endpoints",
3240
4035
  description: "Retrieves a list of compute endpoints for the specified project.\nA compute endpoint is a Neon compute instance.\nFor information about compute endpoints, see [Manage computes](https://neon.com/docs/manage/endpoints/).\n",
3241
- inputSchema: z.strictObject({ path: zListProjectEndpointsPath }),
4036
+ inputSchema: z.strictObject({ "project_id": zListProjectEndpointsPath.shape.project_id }),
3242
4037
  annotations: {
3243
4038
  readOnlyHint: true,
3244
4039
  openWorldHint: true
@@ -3252,7 +4047,7 @@ const operationFactories = {
3252
4047
  tags: ["Endpoint"]
3253
4048
  },
3254
4049
  invoke: (client, input, signal) => raw.listProjectEndpoints({
3255
- ...input,
4050
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
3256
4051
  client,
3257
4052
  signal,
3258
4053
  throwOnError: true
@@ -3264,8 +4059,9 @@ const operationFactories = {
3264
4059
  title: "List org members and their project roles",
3265
4060
  description: "Lists organization members and their per-project roles for an org-owned project.\nReturns 404 when the project is not org-owned, per-project role management is disabled,\nor the caller has no access. Callers with VIEWER or EDITOR see members with\neffective project access. Callers with ADMIN also see unassigned org members.\n",
3266
4061
  inputSchema: z.strictObject({
3267
- path: zListProjectMembersPath,
3268
- query: zListProjectMembersQuery.optional()
4062
+ "project_id": zListProjectMembersPath.shape.project_id,
4063
+ "cursor": zListProjectMembersQuery.shape.cursor.optional(),
4064
+ "limit": zListProjectMembersQuery.shape.limit.optional()
3269
4065
  }),
3270
4066
  annotations: {
3271
4067
  readOnlyHint: true,
@@ -3280,7 +4076,11 @@ const operationFactories = {
3280
4076
  tags: ["Project"]
3281
4077
  },
3282
4078
  invoke: (client, input, signal) => raw.listProjectMembers({
3283
- ...input,
4079
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
4080
+ query: optionalGroup({
4081
+ "cursor": input["cursor"],
4082
+ "limit": input["limit"]
4083
+ }, false),
3284
4084
  client,
3285
4085
  signal,
3286
4086
  throwOnError: true
@@ -3292,8 +4092,9 @@ const operationFactories = {
3292
4092
  title: "List operations",
3293
4093
  description: "Retrieves a list of operations for the specified Neon project.\nThe number of operations returned can be large.\nTo paginate the response, issue an initial request with a `limit` value.\nThen, add the `cursor` value that was returned in the response to the next request.\nOperations older than 6 months may be deleted from our systems.\nIf you need more history than that, you should store your own history.\n",
3294
4094
  inputSchema: z.strictObject({
3295
- path: zListProjectOperationsPath,
3296
- query: zListProjectOperationsQuery.optional()
4095
+ "project_id": zListProjectOperationsPath.shape.project_id,
4096
+ "cursor": zListProjectOperationsQuery.shape.cursor.optional(),
4097
+ "limit": zListProjectOperationsQuery.shape.limit.optional()
3297
4098
  }),
3298
4099
  annotations: {
3299
4100
  readOnlyHint: true,
@@ -3308,7 +4109,11 @@ const operationFactories = {
3308
4109
  tags: ["Operation"]
3309
4110
  },
3310
4111
  invoke: (client, input, signal) => raw.listProjectOperations({
3311
- ...input,
4112
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
4113
+ query: optionalGroup({
4114
+ "cursor": input["cursor"],
4115
+ "limit": input["limit"]
4116
+ }, false),
3312
4117
  client,
3313
4118
  signal,
3314
4119
  throwOnError: true
@@ -3319,7 +4124,7 @@ const operationFactories = {
3319
4124
  id: "list_project_permissions",
3320
4125
  title: "List project access",
3321
4126
  description: "Retrieves details about users who have access to the project, including the permission `id`, the granted-to email address, and the date project access was granted.",
3322
- inputSchema: z.strictObject({ path: zListProjectPermissionsPath }),
4127
+ inputSchema: z.strictObject({ "project_id": zListProjectPermissionsPath.shape.project_id }),
3323
4128
  annotations: {
3324
4129
  readOnlyHint: true,
3325
4130
  openWorldHint: true
@@ -3333,7 +4138,7 @@ const operationFactories = {
3333
4138
  tags: ["Project"]
3334
4139
  },
3335
4140
  invoke: (client, input, signal) => raw.listProjectPermissions({
3336
- ...input,
4141
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
3337
4142
  client,
3338
4143
  signal,
3339
4144
  throwOnError: true
@@ -3344,7 +4149,14 @@ const operationFactories = {
3344
4149
  id: "list_projects",
3345
4150
  title: "List projects",
3346
4151
  description: "Retrieves a list of projects for the specified organization.\nIf using a personal API key, include the `org_id` parameter to specify which organization to work with.\nIf using an org API key, `org_id` is automatically inferred from the key.\nFor more information, see [Manage organizations using the Neon API](https://neon.com/docs/manage/orgs-api)\nand [Manage projects](https://neon.com/docs/manage/projects/).\n",
3347
- inputSchema: z.strictObject({ query: zListProjectsQuery.optional() }),
4152
+ inputSchema: z.strictObject({
4153
+ "cursor": zListProjectsQuery.shape.cursor.optional(),
4154
+ "limit": zListProjectsQuery.shape.limit.optional(),
4155
+ "search": zListProjectsQuery.shape.search.optional(),
4156
+ "org_id": zListProjectsQuery.shape.org_id.optional(),
4157
+ "timeout": zListProjectsQuery.shape.timeout.optional(),
4158
+ "recoverable": zListProjectsQuery.shape.recoverable.optional()
4159
+ }),
3348
4160
  annotations: {
3349
4161
  readOnlyHint: true,
3350
4162
  openWorldHint: true
@@ -3358,7 +4170,14 @@ const operationFactories = {
3358
4170
  tags: ["Project"]
3359
4171
  },
3360
4172
  invoke: (client, input, signal) => raw.listProjects({
3361
- ...input,
4173
+ query: optionalGroup({
4174
+ "cursor": input["cursor"],
4175
+ "limit": input["limit"],
4176
+ "search": input["search"],
4177
+ "org_id": input["org_id"],
4178
+ "timeout": input["timeout"],
4179
+ "recoverable": input["recoverable"]
4180
+ }, false),
3362
4181
  client,
3363
4182
  signal,
3364
4183
  throwOnError: true
@@ -3369,7 +4188,7 @@ const operationFactories = {
3369
4188
  id: "list_project_vpc_endpoints",
3370
4189
  title: "List VPC endpoint restrictions",
3371
4190
  description: "Lists VPC endpoint restrictions for the specified Neon project.\n",
3372
- inputSchema: z.strictObject({ path: zListProjectVpcEndpointsPath }),
4191
+ inputSchema: z.strictObject({ "project_id": zListProjectVpcEndpointsPath.shape.project_id }),
3373
4192
  annotations: {
3374
4193
  readOnlyHint: true,
3375
4194
  openWorldHint: true
@@ -3383,7 +4202,7 @@ const operationFactories = {
3383
4202
  tags: ["Project"]
3384
4203
  },
3385
4204
  invoke: (client, input, signal) => raw.listProjectVpcEndpoints({
3386
- ...input,
4205
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
3387
4206
  client,
3388
4207
  signal,
3389
4208
  throwOnError: true
@@ -3394,7 +4213,12 @@ const operationFactories = {
3394
4213
  id: "list_shared_projects",
3395
4214
  title: "List shared projects",
3396
4215
  description: "Retrieves a list of projects shared with your Neon account.\nFor more information, see [Manage projects](https://neon.com/docs/manage/projects/).\n",
3397
- inputSchema: z.strictObject({ query: zListSharedProjectsQuery.optional() }),
4216
+ inputSchema: z.strictObject({
4217
+ "cursor": zListSharedProjectsQuery.shape.cursor.optional(),
4218
+ "limit": zListSharedProjectsQuery.shape.limit.optional(),
4219
+ "search": zListSharedProjectsQuery.shape.search.optional(),
4220
+ "timeout": zListSharedProjectsQuery.shape.timeout.optional()
4221
+ }),
3398
4222
  annotations: {
3399
4223
  readOnlyHint: true,
3400
4224
  openWorldHint: true
@@ -3408,7 +4232,12 @@ const operationFactories = {
3408
4232
  tags: ["Project"]
3409
4233
  },
3410
4234
  invoke: (client, input, signal) => raw.listSharedProjects({
3411
- ...input,
4235
+ query: optionalGroup({
4236
+ "cursor": input["cursor"],
4237
+ "limit": input["limit"],
4238
+ "search": input["search"],
4239
+ "timeout": input["timeout"]
4240
+ }, false),
3412
4241
  client,
3413
4242
  signal,
3414
4243
  throwOnError: true
@@ -3419,7 +4248,7 @@ const operationFactories = {
3419
4248
  id: "list_snapshots",
3420
4249
  title: "List project snapshots",
3421
4250
  description: "Lists the snapshots for the specified project.\nEach snapshot represents a point-in-time backup of the project data.\n",
3422
- inputSchema: z.strictObject({ path: zListSnapshotsPath }),
4251
+ inputSchema: z.strictObject({ "project_id": zListSnapshotsPath.shape.project_id }),
3423
4252
  annotations: {
3424
4253
  readOnlyHint: true,
3425
4254
  openWorldHint: true
@@ -3433,7 +4262,7 @@ const operationFactories = {
3433
4262
  tags: ["Snapshot"]
3434
4263
  },
3435
4264
  invoke: (client, input, signal) => raw.listSnapshots({
3436
- ...input,
4265
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
3437
4266
  client,
3438
4267
  signal,
3439
4268
  throwOnError: true
@@ -3445,8 +4274,13 @@ const operationFactories = {
3445
4274
  title: "Presign an upload or download for an object in a bucket",
3446
4275
  description: "Returns a presigned URL that transfers bytes directly to or from the\nobject's bucket on the specified branch, without the caller ever\nhandling S3 credentials. The `operation` field selects the direction:\n\n- `upload` returns a presigned `PUT` URL (the caller `PUT`s the file\n bytes straight to `url` with the returned `headers`). Authorized with\n project write access.\n- `download` returns a presigned `GET` URL (the caller `GET`s the\n bytes straight from `url`). Authorized with project read access.\n\nThe platform mints a short-lived credential and builds the SigV4-signed\nURL against the branch's S3 data-plane host, returning it together with\nthe HTTP method, any headers the caller must echo, and the URL's expiry.\n\nServed by the user's session (no customer S3 credentials required).\n\n**Note**: This endpoint is currently in Beta.\n",
3447
4276
  inputSchema: z.strictObject({
3448
- body: zPresignProjectBranchBucketObjectBody,
3449
- path: zPresignProjectBranchBucketObjectPath
4277
+ "project_id": zPresignProjectBranchBucketObjectPath.shape.project_id,
4278
+ "branch_id": zPresignProjectBranchBucketObjectPath.shape.branch_id,
4279
+ "bucket_name": zPresignProjectBranchBucketObjectPath.shape.bucket_name,
4280
+ "object_key": zPresignProjectBranchBucketObjectPath.shape.object_key,
4281
+ "operation": zPresignProjectBranchBucketObjectBody.shape.operation,
4282
+ "content_type": zPresignProjectBranchBucketObjectBody.shape.content_type,
4283
+ "expires_in_seconds": zPresignProjectBranchBucketObjectBody.shape.expires_in_seconds
3450
4284
  }),
3451
4285
  annotations: {
3452
4286
  readOnlyHint: false,
@@ -3462,7 +4296,17 @@ const operationFactories = {
3462
4296
  tags: ["Buckets"]
3463
4297
  },
3464
4298
  invoke: (client, input, signal) => raw.presignProjectBranchBucketObject({
3465
- ...input,
4299
+ path: optionalGroup({
4300
+ "project_id": input["project_id"],
4301
+ "branch_id": input["branch_id"],
4302
+ "bucket_name": input["bucket_name"],
4303
+ "object_key": input["object_key"]
4304
+ }, true),
4305
+ body: optionalGroup({
4306
+ "operation": input["operation"],
4307
+ "content_type": input["content_type"],
4308
+ "expires_in_seconds": input["expires_in_seconds"]
4309
+ }, true),
3466
4310
  client,
3467
4311
  signal,
3468
4312
  throwOnError: true
@@ -3474,8 +4318,22 @@ const operationFactories = {
3474
4318
  title: "Query branch logs",
3475
4319
  description: "Returns logs emitted by services running on the specified branch,\nordered by timestamp according to `sort_order`.\n\nAll supplied filters are combined with `AND`: a record is returned only\nwhen it matches every filter. `minimum_severity` and `severity_text` are\nindependent filters, so setting both requires a record to clear the\nseverity floor *and* match the exact severity text.\n\nSupply `logql` instead of the structured filters to run a raw LogQL\nexpression. Combining it with any structured filter is rejected rather\nthan silently ignored; `limit`, `sort_order`, and the time window still\napply, because those bound the query rather than form part of the\nexpression.\n\nGive the window either as `since` — a duration ending at `end_time`, or\nat the current time when `end_time` is omitted — or as an explicit\n`start_time`. Supplying both is rejected.\n\nA single response holds at most 1,000 records. When `is_truncated` is\n`true`, pass the returned `next_cursor` back as `cursor` to fetch the\nnext page, repeating the time range and every filter unchanged.\n\nIf no time range is supplied, the query covers the previous hour. The\nmaximum supported time range is seven days. `end_time` is exclusive.\n\n**Note**: This endpoint is currently in Private Beta.\n",
3476
4320
  inputSchema: z.strictObject({
3477
- body: zQueryProjectBranchLogsBody,
3478
- path: zQueryProjectBranchLogsPath
4321
+ "project_id": zQueryProjectBranchLogsPath.shape.project_id,
4322
+ "branch_id": zQueryProjectBranchLogsPath.shape.branch_id,
4323
+ "since": zQueryProjectBranchLogsBody.shape.since,
4324
+ "start_time": zQueryProjectBranchLogsBody.shape.start_time,
4325
+ "end_time": zQueryProjectBranchLogsBody.shape.end_time,
4326
+ "limit": zQueryProjectBranchLogsBody.shape.limit,
4327
+ "cursor": zQueryProjectBranchLogsBody.shape.cursor,
4328
+ "sort_order": zQueryProjectBranchLogsBody.shape.sort_order,
4329
+ "source": zQueryProjectBranchLogsBody.shape.source,
4330
+ "service_name": zQueryProjectBranchLogsBody.shape.service_name,
4331
+ "scope_name": zQueryProjectBranchLogsBody.shape.scope_name,
4332
+ "minimum_severity": zQueryProjectBranchLogsBody.shape.minimum_severity,
4333
+ "severity_text": zQueryProjectBranchLogsBody.shape.severity_text,
4334
+ "body_contains": zQueryProjectBranchLogsBody.shape.body_contains,
4335
+ "trace_id": zQueryProjectBranchLogsBody.shape.trace_id,
4336
+ "logql": zQueryProjectBranchLogsBody.shape.logql
3479
4337
  }),
3480
4338
  annotations: {
3481
4339
  readOnlyHint: false,
@@ -3491,7 +4349,26 @@ const operationFactories = {
3491
4349
  tags: ["Logs"]
3492
4350
  },
3493
4351
  invoke: (client, input, signal) => raw.queryProjectBranchLogs({
3494
- ...input,
4352
+ path: optionalGroup({
4353
+ "project_id": input["project_id"],
4354
+ "branch_id": input["branch_id"]
4355
+ }, true),
4356
+ body: optionalGroup({
4357
+ "since": input["since"],
4358
+ "start_time": input["start_time"],
4359
+ "end_time": input["end_time"],
4360
+ "limit": input["limit"],
4361
+ "cursor": input["cursor"],
4362
+ "sort_order": input["sort_order"],
4363
+ "source": input["source"],
4364
+ "service_name": input["service_name"],
4365
+ "scope_name": input["scope_name"],
4366
+ "minimum_severity": input["minimum_severity"],
4367
+ "severity_text": input["severity_text"],
4368
+ "body_contains": input["body_contains"],
4369
+ "trace_id": input["trace_id"],
4370
+ "logql": input["logql"]
4371
+ }, true),
3495
4372
  client,
3496
4373
  signal,
3497
4374
  throwOnError: true
@@ -3502,7 +4379,7 @@ const operationFactories = {
3502
4379
  id: "recover_project",
3503
4380
  title: "Recover a deleted project",
3504
4381
  description: "Recovers a deleted project within the 7-day deletion recovery period.\nRestores branches, endpoints, settings, and connection strings.\nSome integrations require manual reconfiguration after recovery.\nTo list recoverable projects, use `GET /projects?recoverable=true`.\n",
3505
- inputSchema: z.strictObject({ path: zRecoverProjectPath }),
4382
+ inputSchema: z.strictObject({ "project_id": zRecoverProjectPath.shape.project_id }),
3506
4383
  annotations: {
3507
4384
  readOnlyHint: false,
3508
4385
  destructiveHint: true,
@@ -3517,7 +4394,7 @@ const operationFactories = {
3517
4394
  tags: ["Project"]
3518
4395
  },
3519
4396
  invoke: (client, input, signal) => raw.recoverProject({
3520
- ...input,
4397
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
3521
4398
  client,
3522
4399
  signal,
3523
4400
  throwOnError: true
@@ -3528,7 +4405,10 @@ const operationFactories = {
3528
4405
  id: "remove_organization_member",
3529
4406
  title: "Remove organization member",
3530
4407
  description: "Removes the specified member from the organization.\nOnly organization admins can perform this action.\nThe last admin in an organization cannot be removed.\n",
3531
- inputSchema: z.strictObject({ path: zRemoveOrganizationMemberPath }),
4408
+ inputSchema: z.strictObject({
4409
+ "org_id": zRemoveOrganizationMemberPath.shape.org_id,
4410
+ "member_id": zRemoveOrganizationMemberPath.shape.member_id
4411
+ }),
3532
4412
  annotations: {
3533
4413
  readOnlyHint: false,
3534
4414
  destructiveHint: true,
@@ -3543,7 +4423,10 @@ const operationFactories = {
3543
4423
  tags: ["Organizations"]
3544
4424
  },
3545
4425
  invoke: (client, input, signal) => raw.removeOrganizationMember({
3546
- ...input,
4426
+ path: optionalGroup({
4427
+ "org_id": input["org_id"],
4428
+ "member_id": input["member_id"]
4429
+ }, true),
3547
4430
  client,
3548
4431
  signal,
3549
4432
  throwOnError: true
@@ -3555,8 +4438,9 @@ const operationFactories = {
3555
4438
  title: "Remove an org member's role on a project",
3556
4439
  description: "Idempotently removes the explicit project grant. The member's organization-role\ndefault project permission still applies. Self-DELETE requires\n`confirm_self_lockout=true` when effective manage access would be lost.\n",
3557
4440
  inputSchema: z.strictObject({
3558
- path: zRemoveProjectMemberRolePath,
3559
- query: zRemoveProjectMemberRoleQuery.optional()
4441
+ "project_id": zRemoveProjectMemberRolePath.shape.project_id,
4442
+ "member_id": zRemoveProjectMemberRolePath.shape.member_id,
4443
+ "confirm_self_lockout": zRemoveProjectMemberRoleQuery.shape.confirm_self_lockout.optional()
3560
4444
  }),
3561
4445
  annotations: {
3562
4446
  readOnlyHint: false,
@@ -3572,7 +4456,11 @@ const operationFactories = {
3572
4456
  tags: ["Project"]
3573
4457
  },
3574
4458
  invoke: (client, input, signal) => raw.removeProjectMemberRole({
3575
- ...input,
4459
+ path: optionalGroup({
4460
+ "project_id": input["project_id"],
4461
+ "member_id": input["member_id"]
4462
+ }, true),
4463
+ query: optionalGroup({ "confirm_self_lockout": input["confirm_self_lockout"] }, false),
3576
4464
  client,
3577
4465
  signal,
3578
4466
  throwOnError: true
@@ -3583,7 +4471,11 @@ const operationFactories = {
3583
4471
  id: "reset_project_branch_role_password",
3584
4472
  title: "Reset role password",
3585
4473
  description: "Resets the password for the specified Postgres role.\nReturns a new password and operations. The new password is ready to use when the last operation finishes.\nThe old password remains valid until last operation finishes.\nConnections to the compute endpoint are dropped. If idle,\nthe compute endpoint becomes active for a short period of time.\n\nFor related information, see [Manage roles](https://neon.com/docs/manage/roles/).\n",
3586
- inputSchema: z.strictObject({ path: zResetProjectBranchRolePasswordPath }),
4474
+ inputSchema: z.strictObject({
4475
+ "project_id": zResetProjectBranchRolePasswordPath.shape.project_id,
4476
+ "branch_id": zResetProjectBranchRolePasswordPath.shape.branch_id,
4477
+ "role_name": zResetProjectBranchRolePasswordPath.shape.role_name
4478
+ }),
3587
4479
  annotations: {
3588
4480
  readOnlyHint: false,
3589
4481
  destructiveHint: true,
@@ -3598,7 +4490,11 @@ const operationFactories = {
3598
4490
  tags: ["Branch"]
3599
4491
  },
3600
4492
  invoke: (client, input, signal) => raw.resetProjectBranchRolePassword({
3601
- ...input,
4493
+ path: optionalGroup({
4494
+ "project_id": input["project_id"],
4495
+ "branch_id": input["branch_id"],
4496
+ "role_name": input["role_name"]
4497
+ }, true),
3602
4498
  client,
3603
4499
  signal,
3604
4500
  throwOnError: true
@@ -3609,7 +4505,10 @@ const operationFactories = {
3609
4505
  id: "restart_project_endpoint",
3610
4506
  title: "Restart compute endpoint",
3611
4507
  description: "Restarts the specified compute endpoint by immediately suspending it and then starting it again.\nAn `endpoint_id` has an `ep-` prefix.\nFor information about compute endpoints, see [Manage computes](https://neon.com/docs/manage/endpoints/).\n",
3612
- inputSchema: z.strictObject({ path: zRestartProjectEndpointPath }),
4508
+ inputSchema: z.strictObject({
4509
+ "project_id": zRestartProjectEndpointPath.shape.project_id,
4510
+ "endpoint_id": zRestartProjectEndpointPath.shape.endpoint_id
4511
+ }),
3613
4512
  annotations: {
3614
4513
  readOnlyHint: false,
3615
4514
  destructiveHint: true,
@@ -3624,7 +4523,10 @@ const operationFactories = {
3624
4523
  tags: ["Endpoint"]
3625
4524
  },
3626
4525
  invoke: (client, input, signal) => raw.restartProjectEndpoint({
3627
- ...input,
4526
+ path: optionalGroup({
4527
+ "project_id": input["project_id"],
4528
+ "endpoint_id": input["endpoint_id"]
4529
+ }, true),
3628
4530
  client,
3629
4531
  signal,
3630
4532
  throwOnError: true
@@ -3636,8 +4538,12 @@ const operationFactories = {
3636
4538
  title: "Restore branch to a historical state",
3637
4539
  description: "Restores a branch to an earlier state in its own or another branch's history\nby specifying an LSN or timestamp.\nCreates a new branch from the historical state.\n",
3638
4540
  inputSchema: z.strictObject({
3639
- body: zRestoreProjectBranchBody,
3640
- path: zRestoreProjectBranchPath
4541
+ "project_id": zRestoreProjectBranchPath.shape.project_id,
4542
+ "branch_id": zRestoreProjectBranchPath.shape.branch_id,
4543
+ "source_branch_id": zRestoreProjectBranchBody.shape.source_branch_id,
4544
+ "source_lsn": zRestoreProjectBranchBody.shape.source_lsn,
4545
+ "source_timestamp": zRestoreProjectBranchBody.shape.source_timestamp,
4546
+ "preserve_under_name": zRestoreProjectBranchBody.shape.preserve_under_name
3641
4547
  }),
3642
4548
  annotations: {
3643
4549
  readOnlyHint: false,
@@ -3653,7 +4559,16 @@ const operationFactories = {
3653
4559
  tags: ["Branch"]
3654
4560
  },
3655
4561
  invoke: (client, input, signal) => raw.restoreProjectBranch({
3656
- ...input,
4562
+ path: optionalGroup({
4563
+ "project_id": input["project_id"],
4564
+ "branch_id": input["branch_id"]
4565
+ }, true),
4566
+ body: optionalGroup({
4567
+ "source_branch_id": input["source_branch_id"],
4568
+ "source_lsn": input["source_lsn"],
4569
+ "source_timestamp": input["source_timestamp"],
4570
+ "preserve_under_name": input["preserve_under_name"]
4571
+ }, true),
3657
4572
  client,
3658
4573
  signal,
3659
4574
  throwOnError: true
@@ -3665,9 +4580,11 @@ const operationFactories = {
3665
4580
  title: "Restore snapshot",
3666
4581
  description: "Restores the specified snapshot to a new branch,\nand optionally finalizes the restore operation to replace the original branch.\n",
3667
4582
  inputSchema: z.strictObject({
3668
- body: zRestoreSnapshotBody.optional(),
3669
- path: zRestoreSnapshotPath,
3670
- query: zRestoreSnapshotQuery.optional()
4583
+ "project_id": zRestoreSnapshotPath.shape.project_id,
4584
+ "snapshot_id": zRestoreSnapshotPath.shape.snapshot_id,
4585
+ "name": zRestoreSnapshotBody.shape.name.optional(),
4586
+ "target_branch_id": zRestoreSnapshotBody.shape.target_branch_id.optional(),
4587
+ "finalize_restore": zRestoreSnapshotBody.shape.finalize_restore.optional()
3671
4588
  }),
3672
4589
  annotations: {
3673
4590
  readOnlyHint: false,
@@ -3683,7 +4600,15 @@ const operationFactories = {
3683
4600
  tags: ["Snapshot"]
3684
4601
  },
3685
4602
  invoke: (client, input, signal) => raw.restoreSnapshot({
3686
- ...input,
4603
+ path: optionalGroup({
4604
+ "project_id": input["project_id"],
4605
+ "snapshot_id": input["snapshot_id"]
4606
+ }, true),
4607
+ body: optionalGroup({
4608
+ "name": input["name"],
4609
+ "target_branch_id": input["target_branch_id"],
4610
+ "finalize_restore": input["finalize_restore"]
4611
+ }, false),
3687
4612
  client,
3688
4613
  signal,
3689
4614
  throwOnError: true
@@ -3694,7 +4619,7 @@ const operationFactories = {
3694
4619
  id: "revoke_api_key",
3695
4620
  title: "Revoke API key",
3696
4621
  description: "Revokes the specified API key.\nAn API key that is no longer needed can be revoked.\nThis action cannot be reversed.\nAPI keys can also be managed in the Neon Console.\nSee [Manage API keys](https://neon.com/docs/manage/api-keys/).\n",
3697
- inputSchema: z.strictObject({ path: zRevokeApiKeyPath }),
4622
+ inputSchema: z.strictObject({ "key_id": zRevokeApiKeyPath.shape.key_id }),
3698
4623
  annotations: {
3699
4624
  readOnlyHint: false,
3700
4625
  destructiveHint: true,
@@ -3709,7 +4634,7 @@ const operationFactories = {
3709
4634
  tags: ["API Key"]
3710
4635
  },
3711
4636
  invoke: (client, input, signal) => raw.revokeApiKey({
3712
- ...input,
4637
+ path: optionalGroup({ "key_id": input["key_id"] }, true),
3713
4638
  client,
3714
4639
  signal,
3715
4640
  throwOnError: true
@@ -3720,7 +4645,11 @@ const operationFactories = {
3720
4645
  id: "revoke_credential",
3721
4646
  title: "Revoke a credential",
3722
4647
  description: "Soft-deletes the credential. Idempotent.\n\n**Note**: This endpoint is currently in Beta.\n",
3723
- inputSchema: z.strictObject({ path: zRevokeCredentialPath }),
4648
+ inputSchema: z.strictObject({
4649
+ "project_id": zRevokeCredentialPath.shape.project_id,
4650
+ "branch_id": zRevokeCredentialPath.shape.branch_id,
4651
+ "token_id": zRevokeCredentialPath.shape.token_id
4652
+ }),
3724
4653
  annotations: {
3725
4654
  readOnlyHint: false,
3726
4655
  destructiveHint: true,
@@ -3735,7 +4664,11 @@ const operationFactories = {
3735
4664
  tags: ["Credentials"]
3736
4665
  },
3737
4666
  invoke: (client, input, signal) => raw.revokeCredential({
3738
- ...input,
4667
+ path: optionalGroup({
4668
+ "project_id": input["project_id"],
4669
+ "branch_id": input["branch_id"],
4670
+ "token_id": input["token_id"]
4671
+ }, true),
3739
4672
  client,
3740
4673
  signal,
3741
4674
  throwOnError: true
@@ -3746,7 +4679,10 @@ const operationFactories = {
3746
4679
  id: "revoke_org_api_key",
3747
4680
  title: "Revoke organization API key",
3748
4681
  description: "Revokes the specified organization API key.\nAn API key that is no longer needed can be revoked.\nThis action cannot be reversed.\nAPI keys can also be managed in the Neon Console.\nSee [Manage API keys](https://neon.com/docs/manage/api-keys/).\n",
3749
- inputSchema: z.strictObject({ path: zRevokeOrgApiKeyPath }),
4682
+ inputSchema: z.strictObject({
4683
+ "org_id": zRevokeOrgApiKeyPath.shape.org_id,
4684
+ "key_id": zRevokeOrgApiKeyPath.shape.key_id
4685
+ }),
3750
4686
  annotations: {
3751
4687
  readOnlyHint: false,
3752
4688
  destructiveHint: true,
@@ -3761,7 +4697,10 @@ const operationFactories = {
3761
4697
  tags: ["Organizations"]
3762
4698
  },
3763
4699
  invoke: (client, input, signal) => raw.revokeOrgApiKey({
3764
- ...input,
4700
+ path: optionalGroup({
4701
+ "org_id": input["org_id"],
4702
+ "key_id": input["key_id"]
4703
+ }, true),
3765
4704
  client,
3766
4705
  signal,
3767
4706
  throwOnError: true
@@ -3772,7 +4711,10 @@ const operationFactories = {
3772
4711
  id: "revoke_permission_from_project",
3773
4712
  title: "Revoke project access",
3774
4713
  description: "Revokes project access from the user associated with the specified permission `id`. You can retrieve a user's permission `id` by listing project access.",
3775
- inputSchema: z.strictObject({ path: zRevokePermissionFromProjectPath }),
4714
+ inputSchema: z.strictObject({
4715
+ "project_id": zRevokePermissionFromProjectPath.shape.project_id,
4716
+ "permission_id": zRevokePermissionFromProjectPath.shape.permission_id
4717
+ }),
3776
4718
  annotations: {
3777
4719
  readOnlyHint: false,
3778
4720
  destructiveHint: true,
@@ -3787,7 +4729,10 @@ const operationFactories = {
3787
4729
  tags: ["Project"]
3788
4730
  },
3789
4731
  invoke: (client, input, signal) => raw.revokePermissionFromProject({
3790
- ...input,
4732
+ path: optionalGroup({
4733
+ "project_id": input["project_id"],
4734
+ "permission_id": input["permission_id"]
4735
+ }, true),
3791
4736
  client,
3792
4737
  signal,
3793
4738
  throwOnError: true
@@ -3799,8 +4744,15 @@ const operationFactories = {
3799
4744
  title: "Send test email",
3800
4745
  description: "Sends a test email using the configured email server settings to verify SMTP connectivity and credentials.\nThe request body must include the SMTP server settings\n(`host`, `port`, `username`, `password`, `sender_email`, `sender_name`) and the `recipient_email` address.\n",
3801
4746
  inputSchema: z.strictObject({
3802
- body: zSendNeonAuthTestEmailBody,
3803
- path: zSendNeonAuthTestEmailPath
4747
+ "project_id": zSendNeonAuthTestEmailPath.shape.project_id,
4748
+ "branch_id": zSendNeonAuthTestEmailPath.shape.branch_id,
4749
+ "host": zSendNeonAuthTestEmailBody.shape.host,
4750
+ "port": zSendNeonAuthTestEmailBody.shape.port,
4751
+ "username": zSendNeonAuthTestEmailBody.shape.username,
4752
+ "password": zSendNeonAuthTestEmailBody.shape.password,
4753
+ "sender_email": zSendNeonAuthTestEmailBody.shape.sender_email,
4754
+ "sender_name": zSendNeonAuthTestEmailBody.shape.sender_name,
4755
+ "recipient_email": zSendNeonAuthTestEmailBody.shape.recipient_email
3804
4756
  }),
3805
4757
  annotations: {
3806
4758
  readOnlyHint: false,
@@ -3816,7 +4768,19 @@ const operationFactories = {
3816
4768
  tags: ["Auth"]
3817
4769
  },
3818
4770
  invoke: (client, input, signal) => raw.sendNeonAuthTestEmail({
3819
- ...input,
4771
+ path: optionalGroup({
4772
+ "project_id": input["project_id"],
4773
+ "branch_id": input["branch_id"]
4774
+ }, true),
4775
+ body: optionalGroup({
4776
+ "host": input["host"],
4777
+ "port": input["port"],
4778
+ "username": input["username"],
4779
+ "password": input["password"],
4780
+ "sender_email": input["sender_email"],
4781
+ "sender_name": input["sender_name"],
4782
+ "recipient_email": input["recipient_email"]
4783
+ }, true),
3820
4784
  client,
3821
4785
  signal,
3822
4786
  throwOnError: true
@@ -3827,7 +4791,10 @@ const operationFactories = {
3827
4791
  id: "set_default_project_branch",
3828
4792
  title: "Set branch as default",
3829
4793
  description: "Sets the specified branch as the project's default branch.\nThe default designation is automatically removed from the previous default branch.\nFor more information, see [Manage branches](https://neon.com/docs/manage/branches/).\n",
3830
- inputSchema: z.strictObject({ path: zSetDefaultProjectBranchPath }),
4794
+ inputSchema: z.strictObject({
4795
+ "project_id": zSetDefaultProjectBranchPath.shape.project_id,
4796
+ "branch_id": zSetDefaultProjectBranchPath.shape.branch_id
4797
+ }),
3831
4798
  annotations: {
3832
4799
  readOnlyHint: false,
3833
4800
  destructiveHint: true,
@@ -3842,7 +4809,10 @@ const operationFactories = {
3842
4809
  tags: ["Branch"]
3843
4810
  },
3844
4811
  invoke: (client, input, signal) => raw.setDefaultProjectBranch({
3845
- ...input,
4812
+ path: optionalGroup({
4813
+ "project_id": input["project_id"],
4814
+ "branch_id": input["branch_id"]
4815
+ }, true),
3846
4816
  client,
3847
4817
  signal,
3848
4818
  throwOnError: true
@@ -3854,8 +4824,8 @@ const operationFactories = {
3854
4824
  title: "Set organization spending limit",
3855
4825
  description: "Sets the monthly spending limit for the specified organization.\nTo remove a previously configured limit, send a DELETE request to this endpoint.\nWhen a limit is configured, email notifications are sent at 80% and 100% of the limit.\nComputes are not suspended when the limit is reached.\nAvailable to organization admins on Launch and Scale plans only.\n",
3856
4826
  inputSchema: z.strictObject({
3857
- body: zSetOrganizationSpendingLimitBody,
3858
- path: zSetOrganizationSpendingLimitPath
4827
+ "org_id": zSetOrganizationSpendingLimitPath.shape.org_id,
4828
+ "spending_limit_cents": zSetOrganizationSpendingLimitBody.shape.spending_limit_cents
3859
4829
  }),
3860
4830
  annotations: {
3861
4831
  readOnlyHint: false,
@@ -3871,7 +4841,8 @@ const operationFactories = {
3871
4841
  tags: ["Organizations"]
3872
4842
  },
3873
4843
  invoke: (client, input, signal) => raw.setOrganizationSpendingLimit({
3874
- ...input,
4844
+ path: optionalGroup({ "org_id": input["org_id"] }, true),
4845
+ body: optionalGroup({ "spending_limit_cents": input["spending_limit_cents"] }, true),
3875
4846
  client,
3876
4847
  signal,
3877
4848
  throwOnError: true
@@ -3883,9 +4854,10 @@ const operationFactories = {
3883
4854
  title: "Set an org member's role on a project",
3884
4855
  description: "Idempotently sets or updates the explicit project grant of the specified org member.\nSelf-demotion requires `confirm_self_demotion=true`.\n",
3885
4856
  inputSchema: z.strictObject({
3886
- body: zSetProjectMemberRoleBody,
3887
- path: zSetProjectMemberRolePath,
3888
- query: zSetProjectMemberRoleQuery.optional()
4857
+ "project_id": zSetProjectMemberRolePath.shape.project_id,
4858
+ "member_id": zSetProjectMemberRolePath.shape.member_id,
4859
+ "confirm_self_demotion": zSetProjectMemberRoleQuery.shape.confirm_self_demotion.optional(),
4860
+ "role": zSetProjectMemberRoleBody.shape.role
3889
4861
  }),
3890
4862
  annotations: {
3891
4863
  readOnlyHint: false,
@@ -3901,7 +4873,12 @@ const operationFactories = {
3901
4873
  tags: ["Project"]
3902
4874
  },
3903
4875
  invoke: (client, input, signal) => raw.setProjectMemberRole({
3904
- ...input,
4876
+ path: optionalGroup({
4877
+ "project_id": input["project_id"],
4878
+ "member_id": input["member_id"]
4879
+ }, true),
4880
+ query: optionalGroup({ "confirm_self_demotion": input["confirm_self_demotion"] }, false),
4881
+ body: optionalGroup({ "role": input["role"] }, true),
3905
4882
  client,
3906
4883
  signal,
3907
4884
  throwOnError: true
@@ -3913,8 +4890,9 @@ const operationFactories = {
3913
4890
  title: "Update backup schedule",
3914
4891
  description: "Updates the backup schedule for the specified branch.\nThe schedule defines how often automatic snapshots are created (for example, `daily` or `weekly`). Requires a paid plan.\n",
3915
4892
  inputSchema: z.strictObject({
3916
- body: zSetSnapshotScheduleBody,
3917
- path: zSetSnapshotSchedulePath
4893
+ "project_id": zSetSnapshotSchedulePath.shape.project_id,
4894
+ "branch_id": zSetSnapshotSchedulePath.shape.branch_id,
4895
+ "schedule": zSetSnapshotScheduleBody.shape.schedule
3918
4896
  }),
3919
4897
  annotations: {
3920
4898
  readOnlyHint: false,
@@ -3930,7 +4908,11 @@ const operationFactories = {
3930
4908
  tags: ["Snapshot"]
3931
4909
  },
3932
4910
  invoke: (client, input, signal) => raw.setSnapshotSchedule({
3933
- ...input,
4911
+ path: optionalGroup({
4912
+ "project_id": input["project_id"],
4913
+ "branch_id": input["branch_id"]
4914
+ }, true),
4915
+ body: optionalGroup({ "schedule": input["schedule"] }, true),
3934
4916
  client,
3935
4917
  signal,
3936
4918
  throwOnError: true
@@ -3941,7 +4923,10 @@ const operationFactories = {
3941
4923
  id: "start_anonymization",
3942
4924
  title: "Start anonymization",
3943
4925
  description: "Starts the anonymization process for an anonymized branch that is in the initialized, error, or anonymized state.\nThis will apply all defined masking rules to anonymize sensitive data in the branch databases.\nThe branch must be an anonymized branch to start anonymization.\n\n**Note**: This endpoint is currently in Beta.\n",
3944
- inputSchema: z.strictObject({ path: zStartAnonymizationPath }),
4926
+ inputSchema: z.strictObject({
4927
+ "project_id": zStartAnonymizationPath.shape.project_id,
4928
+ "branch_id": zStartAnonymizationPath.shape.branch_id
4929
+ }),
3945
4930
  annotations: {
3946
4931
  readOnlyHint: false,
3947
4932
  destructiveHint: true,
@@ -3956,7 +4941,10 @@ const operationFactories = {
3956
4941
  tags: ["Branch"]
3957
4942
  },
3958
4943
  invoke: (client, input, signal) => raw.startAnonymization({
3959
- ...input,
4944
+ path: optionalGroup({
4945
+ "project_id": input["project_id"],
4946
+ "branch_id": input["branch_id"]
4947
+ }, true),
3960
4948
  client,
3961
4949
  signal,
3962
4950
  throwOnError: true
@@ -3967,7 +4955,10 @@ const operationFactories = {
3967
4955
  id: "start_project_endpoint",
3968
4956
  title: "Start compute endpoint",
3969
4957
  description: "Starts a compute endpoint.\nThe compute endpoint is ready to use after the last operation in the chain finishes successfully.\n\nAn `endpoint_id` has an `ep-` prefix.\nFor information about compute endpoints, see [Manage computes](https://neon.com/docs/manage/endpoints/).\n",
3970
- inputSchema: z.strictObject({ path: zStartProjectEndpointPath }),
4958
+ inputSchema: z.strictObject({
4959
+ "project_id": zStartProjectEndpointPath.shape.project_id,
4960
+ "endpoint_id": zStartProjectEndpointPath.shape.endpoint_id
4961
+ }),
3971
4962
  annotations: {
3972
4963
  readOnlyHint: false,
3973
4964
  destructiveHint: true,
@@ -3982,7 +4973,10 @@ const operationFactories = {
3982
4973
  tags: ["Endpoint"]
3983
4974
  },
3984
4975
  invoke: (client, input, signal) => raw.startProjectEndpoint({
3985
- ...input,
4976
+ path: optionalGroup({
4977
+ "project_id": input["project_id"],
4978
+ "endpoint_id": input["endpoint_id"]
4979
+ }, true),
3986
4980
  client,
3987
4981
  signal,
3988
4982
  throwOnError: true
@@ -3993,7 +4987,10 @@ const operationFactories = {
3993
4987
  id: "suspend_project_endpoint",
3994
4988
  title: "Suspend compute endpoint",
3995
4989
  description: "Suspends the specified compute endpoint.\nAn `endpoint_id` has an `ep-` prefix.\nFor information about compute endpoints, see [Manage computes](https://neon.com/docs/manage/endpoints/).\n",
3996
- inputSchema: z.strictObject({ path: zSuspendProjectEndpointPath }),
4990
+ inputSchema: z.strictObject({
4991
+ "project_id": zSuspendProjectEndpointPath.shape.project_id,
4992
+ "endpoint_id": zSuspendProjectEndpointPath.shape.endpoint_id
4993
+ }),
3997
4994
  annotations: {
3998
4995
  readOnlyHint: false,
3999
4996
  destructiveHint: true,
@@ -4008,7 +5005,10 @@ const operationFactories = {
4008
5005
  tags: ["Endpoint"]
4009
5006
  },
4010
5007
  invoke: (client, input, signal) => raw.suspendProjectEndpoint({
4011
- ...input,
5008
+ path: optionalGroup({
5009
+ "project_id": input["project_id"],
5010
+ "endpoint_id": input["endpoint_id"]
5011
+ }, true),
4012
5012
  client,
4013
5013
  signal,
4014
5014
  throwOnError: true
@@ -4019,7 +5019,10 @@ const operationFactories = {
4019
5019
  id: "transfer_neon_auth_provider_project",
4020
5020
  title: "Transfer Neon-managed auth project to your own account",
4021
5021
  description: "Transfers ownership of your Neon-managed auth project to your own auth provider account.\n",
4022
- inputSchema: z.strictObject({ body: zTransferNeonAuthProviderProjectBody }),
5022
+ inputSchema: z.strictObject({
5023
+ "project_id": zTransferNeonAuthProviderProjectBody.shape.project_id,
5024
+ "auth_provider": zTransferNeonAuthProviderProjectBody.shape.auth_provider
5025
+ }),
4023
5026
  annotations: {
4024
5027
  readOnlyHint: false,
4025
5028
  destructiveHint: true,
@@ -4034,7 +5037,10 @@ const operationFactories = {
4034
5037
  tags: ["Auth (legacy)"]
4035
5038
  },
4036
5039
  invoke: (client, input, signal) => raw.transferNeonAuthProviderProject({
4037
- ...input,
5040
+ body: optionalGroup({
5041
+ "project_id": input["project_id"],
5042
+ "auth_provider": input["auth_provider"]
5043
+ }, true),
4038
5044
  client,
4039
5045
  signal,
4040
5046
  throwOnError: true
@@ -4046,8 +5052,9 @@ const operationFactories = {
4046
5052
  title: "Transfer projects between organizations",
4047
5053
  description: "Transfers selected projects, identified by their IDs, from your organization to another specified organization.\n",
4048
5054
  inputSchema: z.strictObject({
4049
- body: zTransferProjectsFromOrgToOrgBody,
4050
- path: zTransferProjectsFromOrgToOrgPath
5055
+ "source_org_id": zTransferProjectsFromOrgToOrgPath.shape.source_org_id,
5056
+ "destination_org_id": zTransferProjectsFromOrgToOrgBody.shape.destination_org_id,
5057
+ "project_ids": zTransferProjectsFromOrgToOrgBody.shape.project_ids
4051
5058
  }),
4052
5059
  annotations: {
4053
5060
  readOnlyHint: false,
@@ -4063,7 +5070,11 @@ const operationFactories = {
4063
5070
  tags: ["Organizations"]
4064
5071
  },
4065
5072
  invoke: (client, input, signal) => raw.transferProjectsFromOrgToOrg({
4066
- ...input,
5073
+ path: optionalGroup({ "source_org_id": input["source_org_id"] }, true),
5074
+ body: optionalGroup({
5075
+ "destination_org_id": input["destination_org_id"],
5076
+ "project_ids": input["project_ids"]
5077
+ }, true),
4067
5078
  client,
4068
5079
  signal,
4069
5080
  throwOnError: true
@@ -4074,7 +5085,10 @@ const operationFactories = {
4074
5085
  id: "transfer_projects_from_user_to_org",
4075
5086
  title: "Transfer projects from personal account to organization",
4076
5087
  description: "Deprecated. Personal accounts have been migrated to organizations, so this operation no longer applies. Removal scheduled for July 1, 2026.\n",
4077
- inputSchema: z.strictObject({ body: zTransferProjectsFromUserToOrgBody }),
5088
+ inputSchema: z.strictObject({
5089
+ "destination_org_id": zTransferProjectsFromUserToOrgBody.shape.destination_org_id,
5090
+ "project_ids": zTransferProjectsFromUserToOrgBody.shape.project_ids
5091
+ }),
4078
5092
  annotations: {
4079
5093
  readOnlyHint: false,
4080
5094
  destructiveHint: true,
@@ -4089,7 +5103,10 @@ const operationFactories = {
4089
5103
  tags: ["Users"]
4090
5104
  },
4091
5105
  invoke: (client, input, signal) => raw.transferProjectsFromUserToOrg({
4092
- ...input,
5106
+ body: optionalGroup({
5107
+ "destination_org_id": input["destination_org_id"],
5108
+ "project_ids": input["project_ids"]
5109
+ }, true),
4093
5110
  client,
4094
5111
  signal,
4095
5112
  throwOnError: true
@@ -4101,8 +5118,12 @@ const operationFactories = {
4101
5118
  title: "Update OAuth provider",
4102
5119
  description: "Updates an OAuth provider for the specified project.\n",
4103
5120
  inputSchema: z.strictObject({
4104
- body: zUpdateBranchNeonAuthOauthProviderBody,
4105
- path: zUpdateBranchNeonAuthOauthProviderPath
5121
+ "project_id": zUpdateBranchNeonAuthOauthProviderPath.shape.project_id,
5122
+ "branch_id": zUpdateBranchNeonAuthOauthProviderPath.shape.branch_id,
5123
+ "oauth_provider_id": zUpdateBranchNeonAuthOauthProviderPath.shape.oauth_provider_id,
5124
+ "client_id": zUpdateBranchNeonAuthOauthProviderBody.shape.client_id,
5125
+ "client_secret": zUpdateBranchNeonAuthOauthProviderBody.shape.client_secret,
5126
+ "microsoft_tenant_id": zUpdateBranchNeonAuthOauthProviderBody.shape.microsoft_tenant_id
4106
5127
  }),
4107
5128
  annotations: {
4108
5129
  readOnlyHint: false,
@@ -4118,7 +5139,16 @@ const operationFactories = {
4118
5139
  tags: ["Auth"]
4119
5140
  },
4120
5141
  invoke: (client, input, signal) => raw.updateBranchNeonAuthOauthProvider({
4121
- ...input,
5142
+ path: optionalGroup({
5143
+ "project_id": input["project_id"],
5144
+ "branch_id": input["branch_id"],
5145
+ "oauth_provider_id": input["oauth_provider_id"]
5146
+ }, true),
5147
+ body: optionalGroup({
5148
+ "client_id": input["client_id"],
5149
+ "client_secret": input["client_secret"],
5150
+ "microsoft_tenant_id": input["microsoft_tenant_id"]
5151
+ }, true),
4122
5152
  client,
4123
5153
  signal,
4124
5154
  throwOnError: true
@@ -4130,8 +5160,9 @@ const operationFactories = {
4130
5160
  title: "Update masking rules",
4131
5161
  description: "Updates the masking rules for the specified anonymized branch.\nMasking rules define how sensitive data should be anonymized using PostgreSQL Anonymizer.\n\n**Note**: This endpoint is currently in Beta.\n",
4132
5162
  inputSchema: z.strictObject({
4133
- body: zUpdateMaskingRulesBody,
4134
- path: zUpdateMaskingRulesPath
5163
+ "project_id": zUpdateMaskingRulesPath.shape.project_id,
5164
+ "branch_id": zUpdateMaskingRulesPath.shape.branch_id,
5165
+ "masking_rules": zUpdateMaskingRulesBody.shape.masking_rules
4135
5166
  }),
4136
5167
  annotations: {
4137
5168
  readOnlyHint: false,
@@ -4147,7 +5178,11 @@ const operationFactories = {
4147
5178
  tags: ["Branch"]
4148
5179
  },
4149
5180
  invoke: (client, input, signal) => raw.updateMaskingRules({
4150
- ...input,
5181
+ path: optionalGroup({
5182
+ "project_id": input["project_id"],
5183
+ "branch_id": input["branch_id"]
5184
+ }, true),
5185
+ body: optionalGroup({ "masking_rules": input["masking_rules"] }, true),
4151
5186
  client,
4152
5187
  signal,
4153
5188
  throwOnError: true
@@ -4159,8 +5194,9 @@ const operationFactories = {
4159
5194
  title: "Update localhost allow setting",
4160
5195
  description: "Updates the localhost allow setting for the specified branch's Neon Auth integration.\nWhen enabled, authentication flows work from `localhost` without adding it to the redirect URI whitelist.\n",
4161
5196
  inputSchema: z.strictObject({
4162
- body: zUpdateNeonAuthAllowLocalhostBody,
4163
- path: zUpdateNeonAuthAllowLocalhostPath
5197
+ "project_id": zUpdateNeonAuthAllowLocalhostPath.shape.project_id,
5198
+ "branch_id": zUpdateNeonAuthAllowLocalhostPath.shape.branch_id,
5199
+ "allow_localhost": zUpdateNeonAuthAllowLocalhostBody.shape.allow_localhost
4164
5200
  }),
4165
5201
  annotations: {
4166
5202
  readOnlyHint: false,
@@ -4176,7 +5212,11 @@ const operationFactories = {
4176
5212
  tags: ["Auth"]
4177
5213
  },
4178
5214
  invoke: (client, input, signal) => raw.updateNeonAuthAllowLocalhost({
4179
- ...input,
5215
+ path: optionalGroup({
5216
+ "project_id": input["project_id"],
5217
+ "branch_id": input["branch_id"]
5218
+ }, true),
5219
+ body: optionalGroup({ "allow_localhost": input["allow_localhost"] }, true),
4180
5220
  client,
4181
5221
  signal,
4182
5222
  throwOnError: true
@@ -4188,8 +5228,9 @@ const operationFactories = {
4188
5228
  title: "Update auth configuration",
4189
5229
  description: "Updates the auth configuration for the branch.\nCurrently supports updating the application name used in auth emails.\n",
4190
5230
  inputSchema: z.strictObject({
4191
- body: zUpdateNeonAuthConfigBody,
4192
- path: zUpdateNeonAuthConfigPath
5231
+ "project_id": zUpdateNeonAuthConfigPath.shape.project_id,
5232
+ "branch_id": zUpdateNeonAuthConfigPath.shape.branch_id,
5233
+ "name": zUpdateNeonAuthConfigBody.shape.name
4193
5234
  }),
4194
5235
  annotations: {
4195
5236
  readOnlyHint: false,
@@ -4205,7 +5246,11 @@ const operationFactories = {
4205
5246
  tags: ["Auth"]
4206
5247
  },
4207
5248
  invoke: (client, input, signal) => raw.updateNeonAuthConfig({
4208
- ...input,
5249
+ path: optionalGroup({
5250
+ "project_id": input["project_id"],
5251
+ "branch_id": input["branch_id"]
5252
+ }, true),
5253
+ body: optionalGroup({ "name": input["name"] }, true),
4209
5254
  client,
4210
5255
  signal,
4211
5256
  throwOnError: true
@@ -4217,8 +5262,15 @@ const operationFactories = {
4217
5262
  title: "Update email and password configuration",
4218
5263
  description: "Updates the email and password authentication configuration for the specified branch's Neon Auth integration.\nOnly the fields provided in the request body are updated.\n",
4219
5264
  inputSchema: z.strictObject({
4220
- body: zUpdateNeonAuthEmailAndPasswordConfigBody,
4221
- path: zUpdateNeonAuthEmailAndPasswordConfigPath
5265
+ "project_id": zUpdateNeonAuthEmailAndPasswordConfigPath.shape.project_id,
5266
+ "branch_id": zUpdateNeonAuthEmailAndPasswordConfigPath.shape.branch_id,
5267
+ "enabled": zUpdateNeonAuthEmailAndPasswordConfigBody.shape.enabled,
5268
+ "email_verification_method": zUpdateNeonAuthEmailAndPasswordConfigBody.shape.email_verification_method,
5269
+ "require_email_verification": zUpdateNeonAuthEmailAndPasswordConfigBody.shape.require_email_verification,
5270
+ "auto_sign_in_after_verification": zUpdateNeonAuthEmailAndPasswordConfigBody.shape.auto_sign_in_after_verification,
5271
+ "send_verification_email_on_sign_up": zUpdateNeonAuthEmailAndPasswordConfigBody.shape.send_verification_email_on_sign_up,
5272
+ "send_verification_email_on_sign_in": zUpdateNeonAuthEmailAndPasswordConfigBody.shape.send_verification_email_on_sign_in,
5273
+ "disable_sign_up": zUpdateNeonAuthEmailAndPasswordConfigBody.shape.disable_sign_up
4222
5274
  }),
4223
5275
  annotations: {
4224
5276
  readOnlyHint: false,
@@ -4234,7 +5286,19 @@ const operationFactories = {
4234
5286
  tags: ["Auth"]
4235
5287
  },
4236
5288
  invoke: (client, input, signal) => raw.updateNeonAuthEmailAndPasswordConfig({
4237
- ...input,
5289
+ path: optionalGroup({
5290
+ "project_id": input["project_id"],
5291
+ "branch_id": input["branch_id"]
5292
+ }, true),
5293
+ body: optionalGroup({
5294
+ "enabled": input["enabled"],
5295
+ "email_verification_method": input["email_verification_method"],
5296
+ "require_email_verification": input["require_email_verification"],
5297
+ "auto_sign_in_after_verification": input["auto_sign_in_after_verification"],
5298
+ "send_verification_email_on_sign_up": input["send_verification_email_on_sign_up"],
5299
+ "send_verification_email_on_sign_in": input["send_verification_email_on_sign_in"],
5300
+ "disable_sign_up": input["disable_sign_up"]
5301
+ }, true),
4238
5302
  client,
4239
5303
  signal,
4240
5304
  throwOnError: true
@@ -4246,8 +5310,9 @@ const operationFactories = {
4246
5310
  title: "Update email provider configuration",
4247
5311
  description: "Updates the email provider configuration for the specified branch's Neon Auth integration.\nThe email provider handles transactional messages such as verification emails and password reset links.\n\nPartial `standard` updates — omitting fields to keep their stored values — are supported only for\nBetter Auth integrations, which merge omitted fields server-side. Legacy Stack Auth integrations do\nnot merge and require all six `standard` fields (`host`, `port`, `username`, `password`,\n`sender_email`, `sender_name`) on every update; a partial `standard` body is rejected with 400.\n",
4248
5312
  inputSchema: z.strictObject({
4249
- body: zUpdateNeonAuthEmailProviderBody,
4250
- path: zUpdateNeonAuthEmailProviderPath
5313
+ "project_id": zUpdateNeonAuthEmailProviderPath.shape.project_id,
5314
+ "branch_id": zUpdateNeonAuthEmailProviderPath.shape.branch_id,
5315
+ "body": zUpdateNeonAuthEmailProviderBody
4251
5316
  }),
4252
5317
  annotations: {
4253
5318
  readOnlyHint: false,
@@ -4263,7 +5328,11 @@ const operationFactories = {
4263
5328
  tags: ["Auth"]
4264
5329
  },
4265
5330
  invoke: (client, input, signal) => raw.updateNeonAuthEmailProvider({
4266
- ...input,
5331
+ path: optionalGroup({
5332
+ "project_id": input["project_id"],
5333
+ "branch_id": input["branch_id"]
5334
+ }, true),
5335
+ body: input.body,
4267
5336
  client,
4268
5337
  signal,
4269
5338
  throwOnError: true
@@ -4275,8 +5344,8 @@ const operationFactories = {
4275
5344
  title: "Update email server configuration",
4276
5345
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/email_provider` instead. Removal scheduled for March 1, 2026.\n",
4277
5346
  inputSchema: z.strictObject({
4278
- body: zUpdateNeonAuthEmailServerBody,
4279
- path: zUpdateNeonAuthEmailServerPath
5347
+ "project_id": zUpdateNeonAuthEmailServerPath.shape.project_id,
5348
+ "body": zUpdateNeonAuthEmailServerBody
4280
5349
  }),
4281
5350
  annotations: {
4282
5351
  readOnlyHint: false,
@@ -4292,7 +5361,8 @@ const operationFactories = {
4292
5361
  tags: ["Auth (legacy)"]
4293
5362
  },
4294
5363
  invoke: (client, input, signal) => raw.updateNeonAuthEmailServer({
4295
- ...input,
5364
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
5365
+ body: input.body,
4296
5366
  client,
4297
5367
  signal,
4298
5368
  throwOnError: true
@@ -4304,8 +5374,11 @@ const operationFactories = {
4304
5374
  title: "Update magic link plugin configuration",
4305
5375
  description: "Updates the magic link plugin configuration for Neon Auth.\nThe magic link plugin enables passwordless authentication via email magic links.\n",
4306
5376
  inputSchema: z.strictObject({
4307
- body: zUpdateNeonAuthMagicLinkPluginBody,
4308
- path: zUpdateNeonAuthMagicLinkPluginPath
5377
+ "project_id": zUpdateNeonAuthMagicLinkPluginPath.shape.project_id,
5378
+ "branch_id": zUpdateNeonAuthMagicLinkPluginPath.shape.branch_id,
5379
+ "enabled": zUpdateNeonAuthMagicLinkPluginBody.shape.enabled,
5380
+ "expires_in": zUpdateNeonAuthMagicLinkPluginBody.shape.expires_in,
5381
+ "disable_sign_up": zUpdateNeonAuthMagicLinkPluginBody.shape.disable_sign_up
4309
5382
  }),
4310
5383
  annotations: {
4311
5384
  readOnlyHint: false,
@@ -4321,7 +5394,15 @@ const operationFactories = {
4321
5394
  tags: ["Auth"]
4322
5395
  },
4323
5396
  invoke: (client, input, signal) => raw.updateNeonAuthMagicLinkPlugin({
4324
- ...input,
5397
+ path: optionalGroup({
5398
+ "project_id": input["project_id"],
5399
+ "branch_id": input["branch_id"]
5400
+ }, true),
5401
+ body: optionalGroup({
5402
+ "enabled": input["enabled"],
5403
+ "expires_in": input["expires_in"],
5404
+ "disable_sign_up": input["disable_sign_up"]
5405
+ }, true),
4325
5406
  client,
4326
5407
  signal,
4327
5408
  throwOnError: true
@@ -4333,8 +5414,11 @@ const operationFactories = {
4333
5414
  title: "Update OAuth provider",
4334
5415
  description: "Deprecated. Use `/projects/{project_id}/branches/{branch_id}/auth/oauth_providers/{oauth_provider_id}` instead. Removal scheduled for March 1, 2026.\n",
4335
5416
  inputSchema: z.strictObject({
4336
- body: zUpdateNeonAuthOauthProviderBody,
4337
- path: zUpdateNeonAuthOauthProviderPath
5417
+ "project_id": zUpdateNeonAuthOauthProviderPath.shape.project_id,
5418
+ "oauth_provider_id": zUpdateNeonAuthOauthProviderPath.shape.oauth_provider_id,
5419
+ "client_id": zUpdateNeonAuthOauthProviderBody.shape.client_id,
5420
+ "client_secret": zUpdateNeonAuthOauthProviderBody.shape.client_secret,
5421
+ "microsoft_tenant_id": zUpdateNeonAuthOauthProviderBody.shape.microsoft_tenant_id
4338
5422
  }),
4339
5423
  annotations: {
4340
5424
  readOnlyHint: false,
@@ -4350,7 +5434,15 @@ const operationFactories = {
4350
5434
  tags: ["Auth (legacy)"]
4351
5435
  },
4352
5436
  invoke: (client, input, signal) => raw.updateNeonAuthOauthProvider({
4353
- ...input,
5437
+ path: optionalGroup({
5438
+ "project_id": input["project_id"],
5439
+ "oauth_provider_id": input["oauth_provider_id"]
5440
+ }, true),
5441
+ body: optionalGroup({
5442
+ "client_id": input["client_id"],
5443
+ "client_secret": input["client_secret"],
5444
+ "microsoft_tenant_id": input["microsoft_tenant_id"]
5445
+ }, true),
4354
5446
  client,
4355
5447
  signal,
4356
5448
  throwOnError: true
@@ -4362,8 +5454,13 @@ const operationFactories = {
4362
5454
  title: "Update organization plugin configuration",
4363
5455
  description: "Updates the organization plugin configuration for Neon Auth.\nThe organization plugin enables multi-tenant organization support.\n",
4364
5456
  inputSchema: z.strictObject({
4365
- body: zUpdateNeonAuthOrganizationPluginBody,
4366
- path: zUpdateNeonAuthOrganizationPluginPath
5457
+ "project_id": zUpdateNeonAuthOrganizationPluginPath.shape.project_id,
5458
+ "branch_id": zUpdateNeonAuthOrganizationPluginPath.shape.branch_id,
5459
+ "enabled": zUpdateNeonAuthOrganizationPluginBody.shape.enabled,
5460
+ "organization_limit": zUpdateNeonAuthOrganizationPluginBody.shape.organization_limit,
5461
+ "membership_limit": zUpdateNeonAuthOrganizationPluginBody.shape.membership_limit,
5462
+ "creator_role": zUpdateNeonAuthOrganizationPluginBody.shape.creator_role,
5463
+ "send_invitation_email": zUpdateNeonAuthOrganizationPluginBody.shape.send_invitation_email
4367
5464
  }),
4368
5465
  annotations: {
4369
5466
  readOnlyHint: false,
@@ -4379,7 +5476,17 @@ const operationFactories = {
4379
5476
  tags: ["Auth"]
4380
5477
  },
4381
5478
  invoke: (client, input, signal) => raw.updateNeonAuthOrganizationPlugin({
4382
- ...input,
5479
+ path: optionalGroup({
5480
+ "project_id": input["project_id"],
5481
+ "branch_id": input["branch_id"]
5482
+ }, true),
5483
+ body: optionalGroup({
5484
+ "enabled": input["enabled"],
5485
+ "organization_limit": input["organization_limit"],
5486
+ "membership_limit": input["membership_limit"],
5487
+ "creator_role": input["creator_role"],
5488
+ "send_invitation_email": input["send_invitation_email"]
5489
+ }, true),
4383
5490
  client,
4384
5491
  signal,
4385
5492
  throwOnError: true
@@ -4391,8 +5498,10 @@ const operationFactories = {
4391
5498
  title: "Update phone number plugin configuration",
4392
5499
  description: "Updates the phone number plugin configuration for Neon Auth.\nOnly the fields provided in the request body are updated; omitted fields retain their current values.\nThe phone number plugin enables phone-based OTP authentication.\nOTP codes are delivered via the `send.otp` webhook event with `delivery_preference: \"sms\"`.\nA webhook must be configured with the `send.otp` event enabled for SMS delivery to work.\n",
4393
5500
  inputSchema: z.strictObject({
4394
- body: zUpdateNeonAuthPhoneNumberPluginBody,
4395
- path: zUpdateNeonAuthPhoneNumberPluginPath
5501
+ "project_id": zUpdateNeonAuthPhoneNumberPluginPath.shape.project_id,
5502
+ "branch_id": zUpdateNeonAuthPhoneNumberPluginPath.shape.branch_id,
5503
+ "enabled": zUpdateNeonAuthPhoneNumberPluginBody.shape.enabled,
5504
+ "otp_expires_in": zUpdateNeonAuthPhoneNumberPluginBody.shape.otp_expires_in
4396
5505
  }),
4397
5506
  annotations: {
4398
5507
  readOnlyHint: false,
@@ -4408,7 +5517,14 @@ const operationFactories = {
4408
5517
  tags: ["Auth"]
4409
5518
  },
4410
5519
  invoke: (client, input, signal) => raw.updateNeonAuthPhoneNumberPlugin({
4411
- ...input,
5520
+ path: optionalGroup({
5521
+ "project_id": input["project_id"],
5522
+ "branch_id": input["branch_id"]
5523
+ }, true),
5524
+ body: optionalGroup({
5525
+ "enabled": input["enabled"],
5526
+ "otp_expires_in": input["otp_expires_in"]
5527
+ }, true),
4412
5528
  client,
4413
5529
  signal,
4414
5530
  throwOnError: true
@@ -4420,8 +5536,10 @@ const operationFactories = {
4420
5536
  title: "Update auth user role",
4421
5537
  description: "Updates the role of a user in the Neon Auth user directory for the specified branch.\nThe role controls the user's level of access within the Neon Auth integration.\n",
4422
5538
  inputSchema: z.strictObject({
4423
- body: zUpdateNeonAuthUserRoleBody,
4424
- path: zUpdateNeonAuthUserRolePath
5539
+ "project_id": zUpdateNeonAuthUserRolePath.shape.project_id,
5540
+ "branch_id": zUpdateNeonAuthUserRolePath.shape.branch_id,
5541
+ "auth_user_id": zUpdateNeonAuthUserRolePath.shape.auth_user_id,
5542
+ "roles": zUpdateNeonAuthUserRoleBody.shape.roles
4425
5543
  }),
4426
5544
  annotations: {
4427
5545
  readOnlyHint: false,
@@ -4437,7 +5555,12 @@ const operationFactories = {
4437
5555
  tags: ["Auth"]
4438
5556
  },
4439
5557
  invoke: (client, input, signal) => raw.updateNeonAuthUserRole({
4440
- ...input,
5558
+ path: optionalGroup({
5559
+ "project_id": input["project_id"],
5560
+ "branch_id": input["branch_id"],
5561
+ "auth_user_id": input["auth_user_id"]
5562
+ }, true),
5563
+ body: optionalGroup({ "roles": input["roles"] }, true),
4441
5564
  client,
4442
5565
  signal,
4443
5566
  throwOnError: true
@@ -4449,8 +5572,12 @@ const operationFactories = {
4449
5572
  title: "Update Neon Auth webhook configuration",
4450
5573
  description: "Updates the webhook configuration for the specified branch's Neon Auth integration.\nWebhooks notify an external endpoint when auth events occur, such as user creation or sign-in.\n",
4451
5574
  inputSchema: z.strictObject({
4452
- body: zUpdateNeonAuthWebhookConfigBody,
4453
- path: zUpdateNeonAuthWebhookConfigPath
5575
+ "project_id": zUpdateNeonAuthWebhookConfigPath.shape.project_id,
5576
+ "branch_id": zUpdateNeonAuthWebhookConfigPath.shape.branch_id,
5577
+ "enabled": zUpdateNeonAuthWebhookConfigBody.shape.enabled,
5578
+ "webhook_url": zUpdateNeonAuthWebhookConfigBody.shape.webhook_url,
5579
+ "enabled_events": zUpdateNeonAuthWebhookConfigBody.shape.enabled_events,
5580
+ "timeout_seconds": zUpdateNeonAuthWebhookConfigBody.shape.timeout_seconds
4454
5581
  }),
4455
5582
  annotations: {
4456
5583
  readOnlyHint: false,
@@ -4466,7 +5593,16 @@ const operationFactories = {
4466
5593
  tags: ["Auth"]
4467
5594
  },
4468
5595
  invoke: (client, input, signal) => raw.updateNeonAuthWebhookConfig({
4469
- ...input,
5596
+ path: optionalGroup({
5597
+ "project_id": input["project_id"],
5598
+ "branch_id": input["branch_id"]
5599
+ }, true),
5600
+ body: optionalGroup({
5601
+ "enabled": input["enabled"],
5602
+ "webhook_url": input["webhook_url"],
5603
+ "enabled_events": input["enabled_events"],
5604
+ "timeout_seconds": input["timeout_seconds"]
5605
+ }, true),
4470
5606
  client,
4471
5607
  signal,
4472
5608
  throwOnError: true
@@ -4478,8 +5614,9 @@ const operationFactories = {
4478
5614
  title: "Update role for organization member",
4479
5615
  description: "Updates the role of an existing member in the specified organization.\nThe requested role must be valid for the organization.\nOnly organization admins can call this endpoint.\n",
4480
5616
  inputSchema: z.strictObject({
4481
- body: zUpdateOrganizationMemberBody,
4482
- path: zUpdateOrganizationMemberPath
5617
+ "org_id": zUpdateOrganizationMemberPath.shape.org_id,
5618
+ "member_id": zUpdateOrganizationMemberPath.shape.member_id,
5619
+ "role": zUpdateOrganizationMemberBody.shape.role
4483
5620
  }),
4484
5621
  annotations: {
4485
5622
  readOnlyHint: false,
@@ -4495,7 +5632,11 @@ const operationFactories = {
4495
5632
  tags: ["Organizations"]
4496
5633
  },
4497
5634
  invoke: (client, input, signal) => raw.updateOrganizationMember({
4498
- ...input,
5635
+ path: optionalGroup({
5636
+ "org_id": input["org_id"],
5637
+ "member_id": input["member_id"]
5638
+ }, true),
5639
+ body: optionalGroup({ "role": input["role"] }, true),
4499
5640
  client,
4500
5641
  signal,
4501
5642
  throwOnError: true
@@ -4507,8 +5648,11 @@ const operationFactories = {
4507
5648
  title: "Update project",
4508
5649
  description: "Updates the specified project.\nConfigurable properties include the project name, default compute settings, history retention period, and IP allowlist.\n",
4509
5650
  inputSchema: z.strictObject({
4510
- body: zUpdateProjectBody,
4511
- path: zUpdateProjectPath
5651
+ "project_id": zUpdateProjectPath.shape.project_id,
5652
+ "settings": zUpdateProjectBody.shape.project.shape.settings,
5653
+ "name": zUpdateProjectBody.shape.project.shape.name,
5654
+ "default_endpoint_settings": zUpdateProjectBody.shape.project.shape.default_endpoint_settings,
5655
+ "history_retention_seconds": zUpdateProjectBody.shape.project.shape.history_retention_seconds
4512
5656
  }),
4513
5657
  annotations: {
4514
5658
  readOnlyHint: false,
@@ -4524,7 +5668,13 @@ const operationFactories = {
4524
5668
  tags: ["Project"]
4525
5669
  },
4526
5670
  invoke: (client, input, signal) => raw.updateProject({
4527
- ...input,
5671
+ path: optionalGroup({ "project_id": input["project_id"] }, true),
5672
+ body: optionalGroup({ "project": optionalGroup({
5673
+ "settings": input["settings"],
5674
+ "name": input["name"],
5675
+ "default_endpoint_settings": input["default_endpoint_settings"],
5676
+ "history_retention_seconds": input["history_retention_seconds"]
5677
+ }, true) }, true),
4528
5678
  client,
4529
5679
  signal,
4530
5680
  throwOnError: true
@@ -4536,8 +5686,11 @@ const operationFactories = {
4536
5686
  title: "Update branch",
4537
5687
  description: "Updates the specified branch.\nFor more information, see [Manage branches](https://neon.com/docs/manage/branches/).\n",
4538
5688
  inputSchema: z.strictObject({
4539
- body: zUpdateProjectBranchBody,
4540
- path: zUpdateProjectBranchPath
5689
+ "project_id": zUpdateProjectBranchPath.shape.project_id,
5690
+ "branch_id": zUpdateProjectBranchPath.shape.branch_id,
5691
+ "name": zUpdateProjectBranchBody.shape.branch.shape.name,
5692
+ "protected": zUpdateProjectBranchBody.shape.branch.shape.protected,
5693
+ "expires_at": zUpdateProjectBranchBody.shape.branch.shape.expires_at
4541
5694
  }),
4542
5695
  annotations: {
4543
5696
  readOnlyHint: false,
@@ -4553,7 +5706,15 @@ const operationFactories = {
4553
5706
  tags: ["Branch"]
4554
5707
  },
4555
5708
  invoke: (client, input, signal) => raw.updateProjectBranch({
4556
- ...input,
5709
+ path: optionalGroup({
5710
+ "project_id": input["project_id"],
5711
+ "branch_id": input["branch_id"]
5712
+ }, true),
5713
+ body: optionalGroup({ "branch": optionalGroup({
5714
+ "name": input["name"],
5715
+ "protected": input["protected"],
5716
+ "expires_at": input["expires_at"]
5717
+ }, true) }, true),
4557
5718
  client,
4558
5719
  signal,
4559
5720
  throwOnError: true
@@ -4565,8 +5726,19 @@ const operationFactories = {
4565
5726
  title: "Update Neon Data API",
4566
5727
  description: "Updates the Neon Data API configuration for the specified branch.\nYou can optionally provide settings to update the Data API configuration.\nThe schema cache is always refreshed as part of this operation.\n",
4567
5728
  inputSchema: z.strictObject({
4568
- body: zUpdateProjectBranchDataApiBody.optional(),
4569
- path: zUpdateProjectBranchDataApiPath
5729
+ "project_id": zUpdateProjectBranchDataApiPath.shape.project_id,
5730
+ "branch_id": zUpdateProjectBranchDataApiPath.shape.branch_id,
5731
+ "database_name": zUpdateProjectBranchDataApiPath.shape.database_name,
5732
+ "db_aggregates_enabled": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["db_aggregates_enabled"].optional(),
5733
+ "db_anon_role": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["db_anon_role"].optional(),
5734
+ "db_extra_search_path": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["db_extra_search_path"].optional(),
5735
+ "db_max_rows": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["db_max_rows"].optional(),
5736
+ "db_schemas": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["db_schemas"].optional(),
5737
+ "jwt_role_claim_key": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["jwt_role_claim_key"].optional(),
5738
+ "jwt_cache_max_lifetime": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["jwt_cache_max_lifetime"].optional(),
5739
+ "openapi_mode": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["openapi_mode"].optional(),
5740
+ "server_cors_allowed_origins": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["server_cors_allowed_origins"].optional(),
5741
+ "server_timing_enabled": zUpdateProjectBranchDataApiBody.shape.settings.unwrap().shape["server_timing_enabled"].optional()
4570
5742
  }),
4571
5743
  annotations: {
4572
5744
  readOnlyHint: false,
@@ -4582,7 +5754,23 @@ const operationFactories = {
4582
5754
  tags: ["DataAPI"]
4583
5755
  },
4584
5756
  invoke: (client, input, signal) => raw.updateProjectBranchDataApi({
4585
- ...input,
5757
+ path: optionalGroup({
5758
+ "project_id": input["project_id"],
5759
+ "branch_id": input["branch_id"],
5760
+ "database_name": input["database_name"]
5761
+ }, true),
5762
+ body: optionalGroup({ "settings": optionalGroup({
5763
+ "db_aggregates_enabled": input["db_aggregates_enabled"],
5764
+ "db_anon_role": input["db_anon_role"],
5765
+ "db_extra_search_path": input["db_extra_search_path"],
5766
+ "db_max_rows": input["db_max_rows"],
5767
+ "db_schemas": input["db_schemas"],
5768
+ "jwt_role_claim_key": input["jwt_role_claim_key"],
5769
+ "jwt_cache_max_lifetime": input["jwt_cache_max_lifetime"],
5770
+ "openapi_mode": input["openapi_mode"],
5771
+ "server_cors_allowed_origins": input["server_cors_allowed_origins"],
5772
+ "server_timing_enabled": input["server_timing_enabled"]
5773
+ }, false) }, false),
4586
5774
  client,
4587
5775
  signal,
4588
5776
  throwOnError: true
@@ -4594,8 +5782,11 @@ const operationFactories = {
4594
5782
  title: "Update database",
4595
5783
  description: "Updates the specified database in the branch.\nFor related information, see [Manage databases](https://neon.com/docs/manage/databases/).\n",
4596
5784
  inputSchema: z.strictObject({
4597
- body: zUpdateProjectBranchDatabaseBody,
4598
- path: zUpdateProjectBranchDatabasePath
5785
+ "project_id": zUpdateProjectBranchDatabasePath.shape.project_id,
5786
+ "branch_id": zUpdateProjectBranchDatabasePath.shape.branch_id,
5787
+ "database_name": zUpdateProjectBranchDatabasePath.shape.database_name,
5788
+ "name": zUpdateProjectBranchDatabaseBody.shape.database.shape.name,
5789
+ "owner_name": zUpdateProjectBranchDatabaseBody.shape.database.shape.owner_name
4599
5790
  }),
4600
5791
  annotations: {
4601
5792
  readOnlyHint: false,
@@ -4611,7 +5802,15 @@ const operationFactories = {
4611
5802
  tags: ["Branch"]
4612
5803
  },
4613
5804
  invoke: (client, input, signal) => raw.updateProjectBranchDatabase({
4614
- ...input,
5805
+ path: optionalGroup({
5806
+ "project_id": input["project_id"],
5807
+ "branch_id": input["branch_id"],
5808
+ "database_name": input["database_name"]
5809
+ }, true),
5810
+ body: optionalGroup({ "database": optionalGroup({
5811
+ "name": input["name"],
5812
+ "owner_name": input["owner_name"]
5813
+ }, true) }, true),
4615
5814
  client,
4616
5815
  signal,
4617
5816
  throwOnError: true
@@ -4623,8 +5822,10 @@ const operationFactories = {
4623
5822
  title: "Update a function",
4624
5823
  description: "Updates the function's mutable metadata — currently only the display\n`name`. A string sets the display name; `null` clears it, after which\nthe function's `name` falls back to its slug. Leading and trailing\nwhitespace is trimmed; a whitespace-only name is rejected. Acts only\non a function owned by the branch: a slug that is only inherited from\nan ancestor branch returns 404 — rename it on the branch that owns\nit. Like every other change on a branch, a rename is isolated per\nbranch: a branch forked before the rename keeps the name it had at\nfork time.\n\n**Note**: This endpoint is currently in Beta.\n",
4625
5824
  inputSchema: z.strictObject({
4626
- body: zUpdateProjectBranchFunctionBody,
4627
- path: zUpdateProjectBranchFunctionPath
5825
+ "project_id": zUpdateProjectBranchFunctionPath.shape.project_id,
5826
+ "branch_id": zUpdateProjectBranchFunctionPath.shape.branch_id,
5827
+ "slug": zUpdateProjectBranchFunctionPath.shape.slug,
5828
+ "name": zUpdateProjectBranchFunctionBody.shape.name
4628
5829
  }),
4629
5830
  annotations: {
4630
5831
  readOnlyHint: false,
@@ -4640,7 +5841,12 @@ const operationFactories = {
4640
5841
  tags: ["Functions"]
4641
5842
  },
4642
5843
  invoke: (client, input, signal) => raw.updateProjectBranchFunction({
4643
- ...input,
5844
+ path: optionalGroup({
5845
+ "project_id": input["project_id"],
5846
+ "branch_id": input["branch_id"],
5847
+ "slug": input["slug"]
5848
+ }, true),
5849
+ body: optionalGroup({ "name": input["name"] }, true),
4644
5850
  client,
4645
5851
  signal,
4646
5852
  throwOnError: true
@@ -4652,8 +5858,19 @@ const operationFactories = {
4652
5858
  title: "Update compute endpoint",
4653
5859
  description: "Updates the specified compute endpoint.\n\nAn `endpoint_id` has an `ep-` prefix. A `branch_id` has a `br-` prefix.\nFor more information about compute endpoints, see [Manage computes](https://neon.com/docs/manage/endpoints/).\n\nIf the returned list of operations is not empty, the compute endpoint is not ready to use.\nThe client must wait for the last operation to finish before using the compute endpoint.\nIf the compute endpoint was idle before the update, it becomes active for a short period of time,\nand the control plane suspends it again after the update.\n",
4654
5860
  inputSchema: z.strictObject({
4655
- body: zUpdateProjectEndpointBody,
4656
- path: zUpdateProjectEndpointPath
5861
+ "project_id": zUpdateProjectEndpointPath.shape.project_id,
5862
+ "endpoint_id": zUpdateProjectEndpointPath.shape.endpoint_id,
5863
+ "branch_id": zUpdateProjectEndpointBody.shape.endpoint.shape.branch_id,
5864
+ "autoscaling_limit_min_cu": zUpdateProjectEndpointBody.shape.endpoint.shape.autoscaling_limit_min_cu,
5865
+ "autoscaling_limit_max_cu": zUpdateProjectEndpointBody.shape.endpoint.shape.autoscaling_limit_max_cu,
5866
+ "provisioner": zUpdateProjectEndpointBody.shape.endpoint.shape.provisioner,
5867
+ "settings": zUpdateProjectEndpointBody.shape.endpoint.shape.settings,
5868
+ "pooler_enabled": zUpdateProjectEndpointBody.shape.endpoint.shape.pooler_enabled,
5869
+ "pooler_mode": zUpdateProjectEndpointBody.shape.endpoint.shape.pooler_mode,
5870
+ "disabled": zUpdateProjectEndpointBody.shape.endpoint.shape.disabled,
5871
+ "passwordless_access": zUpdateProjectEndpointBody.shape.endpoint.shape.passwordless_access,
5872
+ "suspend_timeout_seconds": zUpdateProjectEndpointBody.shape.endpoint.shape.suspend_timeout_seconds,
5873
+ "name": zUpdateProjectEndpointBody.shape.endpoint.shape.name
4657
5874
  }),
4658
5875
  annotations: {
4659
5876
  readOnlyHint: false,
@@ -4669,7 +5886,23 @@ const operationFactories = {
4669
5886
  tags: ["Endpoint"]
4670
5887
  },
4671
5888
  invoke: (client, input, signal) => raw.updateProjectEndpoint({
4672
- ...input,
5889
+ path: optionalGroup({
5890
+ "project_id": input["project_id"],
5891
+ "endpoint_id": input["endpoint_id"]
5892
+ }, true),
5893
+ body: optionalGroup({ "endpoint": optionalGroup({
5894
+ "branch_id": input["branch_id"],
5895
+ "autoscaling_limit_min_cu": input["autoscaling_limit_min_cu"],
5896
+ "autoscaling_limit_max_cu": input["autoscaling_limit_max_cu"],
5897
+ "provisioner": input["provisioner"],
5898
+ "settings": input["settings"],
5899
+ "pooler_enabled": input["pooler_enabled"],
5900
+ "pooler_mode": input["pooler_mode"],
5901
+ "disabled": input["disabled"],
5902
+ "passwordless_access": input["passwordless_access"],
5903
+ "suspend_timeout_seconds": input["suspend_timeout_seconds"],
5904
+ "name": input["name"]
5905
+ }, true) }, true),
4673
5906
  client,
4674
5907
  signal,
4675
5908
  throwOnError: true
@@ -4681,8 +5914,10 @@ const operationFactories = {
4681
5914
  title: "Update snapshot",
4682
5915
  description: "Updates the specified snapshot.\n",
4683
5916
  inputSchema: z.strictObject({
4684
- body: zUpdateSnapshotBody,
4685
- path: zUpdateSnapshotPath
5917
+ "project_id": zUpdateSnapshotPath.shape.project_id,
5918
+ "snapshot_id": zUpdateSnapshotPath.shape.snapshot_id,
5919
+ "name": zUpdateSnapshotBody.shape.snapshot.shape.name,
5920
+ "expires_at": zUpdateSnapshotBody.shape.snapshot.shape.expires_at
4686
5921
  }),
4687
5922
  annotations: {
4688
5923
  readOnlyHint: false,
@@ -4698,7 +5933,14 @@ const operationFactories = {
4698
5933
  tags: ["Snapshot"]
4699
5934
  },
4700
5935
  invoke: (client, input, signal) => raw.updateSnapshot({
4701
- ...input,
5936
+ path: optionalGroup({
5937
+ "project_id": input["project_id"],
5938
+ "snapshot_id": input["snapshot_id"]
5939
+ }, true),
5940
+ body: optionalGroup({ "snapshot": optionalGroup({
5941
+ "name": input["name"],
5942
+ "expires_at": input["expires_at"]
5943
+ }, true) }, true),
4702
5944
  client,
4703
5945
  signal,
4704
5946
  throwOnError: true