UNPKG

@replit/connectors

Version:

The official TypeScript library for the Replit API

1,974 lines (1,329 loc) 1.01 MB
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import * as TopLevelAPI from './top-level'; import { OffsetPagination, type OffsetPaginationParams } from '../core/pagination'; export type ListConnectionsResponsesOffsetPagination = OffsetPagination<ListConnectionsResponse>; export type ListConnectorConfigsResponsesOffsetPagination = OffsetPagination<ListConnectorConfigsResponse>; export type ListConnectorsResponsesOffsetPagination = OffsetPagination<ListConnectorsResponse>; export type ListConnnectorConfigsResponsesOffsetPagination = OffsetPagination<ListConnnectorConfigsResponse>; export type ListCustomersResponsesOffsetPagination = OffsetPagination<ListCustomersResponse>; export type ListEventsResponsesOffsetPagination = OffsetPagination<ListEventsResponse>; export interface Connector { name: string; auth_type?: 'BASIC' | 'OAUTH1' | 'OAUTH2' | 'OAUTH2CC' | 'API_KEY' | 'CUSTOM'; display_name?: string; has_openint_credentials?: boolean; logo_url?: string; openint_allowed_scopes?: Array<string>; openint_default_scopes?: Array<string>; platforms?: Array<'web' | 'mobile' | 'desktop' | 'local' | 'cloud'>; required_scopes?: Array<string>; schemas?: Connector.Schemas; scopes?: Array<Connector.Scope>; stage?: 'alpha' | 'beta' | 'ga' | 'hidden'; webhook_registration_input?: unknown; } export namespace Connector { export interface Schemas { connect_input?: unknown; connect_output?: unknown; connection_settings?: unknown; connector_config?: unknown; integration_data?: unknown; pre_connect_input?: unknown; webhook_events?: unknown; webhook_registration_input?: unknown; } export interface Scope { scope: string; description?: string; display_name?: string; } } export interface Integration { id: string; connector_name: | 'acme-apikey' | 'acme-oauth2' | 'agentmail' | 'apollo' | 'asana' | 'bigquery' | 'bitbucket' | 'bitbucket-source-control' | 'box' | 'calendly' | 'clickup' | 'confluence' | 'custom-mcp' | 'databricks' | 'discord' | 'dropbox' | 'figma' | 'github' | 'github-source-control' | 'gitlab-source-control' | 'google-calendar' | 'google-docs' | 'google-drive' | 'google-mail' | 'google-sheet' | 'google-slides' | 'hubspot' | 'instagram' | 'jira' | 'linear' | 'monday' | 'notion' | 'onedrive' | 'outlook' | 'plaid' | 'postgres' | 'resend' | 'salesforce' | 'sendgrid' | 'sharepoint' | 'slack' | 'slack-agent' | 'slack-agent-builder' | 'slack-deployed-agent' | 'snowflake' | 'spotify' | 'stripe' | 'stripe-agent-sandbox' | 'twilio' | 'workato' | 'youtube' | 'zendesk' | 'zoom'; created_at: string; external: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; name: string; standard: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; updated_at: string; auth_type?: string | null; category?: string | null; logo_url?: string | null; platforms?: Array<'web' | 'mobile' | 'desktop'> | null; stage?: 'alpha' | 'beta' | 'ga' | null; version?: string | null; } export interface AssignConnectionResponse { /** * The id of the connection, starts with `conn_` */ id: string; assignments?: Array<AssignConnectionResponse.Assignment>; } export namespace AssignConnectionResponse { export interface Assignment { repl_id: string; webhook_url?: string; } } export interface CheckConnectionResponse { id: string; health_check_result?: { [key: string]: unknown } | null; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; } export type ConnectorRpcResponse = { [key: string]: unknown }; /** * The connection details */ export type CreateConnectionResponse = | CreateConnectionResponse.ConnectorAcmeApikeyDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorAcmeOauth2DiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorAgentmailDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorAsanaDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorBigqueryDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorBitbucketSourceControlDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorBitbucketDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorBoxDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorCalendlyDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorClickupDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorConfluenceDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorDatabricksDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorDiscordDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorDropboxDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorFigmaDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorGitHubSourceControlDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorGitHubDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorGitlabSourceControlDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorGoogleCalendarDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorGoogleDocsDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorGoogleDriveDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorGoogleMailDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorGoogleSheetDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorGoogleSlidesDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorHubspotDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorInstagramDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorJiraDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorLinearDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorMondayDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorNotionDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorOnedriveDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorOutlookDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorSalesforceDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorSharepointDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorSlackDeployedAgentDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorSlackDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorSnowflakeDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorSpotifyDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorYoutubeDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorZendeskDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorZoomDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorApolloDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorCustomMcpDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorPlaidDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorPostgresDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorResendDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorSendgridDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorSlackAgentDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorSlackAgentBuilderDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorStripeDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorStripeAgentSandboxDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorTwilioDiscriminatedConnectionSettings | CreateConnectionResponse.ConnectorWorkatoDiscriminatedConnectionSettings; export namespace CreateConnectionResponse { export interface ConnectorAcmeApikeyDiscriminatedConnectionSettings { connector_name: 'acme-apikey'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorAcmeApikeyDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorAcmeApikeyDiscriminatedConnectionSettings { export interface Settings { api_key: string; } } export interface ConnectorAcmeOauth2DiscriminatedConnectionSettings { connector_name: 'acme-oauth2'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorAcmeOauth2DiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorAcmeOauth2DiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorAgentmailDiscriminatedConnectionSettings { connector_name: 'agentmail'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorAgentmailDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorAgentmailDiscriminatedConnectionSettings { export interface Settings { api_key: string; } } export interface ConnectorAsanaDiscriminatedConnectionSettings { connector_name: 'asana'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorAsanaDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorAsanaDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorBigqueryDiscriminatedConnectionSettings { connector_name: 'bigquery'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorBigqueryDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorBigqueryDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Your Google Cloud Project ID (e.g., my-project-123). This is required to make * API calls to BigQuery. */ project_id: string; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorBitbucketSourceControlDiscriminatedConnectionSettings { connector_name: 'bitbucket-source-control'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorBitbucketSourceControlDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorBitbucketSourceControlDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorBitbucketDiscriminatedConnectionSettings { connector_name: 'bitbucket'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorBitbucketDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorBitbucketDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorBoxDiscriminatedConnectionSettings { connector_name: 'box'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorBoxDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorBoxDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorCalendlyDiscriminatedConnectionSettings { connector_name: 'calendly'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorCalendlyDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorCalendlyDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorClickupDiscriminatedConnectionSettings { connector_name: 'clickup'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorClickupDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorClickupDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorConfluenceDiscriminatedConnectionSettings { connector_name: 'confluence'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorConfluenceDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorConfluenceDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Your Atlassian site URL (e.g., https://your-domain.atlassian.net) */ site_url: string; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorDatabricksDiscriminatedConnectionSettings { connector_name: 'databricks'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorDatabricksDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorDatabricksDiscriminatedConnectionSettings { export interface Settings { /** * The HTTP path for your SQL warehouse. To find this, go to your SQL warehouse in * Databricks and click the "Connection details" button. Copy the HTTP path value. */ http_path: string; oauth: Settings.OAuth; /** * The server hostname for your SQL warehouse. To find this, go to your SQL * warehouse in Databricks and click the "Connection details" button. Copy the * Server hostname value. */ server_hostname: string; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorDiscordDiscriminatedConnectionSettings { connector_name: 'discord'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorDiscordDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorDiscordDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorDropboxDiscriminatedConnectionSettings { connector_name: 'dropbox'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorDropboxDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorDropboxDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorFigmaDiscriminatedConnectionSettings { connector_name: 'figma'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorFigmaDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorFigmaDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorGitHubSourceControlDiscriminatedConnectionSettings { connector_name: 'github-source-control'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorGitHubSourceControlDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorGitHubSourceControlDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorGitHubDiscriminatedConnectionSettings { connector_name: 'github'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorGitHubDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorGitHubDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorGitlabSourceControlDiscriminatedConnectionSettings { connector_name: 'gitlab-source-control'; id?: string; connector?: TopLevelAPI.Connector; connector_config_id?: string | null; created_at?: string; customer_id?: string | null; disabled?: boolean | null; display_name?: string | null; environment?: 'production' | 'development'; integration?: TopLevelAPI.Integration; integration_id?: string | null; /** * JSON object can can be used to associate arbitrary metadata to avoid needing a * separate 1-1 table just for simple key values in your application. During * updates this object will be shallowly merged */ metadata?: { [key: string]: unknown } | null; settings?: ConnectorGitlabSourceControlDiscriminatedConnectionSettings.Settings; status?: 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | null; status_message?: string | null; updated_at?: string; webhook_config?: string | number | boolean | { [key: string]: unknown } | Array<unknown> | null; webhook_configured_at?: string | null; webhook_identifier?: string | null; } export namespace ConnectorGitlabSourceControlDiscriminatedConnectionSettings { export interface Settings { oauth: Settings.OAuth; /** * Same as oauth.credentials.access_token, but more convenient to access. Optional * for backward compatibility until we remove the oauth field */ access_token?: string; } export namespace Settings { export interface OAuth { created_at?: string; /** * Output of the postConnect hook for oauth2 connectors */ credentials?: OAuth.Credentials; last_fetched_at?: string; metadata?: { [key: string]: unknown } | null; updated_at?: string; } export namespace OAuth { /** * Output of the postConnect hook for oauth2 connectors */ export interface Credentials { access_token: string; /** * Client ID used for the connection */ client_id?: string; expires_at?: string; expires_in?: number; raw?: { [key: string]: unknown }; refresh_token?: string; scope?: string; token_type?: string; } } } } export interface ConnectorGoogleCalendarDiscriminatedConnectionSettings { connector_name: 'google-calendar'; id?: string; connector?: TopLevelAPI.Connector