import {z} from 'zod' export type IntegrationType = 'postgres' | 'acumatica' | 'aircall' | 'amplitude' | 'attio' | 'bigquery' | 'cube' | 'custom' | 'ducklake' | 'excel' | 'facebookads' | 'facebookads_system_user' | 'gcs' | 'googleads' | 'googleanalytics' | 'googlesearchconsole' | 'googlesheets' | 'hubspot' | 'iceberg' | 'linkedinads' | 'linkedinpages' | 'mavenlink' | 'mysql' | 'omnisend' | 'pipedrive' | 'twilio' | 'quickbooks' | 'redshift' | 'salesforce' | 'salesloft' | 'sharepointsites' | 'sheets' | 'shopify' | 'slack' | 'snowflake' | 'sqlserver' | 's3' | 'abicart' | 'abra' | 'activecampaign' | 'acuite' | 'adp' | 'aftership' | 'aha' | 'airtable' | 'amazonadvertising' | 'amazonassociates' | 'amazonsellingpartner' | 'anvil' | 'apaleo' | 'appstore' | 'applehealth' | 'asknicely' | 'atinternet' | 'awscloudtrail' | 'awscognito' | 'awscostexplorer' | 'bamboohr' | 'hellobaton' | 'bazaarvoice' | 'bexio' | 'bigmarker' | 'brillium' | 'canvas' | 'chorusai' | 'clickcast' | 'clickup' | 'clientsuccess' | 'closeio' | 'cloudwatch' | 'coingecko' | 'currencyfreaks' | 'dagster' | 'dashhudson' | 'datadog' | 'dearsystems' | 'dixa' | 'domo' | 'emarsys' | 'fastly' | 'fishbowl' | 'freshdesk' | 'freshcaller' | 'freshworks' | 'fullstory' | 'gainsightpx' | 'github' | 'gladly' | 'gong' | 'greenhouse' | 'holidays' | 'hotjar' | 'immuta' | 'instagram' | 'iterable' | 'intercom' | 'jira' | 'jotform' | 'judgeme' | 'keap' | 'klaviyo' | 'krow' | 'lessonly' | 'lightdash' | 'linear' | 'loopreturns' | 'maestroqa' | 'mailerlite' | 'mailjet' | 'marketo' | 'marketplacer' | 'netohq' | 'megaphone' | 'memberful' | 'mercadopago' | 'meshstack' | 'messagebird' | 'metronome' | 'mixpanel' | 'msgraph' | 'mindstamp' | 'miro' | 'mode' | 'monday' | 'mongodb' | 'montapacking' | 'moosend' | 'netlify' | 'netrivals' | 'netsuite' | 'niceincontact' | 'notion' | 'okta' | 'ordoro' | 'partnerize' | 'partoo' | 'peloton' | 'picqer' | 'plentymarkets' | 'getpocket' | 'podbean' | 'pulumicloud' | 'qls' | 'qualified' | 'readthedocs' | 'recruitee' | 'recurly' | 'sailthru' | 'segment' | 'sellsy' | 'sendinblue' | 'shipbob' | 'shiphero' | 'shipstation' | 'shoplazza' | 'showpad' | 'sleeper' | 'smartsheet' | 'square' | 'stamped' | 'stripe' | 'sumologic' | 'talkable' | 'thinkific' | 'tiktokads' | 'tradera' | 'travefy' | 'trustrace' | 'typeform' | 'udemyforbusiness' | 'unleashed' | 'veeqo' | 'webflow' | 'woocommerce' | 'zammad' | 'zendesk' | 'zohocrm'; export type IntegrationETLConfig = {dest_integration_id: string, dest_schema?: string | undefined, schedule_cron?: (string | null) | undefined, overwrite_tables?: boolean | undefined, partition_fields?: (string | null) | undefined, ducklake_pod_memory_override?: (number | null) | undefined, load_method?: string | undefined, parallel_draining?: boolean | undefined, auto_cast_timestamps?: boolean | undefined, max_record_age_minutes?: number | undefined, replace_on_no_pk_extraction?: boolean | undefined, select_filter?: (string | null) | undefined, select_custom_objects?: (string | null) | undefined, metadata?: (string | null) | undefined, infer_dest_schemas?: (boolean | null) | undefined, dest_schema_mapping?: (string | null) | undefined, dates_as_string?: boolean | undefined, max_record_count?: (number | null) | undefined}; export type IntegrationDetailsSchemaFastly = {name?: string | undefined, integration_type?: 'fastly' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'fastly' | undefined, tap_variant?: string | undefined, api_token?: string | undefined}; export type IntegrationDetailsSchemaAirtable = {name?: string | undefined, integration_type?: 'airtable' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'airtable' | undefined, tap_variant?: string | undefined, token?: string | undefined}; export type IntegrationDetailsSchemaUdemyForBusiness = {name?: string | undefined, integration_type?: 'udemyforbusiness' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'udemyforbusiness' | undefined, tap_variant?: string | undefined, organization_id: number, organization_name?: string | undefined, client_id?: string | undefined, client_secret?: string | undefined}; export type IntegrationDetailsSchemaGetPocket = {name?: string | undefined, integration_type?: 'getpocket' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'getpocket' | undefined, tap_variant?: string | undefined, consumer_key?: string | undefined, access_token?: string | undefined}; export type IntegrationDetailsSchemaSellsy = {name?: string | undefined, integration_type?: 'sellsy' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'sellsy' | undefined, tap_variant?: string | undefined, client_secret?: string | undefined, client_id?: string | undefined}; export type IntegrationDetailsSchemaShopify = {name?: string | undefined, integration_type?: 'shopify' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'shopify' | undefined, access_token?: string | undefined, client_id?: string | undefined, client_secret?: string | undefined, store: string}; export type IntegrationDetailsSchemaMailjet = {name?: string | undefined, integration_type?: 'mailjet' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'mailjet' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, api_secret?: string | undefined}; export type IntegrationDetailsSchemaLinkedinPagesInput = {name?: string | undefined, integration_type?: 'linkedinpages' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'linkedinpages' | undefined, tap_variant?: string | undefined, orgId?: string | undefined}; export type IntegrationDetailsSchemaTrustrace = {name?: string | undefined, integration_type?: 'trustrace' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'trustrace' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaMaestroqa = {name?: string | undefined, integration_type?: 'maestroqa' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'maestroqa' | undefined, tap_variant?: string | undefined, api_token?: string | undefined}; export type IntegrationDetailsSchemaOmnisend = {name?: string | undefined, integration_type?: 'omnisend' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'omnisend' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaPeloton = {name?: string | undefined, integration_type?: 'peloton' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'peloton' | undefined, tap_variant?: string | undefined, username?: string | undefined, password?: string | undefined}; export type IntegrationDetailsSchemaKlaviyo = {name?: string | undefined, integration_type?: 'klaviyo' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'klaviyo' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaStamped = {name?: string | undefined, integration_type?: 'stamped' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'stamped' | undefined, tap_variant?: string | undefined, public_key?: string | undefined, private_key?: string | undefined}; export type IntegrationDetailsSchemaAbicart = {name?: string | undefined, integration_type?: 'abicart' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'abicart' | undefined, tap_variant?: string | undefined, password?: string | undefined, username?: string | undefined, webshop?: string | undefined}; export type IntegrationDetailsSchemaGithub = {name?: string | undefined, integration_type?: 'github' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'github' | undefined, tap_variant?: string | undefined, repository?: string | undefined, access_token?: string | undefined}; export type IntegrationDetailsSchemaRecurly = {name?: string | undefined, integration_type?: 'recurly' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'recurly' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, subdomain?: string | undefined}; export type IntegrationDetailsSchemaThinkific = {name?: string | undefined, integration_type?: 'thinkific' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'thinkific' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, subdomain?: string | undefined}; export type IntegrationDetailsSchemaBexio = {name?: string | undefined, integration_type?: 'bexio' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'bexio' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaSmartsheet = {name?: string | undefined, integration_type?: 'smartsheet' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'smartsheet' | undefined, tap_variant?: string | undefined, smartsheet_access_token?: string | undefined}; export type IntegrationDetailsSchemaKrow = {name?: string | undefined, integration_type?: 'krow' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'krow' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaJudgeme = {name?: string | undefined, integration_type?: 'judgeme' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'judgeme' | undefined, tap_variant?: string | undefined, shop_domain?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaFreshdesk = {name?: string | undefined, integration_type?: 'freshdesk' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'freshdesk' | undefined, tap_variant?: string | undefined, domain?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaAskNicely = {name?: string | undefined, integration_type?: 'asknicely' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'asknicely' | undefined, tap_variant?: string | undefined, subdomain?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaOrdoro = {name?: string | undefined, integration_type?: 'ordoro' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'ordoro' | undefined, tap_variant?: string | undefined, client_secret?: string | undefined, client_id?: string | undefined}; export type IntegrationDetailsSchemaAcumatica = {name?: string | undefined, integration_type?: 'acumatica' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'acumatica' | undefined, tap_variant?: string | undefined, tenant?: string | undefined, username?: string | undefined, password?: string | undefined, select_filter?: (string | null) | undefined}; export type IntegrationDetailsSchemaIceberg = {name?: string | undefined, integration_type?: 'iceberg' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'iceberg' | undefined, gcs_access_key?: (string | null) | undefined, gcs_secret?: (string | null) | undefined, trino_catalog_name?: (string | null) | undefined, primary_key_mapping?: (string | null) | undefined, duckdb_sync_config?: (string | null) | undefined}; export type IntegrationDetailsSchemaClientSuccess = {name?: string | undefined, integration_type?: 'clientsuccess' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'clientsuccess' | undefined, tap_variant?: string | undefined, username?: string | undefined, password?: string | undefined}; export type IntegrationDetailsSchemaInstagramInput = {name?: string | undefined, integration_type?: 'instagram' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'instagram' | undefined, tap_variant?: string | undefined, igUserIds?: string | undefined}; export type IntegrationDetailsSchemaShipbob = {name?: string | undefined, integration_type?: 'shipbob' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'shipbob' | undefined, tap_variant?: string | undefined, access_token?: string | undefined}; export type IntegrationDetailsSchemaJira = {name?: string | undefined, integration_type?: 'jira' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'jira' | undefined, tap_variant?: string | undefined, domain?: string | undefined, email?: string | undefined, apiToken?: string | undefined, startDate?: string | undefined, cloudId?: (string | null) | undefined}; export type IntegrationDetailsSchemaGoogleAnalyticsInput = {name?: string | undefined, integration_type?: 'googleanalytics' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'googleanalytics' | undefined, tap_variant?: string | undefined, property_id: string}; export type IntegrationDetailsSchemaGoogleAdsInput = {name?: string | undefined, integration_type?: 'googleads' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'googleads' | undefined, tap_variant?: string | undefined, login_customer_id: string, start_date?: string | undefined}; export type IntegrationDetailsSchemaMiro = {name?: string | undefined, integration_type?: 'miro' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'miro' | undefined, tap_variant?: string | undefined, organization_id?: string | undefined, access_token?: string | undefined}; export type IntegrationDetailsSchemaDomo = {name?: string | undefined, integration_type?: 'domo' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'domo' | undefined, tap_variant?: string | undefined, data_specs?: string | undefined, client_secret?: string | undefined, client_id?: string | undefined}; export type IntegrationDetailsSchemaBrillium = {name?: string | undefined, integration_type?: 'brillium' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'brillium' | undefined, tap_variant?: string | undefined, base_uri?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaPlentymarkets = {name?: string | undefined, integration_type?: 'plentymarkets' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'plentymarkets' | undefined, tap_variant?: string | undefined, username?: string | undefined, password?: string | undefined, api_url?: string | undefined}; export type IntegrationDetailsSchemaMavenLink = {name?: string | undefined, integration_type?: 'mavenlink' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'mavenlink' | undefined, tap_variant?: string | undefined, token?: string | undefined}; export type IntegrationDetailsSchemaCloudwatch = {name?: string | undefined, integration_type?: 'cloudwatch' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'cloudwatch' | undefined, tap_variant?: string | undefined, query?: string | undefined, log_group_name?: string | undefined}; export type IntegrationDetailsSchemaWebflow = {name?: string | undefined, integration_type?: 'webflow' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'webflow' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, site_id?: string | undefined}; export type IntegrationDetailsSchemaAmazonSellingPartnerInput = {name?: string | undefined, integration_type?: 'amazonsellingpartner' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'amazonsellingpartner' | undefined, tap_variant?: string | undefined, marketplaces?: Array | undefined, start_date?: string | undefined}; export type IntegrationDetailsSchemaMontapacking = {name?: string | undefined, integration_type?: 'montapacking' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'montapacking' | undefined, tap_variant?: string | undefined, username?: string | undefined, password?: string | undefined}; export type IntegrationDetailsSchemaChorusai = {name?: string | undefined, integration_type?: 'chorusai' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'chorusai' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaCurrencyFreaks = {name?: string | undefined, integration_type?: 'currencyfreaks' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'currencyfreaks' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaRecruitee = {name?: string | undefined, integration_type?: 'recruitee' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'recruitee' | undefined, tap_variant?: string | undefined, url?: string | undefined, company_id?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaHellobaton = {name?: string | undefined, integration_type?: 'hellobaton' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'hellobaton' | undefined, tap_variant?: string | undefined, company?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaFacebookAdsInput = {name?: string | undefined, integration_type?: 'facebookads' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'facebookads' | undefined, tap_variant?: string | undefined, accountId?: string | undefined, start_date?: string | undefined}; export type IntegrationDetailsSchemaCube = {name?: string | undefined, integration_type?: 'cube' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'cube' | undefined, dbIntegrationId?: string | undefined, enable_cache?: boolean | undefined}; export type IntegrationDetailsSchemaZendesk = {name?: string | undefined, integration_type?: 'zendesk' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'zendesk' | undefined, tap_variant?: string | undefined, email?: string | undefined, api_token?: string | undefined, subdomain?: string | undefined}; export type IntegrationDetailsSchemaPulumiCloud = {name?: string | undefined, integration_type?: 'pulumicloud' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'pulumicloud' | undefined, tap_variant?: string | undefined, token?: string | undefined, organizations?: string | undefined}; export type IntegrationDetailsSchemaNetsuite = {name?: string | undefined, integration_type?: 'netsuite' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'netsuite' | undefined, tap_variant?: string | undefined, ns_account?: string | undefined, ns_token_key?: string | undefined, ns_token_secret?: string | undefined, ns_consumer_key?: string | undefined, ns_consumer_secret?: string | undefined}; export type IntegrationDetailsSchemaShiphero = {name?: string | undefined, integration_type?: 'shiphero' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'shiphero' | undefined, tap_variant?: string | undefined, refresh_token?: string | undefined, start_date?: string | undefined}; export type IntegrationDetailsSchemaAnvil = {name?: string | undefined, integration_type?: 'anvil' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'anvil' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaGainsightPx = {name?: string | undefined, integration_type?: 'gainsightpx' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'gainsightpx' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaSqlServer = {name?: string | undefined, integration_type?: 'sqlserver' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, use_static_egress_ip?: boolean | undefined, display_name?: string | undefined, discriminator?: 'sqlserver' | undefined, username: string, password: string, host: string, port: number, database: string, multi_subnet_availability_group?: boolean | undefined}; export type IntegrationDetailsSchemaNetlify = {name?: string | undefined, integration_type?: 'netlify' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'netlify' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaTravefy = {name?: string | undefined, integration_type?: 'travefy' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'travefy' | undefined, tap_variant?: string | undefined, public_key?: string | undefined, private_key?: string | undefined}; export type IntegrationDetailsSchemaAmazonAdvertisingInput = {name?: string | undefined, integration_type?: 'amazonadvertising' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'amazonadvertising' | undefined}; export type IntegrationDetailsSchemaTikTokAds = {name?: string | undefined, integration_type?: 'tiktokads' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'tiktokads' | undefined, access_token?: string | undefined, advertiserId?: string | undefined, startDate?: string | undefined, lookback?: number | undefined}; export type IntegrationDetailsSchemaJotform = {name?: string | undefined, integration_type?: 'jotform' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'jotform' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaMixpanel = {name?: string | undefined, integration_type?: 'mixpanel' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'mixpanel' | undefined, tap_variant?: string | undefined, api_secret?: string | undefined, project_timezone?: string | undefined, date_window_size?: number | undefined, attribution_window?: number | undefined, start_date?: string | undefined, is_eu_data_residency?: boolean | undefined}; export type IntegrationDetailsSchemaBambooHr = {name?: string | undefined, integration_type?: 'bamboohr' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'bamboohr' | undefined, tap_variant?: string | undefined, subdomain?: string | undefined, field_mismatch?: {[key: string]: unknown} | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaMessagebird = {name?: string | undefined, integration_type?: 'messagebird' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'messagebird' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaPipedrive = {name?: string | undefined, integration_type?: 'pipedrive' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'pipedrive' | undefined, tap_variant?: string | undefined, api_token?: string | undefined, start_date?: string | undefined}; export type IntegrationDetailsSchemaNetohq = {name?: string | undefined, integration_type?: 'netohq' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'netohq' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, username?: string | undefined, url?: string | undefined}; export type IntegrationDetailsSchemaSharepointSitesInput = {name?: string | undefined, integration_type?: 'sharepointsites' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'sharepointsites' | undefined, tap_variant?: string | undefined, api_url: string, target_table_name: string, file_name: string, folder?: (string | null) | undefined, file_type?: string | undefined, sheet_name?: (string | null) | undefined, min_row?: (number | null) | undefined, max_row?: (number | null) | undefined, min_col?: (number | null) | undefined, max_col?: (number | null) | undefined}; export type IntegrationDetailsSchemaMemberful = {name?: string | undefined, integration_type?: 'memberful' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'memberful' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaTalkable = {name?: string | undefined, integration_type?: 'talkable' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'talkable' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, site_slug?: string | undefined}; export type IntegrationDetailsSchemaNotionInput = {name?: string | undefined, integration_type?: 'notion' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'notion' | undefined, tap_variant?: string | undefined}; export type IntegrationDetailsSchemaHolidays = {name?: string | undefined, integration_type?: 'holidays' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'holidays' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaMonday = {name?: string | undefined, integration_type?: 'monday' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'monday' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaAmazonAssociates = {name?: string | undefined, integration_type?: 'amazonassociates' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'amazonassociates' | undefined, tap_variant?: string | undefined, username?: string | undefined, password?: string | undefined}; export type IntegrationDetailsSchemaAwsCognito = {name?: string | undefined, integration_type?: 'awscognito' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'awscognito' | undefined, tap_variant?: string | undefined, pool_id?: string | undefined}; export type IntegrationDetailsSchemaShoplazza = {name?: string | undefined, integration_type?: 'shoplazza' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'shoplazza' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaDixa = {name?: string | undefined, integration_type?: 'dixa' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'dixa' | undefined, tap_variant?: string | undefined, api_token?: string | undefined}; export type IntegrationDetailsSchemaOkta = {name?: string | undefined, integration_type?: 'okta' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'okta' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, service_url?: string | undefined}; export type IntegrationDetailsSchemaMarketplacer = {name?: string | undefined, integration_type?: 'marketplacer' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'marketplacer' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaKeap = {name?: string | undefined, integration_type?: 'keap' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'keap' | undefined, tap_variant?: string | undefined, client_id?: string | undefined, client_secret?: string | undefined}; export type IntegrationDetailsSchemaAcuite = {name?: string | undefined, integration_type?: 'acuite' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'acuite' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaActiveCampaign = {name?: string | undefined, integration_type?: 'activecampaign' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'activecampaign' | undefined, tap_variant?: string | undefined, api_url?: string | undefined, api_token?: string | undefined, start_date?: string | undefined, user_agent?: string | undefined}; export type IntegrationDetailsSchemaLightdash = {name?: string | undefined, integration_type?: 'lightdash' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'lightdash' | undefined, tap_variant?: string | undefined, url?: string | undefined}; export type IntegrationDetailsSchemaTypeform = {name?: string | undefined, integration_type?: 'typeform' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'typeform' | undefined, tap_variant?: string | undefined, personal_access_token?: string | undefined}; export type IntegrationDetailsSchemaSegment = {name?: string | undefined, integration_type?: 'segment' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'segment' | undefined, tap_variant?: string | undefined, api_token?: string | undefined}; export type IntegrationDetailsSchemaMailerlite = {name?: string | undefined, integration_type?: 'mailerlite' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'mailerlite' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaIterable = {name?: string | undefined, integration_type?: 'iterable' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'iterable' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, api_window_in_days?: number | undefined}; export type IntegrationDetailsSchemaTwilio = {name?: string | undefined, integration_type?: 'twilio' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'twilio' | undefined, tap_variant?: string | undefined, account_sid?: string | undefined, auth_token?: string | undefined, start_date?: string | undefined}; export type IntegrationDetailsSchemaRedshift = {name?: string | undefined, integration_type?: 'redshift' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, username: string, password: string, host: string, port: number, database: string, use_static_egress_ip?: boolean | undefined, display_name?: string | undefined, discriminator?: 'redshift' | undefined}; export type IntegrationDetailsSchemaBigMarker = {name?: string | undefined, integration_type?: 'bigmarker' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'bigmarker' | undefined, tap_variant?: string | undefined, api_url?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaLoopreturns = {name?: string | undefined, integration_type?: 'loopreturns' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'loopreturns' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaLessonly = {name?: string | undefined, integration_type?: 'lessonly' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'lessonly' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, subdomain?: string | undefined}; export type SshConfig = {server?: string | undefined, port?: number | undefined, user?: string | undefined, private_key?: (string | null) | undefined}; export type IntegrationDetailsSchemaMySql = {name?: string | undefined, integration_type?: 'mysql' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, username: string, password: string, host: string, port: number, database: string, use_static_egress_ip?: boolean | undefined, display_name?: string | undefined, discriminator?: 'mysql' | undefined, ssh_config?: (SshConfig | null) | undefined}; export type IntegrationDetailsSchemaPartoo = {name?: string | undefined, integration_type?: 'partoo' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'partoo' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaFacebookAdsSystemUser = {name?: string | undefined, integration_type?: 'facebookads_system_user' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'facebookads_system_user' | undefined, tap_variant?: string | undefined, access_token?: string | undefined, accountId?: string | undefined, startDate?: string | undefined}; export type IntegrationDetailsSchemaSquare = {name?: string | undefined, integration_type?: 'square' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'square' | undefined, tap_variant?: string | undefined, access_token?: string | undefined}; export type IntegrationDetailsSchemaBigquery = {name?: string | undefined, integration_type?: 'bigquery' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, serviceAccountKey?: ({[key: string]: unknown} | null) | undefined, project_id?: (string | null) | undefined, discriminator?: 'bigquery' | undefined, display_name?: string | undefined}; export type IntegrationDetailsSchemaSleeper = {name?: string | undefined, integration_type?: 'sleeper' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'sleeper' | undefined, tap_variant?: string | undefined, sport?: string | undefined}; export type IntegrationDetailsSchemaDatadog = {name?: string | undefined, integration_type?: 'datadog' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'datadog' | undefined, tap_variant?: string | undefined, app_key?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaSumologic = {name?: string | undefined, integration_type?: 'sumologic' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'sumologic' | undefined, tap_variant?: string | undefined, sumologic_access_id?: string | undefined, sumologic_access_key?: string | undefined, sumologic_root_url?: string | undefined}; export type IntegrationDetailsSchemaGreenhouse = {name?: string | undefined, integration_type?: 'greenhouse' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'greenhouse' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaZohoCrmInput = {name?: string | undefined, integration_type?: 'zohocrm' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'zohocrm' | undefined, tap_variant?: string | undefined, start_date?: string | undefined}; export type IntegrationDetailsSchemaShipstation = {name?: string | undefined, integration_type?: 'shipstation' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'shipstation' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, api_secret?: string | undefined, default_start_datetime?: string | undefined}; export type IntegrationDetailsSchemaSalesforceInput = {name?: string | undefined, integration_type?: 'salesforce' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'salesforce' | undefined, tap_variant?: string | undefined, login_domain?: string | undefined}; export type IntegrationDetailsSchemaNiceIncontact = {name?: string | undefined, integration_type?: 'niceincontact' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'niceincontact' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, api_secret?: string | undefined, api_cluster?: string | undefined}; export type IntegrationDetailsSchemaFullstory = {name?: string | undefined, integration_type?: 'fullstory' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'fullstory' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaSendinblue = {name?: string | undefined, integration_type?: 'sendinblue' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'sendinblue' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaZammad = {name?: string | undefined, integration_type?: 'zammad' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'zammad' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined, api_base_url?: string | undefined}; export type IntegrationDetailsSchemaSlackInput = {name?: string | undefined, integration_type?: 'slack' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'slack' | undefined, slack_team_id?: string | undefined}; export type IntegrationDetailsSchemaPodBean = {name?: string | undefined, integration_type?: 'podbean' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'podbean' | undefined, tap_variant?: string | undefined, client_secret?: string | undefined, client_id?: string | undefined}; export type IntegrationDetailsSchemaMindstamp = {name?: string | undefined, integration_type?: 'mindstamp' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'mindstamp' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaAppleHealth = {name?: string | undefined, integration_type?: 'applehealth' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'applehealth' | undefined, tap_variant?: string | undefined, file_path?: string | undefined}; export type IntegrationDetailsSchemaClickcast = {name?: string | undefined, integration_type?: 'clickcast' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'clickcast' | undefined, tap_variant?: string | undefined, partner_token?: string | undefined}; export type IntegrationDetailsSchemaMarketo = {name?: string | undefined, integration_type?: 'marketo' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'marketo' | undefined, tap_variant?: string | undefined, client_id?: string | undefined, client_secret?: string | undefined, endpoint?: string | undefined}; export type IntegrationDetailsSchemaS3 = {name?: string | undefined, integration_type?: 's3' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'S3' | undefined, tap_variant?: string | undefined, access_key: string, access_key_secret: string, region: string, bucket?: (string | null) | undefined, dataset?: (string | null) | undefined, primary_key?: (string | null) | undefined, path_pattern?: (string | null) | undefined, format?: (string | null) | undefined, is_posthog?: boolean | undefined}; export type IntegrationDetailsSchemaAtInternet = {name?: string | undefined, integration_type?: 'atinternet' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'atinternet' | undefined, tap_variant?: string | undefined, site_id?: number | undefined, secret_key?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaImmuta = {name?: string | undefined, integration_type?: 'immuta' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'immuta' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, hostname?: string | undefined}; export type IntegrationDetailsSchemaClickup = {name?: string | undefined, integration_type?: 'clickup' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'clickup' | undefined, tap_variant?: string | undefined, api_token?: string | undefined}; export type IntegrationDetailsSchemaDagster = {name?: string | undefined, integration_type?: 'dagster' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'dagster' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined, api_url?: string | undefined}; export type IntegrationDetailsSchemaFishbowl = {name?: string | undefined, integration_type?: 'fishbowl' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'fishbowl' | undefined, tap_variant?: string | undefined, username?: string | undefined, password?: string | undefined, instance?: string | undefined, app_name?: string | undefined, app_id?: string | undefined}; export type IntegrationDetailsSchemaPicqer = {name?: string | undefined, integration_type?: 'picqer' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'picqer' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaStripe = {name?: string | undefined, integration_type?: 'stripe' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'stripe' | undefined, tap_variant?: string | undefined, account_id?: string | undefined, client_secret?: string | undefined, sigma_queries?: (string | null) | undefined}; export type IntegrationDetailsSchemaIntercomInput = {name?: string | undefined, integration_type?: 'intercom' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'intercom' | undefined, tap_variant?: string | undefined}; export type IntegrationDetailsSchemaDucklake = {name?: string | undefined, integration_type?: 'ducklake' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, discriminator?: 'ducklake' | undefined, display_name?: string | undefined, region?: ('US' | 'EU' | 'EUROPE-WEST2' | 'ASIA' | 'AUSTRALIA-SOUTHEAST1') | undefined, history_days?: number | undefined, batch_size_rows_override?: (number | null) | undefined, pg_host?: (string | null) | undefined, pg_port?: (number | null) | undefined, pg_supavisor_port?: (number | null) | undefined, pg_database?: (string | null) | undefined, pg_schema?: (string | null) | undefined, pg_user?: (string | null) | undefined, pg_password?: (string | null) | undefined, pg_role?: (string | null) | undefined, usePgbouncer?: boolean | undefined, pgbouncerFlaggedAt?: (string | null) | undefined, usesSharedRuntime?: boolean | undefined, gcs_bucket_path?: (string | null) | undefined, gcs_access_key_id?: (string | null) | undefined, gcs_secret_access_key?: (string | null) | undefined, gcp_service_account_email?: (string | null) | undefined, serviceAccountKey?: ({[key: string]: unknown} | null) | undefined, ducklake_max_retry_count?: (number | null) | undefined, ducklake_retry_wait_ms?: (number | null) | undefined, ducklake_retry_backoff?: (number | null) | undefined, server_url?: (string | null) | undefined, default_schema?: (string | null) | undefined, rewrite_to_integration_id?: (string | null) | undefined}; export type IntegrationDetailsSchemaSailthru = {name?: string | undefined, integration_type?: 'sailthru' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'sailthru' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, api_secret?: string | undefined, account_name?: string | undefined}; export type IntegrationDetailsSchemaVeeqo = {name?: string | undefined, integration_type?: 'veeqo' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'veeqo' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaTradera = {name?: string | undefined, integration_type?: 'tradera' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'tradera' | undefined, tap_variant?: string | undefined, app_key?: string | undefined, app_id?: string | undefined}; export type IntegrationDetailsSchemaAppStore = {name?: string | undefined, integration_type?: 'appstore' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'appstore' | undefined, tap_variant?: string | undefined, vendor?: string | undefined, key_id?: string | undefined, key_file?: string | undefined, issuer_id?: string | undefined}; export type IntegrationDetailsSchemaCloseio = {name?: string | undefined, integration_type?: 'closeio' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'closeio' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaDashHudson = {name?: string | undefined, integration_type?: 'dashhudson' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'dashhudson' | undefined, tap_variant?: string | undefined, brand_id?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaPartnerize = {name?: string | undefined, integration_type?: 'partnerize' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'partnerize' | undefined, tap_variant?: string | undefined, username?: string | undefined, publisher_id?: string | undefined, password?: string | undefined}; export type IntegrationDetailsSchemaAircall = {name?: string | undefined, integration_type?: 'aircall' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'aircall' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, api_token?: string | undefined}; export type IntegrationDetailsSchemaHubspot = {name?: string | undefined, integration_type?: 'hubspot' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'hubspot' | undefined, access_token?: string | undefined}; export type IntegrationDetailsSchemaQualified = {name?: string | undefined, integration_type?: 'qualified' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'qualified' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaGong = {name?: string | undefined, integration_type?: 'gong' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'gong' | undefined, tap_variant?: string | undefined, access_key?: string | undefined, access_key_secret?: string | undefined}; export type IntegrationDetailsSchemaCanvas = {name?: string | undefined, integration_type?: 'canvas' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'canvas' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaMegaphone = {name?: string | undefined, integration_type?: 'megaphone' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'megaphone' | undefined, tap_variant?: string | undefined, organization_id?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaGoogleSheetsInput = {name?: string | undefined, integration_type?: 'googlesheets' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'googlesheets' | undefined, tap_variant?: string | undefined, sheet_id: string, key_properties?: (string | null) | undefined, child_sheet_name?: (string | null) | undefined, stream_name?: (string | null) | undefined}; export type IntegrationDetailsSchemaSalesloft = {name?: string | undefined, integration_type?: 'salesloft' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'salesloft' | undefined, api_key: string}; export type IntegrationDetailsSchemaGoogleSearchConsoleInput = {name?: string | undefined, integration_type?: 'googlesearchconsole' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'googlesearchconsole' | undefined, tap_variant?: string | undefined, site_urls?: (string | null) | undefined}; export type IntegrationDetailsSchemaCoinGecko = {name?: string | undefined, integration_type?: 'coingecko' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'coingecko' | undefined, tap_variant?: string | undefined, token?: string | undefined}; export type IntegrationDetailsSchemaMode = {name?: string | undefined, integration_type?: 'mode' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'mode' | undefined, tap_variant?: string | undefined, workspace?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaFreshworks = {name?: string | undefined, integration_type?: 'freshworks' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'freshworks' | undefined, tap_variant?: string | undefined, org_name?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaADP = {name?: string | undefined, integration_type?: 'adp' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'adp' | undefined, tap_variant?: string | undefined, client_id?: string | undefined, client_secret?: string | undefined, public_ssl_certificate?: string | undefined, private_ssl_key?: string | undefined}; export type IntegrationDetailsSchemaGcs = {name?: string | undefined, integration_type?: 'gcs' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, serviceAccountKey?: ({[key: string]: unknown} | null) | undefined, project_id?: (string | null) | undefined, discriminator?: 'gcs' | undefined, display_name?: string | undefined}; export type IntegrationDetailsSchemaLinkedinAds = {name?: string | undefined, integration_type?: 'linkedinads' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'linkedinads' | undefined, access_token?: string | undefined, accounts?: string | undefined, campaign?: string | undefined, campaign_group?: string | undefined, creative?: string | undefined, owner?: string | undefined}; export type IntegrationDetailsSchemaApaleo = {name?: string | undefined, integration_type?: 'apaleo' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'apaleo' | undefined, tap_variant?: string | undefined, client_secret?: string | undefined, client_id?: string | undefined}; export type IntegrationDetailsSchemaCustom = {name?: string | undefined, integration_type?: 'custom' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, discriminator?: 'custom' | undefined, display_name?: string | undefined, secrets?: {[key: string]: string} | undefined} | {[key: string]: unknown}; export type IntegrationDetailsSchemaEmarsys = {name?: string | undefined, integration_type?: 'emarsys' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'emarsys' | undefined, tap_variant?: string | undefined, username?: string | undefined, secret?: string | undefined}; export type SslConfig = {certificate_authority?: string | undefined, client_certificate?: string | undefined, client_certificate_enable?: boolean | undefined, client_private_key?: string | undefined, mode?: string | undefined}; export type IntegrationDetailsSchemaPostgres = {name?: string | undefined, integration_type?: 'postgres' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, username: string, password: string, host: string, port?: number | undefined, database: string, use_static_egress_ip?: boolean | undefined, display_name?: string | undefined, discriminator?: 'postgres' | undefined, use_ssh?: boolean | undefined, ssh_config?: (SshConfig | null) | undefined, use_ssl?: boolean | undefined, ssl_config?: (SslConfig | null) | undefined}; export type IntegrationDetailsSchemaAmplitude = {name?: string | undefined, integration_type?: 'amplitude' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'amplitude' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, secret_key?: string | undefined, is_eu_data_region?: boolean | undefined, start_date?: string | undefined}; export type IntegrationDetailsSchemaHotjar = {name?: string | undefined, integration_type?: 'hotjar' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'hotjar' | undefined, tap_variant?: string | undefined, email?: string | undefined, password?: string | undefined}; export type IntegrationDetailsSchemaExcelInput = {name?: string | undefined, integration_type?: 'excel' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'excel' | undefined}; export type IntegrationDetailsSchemaWoocommerce = {name?: string | undefined, integration_type?: 'woocommerce' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'woocommerce' | undefined, tap_variant?: string | undefined, consumer_key?: string | undefined, consumer_secret?: string | undefined, site_url?: string | undefined}; export type IntegrationDetailsSchemaSheetsInput = {name?: string | undefined, integration_type?: 'sheets' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'sheets' | undefined}; export type IntegrationDetailsSchemaMongoDB = {name?: string | undefined, integration_type?: 'mongodb' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'mongodb' | undefined, tap_variant?: string | undefined, username: string, password: string, host: string, port?: number | undefined, database_includes?: string | undefined, database_excludes?: string | undefined, use_ssh?: boolean | undefined, ssh_config?: (SshConfig | null) | undefined, use_static_egress_ip?: boolean | undefined}; export type IntegrationDetailsSchemaNetrivals = {name?: string | undefined, integration_type?: 'netrivals' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'netrivals' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaMsGraph = {name?: string | undefined, integration_type?: 'msgraph' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'msgraph' | undefined, tap_variant?: string | undefined, client_secret?: string | undefined, tenant?: string | undefined, client_id?: string | undefined}; export type IntegrationDetailsSchemaSnowflake = {name?: string | undefined, integration_type?: 'snowflake' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, use_static_egress_ip?: boolean | undefined, display_name?: string | undefined, discriminator?: 'snowflake' | undefined, username: string, password: string, account: string, role: string, warehouse: string | null, database: string, asyncExec?: (boolean | null) | undefined}; export type IntegrationDetailsSchemaMoosend = {name?: string | undefined, integration_type?: 'moosend' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'moosend' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaUnleashed = {name?: string | undefined, integration_type?: 'unleashed' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'unleashed' | undefined, tap_variant?: string | undefined, api_auth_signature?: string | undefined, api_auth_id?: string | undefined, startDate?: string | undefined}; export type IntegrationDetailsSchemaBazaarvoice = {name?: string | undefined, integration_type?: 'bazaarvoice' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'bazaarvoice' | undefined, tap_variant?: string | undefined, api_version?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaQuickbooksInput = {name?: string | undefined, integration_type?: 'quickbooks' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, code: string, redirectUri?: string | undefined, accessToken?: string | undefined, timestamp?: string | undefined, expires_in?: number | undefined, refreshToken?: string | undefined, display_name?: string | undefined, discriminator?: 'quickbooks' | undefined, tap_variant?: string | undefined, realmId: string, start_date?: string | undefined}; export type IntegrationDetailsSchemaMetronome = {name?: string | undefined, integration_type?: 'metronome' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'metronome' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaAwsCostExplorer = {name?: string | undefined, integration_type?: 'awscostexplorer' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'awscostexplorer' | undefined, tap_variant?: string | undefined, secret_key?: string | undefined, metrics?: Array | undefined, granularity?: string | undefined, access_key?: string | undefined}; export type IntegrationDetailsSchemaAbra = {name?: string | undefined, integration_type?: 'abra' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'abra' | undefined, tap_variant?: string | undefined, username?: string | undefined, password?: string | undefined}; export type IntegrationDetailsSchemaLinear = {name?: string | undefined, integration_type?: 'linear' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'linear' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined, start_date?: string | undefined}; export type IntegrationDetailsSchemaMercadopago = {name?: string | undefined, integration_type?: 'mercadopago' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'mercadopago' | undefined, tap_variant?: string | undefined, auth_token?: string | undefined}; export type IntegrationDetailsSchemaGladly = {name?: string | undefined, integration_type?: 'gladly' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'gladly' | undefined, tap_variant?: string | undefined, username?: string | undefined, password?: string | undefined}; export type IntegrationDetailsSchemaAttio = {name?: string | undefined, integration_type?: 'attio' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'attio' | undefined, tap_variant?: string | undefined, access_token?: string | undefined}; export type IntegrationDetailsSchemaShowpad = {name?: string | undefined, integration_type?: 'showpad' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'showpad' | undefined, tap_variant?: string | undefined, api_key?: string | undefined, subdomain?: string | undefined}; export type IntegrationDetailsSchemaAftership = {name?: string | undefined, integration_type?: 'aftership' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'aftership' | undefined, tap_variant?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaFreshcaller = {name?: string | undefined, integration_type?: 'freshcaller' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'freshcaller' | undefined, tap_variant?: string | undefined, org_name?: string | undefined, api_key?: string | undefined}; export type IntegrationDetailsSchemaQls = {name?: string | undefined, integration_type?: 'qls' | undefined, category?: string | undefined, etlConfig?: (IntegrationETLConfig | null) | undefined, internal?: boolean | undefined, is_valid?: boolean | undefined, error?: string | undefined, display_name?: string | undefined, discriminator?: 'qls' | undefined, tap_variant?: string | undefined, company_id?: string | undefined, username?: string | undefined, password?: string | undefined}; export type AnyIntegrationDetailsSchemaInput = IntegrationDetailsSchemaFastly | IntegrationDetailsSchemaAirtable | IntegrationDetailsSchemaUdemyForBusiness | IntegrationDetailsSchemaGetPocket | IntegrationDetailsSchemaSellsy | IntegrationDetailsSchemaShopify | IntegrationDetailsSchemaMailjet | IntegrationDetailsSchemaLinkedinPagesInput | IntegrationDetailsSchemaTrustrace | IntegrationDetailsSchemaMaestroqa | IntegrationDetailsSchemaOmnisend | IntegrationDetailsSchemaPeloton | IntegrationDetailsSchemaKlaviyo | IntegrationDetailsSchemaStamped | IntegrationDetailsSchemaAbicart | IntegrationDetailsSchemaGithub | IntegrationDetailsSchemaRecurly | IntegrationDetailsSchemaThinkific | IntegrationDetailsSchemaBexio | IntegrationDetailsSchemaSmartsheet | IntegrationDetailsSchemaKrow | IntegrationDetailsSchemaJudgeme | IntegrationDetailsSchemaFreshdesk | IntegrationDetailsSchemaAskNicely | IntegrationDetailsSchemaOrdoro | IntegrationDetailsSchemaAcumatica | IntegrationDetailsSchemaIceberg | IntegrationDetailsSchemaClientSuccess | IntegrationDetailsSchemaInstagramInput | IntegrationDetailsSchemaShipbob | IntegrationDetailsSchemaJira | IntegrationDetailsSchemaGoogleAnalyticsInput | IntegrationDetailsSchemaGoogleAdsInput | IntegrationDetailsSchemaMiro | IntegrationDetailsSchemaDomo | IntegrationDetailsSchemaBrillium | IntegrationDetailsSchemaPlentymarkets | IntegrationDetailsSchemaMavenLink | IntegrationDetailsSchemaCloudwatch | IntegrationDetailsSchemaWebflow | IntegrationDetailsSchemaAmazonSellingPartnerInput | IntegrationDetailsSchemaMontapacking | IntegrationDetailsSchemaChorusai | IntegrationDetailsSchemaCurrencyFreaks | IntegrationDetailsSchemaRecruitee | IntegrationDetailsSchemaHellobaton | IntegrationDetailsSchemaFacebookAdsInput | IntegrationDetailsSchemaCube | IntegrationDetailsSchemaZendesk | IntegrationDetailsSchemaPulumiCloud | IntegrationDetailsSchemaNetsuite | IntegrationDetailsSchemaShiphero | IntegrationDetailsSchemaAnvil | IntegrationDetailsSchemaGainsightPx | IntegrationDetailsSchemaSqlServer | IntegrationDetailsSchemaNetlify | IntegrationDetailsSchemaTravefy | IntegrationDetailsSchemaAmazonAdvertisingInput | IntegrationDetailsSchemaTikTokAds | IntegrationDetailsSchemaJotform | IntegrationDetailsSchemaMixpanel | IntegrationDetailsSchemaBambooHr | IntegrationDetailsSchemaMessagebird | IntegrationDetailsSchemaPipedrive | IntegrationDetailsSchemaNetohq | IntegrationDetailsSchemaSharepointSitesInput | IntegrationDetailsSchemaMemberful | IntegrationDetailsSchemaTalkable | IntegrationDetailsSchemaNotionInput | IntegrationDetailsSchemaHolidays | IntegrationDetailsSchemaMonday | IntegrationDetailsSchemaAmazonAssociates | IntegrationDetailsSchemaAwsCognito | IntegrationDetailsSchemaShoplazza | IntegrationDetailsSchemaDixa | IntegrationDetailsSchemaOkta | IntegrationDetailsSchemaMarketplacer | IntegrationDetailsSchemaKeap | IntegrationDetailsSchemaAcuite | IntegrationDetailsSchemaActiveCampaign | IntegrationDetailsSchemaLightdash | IntegrationDetailsSchemaTypeform | IntegrationDetailsSchemaSegment | IntegrationDetailsSchemaMailerlite | IntegrationDetailsSchemaIterable | IntegrationDetailsSchemaTwilio | IntegrationDetailsSchemaRedshift | IntegrationDetailsSchemaBigMarker | IntegrationDetailsSchemaLoopreturns | IntegrationDetailsSchemaLessonly | IntegrationDetailsSchemaMySql | IntegrationDetailsSchemaPartoo | IntegrationDetailsSchemaFacebookAdsSystemUser | IntegrationDetailsSchemaSquare | IntegrationDetailsSchemaBigquery | IntegrationDetailsSchemaSleeper | IntegrationDetailsSchemaDatadog | IntegrationDetailsSchemaSumologic | IntegrationDetailsSchemaGreenhouse | IntegrationDetailsSchemaZohoCrmInput | IntegrationDetailsSchemaShipstation | IntegrationDetailsSchemaSalesforceInput | IntegrationDetailsSchemaNiceIncontact | IntegrationDetailsSchemaFullstory | IntegrationDetailsSchemaSendinblue | IntegrationDetailsSchemaZammad | IntegrationDetailsSchemaSlackInput | IntegrationDetailsSchemaPodBean | IntegrationDetailsSchemaMindstamp | IntegrationDetailsSchemaAppleHealth | IntegrationDetailsSchemaClickcast | IntegrationDetailsSchemaMarketo | IntegrationDetailsSchemaS3 | IntegrationDetailsSchemaAtInternet | IntegrationDetailsSchemaImmuta | IntegrationDetailsSchemaClickup | IntegrationDetailsSchemaDagster | IntegrationDetailsSchemaFishbowl | IntegrationDetailsSchemaPicqer | IntegrationDetailsSchemaStripe | IntegrationDetailsSchemaIntercomInput | IntegrationDetailsSchemaDucklake | IntegrationDetailsSchemaSailthru | IntegrationDetailsSchemaVeeqo | IntegrationDetailsSchemaTradera | IntegrationDetailsSchemaAppStore | IntegrationDetailsSchemaCloseio | IntegrationDetailsSchemaDashHudson | IntegrationDetailsSchemaPartnerize | IntegrationDetailsSchemaAircall | IntegrationDetailsSchemaHubspot | IntegrationDetailsSchemaQualified | IntegrationDetailsSchemaGong | IntegrationDetailsSchemaCanvas | IntegrationDetailsSchemaMegaphone | IntegrationDetailsSchemaGoogleSheetsInput | IntegrationDetailsSchemaSalesloft | IntegrationDetailsSchemaGoogleSearchConsoleInput | IntegrationDetailsSchemaCoinGecko | IntegrationDetailsSchemaMode | IntegrationDetailsSchemaFreshworks | IntegrationDetailsSchemaADP | IntegrationDetailsSchemaGcs | IntegrationDetailsSchemaLinkedinAds | IntegrationDetailsSchemaApaleo | IntegrationDetailsSchemaCustom | IntegrationDetailsSchemaEmarsys | IntegrationDetailsSchemaPostgres | IntegrationDetailsSchemaAmplitude | IntegrationDetailsSchemaHotjar | IntegrationDetailsSchemaExcelInput | IntegrationDetailsSchemaWoocommerce | IntegrationDetailsSchemaSheetsInput | IntegrationDetailsSchemaMongoDB | IntegrationDetailsSchemaNetrivals | IntegrationDetailsSchemaMsGraph | IntegrationDetailsSchemaSnowflake | IntegrationDetailsSchemaMoosend | IntegrationDetailsSchemaUnleashed | IntegrationDetailsSchemaBazaarvoice | IntegrationDetailsSchemaQuickbooksInput | IntegrationDetailsSchemaMetronome | IntegrationDetailsSchemaAwsCostExplorer | IntegrationDetailsSchemaAbra | IntegrationDetailsSchemaLinear | IntegrationDetailsSchemaMercadopago | IntegrationDetailsSchemaGladly | IntegrationDetailsSchemaAttio | IntegrationDetailsSchemaShowpad | IntegrationDetailsSchemaAftership | IntegrationDetailsSchemaFreshcaller | IntegrationDetailsSchemaQls; export type CreateIntegrationRequest = {type: IntegrationType, details: AnyIntegrationDetailsSchemaInput}; export type CreateApiV4IntegrationsArgs = {body: CreateIntegrationRequest}; export type CreateApiV4IntegrationsOptions = {baseUrl: string, fetch?: typeof fetch | undefined}; export const integrationType = z.enum(["postgres", "acumatica", "aircall", "amplitude", "attio", "bigquery", "cube", "custom", "ducklake", "excel", "facebookads", "facebookads_system_user", "gcs", "googleads", "googleanalytics", "googlesearchconsole", "googlesheets", "hubspot", "iceberg", "linkedinads", "linkedinpages", "mavenlink", "mysql", "omnisend", "pipedrive", "twilio", "quickbooks", "redshift", "salesforce", "salesloft", "sharepointsites", "sheets", "shopify", "slack", "snowflake", "sqlserver", "s3", "abicart", "abra", "activecampaign", "acuite", "adp", "aftership", "aha", "airtable", "amazonadvertising", "amazonassociates", "amazonsellingpartner", "anvil", "apaleo", "appstore", "applehealth", "asknicely", "atinternet", "awscloudtrail", "awscognito", "awscostexplorer", "bamboohr", "hellobaton", "bazaarvoice", "bexio", "bigmarker", "brillium", "canvas", "chorusai", "clickcast", "clickup", "clientsuccess", "closeio", "cloudwatch", "coingecko", "currencyfreaks", "dagster", "dashhudson", "datadog", "dearsystems", "dixa", "domo", "emarsys", "fastly", "fishbowl", "freshdesk", "freshcaller", "freshworks", "fullstory", "gainsightpx", "github", "gladly", "gong", "greenhouse", "holidays", "hotjar", "immuta", "instagram", "iterable", "intercom", "jira", "jotform", "judgeme", "keap", "klaviyo", "krow", "lessonly", "lightdash", "linear", "loopreturns", "maestroqa", "mailerlite", "mailjet", "marketo", "marketplacer", "netohq", "megaphone", "memberful", "mercadopago", "meshstack", "messagebird", "metronome", "mixpanel", "msgraph", "mindstamp", "miro", "mode", "monday", "mongodb", "montapacking", "moosend", "netlify", "netrivals", "netsuite", "niceincontact", "notion", "okta", "ordoro", "partnerize", "partoo", "peloton", "picqer", "plentymarkets", "getpocket", "podbean", "pulumicloud", "qls", "qualified", "readthedocs", "recruitee", "recurly", "sailthru", "segment", "sellsy", "sendinblue", "shipbob", "shiphero", "shipstation", "shoplazza", "showpad", "sleeper", "smartsheet", "square", "stamped", "stripe", "sumologic", "talkable", "thinkific", "tiktokads", "tradera", "travefy", "trustrace", "typeform", "udemyforbusiness", "unleashed", "veeqo", "webflow", "woocommerce", "zammad", "zendesk", "zohocrm"]); export const integrationETLConfig = z.object({dest_integration_id: z.string(), dest_schema: z.string().optional(), schedule_cron: z.string().nullable().optional(), overwrite_tables: z.boolean().optional(), partition_fields: z.string().nullable().optional(), ducklake_pod_memory_override: z.number().int().nullable().optional(), load_method: z.string().optional(), parallel_draining: z.boolean().optional(), auto_cast_timestamps: z.boolean().optional(), max_record_age_minutes: z.number().int().gte(1).optional(), replace_on_no_pk_extraction: z.boolean().optional(), select_filter: z.string().nullable().optional(), select_custom_objects: z.string().nullable().optional(), metadata: z.string().nullable().optional(), infer_dest_schemas: z.boolean().nullable().optional(), dest_schema_mapping: z.string().nullable().optional(), dates_as_string: z.boolean().optional(), max_record_count: z.number().int().gte(1).nullable().optional()}); export const integrationDetailsSchemaFastly = z.object({name: z.string().optional(), integration_type: z.literal("fastly").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("fastly").optional(), tap_variant: z.string().optional(), api_token: z.string().optional()}); export const integrationDetailsSchemaAirtable = z.object({name: z.string().optional(), integration_type: z.literal("airtable").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("airtable").optional(), tap_variant: z.string().optional(), token: z.string().optional()}); export const integrationDetailsSchemaUdemyForBusiness = z.object({name: z.string().optional(), integration_type: z.literal("udemyforbusiness").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("udemyforbusiness").optional(), tap_variant: z.string().optional(), organization_id: z.number().int(), organization_name: z.string().optional(), client_id: z.string().optional(), client_secret: z.string().optional()}); export const integrationDetailsSchemaGetPocket = z.object({name: z.string().optional(), integration_type: z.literal("getpocket").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("getpocket").optional(), tap_variant: z.string().optional(), consumer_key: z.string().optional(), access_token: z.string().optional()}); export const integrationDetailsSchemaSellsy = z.object({name: z.string().optional(), integration_type: z.literal("sellsy").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("sellsy").optional(), tap_variant: z.string().optional(), client_secret: z.string().optional(), client_id: z.string().optional()}); export const integrationDetailsSchemaShopify = z.object({name: z.string().optional(), integration_type: z.literal("shopify").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("shopify").optional(), access_token: z.string().optional(), client_id: z.string().optional(), client_secret: z.string().optional(), store: z.string()}); export const integrationDetailsSchemaMailjet = z.object({name: z.string().optional(), integration_type: z.literal("mailjet").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("mailjet").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), api_secret: z.string().optional()}); export const integrationDetailsSchemaLinkedinPagesOutput = z.object({name: z.string().optional(), integration_type: z.literal("linkedinpages").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("linkedinpages").optional(), tap_variant: z.string().optional(), orgId: z.string().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaTrustrace = z.object({name: z.string().optional(), integration_type: z.literal("trustrace").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("trustrace").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaMaestroqa = z.object({name: z.string().optional(), integration_type: z.literal("maestroqa").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("maestroqa").optional(), tap_variant: z.string().optional(), api_token: z.string().optional()}); export const integrationDetailsSchemaOmnisend = z.object({name: z.string().optional(), integration_type: z.literal("omnisend").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("omnisend").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaPeloton = z.object({name: z.string().optional(), integration_type: z.literal("peloton").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("peloton").optional(), tap_variant: z.string().optional(), username: z.string().optional(), password: z.string().optional()}); export const integrationDetailsSchemaKlaviyo = z.object({name: z.string().optional(), integration_type: z.literal("klaviyo").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("klaviyo").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaStamped = z.object({name: z.string().optional(), integration_type: z.literal("stamped").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("stamped").optional(), tap_variant: z.string().optional(), public_key: z.string().optional(), private_key: z.string().optional()}); export const integrationDetailsSchemaAbicart = z.object({name: z.string().optional(), integration_type: z.literal("abicart").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("abicart").optional(), tap_variant: z.string().optional(), password: z.string().optional(), username: z.string().optional(), webshop: z.string().optional()}); export const integrationDetailsSchemaGithub = z.object({name: z.string().optional(), integration_type: z.literal("github").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("github").optional(), tap_variant: z.string().optional(), repository: z.string().optional(), access_token: z.string().optional()}); export const integrationDetailsSchemaRecurly = z.object({name: z.string().optional(), integration_type: z.literal("recurly").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("recurly").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), subdomain: z.string().optional()}); export const integrationDetailsSchemaThinkific = z.object({name: z.string().optional(), integration_type: z.literal("thinkific").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("thinkific").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), subdomain: z.string().optional()}); export const integrationDetailsSchemaBexio = z.object({name: z.string().optional(), integration_type: z.literal("bexio").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("bexio").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaSmartsheet = z.object({name: z.string().optional(), integration_type: z.literal("smartsheet").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("smartsheet").optional(), tap_variant: z.string().optional(), smartsheet_access_token: z.string().optional()}); export const integrationDetailsSchemaKrow = z.object({name: z.string().optional(), integration_type: z.literal("krow").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("krow").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaJudgeme = z.object({name: z.string().optional(), integration_type: z.literal("judgeme").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("judgeme").optional(), tap_variant: z.string().optional(), shop_domain: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaFreshdesk = z.object({name: z.string().optional(), integration_type: z.literal("freshdesk").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("freshdesk").optional(), tap_variant: z.string().optional(), domain: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaAskNicely = z.object({name: z.string().optional(), integration_type: z.literal("asknicely").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("asknicely").optional(), tap_variant: z.string().optional(), subdomain: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaOrdoro = z.object({name: z.string().optional(), integration_type: z.literal("ordoro").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("ordoro").optional(), tap_variant: z.string().optional(), client_secret: z.string().optional(), client_id: z.string().optional()}); export const integrationDetailsSchemaAcumatica = z.object({name: z.string().optional(), integration_type: z.literal("acumatica").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("acumatica").optional(), tap_variant: z.string().optional(), tenant: z.string().optional(), username: z.string().optional(), password: z.string().optional(), select_filter: z.string().nullable().optional()}); export const integrationDetailsSchemaIceberg = z.object({name: z.string().optional(), integration_type: z.literal("iceberg").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("iceberg").optional(), gcs_access_key: z.string().nullable().optional(), gcs_secret: z.string().nullable().optional(), trino_catalog_name: z.string().nullable().optional(), primary_key_mapping: z.string().nullable().optional(), duckdb_sync_config: z.string().nullable().optional()}); export const integrationDetailsSchemaClientSuccess = z.object({name: z.string().optional(), integration_type: z.literal("clientsuccess").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("clientsuccess").optional(), tap_variant: z.string().optional(), username: z.string().optional(), password: z.string().optional()}); export const integrationDetailsSchemaInstagramOutput = z.object({name: z.string().optional(), integration_type: z.literal("instagram").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("instagram").optional(), tap_variant: z.string().optional(), igUserIds: z.string().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaShipbob = z.object({name: z.string().optional(), integration_type: z.literal("shipbob").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("shipbob").optional(), tap_variant: z.string().optional(), access_token: z.string().optional()}); export const integrationDetailsSchemaJira = z.object({name: z.string().optional(), integration_type: z.literal("jira").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("jira").optional(), tap_variant: z.string().optional(), domain: z.string().optional(), email: z.string().optional(), apiToken: z.string().optional(), startDate: z.string().optional(), cloudId: z.string().nullable().optional()}); export const integrationDetailsSchemaGoogleAnalyticsOutput = z.object({name: z.string().optional(), integration_type: z.literal("googleanalytics").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("googleanalytics").optional(), tap_variant: z.string().optional(), property_id: z.string(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaGoogleAdsOutput = z.object({name: z.string().optional(), integration_type: z.literal("googleads").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("googleads").optional(), tap_variant: z.string().optional(), login_customer_id: z.string(), start_date: z.string().optional(), client_id: z.string(), client_secret: z.string(), developer_token: z.string()}); export const integrationDetailsSchemaMiro = z.object({name: z.string().optional(), integration_type: z.literal("miro").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("miro").optional(), tap_variant: z.string().optional(), organization_id: z.string().optional(), access_token: z.string().optional()}); export const integrationDetailsSchemaDomo = z.object({name: z.string().optional(), integration_type: z.literal("domo").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("domo").optional(), tap_variant: z.string().optional(), data_specs: z.string().optional(), client_secret: z.string().optional(), client_id: z.string().optional()}); export const integrationDetailsSchemaBrillium = z.object({name: z.string().optional(), integration_type: z.literal("brillium").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("brillium").optional(), tap_variant: z.string().optional(), base_uri: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaPlentymarkets = z.object({name: z.string().optional(), integration_type: z.literal("plentymarkets").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("plentymarkets").optional(), tap_variant: z.string().optional(), username: z.string().optional(), password: z.string().optional(), api_url: z.string().optional()}); export const integrationDetailsSchemaMavenLink = z.object({name: z.string().optional(), integration_type: z.literal("mavenlink").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("mavenlink").optional(), tap_variant: z.string().optional(), token: z.string().optional()}); export const integrationDetailsSchemaCloudwatch = z.object({name: z.string().optional(), integration_type: z.literal("cloudwatch").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("cloudwatch").optional(), tap_variant: z.string().optional(), query: z.string().optional(), log_group_name: z.string().optional()}); export const integrationDetailsSchemaWebflow = z.object({name: z.string().optional(), integration_type: z.literal("webflow").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("webflow").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), site_id: z.string().optional()}); export const integrationDetailsSchemaAmazonSellingPartnerOutput = z.object({name: z.string().optional(), integration_type: z.literal("amazonsellingpartner").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("amazonsellingpartner").optional(), tap_variant: z.string().optional(), marketplaces: z.array(z.string()).optional(), start_date: z.string().optional(), client_id: z.string(), client_secret: z.string(), application_id: z.string(), lwa_client_id: z.string(), lwa_client_secret: z.string()}); export const integrationDetailsSchemaMontapacking = z.object({name: z.string().optional(), integration_type: z.literal("montapacking").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("montapacking").optional(), tap_variant: z.string().optional(), username: z.string().optional(), password: z.string().optional()}); export const integrationDetailsSchemaChorusai = z.object({name: z.string().optional(), integration_type: z.literal("chorusai").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("chorusai").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaCurrencyFreaks = z.object({name: z.string().optional(), integration_type: z.literal("currencyfreaks").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("currencyfreaks").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaRecruitee = z.object({name: z.string().optional(), integration_type: z.literal("recruitee").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("recruitee").optional(), tap_variant: z.string().optional(), url: z.string().optional(), company_id: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaHellobaton = z.object({name: z.string().optional(), integration_type: z.literal("hellobaton").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("hellobaton").optional(), tap_variant: z.string().optional(), company: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaFacebookAdsOutput = z.object({name: z.string().optional(), integration_type: z.literal("facebookads").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("facebookads").optional(), tap_variant: z.string().optional(), accountId: z.string().optional(), start_date: z.string().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaCube = z.object({name: z.string().optional(), integration_type: z.literal("cube").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("cube").optional(), dbIntegrationId: z.string().optional(), enable_cache: z.boolean().optional()}); export const integrationDetailsSchemaZendesk = z.object({name: z.string().optional(), integration_type: z.literal("zendesk").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("zendesk").optional(), tap_variant: z.string().optional(), email: z.string().optional(), api_token: z.string().optional(), subdomain: z.string().optional()}); export const integrationDetailsSchemaPulumiCloud = z.object({name: z.string().optional(), integration_type: z.literal("pulumicloud").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("pulumicloud").optional(), tap_variant: z.string().optional(), token: z.string().optional(), organizations: z.string().optional()}); export const integrationDetailsSchemaNetsuite = z.object({name: z.string().optional(), integration_type: z.literal("netsuite").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("netsuite").optional(), tap_variant: z.string().optional(), ns_account: z.string().optional(), ns_token_key: z.string().optional(), ns_token_secret: z.string().optional(), ns_consumer_key: z.string().optional(), ns_consumer_secret: z.string().optional()}); export const integrationDetailsSchemaShiphero = z.object({name: z.string().optional(), integration_type: z.literal("shiphero").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("shiphero").optional(), tap_variant: z.string().optional(), refresh_token: z.string().optional(), start_date: z.string().optional()}); export const integrationDetailsSchemaAnvil = z.object({name: z.string().optional(), integration_type: z.literal("anvil").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("anvil").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaGainsightPx = z.object({name: z.string().optional(), integration_type: z.literal("gainsightpx").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("gainsightpx").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaSqlServer = z.object({name: z.string().optional(), integration_type: z.literal("sqlserver").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), use_static_egress_ip: z.boolean().optional(), display_name: z.string().optional(), discriminator: z.literal("sqlserver").optional(), username: z.string(), password: z.string(), host: z.string(), port: z.number().int(), database: z.string(), multi_subnet_availability_group: z.boolean().optional()}); export const integrationDetailsSchemaNetlify = z.object({name: z.string().optional(), integration_type: z.literal("netlify").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("netlify").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaTravefy = z.object({name: z.string().optional(), integration_type: z.literal("travefy").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("travefy").optional(), tap_variant: z.string().optional(), public_key: z.string().optional(), private_key: z.string().optional()}); export const integrationDetailsSchemaAmazonAdvertisingOutput = z.object({name: z.string().optional(), integration_type: z.literal("amazonadvertising").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("amazonadvertising").optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaTikTokAds = z.object({name: z.string().optional(), integration_type: z.literal("tiktokads").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("tiktokads").optional(), access_token: z.string().optional(), advertiserId: z.string().optional(), startDate: z.string().optional(), lookback: z.number().int().optional()}); export const integrationDetailsSchemaJotform = z.object({name: z.string().optional(), integration_type: z.literal("jotform").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("jotform").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaMixpanel = z.object({name: z.string().optional(), integration_type: z.literal("mixpanel").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("mixpanel").optional(), tap_variant: z.string().optional(), api_secret: z.string().optional(), project_timezone: z.string().optional(), date_window_size: z.number().int().optional(), attribution_window: z.number().int().optional(), start_date: z.string().optional(), is_eu_data_residency: z.boolean().optional()}); export const integrationDetailsSchemaBambooHr = z.object({name: z.string().optional(), integration_type: z.literal("bamboohr").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("bamboohr").optional(), tap_variant: z.string().optional(), subdomain: z.string().optional(), field_mismatch: z.record(z.string(), z.unknown()).optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaMessagebird = z.object({name: z.string().optional(), integration_type: z.literal("messagebird").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("messagebird").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaPipedrive = z.object({name: z.string().optional(), integration_type: z.literal("pipedrive").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("pipedrive").optional(), tap_variant: z.string().optional(), api_token: z.string().optional(), start_date: z.string().optional()}); export const integrationDetailsSchemaNetohq = z.object({name: z.string().optional(), integration_type: z.literal("netohq").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("netohq").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), username: z.string().optional(), url: z.string().optional()}); export const integrationDetailsSchemaSharepointSitesOutput = z.object({name: z.string().optional(), integration_type: z.literal("sharepointsites").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("sharepointsites").optional(), tap_variant: z.string().optional(), api_url: z.string(), target_table_name: z.string(), file_name: z.string(), folder: z.string().nullable().optional(), file_type: z.string().optional(), sheet_name: z.string().nullable().optional(), min_row: z.number().int().nullable().optional(), max_row: z.number().int().nullable().optional(), min_col: z.number().int().nullable().optional(), max_col: z.number().int().nullable().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaMemberful = z.object({name: z.string().optional(), integration_type: z.literal("memberful").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("memberful").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaTalkable = z.object({name: z.string().optional(), integration_type: z.literal("talkable").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("talkable").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), site_slug: z.string().optional()}); export const integrationDetailsSchemaNotionOutput = z.object({name: z.string().optional(), integration_type: z.literal("notion").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("notion").optional(), tap_variant: z.string().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaHolidays = z.object({name: z.string().optional(), integration_type: z.literal("holidays").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("holidays").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaMonday = z.object({name: z.string().optional(), integration_type: z.literal("monday").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("monday").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaAmazonAssociates = z.object({name: z.string().optional(), integration_type: z.literal("amazonassociates").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("amazonassociates").optional(), tap_variant: z.string().optional(), username: z.string().optional(), password: z.string().optional()}); export const integrationDetailsSchemaAwsCognito = z.object({name: z.string().optional(), integration_type: z.literal("awscognito").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("awscognito").optional(), tap_variant: z.string().optional(), pool_id: z.string().optional()}); export const integrationDetailsSchemaShoplazza = z.object({name: z.string().optional(), integration_type: z.literal("shoplazza").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("shoplazza").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaDixa = z.object({name: z.string().optional(), integration_type: z.literal("dixa").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("dixa").optional(), tap_variant: z.string().optional(), api_token: z.string().optional()}); export const integrationDetailsSchemaOkta = z.object({name: z.string().optional(), integration_type: z.literal("okta").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("okta").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), service_url: z.string().optional()}); export const integrationDetailsSchemaMarketplacer = z.object({name: z.string().optional(), integration_type: z.literal("marketplacer").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("marketplacer").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaKeap = z.object({name: z.string().optional(), integration_type: z.literal("keap").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("keap").optional(), tap_variant: z.string().optional(), client_id: z.string().optional(), client_secret: z.string().optional()}); export const integrationDetailsSchemaAcuite = z.object({name: z.string().optional(), integration_type: z.literal("acuite").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("acuite").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaActiveCampaign = z.object({name: z.string().optional(), integration_type: z.literal("activecampaign").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("activecampaign").optional(), tap_variant: z.string().optional(), api_url: z.string().optional(), api_token: z.string().optional(), start_date: z.string().optional(), user_agent: z.string().optional()}); export const integrationDetailsSchemaLightdash = z.object({name: z.string().optional(), integration_type: z.literal("lightdash").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("lightdash").optional(), tap_variant: z.string().optional(), url: z.string().optional()}); export const integrationDetailsSchemaTypeform = z.object({name: z.string().optional(), integration_type: z.literal("typeform").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("typeform").optional(), tap_variant: z.string().optional(), personal_access_token: z.string().optional()}); export const integrationDetailsSchemaSegment = z.object({name: z.string().optional(), integration_type: z.literal("segment").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("segment").optional(), tap_variant: z.string().optional(), api_token: z.string().optional()}); export const integrationDetailsSchemaMailerlite = z.object({name: z.string().optional(), integration_type: z.literal("mailerlite").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("mailerlite").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaIterable = z.object({name: z.string().optional(), integration_type: z.literal("iterable").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("iterable").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), api_window_in_days: z.number().int().optional()}); export const integrationDetailsSchemaTwilio = z.object({name: z.string().optional(), integration_type: z.literal("twilio").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("twilio").optional(), tap_variant: z.string().optional(), account_sid: z.string().optional(), auth_token: z.string().optional(), start_date: z.string().optional()}); export const integrationDetailsSchemaRedshift = z.object({name: z.string().optional(), integration_type: z.literal("redshift").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), username: z.string(), password: z.string(), host: z.string(), port: z.number().int(), database: z.string(), use_static_egress_ip: z.boolean().optional(), display_name: z.string().optional(), discriminator: z.literal("redshift").optional()}); export const integrationDetailsSchemaBigMarker = z.object({name: z.string().optional(), integration_type: z.literal("bigmarker").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("bigmarker").optional(), tap_variant: z.string().optional(), api_url: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaLoopreturns = z.object({name: z.string().optional(), integration_type: z.literal("loopreturns").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("loopreturns").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaLessonly = z.object({name: z.string().optional(), integration_type: z.literal("lessonly").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("lessonly").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), subdomain: z.string().optional()}); export const sshConfig = z.object({server: z.string().optional(), port: z.number().int().optional(), user: z.string().optional(), private_key: z.string().nullable().optional()}); export const integrationDetailsSchemaMySql = z.object({name: z.string().optional(), integration_type: z.literal("mysql").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), username: z.string(), password: z.string(), host: z.string(), port: z.number().int(), database: z.string(), use_static_egress_ip: z.boolean().optional(), display_name: z.string().optional(), discriminator: z.literal("mysql").optional(), ssh_config: sshConfig.nullable().optional()}); export const integrationDetailsSchemaPartoo = z.object({name: z.string().optional(), integration_type: z.literal("partoo").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("partoo").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaFacebookAdsSystemUser = z.object({name: z.string().optional(), integration_type: z.literal("facebookads_system_user").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("facebookads_system_user").optional(), tap_variant: z.string().optional(), access_token: z.string().optional(), accountId: z.string().optional(), startDate: z.string().optional()}); export const integrationDetailsSchemaSquare = z.object({name: z.string().optional(), integration_type: z.literal("square").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("square").optional(), tap_variant: z.string().optional(), access_token: z.string().optional()}); export const integrationDetailsSchemaBigquery = z.object({name: z.string().optional(), integration_type: z.literal("bigquery").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), serviceAccountKey: z.record(z.string(), z.unknown()).nullable().optional(), project_id: z.string().nullable().optional(), discriminator: z.literal("bigquery").optional(), display_name: z.string().optional()}); export const integrationDetailsSchemaSleeper = z.object({name: z.string().optional(), integration_type: z.literal("sleeper").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("sleeper").optional(), tap_variant: z.string().optional(), sport: z.string().optional()}); export const integrationDetailsSchemaDatadog = z.object({name: z.string().optional(), integration_type: z.literal("datadog").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("datadog").optional(), tap_variant: z.string().optional(), app_key: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaSumologic = z.object({name: z.string().optional(), integration_type: z.literal("sumologic").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("sumologic").optional(), tap_variant: z.string().optional(), sumologic_access_id: z.string().optional(), sumologic_access_key: z.string().optional(), sumologic_root_url: z.string().optional()}); export const integrationDetailsSchemaGreenhouse = z.object({name: z.string().optional(), integration_type: z.literal("greenhouse").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("greenhouse").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaZohoCrmOutput = z.object({name: z.string().optional(), integration_type: z.literal("zohocrm").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("zohocrm").optional(), tap_variant: z.string().optional(), start_date: z.string().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaShipstation = z.object({name: z.string().optional(), integration_type: z.literal("shipstation").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("shipstation").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), api_secret: z.string().optional(), default_start_datetime: z.string().optional()}); export const integrationDetailsSchemaSalesforceOutput = z.object({name: z.string().optional(), integration_type: z.literal("salesforce").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("salesforce").optional(), tap_variant: z.string().optional(), login_domain: z.string().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaNiceIncontact = z.object({name: z.string().optional(), integration_type: z.literal("niceincontact").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("niceincontact").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), api_secret: z.string().optional(), api_cluster: z.string().optional()}); export const integrationDetailsSchemaFullstory = z.object({name: z.string().optional(), integration_type: z.literal("fullstory").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("fullstory").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaSendinblue = z.object({name: z.string().optional(), integration_type: z.literal("sendinblue").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("sendinblue").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaZammad = z.object({name: z.string().optional(), integration_type: z.literal("zammad").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("zammad").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional(), api_base_url: z.string().optional()}); export const integrationDetailsSchemaSlackOutput = z.object({name: z.string().optional(), integration_type: z.literal("slack").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("slack").optional(), slack_team_id: z.string().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaPodBean = z.object({name: z.string().optional(), integration_type: z.literal("podbean").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("podbean").optional(), tap_variant: z.string().optional(), client_secret: z.string().optional(), client_id: z.string().optional()}); export const integrationDetailsSchemaMindstamp = z.object({name: z.string().optional(), integration_type: z.literal("mindstamp").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("mindstamp").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaAppleHealth = z.object({name: z.string().optional(), integration_type: z.literal("applehealth").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("applehealth").optional(), tap_variant: z.string().optional(), file_path: z.string().optional()}); export const integrationDetailsSchemaClickcast = z.object({name: z.string().optional(), integration_type: z.literal("clickcast").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("clickcast").optional(), tap_variant: z.string().optional(), partner_token: z.string().optional()}); export const integrationDetailsSchemaMarketo = z.object({name: z.string().optional(), integration_type: z.literal("marketo").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("marketo").optional(), tap_variant: z.string().optional(), client_id: z.string().optional(), client_secret: z.string().optional(), endpoint: z.string().optional()}); export const integrationDetailsSchemaS3 = z.object({name: z.string().optional(), integration_type: z.literal("s3").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("S3").optional(), tap_variant: z.string().optional(), access_key: z.string(), access_key_secret: z.string(), region: z.string(), bucket: z.string().nullable().optional(), dataset: z.string().nullable().optional(), primary_key: z.string().nullable().optional(), path_pattern: z.string().nullable().optional(), format: z.string().nullable().optional(), is_posthog: z.boolean().optional()}); export const integrationDetailsSchemaAtInternet = z.object({name: z.string().optional(), integration_type: z.literal("atinternet").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("atinternet").optional(), tap_variant: z.string().optional(), site_id: z.number().int().optional(), secret_key: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaImmuta = z.object({name: z.string().optional(), integration_type: z.literal("immuta").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("immuta").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), hostname: z.string().optional()}); export const integrationDetailsSchemaClickup = z.object({name: z.string().optional(), integration_type: z.literal("clickup").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("clickup").optional(), tap_variant: z.string().optional(), api_token: z.string().optional()}); export const integrationDetailsSchemaDagster = z.object({name: z.string().optional(), integration_type: z.literal("dagster").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("dagster").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional(), api_url: z.string().optional()}); export const integrationDetailsSchemaFishbowl = z.object({name: z.string().optional(), integration_type: z.literal("fishbowl").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("fishbowl").optional(), tap_variant: z.string().optional(), username: z.string().optional(), password: z.string().optional(), instance: z.string().optional(), app_name: z.string().optional(), app_id: z.string().optional()}); export const integrationDetailsSchemaPicqer = z.object({name: z.string().optional(), integration_type: z.literal("picqer").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("picqer").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaStripe = z.object({name: z.string().optional(), integration_type: z.literal("stripe").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("stripe").optional(), tap_variant: z.string().optional(), account_id: z.string().optional(), client_secret: z.string().optional(), sigma_queries: z.string().nullable().optional()}); export const integrationDetailsSchemaIntercomOutput = z.object({name: z.string().optional(), integration_type: z.literal("intercom").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("intercom").optional(), tap_variant: z.string().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaDucklake = z.object({name: z.string().optional(), integration_type: z.literal("ducklake").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), discriminator: z.literal("ducklake").optional(), display_name: z.string().optional(), region: z.enum(["US", "EU", "EUROPE-WEST2", "ASIA", "AUSTRALIA-SOUTHEAST1"]).optional(), history_days: z.number().int().gte(0).optional(), batch_size_rows_override: z.number().int().nullable().optional(), pg_host: z.string().nullable().optional(), pg_port: z.number().int().nullable().optional(), pg_supavisor_port: z.number().int().nullable().optional(), pg_database: z.string().nullable().optional(), pg_schema: z.string().nullable().optional(), pg_user: z.string().nullable().optional(), pg_password: z.string().nullable().optional(), pg_role: z.string().nullable().optional(), usePgbouncer: z.boolean().optional(), pgbouncerFlaggedAt: z.string().nullable().optional(), usesSharedRuntime: z.boolean().optional(), gcs_bucket_path: z.string().nullable().optional(), gcs_access_key_id: z.string().nullable().optional(), gcs_secret_access_key: z.string().nullable().optional(), gcp_service_account_email: z.string().nullable().optional(), serviceAccountKey: z.record(z.string(), z.unknown()).nullable().optional(), ducklake_max_retry_count: z.number().int().gte(0).nullable().optional(), ducklake_retry_wait_ms: z.number().int().gte(0).nullable().optional(), ducklake_retry_backoff: z.number().gte(1).nullable().optional(), server_url: z.string().nullable().optional(), default_schema: z.string().nullable().optional(), rewrite_to_integration_id: z.string().nullable().optional()}); export const integrationDetailsSchemaSailthru = z.object({name: z.string().optional(), integration_type: z.literal("sailthru").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("sailthru").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), api_secret: z.string().optional(), account_name: z.string().optional()}); export const integrationDetailsSchemaVeeqo = z.object({name: z.string().optional(), integration_type: z.literal("veeqo").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("veeqo").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaTradera = z.object({name: z.string().optional(), integration_type: z.literal("tradera").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("tradera").optional(), tap_variant: z.string().optional(), app_key: z.string().optional(), app_id: z.string().optional()}); export const integrationDetailsSchemaAppStore = z.object({name: z.string().optional(), integration_type: z.literal("appstore").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("appstore").optional(), tap_variant: z.string().optional(), vendor: z.string().optional(), key_id: z.string().optional(), key_file: z.string().optional(), issuer_id: z.string().optional()}); export const integrationDetailsSchemaCloseio = z.object({name: z.string().optional(), integration_type: z.literal("closeio").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("closeio").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaDashHudson = z.object({name: z.string().optional(), integration_type: z.literal("dashhudson").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("dashhudson").optional(), tap_variant: z.string().optional(), brand_id: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaPartnerize = z.object({name: z.string().optional(), integration_type: z.literal("partnerize").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("partnerize").optional(), tap_variant: z.string().optional(), username: z.string().optional(), publisher_id: z.string().optional(), password: z.string().optional()}); export const integrationDetailsSchemaAircall = z.object({name: z.string().optional(), integration_type: z.literal("aircall").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("aircall").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), api_token: z.string().optional()}); export const integrationDetailsSchemaHubspot = z.object({name: z.string().optional(), integration_type: z.literal("hubspot").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("hubspot").optional(), access_token: z.string().optional()}); export const integrationDetailsSchemaQualified = z.object({name: z.string().optional(), integration_type: z.literal("qualified").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("qualified").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaGong = z.object({name: z.string().optional(), integration_type: z.literal("gong").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("gong").optional(), tap_variant: z.string().optional(), access_key: z.string().optional(), access_key_secret: z.string().optional()}); export const integrationDetailsSchemaCanvas = z.object({name: z.string().optional(), integration_type: z.literal("canvas").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("canvas").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaMegaphone = z.object({name: z.string().optional(), integration_type: z.literal("megaphone").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("megaphone").optional(), tap_variant: z.string().optional(), organization_id: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaGoogleSheetsOutput = z.object({name: z.string().optional(), integration_type: z.literal("googlesheets").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("googlesheets").optional(), tap_variant: z.string().optional(), sheet_id: z.string(), key_properties: z.string().nullable().optional(), child_sheet_name: z.string().nullable().optional(), stream_name: z.string().nullable().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaSalesloft = z.object({name: z.string().optional(), integration_type: z.literal("salesloft").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("salesloft").optional(), api_key: z.string()}); export const integrationDetailsSchemaGoogleSearchConsoleOutput = z.object({name: z.string().optional(), integration_type: z.literal("googlesearchconsole").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("googlesearchconsole").optional(), tap_variant: z.string().optional(), site_urls: z.string().nullable().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaCoinGecko = z.object({name: z.string().optional(), integration_type: z.literal("coingecko").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("coingecko").optional(), tap_variant: z.string().optional(), token: z.string().optional()}); export const integrationDetailsSchemaMode = z.object({name: z.string().optional(), integration_type: z.literal("mode").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("mode").optional(), tap_variant: z.string().optional(), workspace: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaFreshworks = z.object({name: z.string().optional(), integration_type: z.literal("freshworks").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("freshworks").optional(), tap_variant: z.string().optional(), org_name: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaADP = z.object({name: z.string().optional(), integration_type: z.literal("adp").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("adp").optional(), tap_variant: z.string().optional(), client_id: z.string().optional(), client_secret: z.string().optional(), public_ssl_certificate: z.string().optional(), private_ssl_key: z.string().optional()}); export const integrationDetailsSchemaGcs = z.object({name: z.string().optional(), integration_type: z.literal("gcs").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), serviceAccountKey: z.record(z.string(), z.unknown()).nullable().optional(), project_id: z.string().nullable().optional(), discriminator: z.literal("gcs").optional(), display_name: z.string().optional()}); export const integrationDetailsSchemaLinkedinAds = z.object({name: z.string().optional(), integration_type: z.literal("linkedinads").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("linkedinads").optional(), access_token: z.string().optional(), accounts: z.string().optional(), campaign: z.string().optional(), campaign_group: z.string().optional(), creative: z.string().optional(), owner: z.string().optional()}); export const integrationDetailsSchemaApaleo = z.object({name: z.string().optional(), integration_type: z.literal("apaleo").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("apaleo").optional(), tap_variant: z.string().optional(), client_secret: z.string().optional(), client_id: z.string().optional()}); export const integrationDetailsSchemaCustom = z.object({name: z.string().optional(), integration_type: z.literal("custom").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), discriminator: z.literal("custom").optional(), display_name: z.string().optional(), secrets: z.record(z.string(), z.string()).optional()}).and(z.record(z.string(), z.unknown())); export const integrationDetailsSchemaEmarsys = z.object({name: z.string().optional(), integration_type: z.literal("emarsys").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("emarsys").optional(), tap_variant: z.string().optional(), username: z.string().optional(), secret: z.string().optional()}); export const sslConfig = z.object({certificate_authority: z.string().optional(), client_certificate: z.string().optional(), client_certificate_enable: z.boolean().optional(), client_private_key: z.string().optional(), mode: z.string().optional()}); export const integrationDetailsSchemaPostgres = z.object({name: z.string().optional(), integration_type: z.literal("postgres").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), username: z.string(), password: z.string(), host: z.string(), port: z.number().int().optional(), database: z.string(), use_static_egress_ip: z.boolean().optional(), display_name: z.string().optional(), discriminator: z.literal("postgres").optional(), use_ssh: z.boolean().optional(), ssh_config: sshConfig.nullable().optional(), use_ssl: z.boolean().optional(), ssl_config: sslConfig.nullable().optional()}); export const integrationDetailsSchemaAmplitude = z.object({name: z.string().optional(), integration_type: z.literal("amplitude").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("amplitude").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), secret_key: z.string().optional(), is_eu_data_region: z.boolean().optional(), start_date: z.string().optional()}); export const integrationDetailsSchemaHotjar = z.object({name: z.string().optional(), integration_type: z.literal("hotjar").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("hotjar").optional(), tap_variant: z.string().optional(), email: z.string().optional(), password: z.string().optional()}); export const integrationDetailsSchemaExcelOutput = z.object({name: z.string().optional(), integration_type: z.literal("excel").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("excel").optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaWoocommerce = z.object({name: z.string().optional(), integration_type: z.literal("woocommerce").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("woocommerce").optional(), tap_variant: z.string().optional(), consumer_key: z.string().optional(), consumer_secret: z.string().optional(), site_url: z.string().optional()}); export const integrationDetailsSchemaSheetsOutput = z.object({name: z.string().optional(), integration_type: z.literal("sheets").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("sheets").optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaMongoDB = z.object({name: z.string().optional(), integration_type: z.literal("mongodb").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("mongodb").optional(), tap_variant: z.string().optional(), username: z.string(), password: z.string(), host: z.string(), port: z.number().int().optional(), database_includes: z.string().optional(), database_excludes: z.string().optional(), use_ssh: z.boolean().optional(), ssh_config: sshConfig.nullable().optional(), use_static_egress_ip: z.boolean().optional()}); export const integrationDetailsSchemaNetrivals = z.object({name: z.string().optional(), integration_type: z.literal("netrivals").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("netrivals").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaMsGraph = z.object({name: z.string().optional(), integration_type: z.literal("msgraph").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("msgraph").optional(), tap_variant: z.string().optional(), client_secret: z.string().optional(), tenant: z.string().optional(), client_id: z.string().optional()}); export const integrationDetailsSchemaSnowflake = z.object({name: z.string().optional(), integration_type: z.literal("snowflake").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), use_static_egress_ip: z.boolean().optional(), display_name: z.string().optional(), discriminator: z.literal("snowflake").optional(), username: z.string(), password: z.string(), account: z.string(), role: z.string(), warehouse: z.string().nullable(), database: z.string(), asyncExec: z.boolean().nullable().optional()}); export const integrationDetailsSchemaMoosend = z.object({name: z.string().optional(), integration_type: z.literal("moosend").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("moosend").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaUnleashed = z.object({name: z.string().optional(), integration_type: z.literal("unleashed").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("unleashed").optional(), tap_variant: z.string().optional(), api_auth_signature: z.string().optional(), api_auth_id: z.string().optional(), startDate: z.string().optional()}); export const integrationDetailsSchemaBazaarvoice = z.object({name: z.string().optional(), integration_type: z.literal("bazaarvoice").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("bazaarvoice").optional(), tap_variant: z.string().optional(), api_version: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaQuickbooksOutput = z.object({name: z.string().optional(), integration_type: z.literal("quickbooks").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), code: z.string(), redirectUri: z.string().optional(), accessToken: z.string().optional(), timestamp: z.string().optional(), expires_in: z.number().int().optional(), refreshToken: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("quickbooks").optional(), tap_variant: z.string().optional(), realmId: z.string(), start_date: z.string().optional(), client_id: z.string(), client_secret: z.string()}); export const integrationDetailsSchemaMetronome = z.object({name: z.string().optional(), integration_type: z.literal("metronome").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("metronome").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaAwsCostExplorer = z.object({name: z.string().optional(), integration_type: z.literal("awscostexplorer").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("awscostexplorer").optional(), tap_variant: z.string().optional(), secret_key: z.string().optional(), metrics: z.array(z.string()).optional(), granularity: z.string().optional(), access_key: z.string().optional()}); export const integrationDetailsSchemaAbra = z.object({name: z.string().optional(), integration_type: z.literal("abra").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("abra").optional(), tap_variant: z.string().optional(), username: z.string().optional(), password: z.string().optional()}); export const integrationDetailsSchemaLinear = z.object({name: z.string().optional(), integration_type: z.literal("linear").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("linear").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional(), start_date: z.string().optional()}); export const integrationDetailsSchemaMercadopago = z.object({name: z.string().optional(), integration_type: z.literal("mercadopago").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("mercadopago").optional(), tap_variant: z.string().optional(), auth_token: z.string().optional()}); export const integrationDetailsSchemaGladly = z.object({name: z.string().optional(), integration_type: z.literal("gladly").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("gladly").optional(), tap_variant: z.string().optional(), username: z.string().optional(), password: z.string().optional()}); export const integrationDetailsSchemaAttio = z.object({name: z.string().optional(), integration_type: z.literal("attio").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("attio").optional(), tap_variant: z.string().optional(), access_token: z.string().optional()}); export const integrationDetailsSchemaShowpad = z.object({name: z.string().optional(), integration_type: z.literal("showpad").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("showpad").optional(), tap_variant: z.string().optional(), api_key: z.string().optional(), subdomain: z.string().optional()}); export const integrationDetailsSchemaAftership = z.object({name: z.string().optional(), integration_type: z.literal("aftership").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("aftership").optional(), tap_variant: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaFreshcaller = z.object({name: z.string().optional(), integration_type: z.literal("freshcaller").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("freshcaller").optional(), tap_variant: z.string().optional(), org_name: z.string().optional(), api_key: z.string().optional()}); export const integrationDetailsSchemaQls = z.object({name: z.string().optional(), integration_type: z.literal("qls").optional(), category: z.string().optional(), etlConfig: integrationETLConfig.nullable().optional(), internal: z.boolean().optional(), is_valid: z.boolean().optional(), error: z.string().optional(), display_name: z.string().optional(), discriminator: z.literal("qls").optional(), tap_variant: z.string().optional(), company_id: z.string().optional(), username: z.string().optional(), password: z.string().optional()}); export const anyIntegrationDetailsSchemaOutput = z.discriminatedUnion("integration_type", [integrationDetailsSchemaFastly, integrationDetailsSchemaAirtable, integrationDetailsSchemaUdemyForBusiness, integrationDetailsSchemaGetPocket, integrationDetailsSchemaSellsy, integrationDetailsSchemaShopify, integrationDetailsSchemaMailjet, integrationDetailsSchemaLinkedinPagesOutput, integrationDetailsSchemaTrustrace, integrationDetailsSchemaMaestroqa, integrationDetailsSchemaOmnisend, integrationDetailsSchemaPeloton, integrationDetailsSchemaKlaviyo, integrationDetailsSchemaStamped, integrationDetailsSchemaAbicart, integrationDetailsSchemaGithub, integrationDetailsSchemaRecurly, integrationDetailsSchemaThinkific, integrationDetailsSchemaBexio, integrationDetailsSchemaSmartsheet, integrationDetailsSchemaKrow, integrationDetailsSchemaJudgeme, integrationDetailsSchemaFreshdesk, integrationDetailsSchemaAskNicely, integrationDetailsSchemaOrdoro, integrationDetailsSchemaAcumatica, integrationDetailsSchemaIceberg, integrationDetailsSchemaClientSuccess, integrationDetailsSchemaInstagramOutput, integrationDetailsSchemaShipbob, integrationDetailsSchemaJira, integrationDetailsSchemaGoogleAnalyticsOutput, integrationDetailsSchemaGoogleAdsOutput, integrationDetailsSchemaMiro, integrationDetailsSchemaDomo, integrationDetailsSchemaBrillium, integrationDetailsSchemaPlentymarkets, integrationDetailsSchemaMavenLink, integrationDetailsSchemaCloudwatch, integrationDetailsSchemaWebflow, integrationDetailsSchemaAmazonSellingPartnerOutput, integrationDetailsSchemaMontapacking, integrationDetailsSchemaChorusai, integrationDetailsSchemaCurrencyFreaks, integrationDetailsSchemaRecruitee, integrationDetailsSchemaHellobaton, integrationDetailsSchemaFacebookAdsOutput, integrationDetailsSchemaCube, integrationDetailsSchemaZendesk, integrationDetailsSchemaPulumiCloud, integrationDetailsSchemaNetsuite, integrationDetailsSchemaShiphero, integrationDetailsSchemaAnvil, integrationDetailsSchemaGainsightPx, integrationDetailsSchemaSqlServer, integrationDetailsSchemaNetlify, integrationDetailsSchemaTravefy, integrationDetailsSchemaAmazonAdvertisingOutput, integrationDetailsSchemaTikTokAds, integrationDetailsSchemaJotform, integrationDetailsSchemaMixpanel, integrationDetailsSchemaBambooHr, integrationDetailsSchemaMessagebird, integrationDetailsSchemaPipedrive, integrationDetailsSchemaNetohq, integrationDetailsSchemaSharepointSitesOutput, integrationDetailsSchemaMemberful, integrationDetailsSchemaTalkable, integrationDetailsSchemaNotionOutput, integrationDetailsSchemaHolidays, integrationDetailsSchemaMonday, integrationDetailsSchemaAmazonAssociates, integrationDetailsSchemaAwsCognito, integrationDetailsSchemaShoplazza, integrationDetailsSchemaDixa, integrationDetailsSchemaOkta, integrationDetailsSchemaMarketplacer, integrationDetailsSchemaKeap, integrationDetailsSchemaAcuite, integrationDetailsSchemaActiveCampaign, integrationDetailsSchemaLightdash, integrationDetailsSchemaTypeform, integrationDetailsSchemaSegment, integrationDetailsSchemaMailerlite, integrationDetailsSchemaIterable, integrationDetailsSchemaTwilio, integrationDetailsSchemaRedshift, integrationDetailsSchemaBigMarker, integrationDetailsSchemaLoopreturns, integrationDetailsSchemaLessonly, integrationDetailsSchemaMySql, integrationDetailsSchemaPartoo, integrationDetailsSchemaFacebookAdsSystemUser, integrationDetailsSchemaSquare, integrationDetailsSchemaBigquery, integrationDetailsSchemaSleeper, integrationDetailsSchemaDatadog, integrationDetailsSchemaSumologic, integrationDetailsSchemaGreenhouse, integrationDetailsSchemaZohoCrmOutput, integrationDetailsSchemaShipstation, integrationDetailsSchemaSalesforceOutput, integrationDetailsSchemaNiceIncontact, integrationDetailsSchemaFullstory, integrationDetailsSchemaSendinblue, integrationDetailsSchemaZammad, integrationDetailsSchemaSlackOutput, integrationDetailsSchemaPodBean, integrationDetailsSchemaMindstamp, integrationDetailsSchemaAppleHealth, integrationDetailsSchemaClickcast, integrationDetailsSchemaMarketo, integrationDetailsSchemaS3, integrationDetailsSchemaAtInternet, integrationDetailsSchemaImmuta, integrationDetailsSchemaClickup, integrationDetailsSchemaDagster, integrationDetailsSchemaFishbowl, integrationDetailsSchemaPicqer, integrationDetailsSchemaStripe, integrationDetailsSchemaIntercomOutput, integrationDetailsSchemaDucklake, integrationDetailsSchemaSailthru, integrationDetailsSchemaVeeqo, integrationDetailsSchemaTradera, integrationDetailsSchemaAppStore, integrationDetailsSchemaCloseio, integrationDetailsSchemaDashHudson, integrationDetailsSchemaPartnerize, integrationDetailsSchemaAircall, integrationDetailsSchemaHubspot, integrationDetailsSchemaQualified, integrationDetailsSchemaGong, integrationDetailsSchemaCanvas, integrationDetailsSchemaMegaphone, integrationDetailsSchemaGoogleSheetsOutput, integrationDetailsSchemaSalesloft, integrationDetailsSchemaGoogleSearchConsoleOutput, integrationDetailsSchemaCoinGecko, integrationDetailsSchemaMode, integrationDetailsSchemaFreshworks, integrationDetailsSchemaADP, integrationDetailsSchemaGcs, integrationDetailsSchemaLinkedinAds, integrationDetailsSchemaApaleo, integrationDetailsSchemaCustom, integrationDetailsSchemaEmarsys, integrationDetailsSchemaPostgres, integrationDetailsSchemaAmplitude, integrationDetailsSchemaHotjar, integrationDetailsSchemaExcelOutput, integrationDetailsSchemaWoocommerce, integrationDetailsSchemaSheetsOutput, integrationDetailsSchemaMongoDB, integrationDetailsSchemaNetrivals, integrationDetailsSchemaMsGraph, integrationDetailsSchemaSnowflake, integrationDetailsSchemaMoosend, integrationDetailsSchemaUnleashed, integrationDetailsSchemaBazaarvoice, integrationDetailsSchemaQuickbooksOutput, integrationDetailsSchemaMetronome, integrationDetailsSchemaAwsCostExplorer, integrationDetailsSchemaAbra, integrationDetailsSchemaLinear, integrationDetailsSchemaMercadopago, integrationDetailsSchemaGladly, integrationDetailsSchemaAttio, integrationDetailsSchemaShowpad, integrationDetailsSchemaAftership, integrationDetailsSchemaFreshcaller, integrationDetailsSchemaQls]); export const integration = z.object({id: z.union([z.string(), z.string()]).optional(), team_id: z.union([z.string(), z.string()]).optional(), user_id: z.union([z.string(), z.string()]).optional(), type: integrationType, details: anyIntegrationDetailsSchemaOutput, sync_enabled: z.boolean().nullable().optional(), created_at: z.string().optional(), updated_at: z.string().optional()}); export const responseMeta = z.object({requestId: z.string().optional(), timestamp: z.string().optional(), durationMs: z.number().int().nullable().optional()}); export const successResponseIntegration = z.object({success: z.literal(true), data: integration, meta: responseMeta.optional()}); export const validateResponse = async ( schema: { readonly '~standard': { readonly validate: (value: unknown) => ({ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }) | Promise<{ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }> } }, value: unknown ): Promise => { const result = await schema['~standard'].validate(value) if (result.issues !== undefined) { const detail = result.issues .map(({ message, path }) => path?.length ? `${path.map((segment) => String(typeof segment === 'object' ? segment.key : segment)).join('.')}: ${message}` : message ) .join('; ') throw new Error(`Response does not match the schema: ${detail}`, { cause: { issues: result.issues } }) } return result.value }; /** * Create integration * * POST /v4/integrations */ export const createApiV4Integrations = async (args: CreateApiV4IntegrationsArgs, options: CreateApiV4IntegrationsOptions) => { const {baseUrl, fetch: fetchFn = fetch} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") headers.set('accept', "application/json") const url = `${baseUrl.replace(/\/+$/, '')}/v4/integrations${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "POST", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return validateResponse(successResponseIntegration, await res.json()) };