svix 2.4.0 → 2.6.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 (58) hide show
  1. package/dist/index.d.mts +245 -81
  2. package/dist/index.d.mts.map +1 -1
  3. package/dist/index.mjs +261 -119
  4. package/dist/index.mjs.map +1 -1
  5. package/package.json +1 -1
  6. package/src/api/autoconfigSubscription.ts +53 -0
  7. package/src/api/endpoint.ts +39 -0
  8. package/src/api/eventType.ts +4 -1
  9. package/src/api/message.ts +6 -3
  10. package/src/api/messageAttempt.ts +6 -3
  11. package/src/api_internal/autoconfigSubscription.ts +40 -0
  12. package/src/api_internal/{destinationAutoconfig.ts → autoconfigSubscriptionDestination.ts} +1 -1
  13. package/src/api_internal/{endpointAutoconfig.ts → autoconfigSubscriptionEndpoint.ts} +1 -24
  14. package/src/api_internal/endpoint.ts +0 -5
  15. package/src/autoconfig.ts +2 -1
  16. package/src/autoconfigConsumer.ts +4 -4
  17. package/src/index.ts +5 -0
  18. package/src/models/appPortalAccessIn.ts +4 -2
  19. package/src/models/appUsageStatsOut.ts +7 -7
  20. package/src/models/applicationTokenExpireIn.ts +2 -1
  21. package/src/models/autoConfigOut.ts +27 -0
  22. package/src/models/autoConfigSubscriptionOut.ts +1 -0
  23. package/src/models/azureBlobStorageConfigIn.ts +2 -1
  24. package/src/models/clickhouseConfigIn.ts +4 -2
  25. package/src/models/createStreamEventsIn.ts +2 -1
  26. package/src/models/destinationIn.ts +14 -5
  27. package/src/models/endpointAttemptStats.ts +25 -0
  28. package/src/models/endpointMessageOut.ts +4 -1
  29. package/src/models/endpointSecretRotateIn.ts +2 -1
  30. package/src/models/eventBridgeConfigIn.ts +16 -3
  31. package/src/models/eventBridgeConfigOut.ts +7 -1
  32. package/src/models/eventBridgeConfigPatch.ts +6 -0
  33. package/src/models/eventTypeImportOpenApiIn.ts +3 -1
  34. package/src/models/index.ts +3 -0
  35. package/src/models/ingestEndpointSecretIn.ts +2 -1
  36. package/src/models/ingestSourceConsumerPortalAccessIn.ts +2 -1
  37. package/src/models/messageIn.ts +12 -4
  38. package/src/models/operationalWebhookEndpointSecretIn.ts +2 -1
  39. package/src/models/postgresConfigIn.ts +7 -3
  40. package/src/models/rabbitMqConfigOut.ts +3 -0
  41. package/src/models/redshiftConfigIn.ts +18 -4
  42. package/src/models/redshiftConfigOut.ts +7 -1
  43. package/src/models/redshiftConfigPatch.ts +6 -0
  44. package/src/models/rotatePollerTokenIn.ts +2 -1
  45. package/src/models/rotateSubscriptionIn2.ts +29 -0
  46. package/src/models/s3ConfigIn.ts +2 -1
  47. package/src/models/snowflakeConfigIn.ts +8 -3
  48. package/src/models/snsConfigIn.ts +16 -3
  49. package/src/models/snsConfigOut.ts +7 -1
  50. package/src/models/snsConfigPatch.ts +6 -0
  51. package/src/models/sqsConfigIn.ts +16 -3
  52. package/src/models/sqsConfigOut.ts +7 -1
  53. package/src/models/sqsConfigPatch.ts +6 -0
  54. package/src/models/streamPortalAccessIn.ts +4 -2
  55. package/src/models/streamSinkIn.ts +6 -2
  56. package/src/models/streamTokenExpireIn.ts +2 -1
  57. package/src/request.ts +1 -1
  58. package/src/api_internal/destination.ts +0 -12
@@ -3,7 +3,9 @@
3
3
  export interface EventBridgeConfigOut {
4
4
  eventBusName: string;
5
5
  detailType: string;
6
- accessKeyId: string;
6
+ accessKeyId?: string | null;
7
+ roleArn?: string | null;
8
+ externalId?: string | null;
7
9
  region: string;
8
10
  }
9
11
 
@@ -13,6 +15,8 @@ export const EventBridgeConfigOutSerializer = {
13
15
  eventBusName: object["eventBusName"],
14
16
  detailType: object["detailType"],
15
17
  accessKeyId: object["accessKeyId"],
18
+ roleArn: object["roleArn"],
19
+ externalId: object["externalId"],
16
20
  region: object["region"],
17
21
  };
18
22
  },
@@ -22,6 +26,8 @@ export const EventBridgeConfigOutSerializer = {
22
26
  eventBusName: self.eventBusName,
23
27
  detailType: self.detailType,
24
28
  accessKeyId: self.accessKeyId,
29
+ roleArn: self.roleArn,
30
+ externalId: self.externalId,
25
31
  region: self.region,
26
32
  };
27
33
  },
@@ -5,6 +5,8 @@ export interface EventBridgeConfigPatch {
5
5
  detailType?: string;
6
6
  accessKeyId?: string;
7
7
  secretAccessKey?: string;
8
+ roleArn?: string;
9
+ externalId?: string;
8
10
  region?: string;
9
11
  }
10
12
 
@@ -15,6 +17,8 @@ export const EventBridgeConfigPatchSerializer = {
15
17
  detailType: object["detailType"],
16
18
  accessKeyId: object["accessKeyId"],
17
19
  secretAccessKey: object["secretAccessKey"],
20
+ roleArn: object["roleArn"],
21
+ externalId: object["externalId"],
18
22
  region: object["region"],
19
23
  };
20
24
  },
@@ -25,6 +29,8 @@ export const EventBridgeConfigPatchSerializer = {
25
29
  detailType: self.detailType,
26
30
  accessKeyId: self.accessKeyId,
27
31
  secretAccessKey: self.secretAccessKey,
32
+ roleArn: self.roleArn,
33
+ externalId: self.externalId,
28
34
  region: self.region,
29
35
  };
30
36
  },
@@ -3,7 +3,9 @@
3
3
  /**
4
4
  * Import a list of event types from webhooks defined in an OpenAPI spec.
5
5
  *
6
- * The OpenAPI spec can be specified as either `spec` given the spec as a JSON object, or as `specRaw` (a `string`) which will be parsed as YAML or JSON by the server. Sending neither or both is invalid, resulting in a `400` **Bad Request**.
6
+ * The OpenAPI spec can be specified as either `spec` given the spec as a JSON object, or as `specRaw`
7
+ * (a `string`) which will be parsed as YAML or JSON by the server.
8
+ * Sending neither or both is invalid, resulting in a `400` **Bad Request**.
7
9
  */
8
10
  export interface EventTypeImportOpenApiIn {
9
11
  /** If `true`, return the event types that would be modified without actually modifying them. */
@@ -14,6 +14,7 @@ export { type ApplicationIn } from "./applicationIn";
14
14
  export { type ApplicationOut } from "./applicationOut";
15
15
  export { type ApplicationPatch } from "./applicationPatch";
16
16
  export { type ApplicationTokenExpireIn } from "./applicationTokenExpireIn";
17
+ export { type AutoConfigOut } from "./autoConfigOut";
17
18
  export { type AzureBlobStorageConfigIn } from "./azureBlobStorageConfigIn";
18
19
  export { type AzureBlobStorageConfigOut } from "./azureBlobStorageConfigOut";
19
20
  export { type AzureBlobStorageConfigPatch } from "./azureBlobStorageConfigPatch";
@@ -53,6 +54,7 @@ export { type DocusignConfigOut } from "./docusignConfigOut";
53
54
  export { type EasypostConfig } from "./easypostConfig";
54
55
  export { type EasypostConfigOut } from "./easypostConfigOut";
55
56
  export { type EmptyResponse } from "./emptyResponse";
57
+ export { type EndpointAttemptStats } from "./endpointAttemptStats";
56
58
  export { type EndpointHeadersIn } from "./endpointHeadersIn";
57
59
  export { type EndpointHeadersOut } from "./endpointHeadersOut";
58
60
  export { type EndpointHeadersPatchIn } from "./endpointHeadersPatchIn";
@@ -182,6 +184,7 @@ export { type RedshiftConfigPatch } from "./redshiftConfigPatch";
182
184
  export { type ReplayIn } from "./replayIn";
183
185
  export { type ReplayOut } from "./replayOut";
184
186
  export { type RotatePollerTokenIn } from "./rotatePollerTokenIn";
187
+ export { type RotateSubscriptionIn2 } from "./rotateSubscriptionIn2";
185
188
  export { type RotateTokenOut } from "./rotateTokenOut";
186
189
  export { type RutterConfig } from "./rutterConfig";
187
190
  export { type RutterConfigOut } from "./rutterConfigOut";
@@ -11,7 +11,8 @@ export interface IngestEndpointSecretIn {
11
11
  /**
12
12
  * How long the old secret will be valid for, in seconds.
13
13
  *
14
- * Valid values are between 0 (immediate expiry) and 7 days. The default is 24 hours.
14
+ * Valid values are between 0 (immediate expiry) and 7 days.
15
+ * The default is 24 hours.
15
16
  */
16
17
  gracePeriodSeconds?: number | null;
17
18
  }
@@ -4,7 +4,8 @@ export interface IngestSourceConsumerPortalAccessIn {
4
4
  /**
5
5
  * How long the token will be valid for, in seconds.
6
6
  *
7
- * Valid values are between 1 hour and 7 days. The default is 7 days.
7
+ * Valid values are between 1 hour and 7 days.
8
+ * The default is 7 days.
8
9
  */
9
10
  expiry?: number | null;
10
11
  /** Whether the app portal should be in read-only mode. */
@@ -17,7 +17,8 @@ export interface MessageIn {
17
17
  /**
18
18
  * Optionally creates a new application alongside the message.
19
19
  *
20
- * If the application id or uid that is used in the path already exists, this argument is ignored.
20
+ * If the application id or uid that is used in the path already exists,
21
+ * this argument is ignored.
21
22
  */
22
23
  application?: ApplicationIn | null;
23
24
  /** List of free-form tags that can be filtered by when listing messages */
@@ -27,12 +28,19 @@ export interface MessageIn {
27
28
  /**
28
29
  * The date and time at which the message will be delivered.
29
30
  *
30
- * Note that this time is best-effort-only. Must be at least one minute and no more than 24 hours in the future.
31
+ * Note that this time is best-effort-only. Must be at least one minute
32
+ * and no more than 24 hours in the future.
31
33
  */
32
34
  deliverAt?: Date | null;
33
- /** Optional number of days to retain the message payload. Defaults to 90. Note that this is mutually exclusive with `payloadRetentionHours`. */
35
+ /**
36
+ * Optional number of days to retain the message payload. Defaults to 90.
37
+ * Note that this is mutually exclusive with `payloadRetentionHours`.
38
+ */
34
39
  payloadRetentionPeriod?: number | null;
35
- /** Optional number of hours to retain the message payload. Note that this is mutually exclusive with `payloadRetentionPeriod`. */
40
+ /**
41
+ * Optional number of hours to retain the message payload. Note that
42
+ * this is mutually exclusive with `payloadRetentionPeriod`.
43
+ */
36
44
  payloadRetentionHours?: number | null;
37
45
  }
38
46
 
@@ -11,7 +11,8 @@ export interface OperationalWebhookEndpointSecretIn {
11
11
  /**
12
12
  * How long the old secret will be valid for, in seconds.
13
13
  *
14
- * Valid values are between 0 (immediate expiry) and 7 days. The default is 24 hours.
14
+ * Valid values are between 0 (immediate expiry) and 7 days.
15
+ * The default is 24 hours.
15
16
  */
16
17
  gracePeriodSeconds?: number | null;
17
18
  }
@@ -2,7 +2,8 @@
2
2
 
3
3
  export interface PostgresConfigIn {
4
4
  /**
5
- * PostgreSQL connection URL, e.g. `postgres://user@host:5432/dbname?sslmode=require`.
5
+ * PostgreSQL connection URL, e.g.
6
+ * `postgres://user@host:5432/dbname?sslmode=require`.
6
7
  *
7
8
  * Do NOT embed a password here; use the `password` field instead.
8
9
  */
@@ -12,13 +13,16 @@ export interface PostgresConfigIn {
12
13
  /**
13
14
  * Table to insert into. May be schema-qualified (e.g. `public.events`).
14
15
  *
15
- * Quote characters are not supported. Each dot-separated segment is automatically double-quoted when the query is built, so `public.events` becomes `"public"."events"`.
16
+ * Quote characters are not supported. Each dot-separated segment is automatically
17
+ * double-quoted when the query is built, so `public.events` becomes `"public"."events"`.
16
18
  */
17
19
  tableName: string;
18
20
  /**
19
21
  * PEM-encoded CA certificate used to verify the Postgres server's TLS certificate.
20
22
  *
21
- * Supply this to trust a private or self-signed CA when connecting with `sslmode=verify-ca` or `sslmode=verify-full`. Without it, only the built-in public roots are trusted.
23
+ * Supply this to trust a private or self-signed CA when connecting with
24
+ * `sslmode=verify-ca` or `sslmode=verify-full`. Without it, only the built-in
25
+ * public roots are trusted.
22
26
  */
23
27
  sslRootCert?: string | null;
24
28
  }
@@ -1,18 +1,21 @@
1
1
  // this file is @generated
2
2
 
3
3
  export interface RabbitMqConfigOut {
4
+ uri: string;
4
5
  routingKey: string;
5
6
  }
6
7
 
7
8
  export const RabbitMqConfigOutSerializer = {
8
9
  _fromJsonObject(object: any): RabbitMqConfigOut {
9
10
  return {
11
+ uri: object["uri"],
10
12
  routingKey: object["routingKey"],
11
13
  };
12
14
  },
13
15
 
14
16
  _toJsonObject(self: RabbitMqConfigOut): any {
15
17
  return {
18
+ uri: self.uri,
16
19
  routingKey: self.routingKey,
17
20
  };
18
21
  },
@@ -3,25 +3,35 @@
3
3
  /**
4
4
  * Configuration parameters for defining a Redshift sink.
5
5
  *
6
- * For provisioned clusters, set `cluster_identifier` and `db_user`. For Redshift Serverless, set `workgroup_name`.
6
+ * For provisioned clusters, set `cluster_identifier` and `db_user`.
7
+ * For Redshift Serverless, set `workgroup_name`.
7
8
  */
8
9
  export interface RedshiftConfigIn {
9
10
  /**
10
11
  * Access key ID.
11
12
  *
12
- * Currently a required field, but marked as optional because we may add different authentication in the future.
13
+ * Required (along with `secret_access_key`) if `role_arn` is blank.
13
14
  */
14
15
  accessKeyId?: string | null;
15
16
  /**
16
17
  * Secret access key.
17
18
  *
18
- * Currently a required field, but marked as optional because we may add different authentication in the future.
19
+ * Required (along with `access_key_id`) if `role_arn` is blank.
19
20
  */
20
21
  secretAccessKey?: string | null;
22
+ /** Role ARN for delegated authentication */
23
+ roleArn?: string | null;
24
+ /**
25
+ * Shared secret passed as the STS ExternalId.
26
+ *
27
+ * Can only be set if `role_arn` is Some
28
+ */
29
+ externalId?: string | null;
21
30
  /**
22
31
  * The region of the Redshift DB.
23
32
  *
24
- * Currently a required field, but marked as optional because we may infer it from other fields in the future.
33
+ * Currently a required field, but marked as optional because we may infer
34
+ * it from other fields in the future.
25
35
  */
26
36
  region?: string | null;
27
37
  /** Required for provisioned clusters. */
@@ -55,6 +65,8 @@ export const RedshiftConfigInSerializer = {
55
65
  return {
56
66
  accessKeyId: object["accessKeyId"],
57
67
  secretAccessKey: object["secretAccessKey"],
68
+ roleArn: object["roleArn"],
69
+ externalId: object["externalId"],
58
70
  region: object["region"],
59
71
  clusterIdentifier: object["clusterIdentifier"],
60
72
  dbUser: object["dbUser"],
@@ -69,6 +81,8 @@ export const RedshiftConfigInSerializer = {
69
81
  return {
70
82
  accessKeyId: self.accessKeyId,
71
83
  secretAccessKey: self.secretAccessKey,
84
+ roleArn: self.roleArn,
85
+ externalId: self.externalId,
72
86
  region: self.region,
73
87
  clusterIdentifier: self.clusterIdentifier,
74
88
  dbUser: self.dbUser,
@@ -1,7 +1,9 @@
1
1
  // this file is @generated
2
2
 
3
3
  export interface RedshiftConfigOut {
4
- accessKeyId: string;
4
+ accessKeyId?: string | null;
5
+ roleArn?: string | null;
6
+ externalId?: string | null;
5
7
  region: string;
6
8
  clusterIdentifier?: string | null;
7
9
  dbUser?: string | null;
@@ -30,6 +32,8 @@ export const RedshiftConfigOutSerializer = {
30
32
  _fromJsonObject(object: any): RedshiftConfigOut {
31
33
  return {
32
34
  accessKeyId: object["accessKeyId"],
35
+ roleArn: object["roleArn"],
36
+ externalId: object["externalId"],
33
37
  region: object["region"],
34
38
  clusterIdentifier: object["clusterIdentifier"],
35
39
  dbUser: object["dbUser"],
@@ -43,6 +47,8 @@ export const RedshiftConfigOutSerializer = {
43
47
  _toJsonObject(self: RedshiftConfigOut): any {
44
48
  return {
45
49
  accessKeyId: self.accessKeyId,
50
+ roleArn: self.roleArn,
51
+ externalId: self.externalId,
46
52
  region: self.region,
47
53
  clusterIdentifier: self.clusterIdentifier,
48
54
  dbUser: self.dbUser,
@@ -3,6 +3,8 @@
3
3
  export interface RedshiftConfigPatch {
4
4
  accessKeyId?: string;
5
5
  secretAccessKey?: string;
6
+ roleArn?: string;
7
+ externalId?: string;
6
8
  region?: string;
7
9
  /**
8
10
  * Database name.
@@ -29,6 +31,8 @@ export const RedshiftConfigPatchSerializer = {
29
31
  return {
30
32
  accessKeyId: object["accessKeyId"],
31
33
  secretAccessKey: object["secretAccessKey"],
34
+ roleArn: object["roleArn"],
35
+ externalId: object["externalId"],
32
36
  region: object["region"],
33
37
  dbName: object["dbName"],
34
38
  schemaName: object["schemaName"],
@@ -40,6 +44,8 @@ export const RedshiftConfigPatchSerializer = {
40
44
  return {
41
45
  accessKeyId: self.accessKeyId,
42
46
  secretAccessKey: self.secretAccessKey,
47
+ roleArn: self.roleArn,
48
+ externalId: self.externalId,
43
49
  region: self.region,
44
50
  dbName: self.dbName,
45
51
  schemaName: self.schemaName,
@@ -6,7 +6,8 @@ export interface RotatePollerTokenIn {
6
6
  /**
7
7
  * Updates the previous token's expiration, in seconds.
8
8
  *
9
- * If set to 0, the old token will immediately be revoked. Must be between 0 and 86,400 seconds (1 day).
9
+ * If set to 0, the old token will immediately be revoked.
10
+ * Must be between 0 and 86,400 seconds (1 day).
10
11
  *
11
12
  * Defaults to 300 seconds (5 minutes).
12
13
  */
@@ -0,0 +1,29 @@
1
+ // this file is @generated
2
+ import {
3
+ type EndpointSecretRotateIn,
4
+ EndpointSecretRotateInSerializer,
5
+ } from "./endpointSecretRotateIn";
6
+
7
+ export interface RotateSubscriptionIn2 {
8
+ signingSecret?: EndpointSecretRotateIn | null;
9
+ }
10
+
11
+ export const RotateSubscriptionIn2Serializer = {
12
+ _fromJsonObject(object: any): RotateSubscriptionIn2 {
13
+ return {
14
+ signingSecret:
15
+ object["signingSecret"] != null
16
+ ? EndpointSecretRotateInSerializer._fromJsonObject(object["signingSecret"])
17
+ : undefined,
18
+ };
19
+ },
20
+
21
+ _toJsonObject(self: RotateSubscriptionIn2): any {
22
+ return {
23
+ signingSecret:
24
+ self.signingSecret != null
25
+ ? EndpointSecretRotateInSerializer._toJsonObject(self.signingSecret)
26
+ : undefined,
27
+ };
28
+ },
29
+ };
@@ -17,7 +17,8 @@ export interface S3ConfigIn {
17
17
  /**
18
18
  * The region of the S3 bucket
19
19
  *
20
- * Currently a required field, but marked as optional because we may infer it from other fields in the future.
20
+ * Currently a required field, but marked as optional because we may infer
21
+ * it from other fields in the future.
21
22
  */
22
23
  region?: string | null;
23
24
  endpointUrl?: string | null;
@@ -3,14 +3,19 @@
3
3
  /** Configuration parameters for defining a Snowflake sink. */
4
4
  export interface SnowflakeConfigIn {
5
5
  /**
6
- * PEM-encoded private key used for signing token-based requests to the Snowflake API.
6
+ * PEM-encoded private key used for signing token-based requests
7
+ * to the Snowflake API.
7
8
  *
8
9
  * Beginning/end delimiters are not required.
9
10
  *
10
- * Currently a required field, but marked as optional because we may add different authentication in the future.
11
+ * Currently a required field, but marked as optional because we may add
12
+ * different authentication in the future.
11
13
  */
12
14
  privateKey?: string | null;
13
- /** Snowflake account identifier, which includes both the organization and account IDs separated by a hyphen. */
15
+ /**
16
+ * Snowflake account identifier, which includes both the organization and account
17
+ * IDs separated by a hyphen.
18
+ */
14
19
  accountIdentifier: string;
15
20
  /** The Snowflake user id. */
16
21
  userId: string;
@@ -6,22 +6,31 @@ export interface SnsConfigIn {
6
6
  /**
7
7
  * The region of the SNS instance.
8
8
  *
9
- * Currently a required field, but marked as optional because we may infer it from other fields in the future.
9
+ * Currently a required field, but marked as optional because we may infer
10
+ * it from other fields in the future.
10
11
  */
11
12
  region?: string | null;
12
13
  /**
13
14
  * Access key ID.
14
15
  *
15
- * Currently a required field, but marked as optional because we may add different authentication in the future.
16
+ * Required (along with `secret_access_key`) if `role_arn` is None
16
17
  */
17
18
  accessKeyId?: string | null;
18
19
  /**
19
20
  * Secret access key.
20
21
  *
21
- * Currently a required field, but marked as optional because we may add different authentication in the future.
22
+ * Required (along with `access_key_id`) if `role_arn` is None
22
23
  */
23
24
  secretAccessKey?: string | null;
24
25
  endpointUrl?: string | null;
26
+ /** Role ARN for delegated authentication */
27
+ roleArn?: string | null;
28
+ /**
29
+ * Shared secret passed as the STS ExternalId.
30
+ *
31
+ * Can only be set if `role_arn` is Some
32
+ */
33
+ externalId?: string | null;
25
34
  }
26
35
 
27
36
  export const SnsConfigInSerializer = {
@@ -32,6 +41,8 @@ export const SnsConfigInSerializer = {
32
41
  accessKeyId: object["accessKeyId"],
33
42
  secretAccessKey: object["secretAccessKey"],
34
43
  endpointUrl: object["endpointUrl"],
44
+ roleArn: object["roleArn"],
45
+ externalId: object["externalId"],
35
46
  };
36
47
  },
37
48
 
@@ -42,6 +53,8 @@ export const SnsConfigInSerializer = {
42
53
  accessKeyId: self.accessKeyId,
43
54
  secretAccessKey: self.secretAccessKey,
44
55
  endpointUrl: self.endpointUrl,
56
+ roleArn: self.roleArn,
57
+ externalId: self.externalId,
45
58
  };
46
59
  },
47
60
  };
@@ -3,7 +3,9 @@
3
3
  export interface SnsConfigOut {
4
4
  topicArn: string;
5
5
  region: string;
6
- accessKeyId: string;
6
+ accessKeyId?: string | null;
7
+ roleArn?: string | null;
8
+ externalId?: string | null;
7
9
  }
8
10
 
9
11
  export const SnsConfigOutSerializer = {
@@ -12,6 +14,8 @@ export const SnsConfigOutSerializer = {
12
14
  topicArn: object["topicArn"],
13
15
  region: object["region"],
14
16
  accessKeyId: object["accessKeyId"],
17
+ roleArn: object["roleArn"],
18
+ externalId: object["externalId"],
15
19
  };
16
20
  },
17
21
 
@@ -20,6 +24,8 @@ export const SnsConfigOutSerializer = {
20
24
  topicArn: self.topicArn,
21
25
  region: self.region,
22
26
  accessKeyId: self.accessKeyId,
27
+ roleArn: self.roleArn,
28
+ externalId: self.externalId,
23
29
  };
24
30
  },
25
31
  };
@@ -5,6 +5,8 @@ export interface SnsConfigPatch {
5
5
  region?: string;
6
6
  accessKeyId?: string;
7
7
  secretAccessKey?: string;
8
+ roleArn?: string;
9
+ externalId?: string;
8
10
  endpointUrl?: string | null;
9
11
  }
10
12
 
@@ -15,6 +17,8 @@ export const SnsConfigPatchSerializer = {
15
17
  region: object["region"],
16
18
  accessKeyId: object["accessKeyId"],
17
19
  secretAccessKey: object["secretAccessKey"],
20
+ roleArn: object["roleArn"],
21
+ externalId: object["externalId"],
18
22
  endpointUrl: object["endpointUrl"],
19
23
  };
20
24
  },
@@ -25,6 +29,8 @@ export const SnsConfigPatchSerializer = {
25
29
  region: self.region,
26
30
  accessKeyId: self.accessKeyId,
27
31
  secretAccessKey: self.secretAccessKey,
32
+ roleArn: self.roleArn,
33
+ externalId: self.externalId,
28
34
  endpointUrl: self.endpointUrl,
29
35
  };
30
36
  },
@@ -6,21 +6,30 @@ export interface SqsConfigIn {
6
6
  /**
7
7
  * The region of the SQS queue.
8
8
  *
9
- * Currently a required field, but marked as optional because we may infer it from other fields in the future.
9
+ * Currently a required field, but marked as optional because we may infer
10
+ * it from other fields in the future.
10
11
  */
11
12
  region?: string | null;
12
13
  /**
13
14
  * Access key ID.
14
15
  *
15
- * Currently a required field, but marked as optional because we may add different authentication in the future.
16
+ * Required (along with `secret_access_key`) if `role_arn` is blank.
16
17
  */
17
18
  accessKeyId?: string | null;
18
19
  /**
19
20
  * Secret access key.
20
21
  *
21
- * Currently a required field, but marked as optional because we may add different authentication in the future.
22
+ * Required (along with `access_key_id`) if `role_arn` is blank.
22
23
  */
23
24
  secretAccessKey?: string | null;
25
+ /** Role ARN for delegated authentication */
26
+ roleArn?: string | null;
27
+ /**
28
+ * Shared secret passed as the STS ExternalId.
29
+ *
30
+ * Can only be set if `role_arn` is Some
31
+ */
32
+ externalId?: string | null;
24
33
  endpointUrl?: string | null;
25
34
  }
26
35
 
@@ -31,6 +40,8 @@ export const SqsConfigInSerializer = {
31
40
  region: object["region"],
32
41
  accessKeyId: object["accessKeyId"],
33
42
  secretAccessKey: object["secretAccessKey"],
43
+ roleArn: object["roleArn"],
44
+ externalId: object["externalId"],
34
45
  endpointUrl: object["endpointUrl"],
35
46
  };
36
47
  },
@@ -41,6 +52,8 @@ export const SqsConfigInSerializer = {
41
52
  region: self.region,
42
53
  accessKeyId: self.accessKeyId,
43
54
  secretAccessKey: self.secretAccessKey,
55
+ roleArn: self.roleArn,
56
+ externalId: self.externalId,
44
57
  endpointUrl: self.endpointUrl,
45
58
  };
46
59
  },
@@ -3,7 +3,9 @@
3
3
  export interface SqsConfigOut {
4
4
  queueUrl: string;
5
5
  region: string;
6
- accessKeyId: string;
6
+ accessKeyId?: string | null;
7
+ roleArn?: string | null;
8
+ externalId?: string | null;
7
9
  endpointUrl?: string | null;
8
10
  }
9
11
 
@@ -13,6 +15,8 @@ export const SqsConfigOutSerializer = {
13
15
  queueUrl: object["queueUrl"],
14
16
  region: object["region"],
15
17
  accessKeyId: object["accessKeyId"],
18
+ roleArn: object["roleArn"],
19
+ externalId: object["externalId"],
16
20
  endpointUrl: object["endpointUrl"],
17
21
  };
18
22
  },
@@ -22,6 +26,8 @@ export const SqsConfigOutSerializer = {
22
26
  queueUrl: self.queueUrl,
23
27
  region: self.region,
24
28
  accessKeyId: self.accessKeyId,
29
+ roleArn: self.roleArn,
30
+ externalId: self.externalId,
25
31
  endpointUrl: self.endpointUrl,
26
32
  };
27
33
  },
@@ -5,6 +5,8 @@ export interface SqsConfigPatch {
5
5
  region?: string;
6
6
  accessKeyId?: string;
7
7
  secretAccessKey?: string;
8
+ roleArn?: string;
9
+ externalId?: string;
8
10
  endpointUrl?: string | null;
9
11
  }
10
12
 
@@ -15,6 +17,8 @@ export const SqsConfigPatchSerializer = {
15
17
  region: object["region"],
16
18
  accessKeyId: object["accessKeyId"],
17
19
  secretAccessKey: object["secretAccessKey"],
20
+ roleArn: object["roleArn"],
21
+ externalId: object["externalId"],
18
22
  endpointUrl: object["endpointUrl"],
19
23
  };
20
24
  },
@@ -25,6 +29,8 @@ export const SqsConfigPatchSerializer = {
25
29
  region: self.region,
26
30
  accessKeyId: self.accessKeyId,
27
31
  secretAccessKey: self.secretAccessKey,
32
+ roleArn: self.roleArn,
33
+ externalId: self.externalId,
28
34
  endpointUrl: self.endpointUrl,
29
35
  };
30
36
  },
@@ -6,13 +6,15 @@ export interface StreamPortalAccessIn {
6
6
  /**
7
7
  * How long the token will be valid for, in seconds.
8
8
  *
9
- * Valid values are between 1 hour and 7 days. The default is 7 days.
9
+ * Valid values are between 1 hour and 7 days.
10
+ * The default is 7 days.
10
11
  */
11
12
  expiry?: number | null;
12
13
  /**
13
14
  * An optional session ID to attach to the token.
14
15
  *
15
- * When expiring tokens with "Expire All", you can include the session ID to only expire tokens that were created with that session ID.
16
+ * When expiring tokens with "Expire All", you can include the session ID
17
+ * to only expire tokens that were created with that session ID.
16
18
  */
17
19
  sessionId?: string | null;
18
20
  }
@@ -40,7 +40,8 @@ interface _StreamSinkInFields {
40
40
  /**
41
41
  * Whether the sink will receive events.
42
42
  *
43
- * If the sink is `enabled`, any events posted to the stream will be dispatched to the Sink in the same order that events were posted to the stream.
43
+ * If the sink is `enabled`, any events posted to the stream will be
44
+ * dispatched to the Sink in the same order that events were posted to the stream.
44
45
  *
45
46
  * If the sink is `disabled`, events will not be dispatched to the sink until the sink is reenabled.
46
47
  */
@@ -55,7 +56,10 @@ interface _StreamSinkInFields {
55
56
  * Note that we will never send an empty batch of events to the Sink.
56
57
  */
57
58
  maxWaitSecs?: number;
58
- /** A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events. */
59
+ /**
60
+ * A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out
61
+ * any events.
62
+ */
59
63
  eventTypes?: string[];
60
64
  channels?: string[];
61
65
  metadata?: { [key: string]: string };