@nangohq/types 0.69.22 → 0.69.24

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.
@@ -8,7 +8,7 @@ import type { GetConnectUISettings, PutConnectUISettings } from './connectUISett
8
8
  import type { DeletePublicConnection, GetConnection, GetConnections, GetConnectionsCount, GetPublicConnection, GetPublicConnections, PostConnectionRefresh, PostPublicConnection } from './connection/api/get.js';
9
9
  import type { SetMetadata, UpdateMetadata } from './connection/api/metadata.js';
10
10
  import type { PostDeploy, PostDeployConfirmation, PostDeployInternal } from './deploy/api.js';
11
- import type { DeleteEnvironment, PatchEnvironment, PostEnvironment } from './environment/api/index.js';
11
+ import type { DeleteEnvironment, GetEnvironments, PatchEnvironment, PostEnvironment } from './environment/api/index.js';
12
12
  import type { PatchWebhook } from './environment/api/webhook.js';
13
13
  import type { PostEnvironmentVariables } from './environment/variable/api.js';
14
14
  import type { PatchFlowDisable, PatchFlowEnable, PatchFlowFrequency, PostPreBuiltDeploy, PutUpgradePreBuiltFlow } from './flow/http.api.js';
@@ -28,7 +28,7 @@ import type { DeleteTeamUser, GetTeam, PutTeam } from './team/api.js';
28
28
  import type { GetUser, PatchUser } from './user/api.js';
29
29
  import type { PostPublicWebhook } from './webhooks/http.api.js';
30
30
  export type PublicApiEndpoints = SetMetadata | UpdateMetadata | PostDeploy | PostDeployConfirmation | PostPublicTrigger | PostPublicTbaAuthorization | PostPublicJwtAuthorization | PostPublicUnauthenticatedAuthorization | PostPublicApiKeyAuthorization | PostPublicBasicAuthorization | PostPublicAppStoreAuthorization | GetPublicProviders | GetPublicProvider | GetPublicListIntegrations | GetPublicIntegration | DeletePublicIntegration | PostConnectSessions | PostPublicConnectSessionsReconnect | GetPublicConnections | GetPublicConnection | GetConnectSession | DeleteConnectSession | PostDeployInternal | PostPublicBillAuthorization | DeletePublicConnection | PostPublicSignatureAuthorization | PostPublicTwoStepAuthorization | PostPublicWebhook | GetPublicRecords | PatchPublicPruneRecords | GetPublicScriptsConfig | PostPublicConnectTelemetry | PutPublicSyncConnectionFrequency | PostPublicIntegration | PatchPublicIntegration | GetAsyncActionResult | PostPublicOauthOutboundAuthorization | PostPublicConnection | PostPublicSyncStart | PostPublicSyncPause | GetPublicSyncStatus | GetPublicV1 | PostPublicTriggerAction | AllPublicProxy;
31
- export type PrivateApiEndpoints = PostSignup | PostSignin | PostLogout | GetTeam | PutTeam | PostPlanExtendTrial | GetUser | PatchUser | PostInvite | DeleteInvite | DeleteTeamUser | PostInsights | PostForgotPassword | PutResetPassword | SearchOperations | GetOperation | SearchMessages | SearchFilters | PostInternalConnectSessions | GetIntegrationFlows | DeleteIntegration | PatchIntegration | GetIntegration | PostIntegration | GetConnections | GetConnectionsCount | GetConnection | GetInvite | GetMeta | GetEmailByExpiredToken | GetEmailByUuid | GetManagedCallback | PatchFlowDisable | PatchFlowEnable | PatchFlowFrequency | PutUpgradePreBuiltFlow | PostConnectionRefresh | PostManagedSignup | PostPreBuiltDeploy | PostEnvironment | PatchEnvironment | DeleteEnvironment | PatchWebhook | PostEnvironmentVariables | PostImpersonate | GetSharedCredentialsProviders | GetSharedCredentialsProvider | PostSharedCredentialsProvider | PatchSharedCredentialsProvider | GetGettingStarted | PatchGettingStarted | GetConnectUISettings | PutConnectUISettings | GetProviders | GetProvider;
31
+ export type PrivateApiEndpoints = PostSignup | PostSignin | PostLogout | GetTeam | PutTeam | PostPlanExtendTrial | GetUser | PatchUser | PostInvite | DeleteInvite | DeleteTeamUser | PostInsights | PostForgotPassword | PutResetPassword | SearchOperations | GetOperation | SearchMessages | SearchFilters | PostInternalConnectSessions | GetIntegrationFlows | DeleteIntegration | PatchIntegration | GetIntegration | PostIntegration | GetConnections | GetConnectionsCount | GetConnection | GetInvite | GetMeta | GetEmailByExpiredToken | GetEmailByUuid | GetManagedCallback | PatchFlowDisable | PatchFlowEnable | PatchFlowFrequency | PutUpgradePreBuiltFlow | PostConnectionRefresh | PostManagedSignup | PostPreBuiltDeploy | PostEnvironment | PatchEnvironment | DeleteEnvironment | GetEnvironments | PatchWebhook | PostEnvironmentVariables | PostImpersonate | GetSharedCredentialsProviders | GetSharedCredentialsProvider | PostSharedCredentialsProvider | PatchSharedCredentialsProvider | GetGettingStarted | PatchGettingStarted | GetConnectUISettings | PutConnectUISettings | GetProviders | GetProvider;
32
32
  export type APIEndpoints = PrivateApiEndpoints | PublicApiEndpoints;
33
33
  /**
34
34
  * Automatically narrow endpoints type with Method + Path
@@ -16,6 +16,7 @@ export interface AuthModes {
16
16
  Signature: 'SIGNATURE';
17
17
  MCP_OAUTH2: 'MCP_OAUTH2';
18
18
  MCP_OAUTH2_GENERIC: 'MCP_OAUTH2_GENERIC';
19
+ InstallPlugin: 'INSTALL_PLUGIN';
19
20
  }
20
21
  export type AuthModeType = AuthModes[keyof AuthModes];
21
22
  export type AuthOperationType = 'creation' | 'override' | 'refresh' | 'unknown';
@@ -140,6 +141,10 @@ export interface SignatureCredentials {
140
141
  token?: string;
141
142
  expires_at?: Date | undefined;
142
143
  }
144
+ export interface InstallPluginCredentials {
145
+ type: AuthModes['Basic'];
146
+ [key: string]: any;
147
+ }
143
148
  export interface CombinedOauth2AppCredentials extends CredentialsCommon {
144
149
  type: AuthModes['Custom'];
145
150
  app: AppCredentials;
@@ -152,4 +157,4 @@ export interface AuthorizationTokenResponse extends Omit<OAuth2Credentials, 'typ
152
157
  }
153
158
  export type TestableCredentials = ApiKeyCredentials | BasicApiCredentials | TbaCredentials | JwtCredentials | SignatureCredentials;
154
159
  export type RefreshableCredentials = OAuth2Credentials | AppCredentials | AppStoreCredentials | OAuth2ClientCredentials | JwtCredentials | TwoStepCredentials | BillCredentials | SignatureCredentials;
155
- export type AllAuthCredentials = OAuth1Credentials | OAuth2Credentials | OAuth2ClientCredentials | BasicApiCredentials | ApiKeyCredentials | AppCredentials | AppStoreCredentials | UnauthCredentials | CustomCredentials | TbaCredentials | JwtCredentials | BillCredentials | TwoStepCredentials | CombinedOauth2AppCredentials | SignatureCredentials;
160
+ export type AllAuthCredentials = OAuth1Credentials | OAuth2Credentials | OAuth2ClientCredentials | BasicApiCredentials | ApiKeyCredentials | AppCredentials | AppStoreCredentials | UnauthCredentials | CustomCredentials | TbaCredentials | JwtCredentials | BillCredentials | TwoStepCredentials | CombinedOauth2AppCredentials | SignatureCredentials | InstallPluginCredentials;
@@ -84,6 +84,7 @@ export type PostPublicTbaAuthorization = Endpoint<{
84
84
  token_secret: string;
85
85
  oauth_client_id_override?: string | undefined;
86
86
  oauth_client_secret_override?: string | undefined;
87
+ oauth_refresh_token_override?: string | undefined;
87
88
  };
88
89
  Querystring: ConnectionQueryString;
89
90
  Params: {
@@ -78,7 +78,7 @@ export type PostInternalConnectSessions = Endpoint<{
78
78
  Method: 'POST';
79
79
  Path: '/api/v1/connect/sessions';
80
80
  Success: PostConnectSessions['Success'];
81
- Body: Pick<ConnectSessionInput, 'allowed_integrations' | 'end_user' | 'organization' | 'integrations_config_defaults'>;
81
+ Body: Pick<ConnectSessionInput, 'allowed_integrations' | 'end_user' | 'organization' | 'integrations_config_defaults' | 'overrides'>;
82
82
  }>;
83
83
  export type PostPublicConnectTelemetry = Endpoint<{
84
84
  Method: 'POST';
@@ -7,6 +7,13 @@ export type ApiEnvironment = Omit<Merge<DBEnvironment, {
7
7
  callback_url: string;
8
8
  } & ApiTimestamps>, 'secret_key_iv' | 'secret_key_tag' | 'secret_key_hashed' | 'pending_secret_key_iv' | 'pending_secret_key_tag' | 'pending_public_key'>;
9
9
  export type ApiWebhooks = Omit<DBExternalWebhook, 'id' | 'environment_id' | 'created_at' | 'updated_at'>;
10
+ export type GetEnvironments = Endpoint<{
11
+ Method: 'GET';
12
+ Path: '/api/v1/environments';
13
+ Success: {
14
+ data: Pick<DBEnvironment, 'name'>[];
15
+ };
16
+ }>;
10
17
  export type PostEnvironment = Endpoint<{
11
18
  Method: 'POST';
12
19
  Path: '/api/v1/environments';
@@ -56,3 +56,13 @@ export interface DBExternalWebhook extends Timestamps {
56
56
  on_sync_error: boolean;
57
57
  on_async_action_completion: boolean;
58
58
  }
59
+ export interface DBAPISecret extends Timestamps {
60
+ id: number;
61
+ environment_id: number;
62
+ display_name: string;
63
+ secret: string;
64
+ iv: string;
65
+ tag: string;
66
+ hashed: string;
67
+ is_default: boolean;
68
+ }
@@ -4,6 +4,9 @@ export type ApiEnvironmentVariable = Pick<DBEnvironmentVariable, 'name' | 'value
4
4
  export type PostEnvironmentVariables = Endpoint<{
5
5
  Method: 'POST';
6
6
  Path: '/api/v1/environments/variables';
7
+ Querystring: {
8
+ env: string;
9
+ };
7
10
  Body: {
8
11
  variables: {
9
12
  name: string;
@@ -1,9 +1,10 @@
1
1
  import type { ApiError, Endpoint } from '../api.js';
2
- import type { Deployment } from './index.js';
2
+ import type { Deployment, ImageType } from './index.js';
3
3
  export type PostRollout = Endpoint<{
4
4
  Method: 'POST';
5
5
  Path: '/fleet/:fleetId/rollout';
6
6
  Body: {
7
+ imageType?: ImageType;
7
8
  image: string;
8
9
  };
9
10
  Params: {
@@ -5,6 +5,7 @@ export interface Deployment {
5
5
  readonly supersededAt: Date | null;
6
6
  }
7
7
  export type RoutingId = string;
8
+ export type ImageType = 'docker' | 'ecr';
8
9
  export interface NodeConfig {
9
10
  readonly image: string;
10
11
  readonly cpuMilli: number;
@@ -13,4 +14,6 @@ export interface NodeConfig {
13
14
  readonly isTracingEnabled: boolean;
14
15
  readonly isProfilingEnabled: boolean;
15
16
  readonly idleMaxDurationMs: number;
17
+ readonly executionTimeoutSecs: number;
18
+ readonly provisionedConcurrency: number;
16
19
  }
@@ -95,6 +95,8 @@ export type ApiIntegrationList = ApiIntegration & {
95
95
  missingFieldsCount: number;
96
96
  connectionConfigParams?: string[];
97
97
  credentialParams?: string[];
98
+ assertionOptionParams?: string[];
99
+ authorizationParams?: Record<string, string>;
98
100
  displayName: string;
99
101
  requireClientCertificate?: boolean;
100
102
  installation?: 'outbound';
@@ -107,6 +109,43 @@ export type GetIntegrations = Endpoint<{
107
109
  data: ApiIntegrationList[];
108
110
  };
109
111
  }>;
112
+ export interface OAuthAuthBody {
113
+ authType: Extract<AuthModeType, 'OAUTH1' | 'OAUTH2' | 'TBA'>;
114
+ clientId?: string | undefined;
115
+ clientSecret?: string | undefined;
116
+ scopes?: string | undefined;
117
+ }
118
+ export interface AppAuthBody {
119
+ authType: Extract<AuthModeType, 'APP'>;
120
+ appId?: string | undefined;
121
+ appLink?: string | undefined;
122
+ privateKey?: string | undefined;
123
+ }
124
+ export interface CustomAuthBody {
125
+ authType: Extract<AuthModeType, 'CUSTOM'>;
126
+ clientId?: string | undefined;
127
+ clientSecret?: string | undefined;
128
+ appId?: string | undefined;
129
+ appLink?: string | undefined;
130
+ privateKey?: string | undefined;
131
+ }
132
+ export interface MCPOAuth2AuthBody {
133
+ authType: Extract<AuthModeType, 'MCP_OAUTH2'>;
134
+ scopes?: string | undefined;
135
+ }
136
+ export interface MCPOAuth2GenericAuthBody {
137
+ authType: Extract<AuthModeType, 'MCP_OAUTH2_GENERIC'>;
138
+ clientName?: string | undefined;
139
+ clientUri?: string | undefined;
140
+ clientLogoUri?: string | undefined;
141
+ }
142
+ export interface InstallPluginAuthBody {
143
+ authType: Extract<AuthModeType, 'INSTALL_PLUGIN'>;
144
+ appLink?: string | undefined;
145
+ username?: string | undefined;
146
+ password?: string | undefined;
147
+ }
148
+ export type IntegrationAuthBody = OAuthAuthBody | AppAuthBody | CustomAuthBody | MCPOAuth2AuthBody | MCPOAuth2GenericAuthBody | InstallPluginAuthBody;
110
149
  export type PostIntegration = Endpoint<{
111
150
  Method: 'POST';
112
151
  Path: '/api/v1/integrations';
@@ -116,6 +155,11 @@ export type PostIntegration = Endpoint<{
116
155
  Body: {
117
156
  provider: string;
118
157
  useSharedCredentials: boolean;
158
+ integrationId?: string | undefined;
159
+ webhookSecret?: string | undefined;
160
+ displayName?: string | undefined;
161
+ forward_webhooks?: boolean | undefined;
162
+ auth?: IntegrationAuthBody | undefined;
119
163
  };
120
164
  Success: {
121
165
  data: ApiIntegration;
@@ -156,32 +200,7 @@ export type PatchIntegration = Endpoint<{
156
200
  webhookSecret?: string | undefined;
157
201
  displayName?: string | undefined;
158
202
  forward_webhooks?: boolean | undefined;
159
- } | {
160
- authType: Extract<AuthModeType, 'OAUTH1' | 'OAUTH2' | 'TBA'>;
161
- clientId?: string | undefined;
162
- clientSecret?: string | undefined;
163
- scopes?: string | undefined;
164
- } | {
165
- authType: Extract<AuthModeType, 'APP'>;
166
- appId?: string | undefined;
167
- appLink?: string | undefined;
168
- privateKey?: string | undefined;
169
- } | {
170
- authType: Extract<AuthModeType, 'CUSTOM'>;
171
- clientId?: string | undefined;
172
- clientSecret?: string | undefined;
173
- appId?: string | undefined;
174
- appLink?: string | undefined;
175
- privateKey?: string | undefined;
176
- } | {
177
- authType: Extract<AuthModeType, 'MCP_OAUTH2'>;
178
- scopes?: string | undefined;
179
- } | {
180
- authType: Extract<AuthModeType, 'MCP_OAUTH2_GENERIC'>;
181
- clientName?: string | undefined;
182
- clientUri?: string | undefined;
183
- clientLogoUri?: string | undefined;
184
- };
203
+ } | IntegrationAuthBody;
185
204
  Success: {
186
205
  data: {
187
206
  success: boolean;
@@ -1,4 +1,5 @@
1
1
  import type { Timestamps } from '../db.js';
2
+ type FunctionRuntime = 'runner' | 'lambda';
2
3
  export interface DBPlan extends Timestamps {
3
4
  id: number;
4
5
  account_id: number;
@@ -119,4 +120,25 @@ export interface DBPlan extends Timestamps {
119
120
  * @default false
120
121
  */
121
122
  can_disable_connect_ui_watermark: boolean;
123
+ /**
124
+ * Sync Function Runtime
125
+ * @default "runner"
126
+ */
127
+ sync_function_runtime: FunctionRuntime;
128
+ /**
129
+ * Action Function Runtime
130
+ * @default "runner"
131
+ */
132
+ action_function_runtime: FunctionRuntime;
133
+ /**
134
+ * Webhook Function Runtime
135
+ * @default "runner"
136
+ */
137
+ webhook_function_runtime: FunctionRuntime;
138
+ /**
139
+ * On Event Function Runtime
140
+ * @default "runner"
141
+ */
142
+ on_event_function_runtime: FunctionRuntime;
122
143
  }
144
+ export {};
@@ -36,6 +36,7 @@ export interface ApiProviderListItem {
36
36
  authMode: AuthModeType;
37
37
  categories?: string[] | undefined;
38
38
  docs: string;
39
+ docs_connect?: string | undefined;
39
40
  preConfigured: boolean;
40
41
  preConfiguredScopes: string[];
41
42
  }
@@ -83,6 +83,7 @@ export interface BaseProvider {
83
83
  connection_configuration?: string[];
84
84
  connection_config?: Record<string, SimplifiedJSONSchema>;
85
85
  credentials?: Record<string, SimplifiedJSONSchema>;
86
+ assertion_option?: Record<string, SimplifiedJSONSchema>;
86
87
  authorization_url_fragment?: string;
87
88
  body_format?: OAuthBodyFormatType;
88
89
  require_client_certificate?: boolean;
@@ -190,6 +191,16 @@ export interface ProviderTwoStep extends Omit<BaseProvider, 'body_format'> {
190
191
  token_url: string;
191
192
  token_request_method?: 'GET';
192
193
  }[];
194
+ assertion?: {
195
+ key?: string;
196
+ issuer?: string;
197
+ lifetimeInSeconds?: number;
198
+ audiences?: string | string[];
199
+ attributes?: Record<string, string | number | boolean | (string | number | boolean)[]>;
200
+ sessionIndex?: string;
201
+ recipient?: string;
202
+ };
203
+ assertion_option?: Record<string, SimplifiedJSONSchema>;
193
204
  token_expires_in_ms?: number;
194
205
  proxy_header_authorization?: string;
195
206
  body_format?: 'xml' | 'json' | 'form';
@@ -206,6 +217,10 @@ export interface ProviderSignature extends BaseProvider {
206
217
  export interface ProviderApiKey extends BaseProvider {
207
218
  auth_mode: 'API_KEY';
208
219
  }
209
- export type Provider = BaseProvider | ProviderOAuth1 | ProviderOAuth2 | ProviderJwt | ProviderTwoStep | ProviderSignature | ProviderApiKey | ProviderBill | ProviderGithubApp | ProviderAppleAppStore | ProviderCustom | ProviderMcpOAUTH2 | ProviderMcpOAuth2Generic;
220
+ export interface ProviderInstallPlugin extends BaseProvider {
221
+ auth_mode: 'INSTALL_PLUGIN';
222
+ auth_type: 'BASIC';
223
+ }
224
+ export type Provider = BaseProvider | ProviderOAuth1 | ProviderOAuth2 | ProviderJwt | ProviderTwoStep | ProviderSignature | ProviderApiKey | ProviderBill | ProviderGithubApp | ProviderAppleAppStore | ProviderCustom | ProviderMcpOAUTH2 | ProviderMcpOAuth2Generic | ProviderInstallPlugin;
210
225
  export type RefreshableProvider = ProviderTwoStep | ProviderJwt | ProviderSignature | ProviderOAuth2 | ProviderMcpOAuth2Generic;
211
226
  export type TestableProvider = ProviderApiKey;
@@ -1,4 +1,5 @@
1
1
  import type { TelemetryBag } from './sdk.js';
2
+ import type { DBPlan } from '../plans/db.js';
2
3
  export interface RunnerOutputError {
3
4
  type: string;
4
5
  payload: Record<string, unknown> | unknown[];
@@ -18,3 +19,6 @@ export interface RunnerFlags {
18
19
  validateSyncRecords: boolean;
19
20
  validateSyncMetadata: boolean;
20
21
  }
22
+ export interface RuntimeContext {
23
+ plan: DBPlan | null;
24
+ }
@@ -7,8 +7,9 @@ import type { AxiosError, AxiosInterceptorManager, AxiosRequestConfig, AxiosResp
7
7
  export interface SdkLogger {
8
8
  level: LogLevel | 'off';
9
9
  }
10
+ export type ScriptType = 'sync' | 'action' | 'webhook' | 'on-event';
10
11
  export interface NangoProps {
11
- scriptType: 'sync' | 'action' | 'webhook' | 'on-event';
12
+ scriptType: ScriptType;
12
13
  host?: string;
13
14
  secretKey: string;
14
15
  team: Pick<DBTeam, 'id' | 'name'>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nangohq/types",
3
- "version": "0.69.22",
3
+ "version": "0.69.24",
4
4
  "description": "Types used in Nango applications",
5
5
  "type": "module",
6
6
  "typings": "dist/index.d.ts",