@membranehq/sdk 0.28.2 → 0.29.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.
Files changed (76) hide show
  1. package/dist/bundle.d.ts +49 -2
  2. package/dist/bundle.js +1899 -1388
  3. package/dist/bundle.js.map +1 -1
  4. package/dist/dts/accessors/connection-events-listener.d.ts +14 -0
  5. package/dist/dts/accessors/connection-events-listener.test.d.ts +1 -0
  6. package/dist/dts/accessors/connections-accessors.d.ts +6 -1
  7. package/dist/dts/accessors/integrations-accessors.d.ts +3 -0
  8. package/dist/dts/agent/session.d.ts +1 -0
  9. package/dist/dts/agent/worker-contracts.d.ts +2 -1
  10. package/dist/dts/ai-gateway/models.d.ts +4 -0
  11. package/dist/dts/api-version.generated.d.ts +1 -1
  12. package/dist/dts/async-requests/types.d.ts +50 -0
  13. package/dist/dts/deprecation.d.ts +1 -0
  14. package/dist/dts/errors/index.d.ts +5 -1
  15. package/dist/dts/index.browser.d.ts +2 -1
  16. package/dist/dts/membrane-instances/types.d.ts +4 -0
  17. package/dist/dts/oauth/types.d.ts +14 -5
  18. package/dist/dts/orgs/types.d.ts +682 -50
  19. package/dist/dts/orgs/types.test.d.ts +1 -0
  20. package/dist/dts/platform-user-tokens/types.d.ts +42 -0
  21. package/dist/dts/workspace-elements/api/action-run-log-records-api.d.ts +32 -72
  22. package/dist/dts/workspace-elements/api/checkpoints-api.d.ts +0 -1
  23. package/dist/dts/workspace-elements/api/connections-api.d.ts +30 -3
  24. package/dist/dts/workspace-elements/api/connectors-api.d.ts +10 -0
  25. package/dist/dts/workspace-elements/api/data-link-table-instances-api.d.ts +1 -0
  26. package/dist/dts/workspace-elements/api/data-sources-api.d.ts +2 -0
  27. package/dist/dts/workspace-elements/api/external-api-logs-api.d.ts +1 -0
  28. package/dist/dts/workspace-elements/api/external-apps-api.d.ts +28 -0
  29. package/dist/dts/workspace-elements/api/external-event-log-records-api.d.ts +5 -0
  30. package/dist/dts/workspace-elements/api/external-event-pulls-api.d.ts +3 -0
  31. package/dist/dts/workspace-elements/api/external-event-subscriptions-api.d.ts +13 -0
  32. package/dist/dts/workspace-elements/api/external-event-types-api.d.ts +331 -0
  33. package/dist/dts/workspace-elements/api/field-mappings-api.d.ts +2 -0
  34. package/dist/dts/workspace-elements/api/flow-runs-api.d.ts +2 -0
  35. package/dist/dts/workspace-elements/api/flows-api.d.ts +2 -0
  36. package/dist/dts/workspace-elements/api/incoming-webhooks-api.d.ts +4 -0
  37. package/dist/dts/workspace-elements/api/index.d.ts +1 -0
  38. package/dist/dts/workspace-elements/api/integrations-api.d.ts +14 -7
  39. package/dist/dts/workspace-elements/base/action-run-log-records/index.d.ts +19 -0
  40. package/dist/dts/workspace-elements/base/actions/action-payload.d.ts +46 -0
  41. package/dist/dts/workspace-elements/base/actions/action-payload.test.d.ts +1 -0
  42. package/dist/dts/workspace-elements/base/actions/index.d.ts +3 -2
  43. package/dist/dts/workspace-elements/base/app-data-schemas/index.d.ts +2 -2
  44. package/dist/dts/workspace-elements/base/app-event-types/index.d.ts +2 -2
  45. package/dist/dts/workspace-elements/base/connection-requests/index.d.ts +4 -0
  46. package/dist/dts/workspace-elements/base/connections/index.d.ts +2 -0
  47. package/dist/dts/workspace-elements/base/connectors/index.d.ts +5 -5
  48. package/dist/dts/workspace-elements/base/data-link-tables/index.d.ts +2 -2
  49. package/dist/dts/workspace-elements/base/data-sources/index.d.ts +2 -2
  50. package/dist/dts/workspace-elements/base/external-event-log-records/index.d.ts +1 -0
  51. package/dist/dts/workspace-elements/base/external-event-subscriptions/index.d.ts +2 -0
  52. package/dist/dts/workspace-elements/base/external-event-types/index.d.ts +190 -0
  53. package/dist/dts/workspace-elements/base/field-mappings/index.d.ts +2 -2
  54. package/dist/dts/workspace-elements/base/flows/index.d.ts +2 -2
  55. package/dist/dts/workspace-elements/base/index.d.ts +1 -0
  56. package/dist/dts/workspace-elements/base/integrations/index.d.ts +2 -2
  57. package/dist/dts/workspace-elements/base/packages/index.d.ts +2 -2
  58. package/dist/dts/workspace-elements/types.d.ts +11 -2
  59. package/dist/dts/workspace-tokens/index.d.ts +1 -0
  60. package/dist/dts/{client-tokens → workspace-tokens}/types.d.ts +35 -22
  61. package/dist/dts/workspaces/api.d.ts +0 -6
  62. package/dist/dts/workspaces/compare.d.ts +4 -1
  63. package/dist/index.browser.d.mts +2279 -847
  64. package/dist/index.browser.d.ts +2279 -847
  65. package/dist/index.browser.js +692 -196
  66. package/dist/index.browser.js.map +1 -1
  67. package/dist/index.browser.mjs +653 -190
  68. package/dist/index.browser.mjs.map +1 -1
  69. package/dist/index.node.d.mts +2279 -847
  70. package/dist/index.node.d.ts +2279 -847
  71. package/dist/index.node.js +692 -196
  72. package/dist/index.node.js.map +1 -1
  73. package/dist/index.node.mjs +653 -190
  74. package/dist/index.node.mjs.map +1 -1
  75. package/package.json +2 -2
  76. /package/dist/dts/{client-tokens → platform-user-tokens}/index.d.ts +0 -0
@@ -58,6 +58,7 @@ exports.BadRequestErrorKey = void 0;
58
58
  BadRequestErrorKey["ACCESS_DENIED"] = "access_denied";
59
59
  BadRequestErrorKey["ALREADY_EXISTS"] = "already_exists";
60
60
  BadRequestErrorKey["RATE_LIMIT_EXCEEDED"] = "rate_limit_exceeded";
61
+ BadRequestErrorKey["WORKSPACE_TIER_GATED"] = "workspace_tier_gated";
61
62
  })(exports.BadRequestErrorKey || (exports.BadRequestErrorKey = {}));
62
63
  exports.ConnectionErrorKey = void 0;
63
64
  (function (ConnectionErrorKey) {
@@ -195,6 +196,11 @@ class AccessDeniedError extends BadRequestError {
195
196
  this.data.key = exports.BadRequestErrorKey.ACCESS_DENIED;
196
197
  }
197
198
  }
199
+ class RemoteConnectorCodeUnavailableError extends BadRequestError {
200
+ constructor(arg) {
201
+ super(arg !== null && arg !== void 0 ? arg : 'Operation execution requires connector code, which is not available for connectors served from the remote repository.');
202
+ }
203
+ }
198
204
  class CustomCodeError extends MembraneError {
199
205
  constructor(arg) {
200
206
  super(arg);
@@ -2494,30 +2500,36 @@ class Eval extends DataBuilderFormulaBase {
2494
2500
  }
2495
2501
  }
2496
2502
  }
2503
+ function asLiteralOperandSchema(schema) {
2504
+ if (!schema)
2505
+ return schema;
2506
+ const { readOnly: _readOnly, ...rest } = schema;
2507
+ return rest;
2508
+ }
2497
2509
  const OPERATOR_SPECS = {
2498
2510
  is: {
2499
2511
  name: 'is',
2500
2512
  handler: (value, operand) => value == operand,
2501
2513
  applicableToSchema: (schema) => schemaIsScalar(schema),
2502
- getOperandSchema: (schema) => schema,
2514
+ getOperandSchema: (schema) => asLiteralOperandSchema(schema),
2503
2515
  },
2504
2516
  isNot: {
2505
2517
  name: 'is not',
2506
2518
  handler: (value, operand) => value != operand,
2507
2519
  applicableToSchema: (schema) => schemaIsScalar(schema),
2508
- getOperandSchema: (schema) => schema,
2520
+ getOperandSchema: (schema) => asLiteralOperandSchema(schema),
2509
2521
  },
2510
2522
  oneOf: {
2511
2523
  name: 'is one of',
2512
2524
  handler: (value, operand) => Array.isArray(operand) && operand.includes(value),
2513
2525
  applicableToSchema: (schema) => schemaIsScalar(schema) && schema.type !== 'boolean',
2514
- getOperandSchema: (schema) => ({ type: 'array', items: schema }),
2526
+ getOperandSchema: (schema) => ({ type: 'array', items: asLiteralOperandSchema(schema) }),
2515
2527
  },
2516
2528
  noneOf: {
2517
2529
  name: 'is not one of',
2518
2530
  handler: (value, operand) => !Array.isArray(operand) || !operand.includes(value),
2519
2531
  applicableToSchema: (schema) => schemaIsScalar(schema) && schema.type !== 'boolean',
2520
- getOperandSchema: (schema) => ({ type: 'array', items: schema }),
2532
+ getOperandSchema: (schema) => ({ type: 'array', items: asLiteralOperandSchema(schema) }),
2521
2533
  },
2522
2534
  contains: {
2523
2535
  name: 'contains',
@@ -3497,6 +3509,7 @@ exports.WorkspaceElementType = void 0;
3497
3509
  WorkspaceElementType["ExternalEventSubscription"] = "external-event-subscription";
3498
3510
  WorkspaceElementType["ExternalEventLogRecord"] = "external-event-log-record";
3499
3511
  WorkspaceElementType["ExternalEventPull"] = "external-event-pull";
3512
+ WorkspaceElementType["ExternalEventType"] = "external-event-type";
3500
3513
  WorkspaceElementType["Screen"] = "screen";
3501
3514
  WorkspaceElementType["ActionRunLogRecord"] = "action-run-log-record";
3502
3515
  WorkspaceElementType["ExternalApiLogRecord"] = "external-api-log-record";
@@ -3633,7 +3646,8 @@ const BaseIntegrationLevelMembraneInterfaceEditableProperties = BaseMembraneInte
3633
3646
  const BaseIntegrationLevelMembraneInterfaceReadOnlyProperties = BaseMembraneInterfaceReadOnlyProperties.extend({
3634
3647
  isCustomized: z.z.boolean().optional(),
3635
3648
  });
3636
- const BaseIntegrationLevelMembraneInterfaceExportProperties = BaseMembraneInterfaceEditableProperties.extend({
3649
+ const BaseExportProperties = BaseMembraneInterfaceEditableProperties.required({ uuid: true, key: true });
3650
+ const BaseIntegrationLevelMembraneInterfaceExportProperties = BaseExportProperties.extend({
3637
3651
  integrationUuid: z.z.string().optional(),
3638
3652
  parentUuid: z.z.string().optional(),
3639
3653
  externalAppUuid: z.z.string().optional(),
@@ -3926,6 +3940,124 @@ const ACTIONS = {
3926
3940
  },
3927
3941
  };
3928
3942
 
3943
+ exports.HttpRequestMethod = void 0;
3944
+ (function (HttpRequestMethod) {
3945
+ HttpRequestMethod["GET"] = "GET";
3946
+ HttpRequestMethod["POST"] = "POST";
3947
+ HttpRequestMethod["PATCH"] = "PATCH";
3948
+ HttpRequestMethod["PUT"] = "PUT";
3949
+ HttpRequestMethod["DELETE"] = "DELETE";
3950
+ })(exports.HttpRequestMethod || (exports.HttpRequestMethod = {}));
3951
+ const HttpRequestSpec = z.z.object({
3952
+ method: z.z.string().toUpperCase().pipe(z.z.enum(exports.HttpRequestMethod)).optional(),
3953
+ uri: z.z.any(),
3954
+ headers: z.z.record(z.z.string(), z.z.any()).optional(),
3955
+ query: z.z.record(z.z.string(), z.z.any()).optional(),
3956
+ body: z.z.any().optional(),
3957
+ });
3958
+ const HTTP_REQUEST_SCHEMA = {
3959
+ type: 'object',
3960
+ properties: {
3961
+ uri: { type: 'string' },
3962
+ method: {
3963
+ type: 'string',
3964
+ enum: ['GET', 'POST', 'PUT', 'PATCH', 'DELETE'],
3965
+ },
3966
+ body: {},
3967
+ query: {
3968
+ type: 'object',
3969
+ section: true,
3970
+ additionalProperties: true,
3971
+ },
3972
+ headers: {
3973
+ type: 'object',
3974
+ section: true,
3975
+ additionalProperties: true,
3976
+ },
3977
+ },
3978
+ };
3979
+
3980
+ const ActionApiPayload = z.z.object({
3981
+ method: z.z.enum(exports.HttpRequestMethod),
3982
+ path: z.z.string().optional(),
3983
+ url: z.z.string().optional(),
3984
+ body: z.z.any().optional(),
3985
+ headers: z.z.record(z.z.string(), z.z.string()).optional(),
3986
+ query: z.z.record(z.z.string(), z.z.union([z.z.string(), z.z.number(), z.z.boolean()])).optional(),
3987
+ });
3988
+ const ActionSnapshot = z.z.object({
3989
+ id: z.z.string().optional(),
3990
+ integrationKey: z.z.string().optional(),
3991
+ key: z.z.string().optional(),
3992
+ connectionKey: z.z.string().optional(),
3993
+ connectionId: z.z.string().optional(),
3994
+ type: z.z.string(),
3995
+ api: ActionApiPayload.optional(),
3996
+ code: z.z.string().optional(),
3997
+ input: z.z.any().optional(),
3998
+ meta: z.z.record(z.z.string(), z.z.any()).optional(),
3999
+ });
4000
+ function configToNamedPayload(type, config) {
4001
+ var _a, _b;
4002
+ if (config == null)
4003
+ return {};
4004
+ switch (type) {
4005
+ case exports.ActionType.ApiRequestToExternalApp:
4006
+ case exports.ActionType.ApiRequestToYourApp:
4007
+ case exports.ActionType.ApiRequest: {
4008
+ const req = config.request;
4009
+ if (!req)
4010
+ return {};
4011
+ return {
4012
+ api: {
4013
+ method: req.method,
4014
+ path: req.path,
4015
+ body: (_a = req.data) !== null && _a !== void 0 ? _a : req.body,
4016
+ headers: req.headers,
4017
+ query: req.query,
4018
+ },
4019
+ };
4020
+ }
4021
+ case exports.ActionType.HttpRequest: {
4022
+ const req = config.request;
4023
+ if (!req)
4024
+ return {};
4025
+ return {
4026
+ api: {
4027
+ method: req.method,
4028
+ url: req.uri,
4029
+ body: (_b = req.body) !== null && _b !== void 0 ? _b : req.data,
4030
+ headers: req.headers,
4031
+ query: req.query,
4032
+ },
4033
+ };
4034
+ }
4035
+ case exports.ActionType.RunJavascript: {
4036
+ const code = config.code;
4037
+ if (typeof code !== 'string')
4038
+ return {};
4039
+ return { code };
4040
+ }
4041
+ default:
4042
+ return {};
4043
+ }
4044
+ }
4045
+ function buildActionSnapshot(args) {
4046
+ const { api, code } = configToNamedPayload(args.type, args.config);
4047
+ return {
4048
+ ...(args.id != null && { id: args.id }),
4049
+ ...(args.integrationKey != null && { integrationKey: args.integrationKey }),
4050
+ ...(args.key != null && { key: args.key }),
4051
+ ...(args.connectionId != null && { connectionId: args.connectionId }),
4052
+ ...(args.connectionKey != null && { connectionKey: args.connectionKey }),
4053
+ type: args.type,
4054
+ ...(api != null && { api }),
4055
+ ...(code != null && { code }),
4056
+ ...(args.input != null && { input: args.input }),
4057
+ ...(args.meta != null && { meta: args.meta }),
4058
+ };
4059
+ }
4060
+
3929
4061
  exports.ActionDependencyType = void 0;
3930
4062
  (function (ActionDependencyType) {
3931
4063
  ActionDependencyType["FieldMapping"] = "FieldMapping";
@@ -4003,6 +4135,8 @@ const CreateConnectionRequestPayload = z.z.object({
4003
4135
  connectorId: z.z.string().optional(),
4004
4136
  connectorKey: z.z.string().optional(),
4005
4137
  connectorVersion: z.z.string().optional(),
4138
+ externalAppId: z.z.string().optional(),
4139
+ externalAppKey: z.z.string().optional(),
4006
4140
  connectionId: z.z.string().optional(),
4007
4141
  connectionKey: z.z.string().min(1).max(100).optional(),
4008
4142
  name: z.z.string().optional(),
@@ -4020,6 +4154,8 @@ const ConnectionRequest = z.z.object({
4020
4154
  connectorId: z.z.string().optional(),
4021
4155
  connectorKey: z.z.string().optional(),
4022
4156
  connectorVersion: z.z.string().optional(),
4157
+ externalAppId: z.z.string().optional(),
4158
+ externalAppKey: z.z.string().optional(),
4023
4159
  connectionId: z.z.string().optional(),
4024
4160
  connectionKey: z.z.string().optional(),
4025
4161
  name: z.z.string().optional(),
@@ -4057,6 +4193,7 @@ const ConnectionClientAction = z.z.object({
4057
4193
  description: z.z.string(),
4058
4194
  uiUrl: z.z.string().optional(),
4059
4195
  agentInstructions: z.z.string().optional(),
4196
+ handoffAgentInstructions: z.z.string().optional(),
4060
4197
  });
4061
4198
  const BaseConnection = BaseWorkspaceElement.extend({
4062
4199
  ...TenantLayerElement.shape,
@@ -9209,21 +9346,25 @@ exports.ConnectorStatus = void 0;
9209
9346
  const ConnectorAuthWithFunctions = z.z.object({
9210
9347
  type: z.z
9211
9348
  .enum(['integration-app-token', 'membrane-token', 'oauth2', 'oauth1', 'client-credentials', 'proxy'])
9212
- .optional(),
9213
- credentialsSchema: DataSchema.optional(),
9214
- customCredentialsSchema: DataSchema.optional(),
9215
- inputSchema: DataSchema.optional(),
9216
- parametersSchema: DataSchema.optional(),
9217
- getCredentialsFromConnectionParameters: GenericFunctionDefinition.optional(),
9218
- refreshCredentials: GenericFunctionDefinition.optional(),
9219
- makeApiClient: GenericFunctionDefinition.optional(),
9220
- getOAuthConfig: GenericFunctionDefinition.optional(),
9221
- getTokenData: GenericFunctionDefinition.optional(),
9222
- getCredentialsFromAccessTokenResponse: GenericFunctionDefinition.optional(),
9223
- getCredentialsFromRefreshTokenResponse: GenericFunctionDefinition.optional(),
9224
- test: GenericFunctionDefinition.optional(),
9225
- disconnect: GenericFunctionDefinition.optional(),
9226
- proxyKey: z.z.string().optional(),
9349
+ .optional()
9350
+ .describe('Authentication protocol used by the connector.'),
9351
+ credentialsSchema: DataSchema.optional().describe('JSON Schema describing the credentials produced by the auth flow (e.g. `access_token`, `refresh_token`). Usually inferred from the auth type; override only when the connector stores custom credential fields.'),
9352
+ customCredentialsSchema: DataSchema.optional().describe('Additional JSON Schema for workspace-level overrides of credentials (e.g. BYO-OAuth clientId/clientSecret).'),
9353
+ inputSchema: DataSchema.optional().describe('JSON Schema for end-user input collected during connection (e.g. an API key or subdomain the user types in).'),
9354
+ parametersSchema: DataSchema.optional().describe('JSON Schema for connector-level parameters configured per integration (e.g. region, account ID).'),
9355
+ getCredentialsFromConnectionParameters: GenericFunctionDefinition.optional().describe('Function that derives auth credentials from connection parameters. Use for static-key auth (api-key, basic-auth) where the user-provided input IS the credential.'),
9356
+ refreshCredentials: GenericFunctionDefinition.optional().describe('Function that refreshes expired credentials. Implement for non-standard OAuth refresh flows or when additional credentials need to be refreshed alongside the OAuth token.'),
9357
+ makeApiClient: GenericFunctionDefinition.optional().describe('Function that configures the HTTP client used by operations, actions and data sources. Typically a `mapping` type with `baseUri` and auth header wiring.'),
9358
+ getOAuthConfig: GenericFunctionDefinition.optional().describe('OAuth2: function returning `{ authorizeUri, tokenUri, scopes, noRefreshToken? }` — the authorize/token endpoint URLs and requested scopes.'),
9359
+ getTokenData: GenericFunctionDefinition.optional().describe('OAuth2: function invoked with the raw token response to extract token metadata. Rarely needed.'),
9360
+ getCredentialsFromAccessTokenResponse: GenericFunctionDefinition.optional().describe('OAuth2: function that transforms the token endpoint response into the final credentials object. Required for multi-tenant APIs (Microsoft) or APIs that require post-OAuth bootstrap calls.'),
9361
+ getCredentialsFromRefreshTokenResponse: GenericFunctionDefinition.optional().describe('OAuth2: function that transforms the refresh token endpoint response into the refreshed credentials. Required when refresh responses differ from initial-token responses.'),
9362
+ test: GenericFunctionDefinition.optional().describe('Function that verifies the connection by making a lightweight authenticated API call (typically a `rest-api-mapping` against a `/me`-style endpoint).'),
9363
+ disconnect: GenericFunctionDefinition.optional().describe('Function that revokes credentials at the provider when the connection is removed. Implement only if the provider exposes a revoke endpoint.'),
9364
+ proxyKey: z.z
9365
+ .string()
9366
+ .optional()
9367
+ .describe('For `type: "proxy"` — identifies which proxy configuration the workspace should use.'),
9227
9368
  ui: z.z
9228
9369
  .object({
9229
9370
  schema: DataSchema.optional(),
@@ -9255,13 +9396,16 @@ const GeneratedConnectorOption = z.z.object({
9255
9396
  const ConnectorOptions = z.z.record(z.z.string(), ConnectorOption);
9256
9397
  const WritableConnectorVersionData = ConnectorAuthWithFunctions.extend({
9257
9398
  parametersSchema: DataSchema.optional(),
9258
- options: z.z.record(z.z.string(), WriteableConnectorOption).optional(),
9399
+ options: z.z
9400
+ .record(z.z.string(), WriteableConnectorOption)
9401
+ .optional()
9402
+ .describe('Map of auth option key to auth configuration, for connectors that support multiple auth methods. Mutually exclusive with the top-level auth fields: use either the top-level fields (single-auth) OR `options` (multi-auth), not both.'),
9259
9403
  }).omit({
9260
9404
  credentialsSchema: true,
9261
9405
  });
9262
9406
  const ConnectorVersionData = z.z
9263
9407
  .object({
9264
- baseUri: z.z.string(),
9408
+ baseUri: z.z.string().optional(),
9265
9409
  revision: z.z.string().optional(),
9266
9410
  dataCollectionsCount: z.z.number().optional(),
9267
9411
  operationsCount: z.z.number().optional(),
@@ -9296,10 +9440,10 @@ const WriteableConnectorFields = z.z
9296
9440
  })
9297
9441
  .extend(WritableConnectorVersionData.shape);
9298
9442
  const ConnectorExportProperties = WriteableConnectorFields.extend({
9299
- uuid: z.z.string().optional(),
9300
- }).omit({
9301
- externalAppId: true,
9302
- });
9443
+ uuid: z.z.string(),
9444
+ })
9445
+ .omit({ externalAppId: true })
9446
+ .required({ key: true });
9303
9447
  const UpdateConnectorRequest = WriteableConnectorFields;
9304
9448
  const CreateConnectorRequest = WriteableConnectorFields.extend({
9305
9449
  name: z.z.string(),
@@ -9584,8 +9728,8 @@ var ApiTrigger = new FlowNodeSpec({
9584
9728
  });
9585
9729
 
9586
9730
  var AppEventTrigger = new FlowNodeSpec({
9587
- name: 'App Event Trigger',
9588
- description: 'Trigger flow when a matching App Event is received',
9731
+ name: 'Internal Event Trigger',
9732
+ description: 'Trigger flow when a matching Internal Event is received',
9589
9733
  isTrigger: true,
9590
9734
  });
9591
9735
 
@@ -9957,26 +10101,32 @@ const BaseIntegration = BaseMembraneInterface.extend({
9957
10101
  });
9958
10102
  const IntegrationEditableProperties = BaseMembraneInterfaceEditableProperties.extend({
9959
10103
  logoUri: z.z.string().optional(),
9960
- externalAppId: z.z.string().optional(),
10104
+ externalAppId: z.z
10105
+ .string()
10106
+ .optional()
10107
+ .describe("External app id; alternative to connectorId — resolves to the app's default connector."),
9961
10108
  externalAppUuid: z.z.string().optional(),
9962
10109
  appUuid: z.z.string().optional().describe('[INTERNAL] Deprecated: resolved to externalAppId'),
9963
10110
  oAuthCallbackUri: z.z.url().or(z.z.literal('')).optional(),
9964
10111
  logoBase64: z.z.string().optional(),
9965
10112
  connectorVersion: z.z.string().optional(),
9966
- connectorId: z.z.string().optional(),
10113
+ connectorId: z.z.string().optional().describe('ID of the connector this integration uses.'),
9967
10114
  connectorUuid: z.z.string().optional(),
9968
10115
  connectorKey: z.z
9969
10116
  .string()
9970
10117
  .optional()
9971
10118
  .describe('Key of the connector; alternative to connectorId. Resolved to connectorId by the API.'),
9972
- parameters: z.z.record(z.z.string(), z.z.any()).optional(),
10119
+ parameters: z.z
10120
+ .record(z.z.string(), z.z.any())
10121
+ .optional()
10122
+ .describe('Connector-specific parameters (e.g. OAuth { clientId, clientSecret, scopes }).'),
9973
10123
  optionsConfig: IntegrationOptions.optional(),
9974
10124
  });
9975
10125
  const IntegrationExportProperties = IntegrationEditableProperties.omit({
9976
10126
  connectorId: true,
9977
10127
  externalAppId: true,
9978
10128
  parameters: true,
9979
- });
10129
+ }).required({ uuid: true, key: true });
9980
10130
  const AppliedToIntegrations = (elementSchema) => z.z.array(z.z.object({
9981
10131
  element: elementSchema,
9982
10132
  integration: BaseIntegration,
@@ -10073,7 +10223,7 @@ const DataLinkTableSpecificProperties = z.z.object({
10073
10223
  dataLinkTableId: z.z.string().optional(),
10074
10224
  });
10075
10225
  const DataLinkTableEditableProperties = BaseMembraneInterfaceEditableProperties.extend(DataLinkTableSpecificProperties.shape);
10076
- const DataLinkTableExportProperties = BaseMembraneInterfaceEditableProperties.extend(DataLinkTableSpecificProperties.shape).omit({
10226
+ const DataLinkTableExportProperties = BaseExportProperties.extend(DataLinkTableSpecificProperties.shape).omit({
10077
10227
  connectionId: true,
10078
10228
  dataLinkTableId: true,
10079
10229
  });
@@ -10096,43 +10246,6 @@ const DataLinkTableConfig = z.z.object({
10096
10246
  key: z.z.string(),
10097
10247
  });
10098
10248
 
10099
- exports.HttpRequestMethod = void 0;
10100
- (function (HttpRequestMethod) {
10101
- HttpRequestMethod["GET"] = "GET";
10102
- HttpRequestMethod["POST"] = "POST";
10103
- HttpRequestMethod["PATCH"] = "PATCH";
10104
- HttpRequestMethod["PUT"] = "PUT";
10105
- HttpRequestMethod["DELETE"] = "DELETE";
10106
- })(exports.HttpRequestMethod || (exports.HttpRequestMethod = {}));
10107
- const HttpRequestSpec = z.z.object({
10108
- method: z.z.string().toUpperCase().pipe(z.z.enum(exports.HttpRequestMethod)).optional(),
10109
- uri: z.z.any(),
10110
- headers: z.z.record(z.z.string(), z.z.any()).optional(),
10111
- query: z.z.record(z.z.string(), z.z.any()).optional(),
10112
- body: z.z.any().optional(),
10113
- });
10114
- const HTTP_REQUEST_SCHEMA = {
10115
- type: 'object',
10116
- properties: {
10117
- uri: { type: 'string' },
10118
- method: {
10119
- type: 'string',
10120
- enum: ['GET', 'POST', 'PUT', 'PATCH', 'DELETE'],
10121
- },
10122
- body: {},
10123
- query: {
10124
- type: 'object',
10125
- section: true,
10126
- additionalProperties: true,
10127
- },
10128
- headers: {
10129
- type: 'object',
10130
- section: true,
10131
- additionalProperties: true,
10132
- },
10133
- },
10134
- };
10135
-
10136
10249
  const BaseAppEventType = BaseMembraneInterface.extend({
10137
10250
  revision: z.z.string(),
10138
10251
  archivedAt: z.z.string().optional(),
@@ -10151,7 +10264,7 @@ const AppEventTypeEditableProperties = BaseMembraneInterfaceEditableProperties.e
10151
10264
  userIdFormula: z.z.any().optional(),
10152
10265
  subscribeRequest: HttpRequestSpec.optional(),
10153
10266
  });
10154
- const AppEventTypeExportProperties = BaseMembraneInterfaceEditableProperties.extend({});
10267
+ const AppEventTypeExportProperties = BaseExportProperties.extend({});
10155
10268
 
10156
10269
  const BaseAppEventSubscription = BaseMembraneInterface.extend({
10157
10270
  ...TenantLayerElement.shape,
@@ -10173,7 +10286,7 @@ const AppDataSchemaSpecificProperties = z.z.object({
10173
10286
  code: z.z.string().optional(),
10174
10287
  });
10175
10288
  const AppDataSchemaEditableProperties = BaseMembraneInterfaceEditableProperties.extend(AppDataSchemaSpecificProperties.shape);
10176
- const AppDataSchemaExportProperties = AppDataSchemaEditableProperties.omit({
10289
+ const AppDataSchemaExportProperties = BaseExportProperties.extend(AppDataSchemaSpecificProperties.shape).omit({
10177
10290
  appDataSchemaId: true,
10178
10291
  });
10179
10292
  const AppDataSchemaReadOnlyProperties = BaseMembraneInterfaceReadOnlyProperties.extend({
@@ -10210,6 +10323,7 @@ const BaseExternalEventSubscription = TenantLayerElement.extend({
10210
10323
  name: z.z.string().optional(),
10211
10324
  connectionId: z.z.string(),
10212
10325
  integrationId: z.z.string(),
10326
+ externalEventTypeId: z.z.string().optional(),
10213
10327
  config: ExternalEventSubscriptionConfig.optional(),
10214
10328
  status: z.z.enum(exports.ExternalEventSubscriptionStatus).optional(),
10215
10329
  error: ErrorDataSchema.optional(),
@@ -10226,6 +10340,7 @@ const BaseExternalEventSubscription = TenantLayerElement.extend({
10226
10340
  nextRefreshTimestamp: z.z.number().optional(),
10227
10341
  globalWebhookKey: z.z.string().optional(),
10228
10342
  globalWebhookEventSelector: z.z.string().optional(),
10343
+ incomingWebhookUri: z.z.string().optional(),
10229
10344
  webhookUri: z.z.string().optional(),
10230
10345
  });
10231
10346
 
@@ -10240,6 +10355,7 @@ const BaseExternalEventLogRecord = ActivityLogRecord.extend({
10240
10355
  externalEventSubscriptionId: z.z.string(),
10241
10356
  integrationId: z.z.string(),
10242
10357
  connectionId: z.z.string(),
10358
+ externalEventTypeId: z.z.string().optional(),
10243
10359
  payload: z.z.any().optional(),
10244
10360
  launchedFlowRunIds: z.z.array(z.z.string()).optional(),
10245
10361
  status: z.z.enum(exports.ExternalEventLogStatus),
@@ -10266,6 +10382,31 @@ const BaseExternalEventPull = ActivityLogRecord.extend({
10266
10382
  error: ErrorDataSchema.optional(),
10267
10383
  });
10268
10384
 
10385
+ exports.ExternalEventTypeImplementationType = void 0;
10386
+ (function (ExternalEventTypeImplementationType) {
10387
+ ExternalEventTypeImplementationType["Webhook"] = "webhook";
10388
+ })(exports.ExternalEventTypeImplementationType || (exports.ExternalEventTypeImplementationType = {}));
10389
+ const EXTERNAL_EVENT_TYPE_FUNCTION_KEYS = ['subscribe', 'unsubscribe', 'handle', 'refresh'];
10390
+ const ExternalEventTypeCommonFields = {
10391
+ schema: DataSchema.optional(),
10392
+ parametersSchema: DataSchema.optional(),
10393
+ example: z.z.any().optional(),
10394
+ type: z.z.nativeEnum(exports.ExternalEventTypeImplementationType).optional(),
10395
+ subscribe: GenericFunctionDefinition.optional(),
10396
+ unsubscribe: GenericFunctionDefinition.optional(),
10397
+ handle: GenericFunctionDefinition.optional(),
10398
+ refresh: GenericFunctionDefinition.optional(),
10399
+ };
10400
+ const ExternalEventTypeEditableProperties = BaseIntegrationLevelMembraneInterfaceEditableProperties.extend({
10401
+ ...ExternalEventTypeCommonFields,
10402
+ });
10403
+ const ExternalEventTypeExportProperties = BaseIntegrationLevelMembraneInterfaceExportProperties.extend({
10404
+ ...ExternalEventTypeCommonFields,
10405
+ });
10406
+ const BaseExternalEventType = BaseIntegrationLevelMembraneInterface.extend({
10407
+ ...ExternalEventTypeCommonFields,
10408
+ });
10409
+
10269
10410
  exports.ActionRunLogStatus = void 0;
10270
10411
  (function (ActionRunLogStatus) {
10271
10412
  ActionRunLogStatus["SUCCESS"] = "success";
@@ -10279,8 +10420,10 @@ const BaseActionRunLogRecord = ActivityLogRecord.extend({
10279
10420
  actionId: z.z.string().optional().describe('[INTERNAL] Deprecated: Use integrationActionId instead'),
10280
10421
  actionInstanceId: z.z.string().optional().describe('[INTERNAL] Deprecated: Use connectionActionId instead'),
10281
10422
  integrationId: z.z.string(),
10282
- connectionId: z.z.string(),
10283
- input: z.z.any().optional(),
10423
+ connectionId: z.z
10424
+ .string()
10425
+ .describe('[DEPRECATED] Deprecated: Read from action.connectionId or action.connectionKey instead'),
10426
+ input: z.z.any().optional().describe('[DEPRECATED] Deprecated: Read from action.input instead'),
10284
10427
  output: z.z.any().optional(),
10285
10428
  status: z.z.enum(exports.ActionRunLogStatus),
10286
10429
  createdAt: z.z.string(),
@@ -10288,6 +10431,7 @@ const BaseActionRunLogRecord = ActivityLogRecord.extend({
10288
10431
  error: ErrorDataSchema.optional(),
10289
10432
  duration: z.z.number().optional(),
10290
10433
  meta: z.z.record(z.z.string(), z.z.any()).optional(),
10434
+ action: ActionSnapshot.optional().describe('Complete /act-body snapshot of what ran — sufficient to replay the run by POSTing back to /act.'),
10291
10435
  });
10292
10436
 
10293
10437
  const ConnectedProductType = z.z.enum(['ai-agent', 'app']);
@@ -10433,7 +10577,6 @@ const ListActionInstancesForConnectionQuery = FindActionsQuery;
10433
10577
  const FindActionInstancesQuery = FindActionsQuery;
10434
10578
 
10435
10579
  const ActionRunLogRecordApiResponse = BaseActionRunLogRecord.extend({
10436
- action: BaseAction.optional(),
10437
10580
  actionInstance: BaseAction.optional(),
10438
10581
  integration: BaseIntegration.optional(),
10439
10582
  connection: BaseConnection.optional(),
@@ -10638,11 +10781,11 @@ const ConnectionSelector = z.z.object({
10638
10781
  const ConnectionApiResponse = BaseConnection.extend({
10639
10782
  user: BaseCustomer.optional(),
10640
10783
  integration: BaseIntegration.optional(),
10784
+ connectorParameters: z.z.unknown().optional(),
10785
+ input: z.z.unknown().optional(),
10641
10786
  });
10642
10787
  const ConnectionApiResponseWithSecrets = ConnectionApiResponse.extend({
10643
10788
  credentials: z.z.unknown().optional(),
10644
- input: z.z.unknown().optional(),
10645
- connectorParameters: z.z.unknown().optional(),
10646
10789
  });
10647
10790
  const ConnectionMessagePayload = z.z.discriminatedUnion('type', [
10648
10791
  z.z.object({
@@ -10660,6 +10803,18 @@ const ConnectionMessagePayload = z.z.discriminatedUnion('type', [
10660
10803
  connectionId: z.z.string().optional(),
10661
10804
  }),
10662
10805
  ]);
10806
+ const ConnectionEntityMessagePayload = z.z.discriminatedUnion('type', [
10807
+ z.z.object({
10808
+ type: z.z.literal('connected'),
10809
+ connectionId: z.z.string(),
10810
+ timestamp: z.z.string(),
10811
+ message: z.z.string().optional(),
10812
+ }),
10813
+ z.z.object({
10814
+ type: z.z.literal('connectionPatched'),
10815
+ connectionId: z.z.string(),
10816
+ }),
10817
+ ]);
10663
10818
  const GenerateOptionsRequest = z.z.object({
10664
10819
  integrationId: z.z.string().optional(),
10665
10820
  integrationKey: z.z.string().optional(),
@@ -10676,6 +10831,8 @@ const ConnectPayload = z.z.object({
10676
10831
  connectorId: z.z.string().optional(),
10677
10832
  connectorKey: z.z.string().optional(),
10678
10833
  connectorVersion: z.z.string().optional(),
10834
+ externalAppId: z.z.string().optional(),
10835
+ externalAppKey: z.z.string().optional(),
10679
10836
  connectionId: z.z.string().optional(),
10680
10837
  connectionKey: z.z.string().min(1).max(100).optional(),
10681
10838
  name: z.z.string().optional(),
@@ -10696,6 +10853,15 @@ const ConnectUIOptions = ConnectPayload.omit({ input: true, redirectUri: true })
10696
10853
  const ListPublicConnectorsQuery = PaginationQuery.merge(IncludeArchivedQuery).extend({
10697
10854
  search: z.z.string().optional(),
10698
10855
  });
10856
+ const ListConnectorsQuery = z.z.object({
10857
+ limit: z.z.coerce.number().optional(),
10858
+ cursor: z.z.string().optional(),
10859
+ workspaceId: z.z.string().optional().describe('[INTERNAL] Legacy field for backward compatibility'),
10860
+ search: z.z.string().optional(),
10861
+ appUuid: z.z.string().optional(),
10862
+ externalAppId: z.z.string().optional(),
10863
+ includeArchived: zodBooleanCoercion().optional(),
10864
+ });
10699
10865
 
10700
10866
  const DataSourceApiResponse = BaseDataSource.extend({
10701
10867
  integration: BaseIntegration.optional(),
@@ -10784,6 +10950,27 @@ const ListExternalAppsQuery = PaginationQuery.merge(IncludeArchivedQuery).extend
10784
10950
  isFlag: true,
10785
10951
  }),
10786
10952
  });
10953
+ const CreateExternalAppRequest = z.z.object({
10954
+ key: z.z.string().min(1).describe('Machine key (e.g., "attio"). Unique per workspace.'),
10955
+ name: z.z.string().min(1).describe('Human-readable app name (e.g., "Attio").'),
10956
+ appUri: z.z.url().optional().describe('App\'s main URL (e.g., "https://attio.com").'),
10957
+ logoUri: z.z.url().optional(),
10958
+ categories: z.z.array(z.z.string()).optional().describe('[INTERNAL] Categorization tags used by the Universe catalog.'),
10959
+ defaultConnectorId: z.z
10960
+ .string()
10961
+ .optional()
10962
+ .describe('[INTERNAL] Connector ID surfaced as the default for this app in the Universe catalog.'),
10963
+ basePackageId: z.z.string().optional().describe('[INTERNAL] Base package ID this app is derived from.'),
10964
+ hasFreeTestAccount: z.z.boolean().nullable().optional().describe('[INTERNAL] Whether the app has a free test account.'),
10965
+ freeTestAccountGuide: z.z.string().optional().describe('[INTERNAL] Guide for obtaining a free test account.'),
10966
+ freeTestAccountGuideVerifiedAt: z.z.iso
10967
+ .datetime()
10968
+ .nullable()
10969
+ .optional()
10970
+ .describe('[INTERNAL] When the free test account guide was last verified.'),
10971
+ tenantId: z.z.string().optional(),
10972
+ });
10973
+ const UpdateExternalAppRequest = CreateExternalAppRequest.partial();
10787
10974
 
10788
10975
  const ExternalEvent = BaseExternalEvent.extend({
10789
10976
  appliedToIntegrations: AppliedToIntegrations(BaseExternalEvent).optional(),
@@ -10917,7 +11104,7 @@ const FindFlowRunsResponse = z.z.object({
10917
11104
  cursor: z.z.string().optional(),
10918
11105
  });
10919
11106
 
10920
- const CreateIntegrationRequest = IntegrationEditableProperties;
11107
+ const CreateIntegrationRequest = IntegrationEditableProperties.merge(IntentProperties);
10921
11108
  const UpdateIntegrationRequest = IntegrationEditableProperties.partial();
10922
11109
  const FindIntegrationsQuery = z.z
10923
11110
  .object({
@@ -10934,6 +11121,10 @@ const FindIntegrationsQuery = z.z
10934
11121
  .number()
10935
11122
  .optional()
10936
11123
  .describe('Override auto-generate integrations from web search: 1 to enable, 0 to disable'),
11124
+ all: z.z.coerce
11125
+ .number()
11126
+ .optional()
11127
+ .describe('Enable all auto-generation sources (connectors, external apps, web search) regardless of workspace settings or per-source flags'),
10937
11128
  })
10938
11129
  .merge(PaginationQuery)
10939
11130
  .merge(SearchQuery)
@@ -10957,12 +11148,12 @@ const IntegrationApiResponse = BaseIntegration.extend({
10957
11148
  .array(IntegrationAuthOption)
10958
11149
  .optional()
10959
11150
  .describe('[INTERNAL] Deprecated: Use POST /connectors/:id/generate-options instead'),
10960
- });
10961
- const IntegrationListItem = IntegrationApiResponse.extend({
10962
11151
  id: z.z.string().optional(),
10963
11152
  logoUri: z.z.string().optional(),
10964
11153
  appUri: z.z.string().optional(),
11154
+ isConnected: z.z.boolean().optional(),
10965
11155
  });
11156
+ const IntegrationListItem = IntegrationApiResponse;
10966
11157
 
10967
11158
  const PackageElementApi = z.z.object({
10968
11159
  id: z.z.string(),
@@ -11010,7 +11201,6 @@ const CheckpointApiResponse = z.z.object({
11010
11201
  checkpointNumber: z.z.number(),
11011
11202
  snapshot: z.z.record(z.z.string(), z.z.unknown()),
11012
11203
  createdAt: z.z.string(),
11013
- createdBy: z.z.string().optional(),
11014
11204
  metadata: z.z.record(z.z.string(), z.z.unknown()).optional(),
11015
11205
  });
11016
11206
  const CheckpointDiffOperationSchema = z.z.object({
@@ -11342,6 +11532,13 @@ const ListExternalEventLogRecordsQuery = PaginationQuery.extend({
11342
11532
  filterTitle: 'Event Subscription',
11343
11533
  referenceElementType: exports.WorkspaceElementType.ExternalEventSubscription,
11344
11534
  }),
11535
+ externalEventTypeId: z.z
11536
+ .string()
11537
+ .optional()
11538
+ .meta({
11539
+ filterTitle: 'External Event Type',
11540
+ referenceElementType: exports.WorkspaceElementType.ExternalEventType,
11541
+ }),
11345
11542
  status: z.z
11346
11543
  .enum(exports.ExternalEventLogStatus)
11347
11544
  .optional()
@@ -11493,6 +11690,13 @@ const ListExternalEventSubscriptionsQuery = PaginationQuery.merge(IncludeArchive
11493
11690
  externalAppId: z.z.string().optional().meta({
11494
11691
  hidden: true,
11495
11692
  }),
11693
+ externalEventTypeId: z.z
11694
+ .string()
11695
+ .optional()
11696
+ .meta({
11697
+ filterTitle: 'External Event Type',
11698
+ referenceElementType: exports.WorkspaceElementType.ExternalEventType,
11699
+ }),
11496
11700
  status: z.z
11497
11701
  .enum(exports.ExternalEventSubscriptionStatus)
11498
11702
  .optional()
@@ -11500,11 +11704,56 @@ const ListExternalEventSubscriptionsQuery = PaginationQuery.merge(IncludeArchive
11500
11704
  filterTitle: 'Status',
11501
11705
  }),
11502
11706
  });
11707
+ const CreateExternalEventSubscriptionRequest = z.z.object({
11708
+ connectionId: z.z.string(),
11709
+ externalEventTypeId: z.z.string(),
11710
+ });
11503
11711
  const ExternalEventSubscriptionApiResponse = BaseExternalEventSubscription.extend({
11504
11712
  user: BaseCustomer.optional(),
11505
11713
  connection: BaseConnection.optional(),
11506
11714
  integration: BaseIntegration.optional(),
11507
11715
  });
11716
+ const PatchExternalEventSubscriptionRequest = z.z.object({
11717
+ webhookUri: z.z.url().or(z.z.literal('')).optional(),
11718
+ });
11719
+
11720
+ const CreateExternalEventTypeRequest = ExternalEventTypeEditableProperties.extend({
11721
+ name: z.z.string(),
11722
+ });
11723
+ const UpdateExternalEventTypeRequest = ExternalEventTypeEditableProperties;
11724
+ const FindExternalEventTypesQuery = FindIntegrationLevelMembraneInterfaceQuery.extend({
11725
+ isUniversal: zodBooleanCoercion()
11726
+ .optional()
11727
+ .meta({
11728
+ filterTitle: 'Is Universal',
11729
+ isFlag: true,
11730
+ }),
11731
+ externalAppId: z.z
11732
+ .string()
11733
+ .optional()
11734
+ .meta({
11735
+ filterTitle: 'External App',
11736
+ referenceElementType: exports.WorkspaceElementType.App,
11737
+ }),
11738
+ tenantId: z.z
11739
+ .string()
11740
+ .optional()
11741
+ .meta({
11742
+ filterTitle: 'Tenant',
11743
+ referenceElementType: exports.WorkspaceElementType.Customer,
11744
+ }),
11745
+ parentId: z.z
11746
+ .string()
11747
+ .optional()
11748
+ .meta({ hidden: true }),
11749
+ universalParentId: z.z
11750
+ .string()
11751
+ .optional()
11752
+ .meta({ hidden: true }),
11753
+ });
11754
+ const ExternalEventTypeApiResponse = BaseExternalEventType.extend({
11755
+ appliedToIntegrations: AppliedToIntegrations(BaseExternalEventType).optional(),
11756
+ });
11508
11757
 
11509
11758
  const ListAppEventLogRecordsQuery = CommonListElementsQuery.extend({
11510
11759
  tenantId: z.z
@@ -11641,6 +11890,13 @@ const ListIncomingWebhooksQuery = PaginationQuery.extend({
11641
11890
  filterTitle: 'Connection',
11642
11891
  referenceElementType: exports.WorkspaceElementType.Connection,
11643
11892
  }),
11893
+ subscriptionId: z.z
11894
+ .string()
11895
+ .optional()
11896
+ .meta({
11897
+ filterTitle: 'Subscription',
11898
+ referenceElementType: exports.WorkspaceElementType.ExternalEventSubscription,
11899
+ }),
11644
11900
  status: z.z
11645
11901
  .enum(exports.IncomingWebhooksState)
11646
11902
  .optional()
@@ -11971,6 +12227,7 @@ const AI_GATEWAY_SUPPORTED_MODELS = [
11971
12227
  { id: 'anthropic/claude-opus-4.6', name: 'Claude Opus 4.6' },
11972
12228
  { id: 'anthropic/claude-sonnet-4.5', name: 'Claude Sonnet 4.5' },
11973
12229
  { id: 'anthropic/claude-opus-4.5', name: 'Claude Opus 4.5' },
12230
+ { id: 'anthropic/claude-haiku-4.5', name: 'Claude Haiku 4.5' },
11974
12231
  { id: 'openai/gpt-5.2', name: 'GPT-5.2' },
11975
12232
  { id: 'openai/gpt-5-nano', name: 'GPT-5 Nano' },
11976
12233
  { id: 'google/gemini-3-pro-preview', name: 'Gemini 3 Pro' },
@@ -12192,6 +12449,8 @@ const WorkspaceElementSpecs = {
12192
12449
  editablePropertiesSchema: IntegrationEditableProperties,
12193
12450
  exportPropertiesSchema: IntegrationExportProperties,
12194
12451
  hasKey: true,
12452
+ isAgentic: true,
12453
+ agentName: exports.AgentName.CONNECTION_BUILDING,
12195
12454
  relatedIntegrationLayerElements: [
12196
12455
  exports.WorkspaceElementType.Connection,
12197
12456
  exports.WorkspaceElementType.Package,
@@ -12446,8 +12705,8 @@ const WorkspaceElementSpecs = {
12446
12705
  [exports.WorkspaceElementType.AppEventType]: {
12447
12706
  type: exports.WorkspaceElementType.AppEventType,
12448
12707
  apiPath: 'app-event-types',
12449
- name: 'App Event Type',
12450
- namePlural: 'App Event Types',
12708
+ name: 'Internal Event Type',
12709
+ namePlural: 'Internal Event Types',
12451
12710
  isMembraneInterface: true,
12452
12711
  exportPropertiesSchema: AppEventTypeExportProperties,
12453
12712
  editablePropertiesSchema: AppEventTypeEditableProperties,
@@ -12459,8 +12718,8 @@ const WorkspaceElementSpecs = {
12459
12718
  type: exports.WorkspaceElementType.AppEventSubscription,
12460
12719
  apiPath: 'app-event-subscriptions',
12461
12720
  collectionName: 'app-event-subscriptions',
12462
- name: 'App Event Subscription',
12463
- namePlural: 'App Event Subscriptions',
12721
+ name: 'Internal Event Subscription',
12722
+ namePlural: 'Internal Event Subscriptions',
12464
12723
  isMembraneInterface: true,
12465
12724
  isProOnly: true,
12466
12725
  statsKey: 'appEventSubscriptions',
@@ -12468,8 +12727,8 @@ const WorkspaceElementSpecs = {
12468
12727
  [exports.WorkspaceElementType.AppEventLogRecord]: {
12469
12728
  type: exports.WorkspaceElementType.AppEventLogRecord,
12470
12729
  apiPath: 'app-events',
12471
- name: 'App Event Log Record',
12472
- namePlural: 'App Event Log Records',
12730
+ name: 'Internal Event Log Record',
12731
+ namePlural: 'Internal Event Log Records',
12473
12732
  isProOnly: true,
12474
12733
  statsKey: 'appEvents',
12475
12734
  },
@@ -12523,6 +12782,24 @@ const WorkspaceElementSpecs = {
12523
12782
  isProOnly: true,
12524
12783
  statsKey: 'externalEventPulls',
12525
12784
  },
12785
+ [exports.WorkspaceElementType.ExternalEventType]: {
12786
+ type: exports.WorkspaceElementType.ExternalEventType,
12787
+ apiPath: 'external-event-types',
12788
+ collectionName: 'external-event-types',
12789
+ name: 'External Event Type',
12790
+ namePlural: 'External Event Types',
12791
+ isMembraneInterface: true,
12792
+ isIntegrationLevel: true,
12793
+ hasParentChildRelationship: true,
12794
+ parentFieldKey: 'parentId',
12795
+ apiResponseSchema: ExternalEventTypeApiResponse,
12796
+ findQuerySchema: FindExternalEventTypesQuery,
12797
+ editablePropertiesSchema: ExternalEventTypeEditableProperties,
12798
+ exportPropertiesSchema: ExternalEventTypeExportProperties,
12799
+ hasKey: true,
12800
+ hasUuid: true,
12801
+ statsKey: 'externalEventTypes',
12802
+ },
12526
12803
  [exports.WorkspaceElementType.ExternalApiLogRecord]: {
12527
12804
  type: exports.WorkspaceElementType.ExternalApiLogRecord,
12528
12805
  apiPath: 'external-api-logs',
@@ -13567,12 +13844,6 @@ const GenerateWorkspaceAccessTokenRequest = z.z.object({
13567
13844
  const GenerateWorkspaceAccessTokenResponse = z.z.object({
13568
13845
  token: z.z.string().describe('The generated access token'),
13569
13846
  });
13570
- const ListWorkspacesQuery = z.z
13571
- .object({
13572
- orgId: z.z.string().optional().describe('Filter workspaces by organization ID'),
13573
- workspaceKey: z.z.string().optional().describe('Filter workspaces by workspace key'),
13574
- })
13575
- .merge(IncludeArchivedQuery);
13576
13847
  const GetWorkspaceQuery = IncludeArchivedQuery;
13577
13848
  const MembraneCredentials = z.z.object({
13578
13849
  apiUri: z.z.string().describe('Uri for Membrane API'),
@@ -13637,7 +13908,7 @@ function compareWorkspaceExports(baseExport, targetExport, options = { includeDe
13637
13908
  [exports.WorkspaceElementChangeType.UPDATE]: new Set(),
13638
13909
  [exports.WorkspaceElementChangeType.DELETE]: new Set(),
13639
13910
  };
13640
- const baseUuidByTargetUuid = new Map();
13911
+ const sourceUuidByTargetUuid = new Map();
13641
13912
  const diffs = [];
13642
13913
  const integrationMap = buildIntegrationsMap([
13643
13914
  ...(baseExport[exports.WorkspaceElementType.Integration] || []),
@@ -13668,7 +13939,7 @@ function compareWorkspaceExports(baseExport, targetExport, options = { includeDe
13668
13939
  const base = baseMap.get(selector);
13669
13940
  const target = targetMap.get(selector);
13670
13941
  if (base && target && base.element.uuid !== target.element.uuid) {
13671
- baseUuidByTargetUuid.set(target.element.uuid, base.element.uuid);
13942
+ sourceUuidByTargetUuid.set(target.element.uuid, base.element.uuid);
13672
13943
  }
13673
13944
  const change = compareElementExports(base === null || base === void 0 ? void 0 : base.element, target === null || target === void 0 ? void 0 : target.element);
13674
13945
  if (options.includeDeletions === false && (change === null || change === void 0 ? void 0 : change.type) === exports.WorkspaceElementChangeType.DELETE) {
@@ -13688,7 +13959,7 @@ function compareWorkspaceExports(baseExport, targetExport, options = { includeDe
13688
13959
  diffs.push(diff.createTwoFilesPatch(`a/${path}`, `b/${path}`, baseYaml, targetYaml));
13689
13960
  }
13690
13961
  }
13691
- const result = { comparison, changes, baseUuidByTargetUuid };
13962
+ const result = { comparison, changes, sourceUuidByTargetUuid };
13692
13963
  if (options.includeDiff) {
13693
13964
  result.diff = diffs.join('\n').trim();
13694
13965
  }
@@ -13715,6 +13986,64 @@ function compareElementExports(baseElement, targetElement) {
13715
13986
  }
13716
13987
  return undefined;
13717
13988
  }
13989
+ function emptyComparisonResult() {
13990
+ return {
13991
+ comparison: {
13992
+ [exports.WorkspaceElementChangeType.CREATE]: new Set(),
13993
+ [exports.WorkspaceElementChangeType.UPDATE]: new Set(),
13994
+ [exports.WorkspaceElementChangeType.DELETE]: new Set(),
13995
+ },
13996
+ changes: {},
13997
+ sourceUuidByTargetUuid: new Map(),
13998
+ };
13999
+ }
14000
+ function mergeComparisons(dest, src) {
14001
+ for (const changeType of Object.values(exports.WorkspaceElementChangeType)) {
14002
+ for (const uuid of src.comparison[changeType])
14003
+ dest.comparison[changeType].add(uuid);
14004
+ }
14005
+ Object.assign(dest.changes, src.changes);
14006
+ for (const [k, v] of src.sourceUuidByTargetUuid)
14007
+ dest.sourceUuidByTargetUuid.set(k, v);
14008
+ if (src.diff)
14009
+ dest.diff = dest.diff ? `${dest.diff}\n${src.diff}` : src.diff;
14010
+ return dest;
14011
+ }
14012
+ function compareElementMaps(baseElements, targetElements, type, options = { includeDeletions: true }) {
14013
+ const changes = {};
14014
+ const comparison = {
14015
+ [exports.WorkspaceElementChangeType.CREATE]: new Set(),
14016
+ [exports.WorkspaceElementChangeType.UPDATE]: new Set(),
14017
+ [exports.WorkspaceElementChangeType.DELETE]: new Set(),
14018
+ };
14019
+ const sourceUuidByTargetUuid = new Map();
14020
+ const diffs = [];
14021
+ const allPaths = new Set([...baseElements.keys(), ...targetElements.keys()]);
14022
+ for (const path of allPaths) {
14023
+ const base = baseElements.get(path);
14024
+ const target = targetElements.get(path);
14025
+ if (base && target && base.uuid !== target.uuid) {
14026
+ sourceUuidByTargetUuid.set(target.uuid, base.uuid);
14027
+ }
14028
+ const change = compareElementExports(base, target);
14029
+ if (options.includeDeletions === false && (change === null || change === void 0 ? void 0 : change.type) === exports.WorkspaceElementChangeType.DELETE)
14030
+ continue;
14031
+ if (!change)
14032
+ continue;
14033
+ changes[change.uuid] = { elementType: type, path };
14034
+ comparison[change.type].add(change.uuid);
14035
+ if (options.includeDiff) {
14036
+ const baseYaml = base ? yaml__namespace.dump(base, { sortKeys: true }) : '';
14037
+ const targetYaml = target ? yaml__namespace.dump(target, { sortKeys: true }) : '';
14038
+ diffs.push(diff.createTwoFilesPatch(`a/${path}`, `b/${path}`, baseYaml, targetYaml));
14039
+ }
14040
+ }
14041
+ const result = { comparison, changes, sourceUuidByTargetUuid };
14042
+ if (options.includeDiff) {
14043
+ result.diff = diffs.join('\n').trim();
14044
+ }
14045
+ return result;
14046
+ }
13718
14047
  function getIntegrationIdentifier(element, integrationMap) {
13719
14048
  let integrationIdentifier;
13720
14049
  if (element.integrationUuid) {
@@ -13845,6 +14174,10 @@ const Org = z.z.object({
13845
14174
  engineAutoChargeThreshold: z.z.number().optional(),
13846
14175
  engineAutoChargePurchaseAmount: z.z.number().optional(),
13847
14176
  engineAutoChargeMonthlyLimit: z.z.number().optional(),
14177
+ currentUserCanLeave: z.z
14178
+ .boolean()
14179
+ .optional()
14180
+ .describe('[INTERNAL] Whether the current user can leave this org (false if sole admin)'),
13848
14181
  });
13849
14182
  const EngineCreditsProjectionResponse = z.z.object({
13850
14183
  averageDailyUsage: z.z.number(),
@@ -13890,6 +14223,14 @@ const OrgWorkspace = z.z
13890
14223
  featureFlags: z.z.array(z.z.string()).optional().describe('[INTERNAL] Feature flags'),
13891
14224
  logoUri: z.z.string().optional().describe('URI for the workspace logo'),
13892
14225
  membraneInstanceId: z.z.string().optional().describe('[INTERNAL] Membrane instance ID'),
14226
+ operatorLimits: WorkspaceLimitsSchema.optional().describe('[INTERNAL] Operator-set limit overrides stored on the hub. Mirrored to the instance via PUT /workspaces/:key/limits.'),
14227
+ operatorLimitsSyncedAt: zodDateCoercion()
14228
+ .optional()
14229
+ .describe('[INTERNAL] Last time operatorLimits were successfully mirrored to the owning instance.'),
14230
+ operatorLimitsSyncError: z.z
14231
+ .string()
14232
+ .optional()
14233
+ .describe('[INTERNAL] Last error message from a failed mirror attempt; cleared after a successful sync.'),
13893
14234
  })
13894
14235
  .merge(WorkspaceEditableFields);
13895
14236
  const OrgWorkspaceUpdateRequest = z.z
@@ -13938,6 +14279,7 @@ const CreateOrgRequest = z.z.object({
13938
14279
  integrationApps: z.z.string().optional(),
13939
14280
  firstIntegrationUseCase: z.z.string().optional(),
13940
14281
  referralSource: z.z.string().optional(),
14282
+ useCase: z.z.string().max(1024).optional(),
13941
14283
  builder: z.z.array(z.z.enum(['me', 'team'])).optional(),
13942
14284
  stripeCustomerId: z.z.string().optional(),
13943
14285
  signupSource: z.z.string().optional(),
@@ -14180,6 +14522,14 @@ class ElementInstanceAccessor {
14180
14522
  }
14181
14523
  }
14182
14524
 
14525
+ const warned = new Set();
14526
+ function warnDeprecatedOnce(key, message) {
14527
+ if (warned.has(key))
14528
+ return;
14529
+ warned.add(key);
14530
+ console.warn(`[Membrane deprecation] ${message}`);
14531
+ }
14532
+
14183
14533
  class ConnectionLevelElementAccessor {
14184
14534
  constructor(client, connectionSelector, selector, elementKey, query) {
14185
14535
  this.client = client;
@@ -14288,6 +14638,7 @@ class ActionAccessor extends ElementAccessor {
14288
14638
  return await this.options.client.post(this.getPath('reset'));
14289
14639
  }
14290
14640
  async run(input, options) {
14641
+ warnDeprecatedOnce('ActionAccessor.run', 'ActionAccessor.run() is deprecated. Use POST /act with { action: { id } } or { integrationKey, key } instead.');
14291
14642
  const queryParams = options
14292
14643
  ? {
14293
14644
  integrationKey: options.integrationKey,
@@ -14322,6 +14673,7 @@ class ConnectionLevelActionAccessor extends ConnectionLevelElementAccessor {
14322
14673
  this.query = query;
14323
14674
  }
14324
14675
  async run(input) {
14676
+ warnDeprecatedOnce('ConnectionLevelActionAccessor.run', 'ConnectionLevelActionAccessor.run() is deprecated. Use POST /act with { action: { id } } or { integrationKey, key } instead.');
14325
14677
  return this.client.post(this.uri('/run'), input);
14326
14678
  }
14327
14679
  }
@@ -14791,6 +15143,64 @@ async function openIframeWithPost(url, postData, callbacks = {}, { mountTargetSe
14791
15143
  });
14792
15144
  }
14793
15145
 
15146
+ function routeConnectionEventMessage(message, requestId, handlers) {
15147
+ var _a, _b, _c, _d, _e;
15148
+ if (!isConnectionMessagePayload(message))
15149
+ return;
15150
+ if (message.requestId && message.requestId !== requestId)
15151
+ return;
15152
+ if (message.type === 'newConnectionCreated') {
15153
+ (_a = handlers.onSuccess) === null || _a === void 0 ? void 0 : _a.call(handlers, message.connection);
15154
+ (_b = handlers.onTerminal) === null || _b === void 0 ? void 0 : _b.call(handlers);
15155
+ return;
15156
+ }
15157
+ if (message.type === 'newConnectionFailure') {
15158
+ const error = new MembraneError((_c = message.errorData) !== null && _c !== void 0 ? _c : message.error);
15159
+ if (message.connectionId) {
15160
+ error.data.data = { ...error.data.data, connectionId: message.connectionId };
15161
+ }
15162
+ (_d = handlers.onFailure) === null || _d === void 0 ? void 0 : _d.call(handlers, error);
15163
+ (_e = handlers.onTerminal) === null || _e === void 0 ? void 0 : _e.call(handlers);
15164
+ }
15165
+ }
15166
+ function isConnectionMessagePayload(value) {
15167
+ if (!value || typeof value !== 'object')
15168
+ return false;
15169
+ const m = value;
15170
+ return m.source === 'integration.app' && typeof m.type === 'string';
15171
+ }
15172
+ function createConnectionEventsSubscription(options) {
15173
+ const { apiUri, getToken, requestId, handlers } = options;
15174
+ let eventSource = null;
15175
+ let cancelled = false;
15176
+ const close = () => {
15177
+ cancelled = true;
15178
+ eventSource === null || eventSource === void 0 ? void 0 : eventSource.close();
15179
+ eventSource = null;
15180
+ };
15181
+ Promise.resolve(getToken()).then((token) => {
15182
+ if (cancelled)
15183
+ return;
15184
+ const url = urljoin(apiUri, '/sse/connection-events', requestId) + `?token=${encodeURIComponent(token)}`;
15185
+ try {
15186
+ eventSource = new EventSource(url);
15187
+ eventSource.onmessage = (event) => {
15188
+ let data;
15189
+ try {
15190
+ data = JSON.parse(event.data);
15191
+ }
15192
+ catch (_a) {
15193
+ return;
15194
+ }
15195
+ routeConnectionEventMessage(data, requestId, handlers);
15196
+ };
15197
+ eventSource.onerror = close;
15198
+ }
15199
+ catch (_a) { }
15200
+ });
15201
+ return close;
15202
+ }
15203
+
14794
15204
  class DataSourcesAccessor extends ElementListAccessor {
14795
15205
  constructor(client) {
14796
15206
  super(client, 'data-sources');
@@ -15251,6 +15661,9 @@ class ConnectionAccessor {
15251
15661
  async archive() {
15252
15662
  return this.client.delete(`/connections/${this.connectionSelector}`);
15253
15663
  }
15664
+ async restore() {
15665
+ return this.client.post(`/connections/${this.connectionSelector}/restore`);
15666
+ }
15254
15667
  async request(path, data = null) {
15255
15668
  const pathWithoutSlash = path.startsWith('/') ? path.slice(1) : path;
15256
15669
  return this.client.post(`/connections/${this.connectionSelector}/api/${pathWithoutSlash}`, data);
@@ -15362,7 +15775,7 @@ class ConnectionProxy {
15362
15775
  }
15363
15776
  }
15364
15777
  async function createOrUpdateConnection(options) {
15365
- const { client, connectionId, connectionKey, integrationKey, integrationId, connectorId, connectorVersion, name, input, connectorParameters, allowMultipleConnections, authOptionKey, connectionRequestId, apiUri, redirectUri, onPopupClosed, } = options !== null && options !== void 0 ? options : {};
15778
+ const { client, connectionId, connectionKey, integrationKey, integrationId, connectorId, connectorVersion, name, input, connectorParameters, allowMultipleConnections, authOptionKey, connectionRequestId, apiUri, redirectUri, onPopupClosed, lateEvents, } = options !== null && options !== void 0 ? options : {};
15366
15779
  let connectionType = await detectConnectionType(options);
15367
15780
  if (redirectUri) {
15368
15781
  connectionType = ConnectionType.REDIRECT;
@@ -15370,6 +15783,7 @@ async function createOrUpdateConnection(options) {
15370
15783
  const freshToken = await client.getToken();
15371
15784
  const connectPath = 'connect';
15372
15785
  return new Promise((resolve, reject) => {
15786
+ var _a, _b;
15373
15787
  const requestId = simpleUniqueId() + simpleUniqueId();
15374
15788
  const payload = {
15375
15789
  token: freshToken,
@@ -15389,24 +15803,51 @@ async function createOrUpdateConnection(options) {
15389
15803
  redirectUri,
15390
15804
  };
15391
15805
  let cancelCheckInterval;
15392
- const eventHandler = createConnectionEventHandler(requestId, (data) => {
15393
- resolve(data);
15394
- }, (error) => {
15395
- reject(error);
15396
- }, () => {
15397
- cleanup();
15398
- });
15399
- const { stopCrossWindow } = createCrossWindowListener({
15400
- handler: eventHandler,
15401
- });
15402
- const { stopSSE } = createSSEListener({
15806
+ let lateEventsTimeout;
15807
+ let promiseSettled = false;
15808
+ const handlers = {
15809
+ onSuccess: (data) => {
15810
+ var _a;
15811
+ if (promiseSettled) {
15812
+ (_a = lateEvents === null || lateEvents === void 0 ? void 0 : lateEvents.onConnection) === null || _a === void 0 ? void 0 : _a.call(lateEvents, data);
15813
+ }
15814
+ else {
15815
+ promiseSettled = true;
15816
+ resolve(data);
15817
+ }
15818
+ },
15819
+ onFailure: (error) => {
15820
+ var _a;
15821
+ if (promiseSettled) {
15822
+ (_a = lateEvents === null || lateEvents === void 0 ? void 0 : lateEvents.onFailure) === null || _a === void 0 ? void 0 : _a.call(lateEvents, error);
15823
+ }
15824
+ else {
15825
+ promiseSettled = true;
15826
+ reject(error);
15827
+ }
15828
+ },
15829
+ onTerminal: () => cleanup(),
15830
+ };
15831
+ const { stopCrossWindow } = createCrossWindowListener({ requestId, handlers });
15832
+ const stopSSE = createConnectionEventsSubscription({
15403
15833
  apiUri: apiUri,
15834
+ getToken: () => freshToken,
15404
15835
  requestId,
15405
- token: freshToken,
15406
- handler: eventHandler,
15836
+ handlers,
15407
15837
  });
15838
+ if (lateEvents) {
15839
+ lateEventsTimeout = setTimeout(stopSSE, 30 * 60 * 1000);
15840
+ if ((_a = lateEvents.signal) === null || _a === void 0 ? void 0 : _a.aborted) {
15841
+ stopSSE();
15842
+ }
15843
+ else {
15844
+ (_b = lateEvents.signal) === null || _b === void 0 ? void 0 : _b.addEventListener('abort', stopSSE, { once: true });
15845
+ }
15846
+ }
15408
15847
  function cleanup() {
15409
15848
  clearInterval(cancelCheckInterval);
15849
+ if (lateEventsTimeout)
15850
+ clearTimeout(lateEventsTimeout);
15410
15851
  stopCrossWindow();
15411
15852
  stopSSE();
15412
15853
  }
@@ -15464,9 +15905,15 @@ async function createOrUpdateConnection(options) {
15464
15905
  }, 1000);
15465
15906
  cancelCheckInterval = setInterval(() => {
15466
15907
  if (popup === null || popup === void 0 ? void 0 : popup.closed) {
15467
- cleanup();
15468
- onPopupClosed === null || onPopupClosed === void 0 ? void 0 : onPopupClosed();
15469
- resolve(null);
15908
+ clearInterval(cancelCheckInterval);
15909
+ stopCrossWindow();
15910
+ if (!lateEvents)
15911
+ stopSSE();
15912
+ if (!promiseSettled) {
15913
+ promiseSettled = true;
15914
+ onPopupClosed === null || onPopupClosed === void 0 ? void 0 : onPopupClosed();
15915
+ resolve(null);
15916
+ }
15470
15917
  }
15471
15918
  }, 1000);
15472
15919
  }
@@ -15490,60 +15937,17 @@ async function detectConnectionType({ client, authOptionKey, connectorId, connec
15490
15937
  }
15491
15938
  return ConnectionType.POPUP;
15492
15939
  }
15493
- const createConnectionEventHandler = (requestId, onResolve, onReject, onFinally) => {
15494
- return (event) => {
15495
- var _a;
15496
- const message = event.data || {};
15497
- if (message.source == 'integration.app' && (message.requestId == requestId || !message.requestId)) {
15498
- if (message.type == 'newConnectionCreated') {
15499
- onResolve(message.connection);
15500
- }
15501
- if (message.type == 'newConnectionFailure') {
15502
- const error = new MembraneError((_a = message.errorData) !== null && _a !== void 0 ? _a : message.error);
15503
- if (message.connectionId) {
15504
- error.data.data = { ...error.data.data, connectionId: message.connectionId };
15505
- }
15506
- onReject(error);
15507
- }
15508
- onFinally();
15509
- }
15940
+ const createCrossWindowListener = ({ requestId, handlers, }) => {
15941
+ const listener = (event) => {
15942
+ routeConnectionEventMessage(event.data, requestId, handlers);
15510
15943
  };
15511
- };
15512
- const createCrossWindowListener = ({ handler }) => {
15513
- window.addEventListener('message', handler);
15944
+ window.addEventListener('message', listener);
15514
15945
  return {
15515
15946
  stopCrossWindow: () => {
15516
- window.removeEventListener('message', handler);
15947
+ window.removeEventListener('message', listener);
15517
15948
  },
15518
15949
  };
15519
15950
  };
15520
- const createSSEListener = ({ apiUri, requestId, token, handler, }) => {
15521
- const sseUrl = urljoin(apiUri, '/sse/connection-events', requestId) + `?token=${encodeURIComponent(token)}`;
15522
- let eventSource = null;
15523
- const closeSseConnection = () => {
15524
- eventSource === null || eventSource === void 0 ? void 0 : eventSource.close();
15525
- eventSource = null;
15526
- };
15527
- try {
15528
- eventSource = new EventSource(sseUrl);
15529
- eventSource.onmessage = (event) => {
15530
- const eventCopy = {
15531
- ...event,
15532
- data: JSON.parse(event.data),
15533
- };
15534
- handler(eventCopy);
15535
- };
15536
- eventSource.onerror = () => {
15537
- closeSseConnection();
15538
- };
15539
- }
15540
- catch (err) {
15541
- console.error('Error setting up SSE connection:', err);
15542
- }
15543
- return {
15544
- stopSSE: closeSseConnection,
15545
- };
15546
- };
15547
15951
 
15548
15952
  class FlowsAccessor extends ElementListAccessor {
15549
15953
  constructor(client) {
@@ -16036,7 +16440,7 @@ const SessionParameters = z.z.object({
16036
16440
  credentials: SessionCredentials.optional(),
16037
16441
  apiUri: z.z.string().optional(),
16038
16442
  prompt: z.z.string().optional(),
16039
- elementType: z.z.string().optional(),
16443
+ elementType: z.z.enum(exports.WorkspaceElementType).optional(),
16040
16444
  elementId: z.z.string().optional(),
16041
16445
  customerId: z.z.string().optional(),
16042
16446
  opencodeSessionUuid: z.z.string().optional(),
@@ -16060,6 +16464,29 @@ const AsyncRequestTriggerResponse = z.z.object({
16060
16464
  jobId: z.z.string(),
16061
16465
  accessKey: z.z.string(),
16062
16466
  });
16467
+ const ListableAsyncRequestType = z.z.enum(['export-workspace', 'import-workspace']);
16468
+ const AsyncRequestStatusSchema = z.z.nativeEnum(exports.AsyncRequestStatus);
16469
+ const AsyncRequest = z.z.object({
16470
+ id: z.z.string(),
16471
+ requestType: ListableAsyncRequestType,
16472
+ status: AsyncRequestStatusSchema,
16473
+ progress: z.z.number().optional(),
16474
+ result: z.z.record(z.z.string(), z.z.any()).optional(),
16475
+ error: ErrorDataSchema.optional(),
16476
+ meta: z.z.record(z.z.string(), z.z.any()).optional(),
16477
+ createdAt: zodDateCoercion(),
16478
+ startedAt: zodDateCoercion().optional(),
16479
+ completedAt: zodDateCoercion().optional(),
16480
+ });
16481
+ const ListAsyncRequestsQuery = z.z.object({
16482
+ requestType: ListableAsyncRequestType,
16483
+ status: AsyncRequestStatusSchema.optional(),
16484
+ limit: z.z.coerce.number().int().min(1).max(100).default(50),
16485
+ cursor: z.z.coerce.number().int().min(0).optional(),
16486
+ });
16487
+ const ListAsyncRequestsResponse = z.z.object({
16488
+ items: z.z.array(AsyncRequest),
16489
+ });
16063
16490
 
16064
16491
  const SelfHostingToken = z.z.object({
16065
16492
  id: z.z.string(),
@@ -16086,33 +16513,6 @@ const ValidateSelfHostingTokenResponse = z.z.object({
16086
16513
  orgName: z.z.string().optional(),
16087
16514
  });
16088
16515
 
16089
- const CLIENT_TOKEN_GRANT_TYPES = ['mcp-oauth', 'cli-oauth', 'agent-session', 'api'];
16090
- const ClientTokenGrantType = z.z.enum(CLIENT_TOKEN_GRANT_TYPES);
16091
- const ClientToken = z.z.object({
16092
- id: z.z.string(),
16093
- workspaceId: z.z.string().optional(),
16094
- platformUserId: z.z.string().optional(),
16095
- tenantId: z.z.string().optional(),
16096
- grantType: ClientTokenGrantType,
16097
- grantId: z.z.string().optional(),
16098
- grantName: z.z.string().optional(),
16099
- connectedProductId: z.z.string().optional(),
16100
- createdAt: z.z.string(),
16101
- });
16102
- const CreateClientTokenResponse = ClientToken.extend({
16103
- accessToken: z.z.string(),
16104
- });
16105
- const CreateClientTokenRequest = z.z.object({
16106
- grantType: ClientTokenGrantType,
16107
- grantId: z.z.string(),
16108
- grantName: z.z.string(),
16109
- tenantId: z.z.string().optional(),
16110
- clientKey: z.z.string().optional(),
16111
- });
16112
- const ClientTokenListResponse = z.z.object({
16113
- items: z.z.array(ClientToken),
16114
- });
16115
-
16116
16516
  const MEMBRANE_CLI_CLIENT_ID = 'membrane-cli';
16117
16517
  const OAUTH_TOKEN_TYPE_PLATFORM_USER = 'platform-user';
16118
16518
  const OAUTH_TOKEN_TYPE_TENANT = 'tenant';
@@ -16122,6 +16522,20 @@ const OAUTH_TOKEN_TYPES = [
16122
16522
  OAUTH_TOKEN_TYPE_TENANT,
16123
16523
  OAUTH_TOKEN_TYPE_CONNECTION,
16124
16524
  ];
16525
+ const AuthContextSettings = z.z.object({
16526
+ defaultWorkspaceKey: z.z.string().optional(),
16527
+ defaultTenantKey: z.z.string().optional(),
16528
+ connectionId: z.z.string().optional(),
16529
+ });
16530
+ const PatchTokenSettingsRequest = z.z.object({
16531
+ settings: z.z
16532
+ .object({
16533
+ defaultWorkspaceKey: z.z.string().nullable().optional(),
16534
+ defaultTenantKey: z.z.string().nullable().optional(),
16535
+ connectionId: z.z.string().nullable().optional(),
16536
+ })
16537
+ .optional(),
16538
+ });
16125
16539
  const OAuthTokenResponse = z.z.object({
16126
16540
  access_token: z.z.string(),
16127
16541
  token_type: z.z.string(),
@@ -16133,6 +16547,51 @@ const OAuthTokenResponse = z.z.object({
16133
16547
  org_id: z.z.string().optional(),
16134
16548
  });
16135
16549
 
16550
+ const PLATFORM_USER_TOKEN_GRANT_TYPES = ['cli-oauth'];
16551
+ const PlatformUserTokenGrantType = z.z.enum(PLATFORM_USER_TOKEN_GRANT_TYPES);
16552
+ const PlatformUserToken = z.z.object({
16553
+ id: z.z.string(),
16554
+ platformUserId: z.z.string(),
16555
+ grantType: PlatformUserTokenGrantType,
16556
+ grantId: z.z.string().optional(),
16557
+ grantName: z.z.string().optional(),
16558
+ settings: AuthContextSettings.optional(),
16559
+ createdAt: z.z.string(),
16560
+ lastUsedDate: z.z.string().optional(),
16561
+ });
16562
+ const PlatformUserTokenListResponse = z.z.object({
16563
+ items: z.z.array(PlatformUserToken),
16564
+ });
16565
+
16566
+ const WORKSPACE_TOKEN_GRANT_TYPES = ['mcp-oauth', 'agent-session', 'api'];
16567
+ const WorkspaceTokenGrantType = z.z.enum(WORKSPACE_TOKEN_GRANT_TYPES);
16568
+ const WorkspaceToken = z.z.object({
16569
+ id: z.z.string(),
16570
+ workspaceId: z.z.string(),
16571
+ tenantId: z.z.string().optional(),
16572
+ platformUserId: z.z.string().optional(),
16573
+ grantType: WorkspaceTokenGrantType,
16574
+ grantId: z.z.string().optional(),
16575
+ grantName: z.z.string().optional(),
16576
+ connectedProductId: z.z.string().optional(),
16577
+ settings: AuthContextSettings.optional(),
16578
+ createdAt: z.z.string(),
16579
+ lastUsedDate: z.z.string().optional(),
16580
+ });
16581
+ const CreateWorkspaceTokenResponse = WorkspaceToken.extend({
16582
+ accessToken: z.z.string(),
16583
+ });
16584
+ const CreateWorkspaceTokenRequest = z.z.object({
16585
+ grantType: WorkspaceTokenGrantType,
16586
+ grantId: z.z.string(),
16587
+ grantName: z.z.string(),
16588
+ tenantId: z.z.string().optional(),
16589
+ clientKey: z.z.string().optional(),
16590
+ });
16591
+ const WorkspaceTokenListResponse = z.z.object({
16592
+ items: z.z.array(WorkspaceToken),
16593
+ });
16594
+
16136
16595
  const CONSOLE_ACCOUNT_API_TOKEN_PATH = 'settings/account/api-token';
16137
16596
 
16138
16597
  const PendingQueueCountSchema = z.z.object({
@@ -16185,6 +16644,8 @@ const membraneInstanceInfraFields = {
16185
16644
  helmValuesPath: z.z.url().optional(),
16186
16645
  awsAccountName: z.z.string().optional(),
16187
16646
  awsSsoUrl: z.z.url().optional(),
16647
+ sentryConsoleProjectId: z.z.string().optional(),
16648
+ sentryApiProjectId: z.z.string().optional(),
16188
16649
  };
16189
16650
  const MembraneInstanceAdmin = MembraneInstance.extend({
16190
16651
  ...membraneInstanceInfraFields,
@@ -16211,6 +16672,8 @@ const UpdateMembraneInstanceRequest = z.z
16211
16672
  helmValuesPath: z.z.url().nullable().optional(),
16212
16673
  awsAccountName: z.z.string().nullable().optional(),
16213
16674
  awsSsoUrl: z.z.url().nullable().optional(),
16675
+ sentryConsoleProjectId: z.z.string().nullable().optional(),
16676
+ sentryApiProjectId: z.z.string().nullable().optional(),
16214
16677
  })
16215
16678
  .strict();
16216
16679
  const ListMembraneInstancesQuery = PaginationQuery.extend({
@@ -16764,6 +17227,7 @@ exports.AccountResponse = AccountResponse;
16764
17227
  exports.ActApiDispatch = ActApiDispatch;
16765
17228
  exports.ActRequest = ActRequest;
16766
17229
  exports.ActionAccessor = ActionAccessor;
17230
+ exports.ActionApiPayload = ActionApiPayload;
16767
17231
  exports.ActionApiResponse = ActionApiResponse;
16768
17232
  exports.ActionDependency = ActionDependency;
16769
17233
  exports.ActionEditableProperties = ActionEditableProperties;
@@ -16776,6 +17240,7 @@ exports.ActionRunError = ActionRunError;
16776
17240
  exports.ActionRunLogRecordApiResponse = ActionRunLogRecordApiResponse;
16777
17241
  exports.ActionRunResponse = ActionRunResponse;
16778
17242
  exports.ActionRunsStatsQuery = ActionRunsStatsQuery;
17243
+ exports.ActionSnapshot = ActionSnapshot;
16779
17244
  exports.ActionsAccessor = ActionsAccessor;
16780
17245
  exports.ActivityLogRecord = ActivityLogRecord;
16781
17246
  exports.ActivityStatsQuery = ActivityStatsQuery;
@@ -16810,8 +17275,11 @@ exports.AppEventTypeExportProperties = AppEventTypeExportProperties;
16810
17275
  exports.AppEventTypesAccessor = AppEventTypesAccessor;
16811
17276
  exports.AppSchema = AppSchema;
16812
17277
  exports.AppliedToIntegrations = AppliedToIntegrations;
17278
+ exports.AsyncRequest = AsyncRequest;
17279
+ exports.AsyncRequestStatusSchema = AsyncRequestStatusSchema;
16813
17280
  exports.AsyncRequestTriggerResponse = AsyncRequestTriggerResponse;
16814
17281
  exports.AuthContextPermissionsSchema = AuthContextPermissionsSchema;
17282
+ exports.AuthContextSettings = AuthContextSettings;
16815
17283
  exports.BackwardCompatibleDataSourceEditableProperties = BackwardCompatibleDataSourceEditableProperties;
16816
17284
  exports.BadRequestError = BadRequestError;
16817
17285
  exports.BaseAction = BaseAction;
@@ -16830,10 +17298,12 @@ exports.BaseDataLinkTable = BaseDataLinkTable;
16830
17298
  exports.BaseDataLinkTableInstance = BaseDataLinkTableInstance;
16831
17299
  exports.BaseDataSource = BaseDataSource;
16832
17300
  exports.BaseDataSourceInstance = BaseDataSourceInstance;
17301
+ exports.BaseExportProperties = BaseExportProperties;
16833
17302
  exports.BaseExternalEvent = BaseExternalEvent;
16834
17303
  exports.BaseExternalEventLogRecord = BaseExternalEventLogRecord;
16835
17304
  exports.BaseExternalEventPull = BaseExternalEventPull;
16836
17305
  exports.BaseExternalEventSubscription = BaseExternalEventSubscription;
17306
+ exports.BaseExternalEventType = BaseExternalEventType;
16837
17307
  exports.BaseFieldMapping = BaseFieldMapping;
16838
17308
  exports.BaseFieldMappingInstance = BaseFieldMappingInstance;
16839
17309
  exports.BaseFlow = BaseFlow;
@@ -16852,7 +17322,6 @@ exports.BaseOrgUser = BaseOrgUser;
16852
17322
  exports.BasePackage = BasePackage;
16853
17323
  exports.BaseScreen = BaseScreen;
16854
17324
  exports.BaseWorkspaceElement = BaseWorkspaceElement;
16855
- exports.CLIENT_TOKEN_GRANT_TYPES = CLIENT_TOKEN_GRANT_TYPES;
16856
17325
  exports.CONNECTION_REQUEST_ID_PARAM = CONNECTION_REQUEST_ID_PARAM;
16857
17326
  exports.CONNECTION_REQUEST_SCREEN_PATH = CONNECTION_REQUEST_SCREEN_PATH;
16858
17327
  exports.CONNECTOR_AUTH_TYPES = CONNECTOR_AUTH_TYPES;
@@ -16869,9 +17338,6 @@ exports.CONSOLE_ACCOUNT_API_TOKEN_PATH = CONSOLE_ACCOUNT_API_TOKEN_PATH;
16869
17338
  exports.CheckpointApiResponse = CheckpointApiResponse;
16870
17339
  exports.CheckpointDiffOperationSchema = CheckpointDiffOperationSchema;
16871
17340
  exports.CheckpointDiffResponseSchema = CheckpointDiffResponseSchema;
16872
- exports.ClientToken = ClientToken;
16873
- exports.ClientTokenGrantType = ClientTokenGrantType;
16874
- exports.ClientTokenListResponse = ClientTokenListResponse;
16875
17341
  exports.CommonFindElementsQuery = CommonFindElementsQuery;
16876
17342
  exports.CommonFindInstancesQuery = CommonFindInstancesQuery;
16877
17343
  exports.CommonInstancesListQuery = CommonInstancesListQuery;
@@ -16891,6 +17357,7 @@ exports.ConnectionAttemptLogApiResponse = ConnectionAttemptLogApiResponse;
16891
17357
  exports.ConnectionClientAction = ConnectionClientAction;
16892
17358
  exports.ConnectionDataCollectionAccessor = ConnectionDataCollectionAccessor;
16893
17359
  exports.ConnectionEditableProperties = ConnectionEditableProperties;
17360
+ exports.ConnectionEntityMessagePayload = ConnectionEntityMessagePayload;
16894
17361
  exports.ConnectionError = ConnectionError;
16895
17362
  exports.ConnectionExportProperties = ConnectionExportProperties;
16896
17363
  exports.ConnectionLevelActionAccessor = ConnectionLevelActionAccessor;
@@ -16954,8 +17421,6 @@ exports.CreateActionInstanceRequest = CreateActionInstanceRequest;
16954
17421
  exports.CreateActionRequest = CreateActionRequest;
16955
17422
  exports.CreateAgentSession = CreateAgentSession;
16956
17423
  exports.CreateAlert = CreateAlert;
16957
- exports.CreateClientTokenRequest = CreateClientTokenRequest;
16958
- exports.CreateClientTokenResponse = CreateClientTokenResponse;
16959
17424
  exports.CreateConnectedProductRequest = CreateConnectedProductRequest;
16960
17425
  exports.CreateConnectionRequest = CreateConnectionRequest;
16961
17426
  exports.CreateConnectionRequestPayload = CreateConnectionRequestPayload;
@@ -16964,6 +17429,9 @@ exports.CreateCustomerRequest = CreateCustomerRequest;
16964
17429
  exports.CreateDataLinkTableRequest = CreateDataLinkTableRequest;
16965
17430
  exports.CreateDataSourceInstanceRequest = CreateDataSourceInstanceRequest;
16966
17431
  exports.CreateDataSourceRequest = CreateDataSourceRequest;
17432
+ exports.CreateExternalAppRequest = CreateExternalAppRequest;
17433
+ exports.CreateExternalEventSubscriptionRequest = CreateExternalEventSubscriptionRequest;
17434
+ exports.CreateExternalEventTypeRequest = CreateExternalEventTypeRequest;
16967
17435
  exports.CreateFieldMappingInstanceRequest = CreateFieldMappingInstanceRequest;
16968
17436
  exports.CreateFieldMappingRequest = CreateFieldMappingRequest;
16969
17437
  exports.CreateFlowNodeRequest = CreateFlowNodeRequest;
@@ -16980,6 +17448,8 @@ exports.CreateScreenRequest = CreateScreenRequest;
16980
17448
  exports.CreateSelfHostingTokenRequest = CreateSelfHostingTokenRequest;
16981
17449
  exports.CreateSelfHostingTokenResponse = CreateSelfHostingTokenResponse;
16982
17450
  exports.CreateWorkspaceRequest = CreateWorkspaceRequest;
17451
+ exports.CreateWorkspaceTokenRequest = CreateWorkspaceTokenRequest;
17452
+ exports.CreateWorkspaceTokenResponse = CreateWorkspaceTokenResponse;
16983
17453
  exports.CustomCodeError = CustomCodeError;
16984
17454
  exports.CustomerAccessor = CustomerAccessor;
16985
17455
  exports.CustomerApiResponse = CustomerApiResponse;
@@ -17076,6 +17546,7 @@ exports.DependencyError = DependencyError;
17076
17546
  exports.DomainFromEmail = DomainFromEmail;
17077
17547
  exports.DownstreamFlowNodeRunSchema = DownstreamFlowNodeRunSchema;
17078
17548
  exports.EDITABLE_LIMITS = EDITABLE_LIMITS;
17549
+ exports.EXTERNAL_EVENT_TYPE_FUNCTION_KEYS = EXTERNAL_EVENT_TYPE_FUNCTION_KEYS;
17079
17550
  exports.ElementAccessor = ElementAccessor;
17080
17551
  exports.ElementInstanceAccessor = ElementInstanceAccessor;
17081
17552
  exports.ElementInstanceListAccessor = ElementInstanceListAccessor;
@@ -17095,6 +17566,9 @@ exports.ExternalEventSubscriptionAccessor = ExternalEventSubscriptionAccessor;
17095
17566
  exports.ExternalEventSubscriptionApiResponse = ExternalEventSubscriptionApiResponse;
17096
17567
  exports.ExternalEventSubscriptionConfig = ExternalEventSubscriptionConfig;
17097
17568
  exports.ExternalEventSubscriptionsAccessor = ExternalEventSubscriptionsAccessor;
17569
+ exports.ExternalEventTypeApiResponse = ExternalEventTypeApiResponse;
17570
+ exports.ExternalEventTypeEditableProperties = ExternalEventTypeEditableProperties;
17571
+ exports.ExternalEventTypeExportProperties = ExternalEventTypeExportProperties;
17098
17572
  exports.ExternalEventUnitConfig = ExternalEventUnitConfig;
17099
17573
  exports.FLOW_NODE_SPECS = FLOW_NODE_SPECS;
17100
17574
  exports.FieldMappingAccessor = FieldMappingAccessor;
@@ -17134,6 +17608,7 @@ exports.FindDataSourceInstancesQuery = FindDataSourceInstancesQuery;
17134
17608
  exports.FindDataSourceSyncsQuery = FindDataSourceSyncsQuery;
17135
17609
  exports.FindDataSourcesQuery = FindDataSourcesQuery;
17136
17610
  exports.FindExternalEventPullsQuery = FindExternalEventPullsQuery;
17611
+ exports.FindExternalEventTypesQuery = FindExternalEventTypesQuery;
17137
17612
  exports.FindFieldMappingInstancesQuery = FindFieldMappingInstancesQuery;
17138
17613
  exports.FindFieldMappingsQuery = FindFieldMappingsQuery;
17139
17614
  exports.FindFlowInstancesQuery = FindFlowInstancesQuery;
@@ -17225,6 +17700,9 @@ exports.JavascriptFunction = JavascriptFunction;
17225
17700
  exports.JsonataFormula = JsonataFormula;
17226
17701
  exports.ListActionInstancesForConnectionQuery = ListActionInstancesForConnectionQuery;
17227
17702
  exports.ListAppEventLogRecordsQuery = ListAppEventLogRecordsQuery;
17703
+ exports.ListAsyncRequestsQuery = ListAsyncRequestsQuery;
17704
+ exports.ListAsyncRequestsResponse = ListAsyncRequestsResponse;
17705
+ exports.ListConnectorsQuery = ListConnectorsQuery;
17228
17706
  exports.ListDataSourceInstancesForConnectionQuery = ListDataSourceInstancesForConnectionQuery;
17229
17707
  exports.ListExternalApiLogsQuery = ListExternalApiLogsQuery;
17230
17708
  exports.ListExternalAppsQuery = ListExternalAppsQuery;
@@ -17239,7 +17717,7 @@ exports.ListOrgWorkspacesQuery = ListOrgWorkspacesQuery;
17239
17717
  exports.ListOrgWorkspacesResponse = ListOrgWorkspacesResponse;
17240
17718
  exports.ListPublicConnectorsQuery = ListPublicConnectorsQuery;
17241
17719
  exports.ListPublicPackagesQuery = ListPublicPackagesQuery;
17242
- exports.ListWorkspacesQuery = ListWorkspacesQuery;
17720
+ exports.ListableAsyncRequestType = ListableAsyncRequestType;
17243
17721
  exports.MEMBRANE_CLI_CLIENT_ID = MEMBRANE_CLI_CLIENT_ID;
17244
17722
  exports.MEMBRANE_ELEMENT_CONFIG_FILE_NAME = MEMBRANE_ELEMENT_CONFIG_FILE_NAME;
17245
17723
  exports.MEMBRANE_SESSION_ID_HEADER = MEMBRANE_SESSION_ID_HEADER;
@@ -17283,6 +17761,7 @@ exports.OrgWorkspaceUser = OrgWorkspaceUser;
17283
17761
  exports.PACKAGE_VERSION_DEVELOPMENT = PACKAGE_VERSION_DEVELOPMENT;
17284
17762
  exports.PACKAGE_VERSION_LATEST = PACKAGE_VERSION_LATEST;
17285
17763
  exports.PARALLEL_EXECUTION_LIMITS = PARALLEL_EXECUTION_LIMITS;
17764
+ exports.PLATFORM_USER_TOKEN_GRANT_TYPES = PLATFORM_USER_TOKEN_GRANT_TYPES;
17286
17765
  exports.PackageAccessor = PackageAccessor;
17287
17766
  exports.PackageApiResponse = PackageApiResponse;
17288
17767
  exports.PackageCalculatedProperties = PackageCalculatedProperties;
@@ -17298,13 +17777,19 @@ exports.PaginationQuery = PaginationQuery;
17298
17777
  exports.PaginationResponse = PaginationResponse;
17299
17778
  exports.PatchAgentSessionSchema = PatchAgentSessionSchema;
17300
17779
  exports.PatchConnectionRequestPayload = PatchConnectionRequestPayload;
17780
+ exports.PatchExternalEventSubscriptionRequest = PatchExternalEventSubscriptionRequest;
17781
+ exports.PatchTokenSettingsRequest = PatchTokenSettingsRequest;
17301
17782
  exports.PatchUserWorkspaceSettings = PatchUserWorkspaceSettings;
17302
17783
  exports.PendingQueueCountSchema = PendingQueueCountSchema;
17303
17784
  exports.PendingTasksSummarySchema = PendingTasksSummarySchema;
17304
17785
  exports.PlatformUser = PlatformUser;
17786
+ exports.PlatformUserToken = PlatformUserToken;
17787
+ exports.PlatformUserTokenGrantType = PlatformUserTokenGrantType;
17788
+ exports.PlatformUserTokenListResponse = PlatformUserTokenListResponse;
17305
17789
  exports.RATE_LIMITS = RATE_LIMITS;
17306
17790
  exports.REFERENCE_ELEMENT_TYPE_SELF = REFERENCE_ELEMENT_TYPE_SELF;
17307
17791
  exports.RateLimitExceededError = RateLimitExceededError;
17792
+ exports.RemoteConnectorCodeUnavailableError = RemoteConnectorCodeUnavailableError;
17308
17793
  exports.RequestMappingSchema = RequestMappingSchema;
17309
17794
  exports.ResetFlowInstanceOptions = ResetFlowInstanceOptions;
17310
17795
  exports.RestApiMappingFunction = RestApiMappingFunction;
@@ -17343,6 +17828,8 @@ exports.UpdateCustomerRequest = UpdateCustomerRequest;
17343
17828
  exports.UpdateDataLinkTableRequest = UpdateDataLinkTableRequest;
17344
17829
  exports.UpdateDataSourceInstanceRequest = UpdateDataSourceInstanceRequest;
17345
17830
  exports.UpdateDataSourceRequest = UpdateDataSourceRequest;
17831
+ exports.UpdateExternalAppRequest = UpdateExternalAppRequest;
17832
+ exports.UpdateExternalEventTypeRequest = UpdateExternalEventTypeRequest;
17346
17833
  exports.UpdateFieldMappingInstanceRequest = UpdateFieldMappingInstanceRequest;
17347
17834
  exports.UpdateFieldMappingRequest = UpdateFieldMappingRequest;
17348
17835
  exports.UpdateFlowRequest = UpdateFlowRequest;
@@ -17365,6 +17852,7 @@ exports.WORKSPACE_DATABASE_RECORD_COLLECTIONS = WORKSPACE_DATABASE_RECORD_COLLEC
17365
17852
  exports.WORKSPACE_ELEMENTS_STATS_COLLECTIONS = WORKSPACE_ELEMENTS_STATS_COLLECTIONS;
17366
17853
  exports.WORKSPACE_ELEMENT_COLLECTIONS = WORKSPACE_ELEMENT_COLLECTIONS;
17367
17854
  exports.WORKSPACE_SIZE_LIMITS = WORKSPACE_SIZE_LIMITS;
17855
+ exports.WORKSPACE_TOKEN_GRANT_TYPES = WORKSPACE_TOKEN_GRANT_TYPES;
17368
17856
  exports.Workspace = Workspace;
17369
17857
  exports.WorkspaceEditableFields = WorkspaceEditableFields;
17370
17858
  exports.WorkspaceElementSearchQuery = WorkspaceElementSearchQuery;
@@ -17375,6 +17863,9 @@ exports.WorkspaceLimitsSchema = WorkspaceLimitsSchema;
17375
17863
  exports.WorkspaceOnboardingData = WorkspaceOnboardingData;
17376
17864
  exports.WorkspacePublicKey = WorkspacePublicKey;
17377
17865
  exports.WorkspaceSettingsSchema = WorkspaceSettingsSchema;
17866
+ exports.WorkspaceToken = WorkspaceToken;
17867
+ exports.WorkspaceTokenGrantType = WorkspaceTokenGrantType;
17868
+ exports.WorkspaceTokenListResponse = WorkspaceTokenListResponse;
17378
17869
  exports.WritableConnectorVersionData = WritableConnectorVersionData;
17379
17870
  exports.WritablePackageVersionData = WritablePackageVersionData;
17380
17871
  exports.WriteableConnectorFields = WriteableConnectorFields;
@@ -17384,11 +17875,14 @@ exports.addRequiredFieldsToSchema = addRequiredFieldsToSchema;
17384
17875
  exports.addUdmFallbackFields = addUdmFallbackFields;
17385
17876
  exports.addUndefinedWriteableProperties = addUndefinedWriteableProperties;
17386
17877
  exports.backwardCompatibleFilterMatch = backwardCompatibleFilterMatch;
17878
+ exports.buildActionSnapshot = buildActionSnapshot;
17387
17879
  exports.buildData = buildData;
17388
17880
  exports.buildDataSchema = buildDataSchema;
17389
17881
  exports.buildValue = buildValue;
17882
+ exports.compareElementMaps = compareElementMaps;
17390
17883
  exports.compareWorkspaceExports = compareWorkspaceExports;
17391
17884
  exports.compressDataSchema = compressDataSchema;
17885
+ exports.configToNamedPayload = configToNamedPayload;
17392
17886
  exports.createCompoundSchema = createCompoundSchema;
17393
17887
  exports.createFlowInstanceSchema = createFlowInstanceSchema;
17394
17888
  exports.createObjectFromLocators = createObjectFromLocators;
@@ -17398,6 +17892,7 @@ exports.createSchema = createSchema;
17398
17892
  exports.dataCollectionEventTypeToExternalEventType = dataCollectionEventTypeToExternalEventType;
17399
17893
  exports.dataLocationParametersMatch = dataLocationParametersMatch;
17400
17894
  exports.doesMatchFilter = doesMatchFilter;
17895
+ exports.emptyComparisonResult = emptyComparisonResult;
17401
17896
  exports.excludeFieldsFromSchema = excludeFieldsFromSchema;
17402
17897
  exports.excludeFieldsFromValue = excludeFieldsFromValue;
17403
17898
  exports.excludeReadOnlyFieldsFromSchema = excludeReadOnlyFieldsFromSchema;
@@ -17499,6 +17994,7 @@ exports.makeDataLocationPath = makeDataLocationPath;
17499
17994
  exports.makeDataRecordSchema = makeDataRecordSchema;
17500
17995
  exports.makeObjectPropertyLocator = makeObjectPropertyLocator;
17501
17996
  exports.makeSchemaForLocator = makeSchemaForLocator;
17997
+ exports.mergeComparisons = mergeComparisons;
17502
17998
  exports.mergeSchemas = mergeSchemas;
17503
17999
  exports.mergeWithFormulas = mergeWithFormulas;
17504
18000
  exports.nonEmptyObjectProperties = nonEmptyObjectProperties;