---
title: "Create a Connection"
method: POST
path: "/v2/integrations/connections"
tags: ["integrations"]
---

# Create a Connection

`POST /v2/integrations/connections`

## Request

- Base URL: `https://api.stuut.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.stuut.ai/v2/integrations/connections`
- Auth: HTTP bearer

Create an integration connection. Body varies by integration provider.

## Request body

- union
  - AcumaticaConnectionCreateBody: Create schema for Acumatica ERP connections.
    - `provider_name` 'acumatica', required
    - `name` string, nullable: User defined name of the linked integration.
    - `base_url` string, required: Acumatica instance base URL including the IIS instance segment (e.g. https://erpsandbox.example.com/AcumaticaSandbox).
    - `tenant` string, required: Acumatica tenant (company) login name as it appears on the Tenants form (SM203520). For multi-company installs this is also the suffix appended to ``client_id`` after ``@``.
    - `endpoint_name` string, nullable: Web service endpoint name (default 'Default'; custom endpoints supported).
    - `endpoint_version` string, nullable: Endpoint version string (e.g. '24.200.001'). Mirrors Acumatica release.
    - `scope` string, nullable: OAuth scope string. 'api' for single-session, 'api offline_access' to get a refresh token, 'api:concurrent_access' to allow multiple simultaneous tokens for the same client.
    - `client_id` string, password, required: OAuth client ID from the Connected Application (includes '@TenantName' suffix).
    - `client_secret` string, password, required: OAuth shared secret. Encrypted at rest via AWS KMS.
    - `username` string, password, required: Acumatica API user (resource-owner credentials).
    - `password` string, password, required: Acumatica API user password. Encrypted at rest via AWS KMS.
    - `branches` string[], required: Branches the connection is authorized to sync. Each value is a BranchCD code (e.g. 'STSMC') that is sent in the ``PX-CbApiBranch`` header on AR transactional reads.
    - `default_currency` string, nullable: ISO-4217 currency code used as the fallback when Acumatica's Default endpoint omits ``CurrencyID`` on AR documents — Invoice and CreditMemo entities do not expose a currency field in the current contract, so per-tenant single-currency installs need to set this on the connection. Payment rows carry ``CurrencyID`` directly and ignore this. Mapper fails loudly if neither the row nor this column carries a currency.
  - BillingPlatformConnectionCreateBody: Create schema for BillingPlatform connections.
    - `provider_name` 'billingplatform', required
    - `name` string, nullable: User defined name of the linked integration.
    - `api_url` string, required
    - `auth_method` 'password' | 'oauth'
    - `username` string, nullable
    - `password` string, password, nullable
    - `client_id` string, nullable
    - `client_secret` string, password, nullable
  - BoomiConnectionCreateBody: Create schema for Boomi connections.
    - `provider_name` 'boomi', required
    - `name` string, nullable: User defined name of the linked integration.
    - `outbound_webhook_url` string, nullable: Boomi-supplied endpoint for outbound writebacks. Masked in Neon branches (NULL) so a dev environment can never resolve a writeback-capable connection and POST to a live customer endpoint.
    - `outbound_username` string, nullable: Username Stuut presents in the outbound HTTP Basic auth header. Not encrypted at rest (Basic auth 'username' is not a secret on its own); masked in Neon branches for consistency with the paired token.
    - `outbound_token` string, password, nullable: Token Stuut presents as the password half of the outbound HTTP Basic auth. Encrypted at rest via AWS KMS; write-only via the API.
  - ChargebeeConnectionCreateBody: Create schema for Chargebee connections.
    - `provider_name` 'chargebee', required
    - `name` string, nullable: User defined name of the linked integration.
    - `site` string, required: Chargebee site name (e.g. 'hibid' for hibid.chargebee.com).
    - `api_key` string, password, required
  - CitiConnectionCreateBody: Create schema for Citi connections.
    - `provider_name` 'citi', required
    - `name` string, nullable: User defined name of the linked integration.
    - `client_id` string, nullable: OAuth2 client ID for Citi API access. Falls back to env var if not set.
    - `client_secret` string, password, nullable: OAuth2 client secret for Citi API access. Falls back to env var if not set.
  - DatamaticsConnectionCreateBody: Create schema for Datamatics connections.
    - `provider_name` 'datamatics', required
    - `name` string, nullable: User defined name of the linked integration.
    - `username` string, required
    - `password` string, password, required
    - `site_id` integer, required: FTNI site ID for the tenant.
    - `item_queue_status` integer: FTNI item status code to pull during sync. Default 8 (unrecognized BU).
    - `writeback_queue_status` integer: FTNI item status code to set after cash application writeback. Default 1 (Approved).
    - `base_url` string, required
  - JiraConnectionCreateBody: Create schema for Jira connections.
    - `provider_name` 'jira', required
    - `name` string, nullable: User defined name of the linked integration.
    - `subdomain` string, required: Jira Cloud subdomain (e.g. 'acme' for acme.atlassian.net).
    - `email` string, required: Email of the Atlassian account that owns the API token.
    - `api_token` string, password, required: Atlassian API token.
  - JpmcConnectionCreateBody: Create schema for JPMC connections.
    - `provider_name` 'jpmc', required
    - `name` string, nullable: User defined name of the linked integration.
    - `multi_tenant_client_id` string, required: JPMC multi-tenant child profile identifier (ClientID header).
    - `account_ids` string[], nullable: List of bank account IDs to sync transactions for.
    - `lockbox_enabled` boolean: Whether lockbox file sync is enabled for this connection.
    - `lockbox_sftp_username` string, nullable: SFTP username for lockbox file retrieval.
    - `lockbox_sftp_data_path` string, nullable: SFTP path for CSV/LDT data files (e.g. /outbound/LBX02). Falls back to JpmcConfig.LOCKBOX_SFTP_PATH.
    - `lockbox_sftp_img_path` string, nullable: SFTP path for IMG zip files (e.g. /outbound/IMG01). Falls back to JpmcConfig.LOCKBOX_SFTP_PATH.
  - PncConnectionCreateBody: Create schema for PNC connections.
    - `provider_name` 'pnc', required
    - `name` string, nullable: User defined name of the linked integration.
    - `sftp_host` string, required: PNC EFX SFTP hostname.
    - `sftp_port` integer: SFTP port.
    - `sftp_path` string: Directory PNC drops lockbox files into.
    - `sftp_username` string, required: PNC-issued SFTP login.
    - `sftp_private_key` string, password, required: SSH private key whose public half is registered with PNC.
    - `lockbox_business_units` object, required: PNC lockbox number to the name of the business unit its payments belong to.
  - KyribaConnectionCreateBody: Create schema for Kyriba connections.
    - `provider_name` 'kyriba', required
    - `name` string, nullable: User defined name of the linked integration.
    - `api_url` string, required
    - `token_endpoint` string, required
    - `client_id` string, required
    - `client_secret` string, password, required
    - `templates` string[]: Get configured template codes from settings.
  - MaxioLegacyConnectionCreateBody: Create schema for Maxio Legacy connections.
    - `provider_name` 'maxio-legacy', required
    - `name` string, nullable: User defined name of the linked integration.
    - `domain` string, required: SaaSOptics domain (e.g., a12.saasoptics.com)
    - `subdomain` string, required: SaaSOptics instance identifier (e.g., sandbox_1234)
    - `api_key` string, password, required
  - MSDynamicsBCConnectionCreateBody
    - `provider_name` 'ms-dynamics-bc', required
    - `name` string, nullable: User defined name of the linked integration.
    - `api_url` string, nullable: The base URL for the Business Central API. Only used for on premise instances.
    - `is_on_premise` boolean: Whether the MS Dynamics BC instance is on-premise or cloud-based.
    - `auth_method` 'oauth2' | 'basic': Auth scheme used for payment posting. 'oauth2' (default) uses the existing S2S client-credentials path; 'basic' uses HTTP Basic with the connection's username/password and is the only path that supports posting to closed periods on on-prem BC where the elevated permission cannot be granted to a service principal. Phase 1 only affects payment posting; other operations remain on OAuth2 regardless of this field.
    - `username` string, nullable
    - `password` string, password, nullable
  - MSDynamicsFOConnectionCreateBody
    - `provider_name` 'ms-dynamics-fo', required
    - `name` string, nullable: User defined name of the linked integration.
    - `api_url` string, uri, required: Your Microsoft Dynamics 365 F&O instance URL (e.g., https://yourcompany.operations.dynamics.com)
  - NetsuiteConnectionCreateBody: Create schema for Netsuite connections.
    - `provider_name` 'netsuite', required
    - `name` string, nullable: User defined name of the linked integration.
    - `account_id` string, required: The NetSuite account ID associated with the connection.
    - `auth_method` 'oauth2' | 'm2m'
    - `pdf_restlet_script_id` string, nullable: Script ID of the RESTlet that downloads invoice PDFs.
    - `pdf_restlet_deploy_id` string, nullable: Deployment ID of the RESTlet that downloads invoice PDFs.
  - OdooConnectionCreateBody: Create schema for Odoo connections.
    - `provider_name` 'odoo', required
    - `name` string, nullable: User defined name of the linked integration.
    - `subdomain` string, required: Odoo subdomain for your instance (e.g., 'company' for company.odoo.com). Required.
    - `database` string, required: Odoo database name. Required for XML-RPC authentication.
    - `username` string, required: User email address for Odoo authentication. Required.
    - `api_key` string, password, required: Odoo API key for authentication. Required.
    - `payment_journal_id` integer, nullable: Default journal ID for creating payments in Odoo. Optional.
    - `payment_method_line_id` integer, nullable: Default payment method line ID for creating payments. Optional.
  - OICConnectionCreateBody: Create schema for OIC connections.
    - `provider_name` 'oic', required
    - `name` string, nullable: User defined name of the linked integration.
    - `erp_type` string: ERP system behind the OIC middleware (e.g. oracle_fusion, sap).
    - `base_url` string, required: OIC instance base URL for REST flow invocations.
    - `token_endpoint` string, required: IDCS OAuth2 token endpoint URL.
    - `client_id` string, required: IDCS OAuth2 client ID.
    - `client_secret` string, password, required: IDCS OAuth2 client secret. Encrypted at rest via AWS KMS.
    - `scope` string, nullable: OAuth2 scope string for the OIC instance.
    - `customer_flow` string, nullable
    - `contact_flow` string, nullable
    - `invoice_flow` string, nullable
    - `credit_memo_flow` string, nullable
    - `payment_flow` string, nullable
    - `bridge_flow` string, nullable
    - `distributions_flow` string, nullable
    - `segment_mapping_key` string, nullable
  - OracleFusionConnectionCreateBody: Create schema for Oracle Fusion Cloud connections.
    - `provider_name` 'oracle-fusion', required
    - `name` string, nullable: User defined name of the linked integration.
    - `base_url` string, required: Fusion REST base URL (e.g. https://fa-exut-dev2-saasfaprod1.fa.ocs.oraclecloud.com).
    - `token_endpoint` string, required: IDCS / OCI IAM token endpoint (e.g. https://idcs-XXXX.identity.oraclecloud.com/oauth2/v1/token).
    - `scope` string, required: OAuth scope string (e.g. urn:opc:resource:fa:instanceid=812709832urn:opc:resource:consumer::all).
    - `client_id` string, password, required: IDCS confidential application client ID.
    - `client_secret` string, password, required: IDCS confidential application client secret. Encrypted at rest via AWS KMS.
    - `private_key` string, password, required: PEM-encoded RSA private key used to sign the JWT user assertion. Encrypted at rest via AWS KMS. Never log or expose.
    - `public_cert` string, nullable: PEM-encoded X.509 certificate matching ``private_key``. Stored for rotation tracking.
    - `cert_alias` string, required: Certificate alias the customer used when uploading our cert to IDCS (used as JWT ``kid``).
    - `fusion_user` string, required: Fusion service-account username that JWT-issued tokens act as (e.g. SVC_INT_STUUT).
    - `business_units` string[], nullable: Business Units this connection is authorized for (informational; data security is enforced on Oracle side).
  - OracleFusion2ConnectionCreateBody: Create schema for Oracle Fusion Cloud 2 connections.
    - `provider_name` 'oracle-fusion2', required
    - `name` string, nullable: User defined name of the linked integration.
    - `base_url` string, required: Fusion REST base URL (e.g. https://fa-exut-dev2-saasfaprod1.fa.ocs.oraclecloud.com).
    - `token_endpoint` string, required: IDCS / OCI IAM token endpoint (e.g. https://idcs-XXXX.identity.oraclecloud.com/oauth2/v1/token).
    - `scope` string, required: OAuth scope string (e.g. urn:opc:resource:fa:instanceid=812709832urn:opc:resource:consumer::all).
    - `client_id` string, password, required: IDCS confidential application client ID.
    - `client_secret` string, password, required: IDCS confidential application client secret. Encrypted at rest via AWS KMS.
    - `private_key` string, password, required: PEM-encoded RSA private key used to sign the JWT user assertion. Encrypted at rest via AWS KMS. Never log or expose.
    - `public_cert` string, nullable: PEM-encoded X.509 certificate matching ``private_key``. Stored for rotation tracking.
    - `cert_alias` string, required: Certificate alias the customer used when uploading our cert to IDCS (used as JWT ``kid``).
    - `fusion_user` string, required: Fusion service-account username that JWT-issued tokens act as (e.g. SVC_INT_STUUT).
    - `business_units` string[], nullable: Business Units this connection is authorized for (informational; data security is enforced on Oracle side).
    - `public_event_csf_key` string, nullable
  - P21ConnectionCreateBody: Create schema for P21 connections.
    - `provider_name` 'p21', required
    - `name` string, nullable: User defined name of the linked integration.
    - `base_url` string, required: P21 middleware server root, without a trailing slash (e.g. https://p21.example.com).
    - `username` string, password, required: P21 API service user.
    - `password` string, password, required: P21 API service user password. Encrypted at rest via AWS KMS.
  - QuickbooksConnectionCreateBody: Create schema for Quickbooks Online connections. QuickBooks Online app credentials are app-level (see ``QuickbooksConfig``), so there are no user-supplied fields. Creating a connection mints a pending connection whose ``authorization_url`` drives the Intuit OAuth2 redirect.
    - `provider_name` 'quickbooks', required
    - `name` string, nullable: User defined name of the linked integration.
  - SalesforceConnectionCreateBody
    - `provider_name` 'salesforce-accountingseed', required
    - `name` string, nullable: User defined name of the linked integration.
    - `grant_type` 'authorization_code' | 'client_credentials'
    - `instance_url` string, required: The Salesforce instance URL. Provided by user during connection setup.
    - `client_id` string, required: The Salesforce Connected App Client ID (Consumer Key).
    - `client_secret` string, required: The Salesforce Connected App Client Secret (Consumer Secret).
    - `is_pkce_enabled` boolean: Whether PKCE (RFC 7636) is used during OAuth2 authorization.
    - `is_writeback_enabled` boolean: Whether payment writebacks to Salesforce are enabled.
  - SampleDataGeneratorConnectionCreateBody: Create schema for Sample Data Generator connections.
    - `provider_name` 'sample-data-generator', required
    - `name` string, nullable: User defined name of the linked integration.
    - `google_sheets_url` string, nullable: URL of the Google Sheets document containing sample data. The sheet must have tabs named: Customers, Contacts, Invoices
    - `google_drive_folder_url` string, nullable: URL of a shared Google Drive folder containing PDF remittance files. All PDFs in this folder will be imported as remittances during sync.
  - SapBtpConnectionCreateBody: Create schema for SAP BTP connections.
    - `provider_name` 'sap-btp', required
    - `name` string, nullable: User defined name of the linked integration.
    - `company_local_currencies` CompanyLocalCurrencies
  - StripeConnectionCreateBody: Create schema for Stripe connections.
    - `provider_name` 'stripe', required
    - `name` string, nullable: User defined name of the linked integration.
    - `api_key` string, password, required
    - `is_webhooks_enabled` boolean
  - TrovataConnectionCreateBody: Create schema for Trovata connections.
    - `provider_name` 'trovata', required
    - `name` string, nullable: User defined name of the linked integration.
    - `app_id` string, required
    - `app_secret` string, password, required
    - `company_id` string, required
  - ServiceNowConnectionCreateBody: Create schema for ServiceNow connections.
    - `provider_name` 'servicenow', required
    - `name` string, nullable: User defined name of the linked integration.
    - `instance_url` string, required: ServiceNow instance URL (e.g. https://dev12345.service-now.com)
    - `username` string, required: ServiceNow username for basic auth
    - `password` string, password, required: ServiceNow password for basic auth
  - ServiceTitanConnectionCreateBody: Create schema for ServiceTitan connections.
    - `provider_name` 'servicetitan', required
    - `name` string, nullable: User defined name of the linked integration.
    - `tenant_id` string, required: The ServiceTitan tenant id used in API request paths.
    - `currency` string, required: ISO 4217 currency code for this tenant's monetary values (e.g. USD).
    - `client_id` string, required: ServiceTitan tenant-specific OAuth2 client ID (from API Application Access).
    - `client_secret` string, password, required: ServiceTitan tenant-specific OAuth2 client secret. Encrypted at rest via AWS KMS.
  - SnowflakeConnectionCreateBody: Create schema for Snowflake Data Share connections. There are no credential fields: the customer grants Stuut's account a secure data share, and a Stuut-side ingest service user reads the mount.
    - `provider_name` 'snowflake', required
    - `name` string, nullable: User defined name of the linked integration.
    - `mounted_database` string, required: Read-only database created FROM SHARE inside Stuut's account (the mount point).
    - `mounted_schema` string, required: Schema within the mounted database that holds the contract views (e.g. STUUT_SHARE).
    - `share_name` string, nullable: Name of the secure share the customer granted to Stuut's account.
    - `provider_account_identifier` string, nullable: Snowflake account identifier of the provider (the customer) that owns the share.
    - `contract_version` string, nullable: Pinned version of the data contract this share was validated against; drives schema-drift checks.
  - WellsFargoConnectionCreateBody: Create schema for Wells Fargo connections.
    - `provider_name` 'wells-fargo', required
    - `name` string, nullable: User defined name of the linked integration.
    - `consumer_key` string, required: Case-sensitive Wells Fargo consumer key used to request OAuth access tokens.
    - `consumer_secret` string, password, required: Case-sensitive Wells Fargo consumer secret used to request OAuth access tokens.
    - `gateway_entity_id` string, nullable: Wells Fargo Gateway entity ID assigned during company setup.
    - `accounts` string[], nullable: Configured Wells Fargo account numbers.
  - WorkdayConnectionCreateBody: Create schema for Workday connections.
    - `provider_name` 'workday', required
    - `name` string, nullable: User defined name of the linked integration.
    - `base_url` string, required: Workday services base URL (e.g., https://services1.myworkday.com).
    - `tenant_id` string, required: Workday tenant identifier used in report and SOAP URLs.
    - `username` string, required
    - `password` string, password, required
    - `report_owner` string, required: ISU report owner used in RaaS report URLs (e.g., ISU_FINT6024).
    - `customers_report_path` string, required: FINT report path for customers/contacts (e.g., FINT6024a_Stuut_Customer_Outbound).
    - `invoices_report_path` string, required: FINT report path for invoices/credit memos (e.g., FINT6024b_Stuut_Customer_Invoice_Data_Outbound).
    - `payments_report_path` string, required: FINT report path for payments (e.g., FINT6024c_Stuut_Customer_Payments_Outbound).
    - `revenue_management_path` string, nullable: Revenue Management SOAP web-service path + version segment shared by the write-back operations (e.g., 'Revenue_Management/v46.1'), appended to '{base_url}/ccx/service/{tenant_id}/'. Defaults to 'Revenue_Management/v46.1' when unset.
    - `company_id` string, nullable: Workday Company_Reference_ID that written-back customer payments post under (e.g., 9010). Required when write-back is enabled.
    - `payment_type_id` string, nullable: Workday Payment_Type_ID used when writing back customer payments (e.g., 'EFT', 'EFT Manual', 'Wire'). Overrides the default EFT fallback for non-CHECK/non-WIRE payments. When unset, the standard mapping applies (CHECK→Check_Cheque, WIRE→Wire, everything else→EFT).
    - `writeback_enabled` boolean: Whether cash-app payments are written back to Workday (Put_Customer_Payment + Submit_Customer_Deposit). When false the connection is sync-only and the write-back config fields (company_id, revenue_management_path) are not required.
  - ZendeskConnectionCreateBody: Create schema for Zendesk connections.
    - `provider_name` 'zendesk', required
    - `name` string, nullable: User defined name of the linked integration.
    - `subdomain` string, required: Zendesk subdomain (e.g. 'charteruphelp' for charteruphelp.zendesk.com).
    - `auth_method` 'api_token' | 'oauth'
    - `email` string, nullable: Email of the Zendesk agent that owns the API token. Half of the auth credential pair (<email>/token:<api_token>), so treat as sensitive.
    - `api_token` string, password, nullable: Zendesk API token.
    - `client_id` string, nullable: Identifier of a confidential Zendesk OAuth client, used instead of email and API token.
    - `client_secret` string, password, nullable: Secret of the Zendesk OAuth client.
  - ZoomInfoConnectionCreateBody: Create schema for ZoomInfo connections.
    - `provider_name` 'zoominfo', required
    - `name` string, nullable: User defined name of the linked integration.
    - `client_id` string, nullable: Customer-supplied ZoomInfo OAuth2 client ID. Null means use Stuut's shared account.
    - `client_secret` string, password, nullable: Customer-supplied ZoomInfo OAuth2 client secret. Encrypted at rest via AWS KMS.
  - ZuoraConnectionCreateBody: Create schema for Zuora connections.
    - `provider_name` 'zuora', required
    - `name` string, nullable: User defined name of the linked integration.
    - `base_url` string, required: Zuora API base URL provided by client during connection setup. Required.
    - `client_id` string, required: OAuth2 client ID for Zuora API access. Required.
    - `client_secret` string, password, required: OAuth2 client secret for Zuora API access. Required.

## Response `200`

Successful Response

- union
  - AcumaticaConnection: Acumatica ERP integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'acumatica', required
    - `base_url` string, required: Acumatica instance base URL including the IIS instance segment (e.g. https://erpsandbox.example.com/AcumaticaSandbox).
    - `tenant` string, required: Acumatica tenant (company) login name as it appears on the Tenants form (SM203520). For multi-company installs this is also the suffix appended to ``client_id`` after ``@``.
    - `endpoint_name` string, required: Web service endpoint name (default 'Default'; custom endpoints supported).
    - `endpoint_version` string, required: Endpoint version string (e.g. '24.200.001'). Mirrors Acumatica release.
    - `scope` string, nullable, required: OAuth scope string. 'api' for single-session, 'api offline_access' to get a refresh token, 'api:concurrent_access' to allow multiple simultaneous tokens for the same client.
    - `branches` string[], nullable, required: Branches the connection is authorized to sync. Each value is a BranchCD code (e.g. 'STSMC') that is sent in the ``PX-CbApiBranch`` header on AR transactional reads.
    - `default_currency` string, nullable, required: ISO-4217 currency code used as the fallback when Acumatica's Default endpoint omits ``CurrencyID`` on AR documents — Invoice and CreditMemo entities do not expose a currency field in the current contract, so per-tenant single-currency installs need to set this on the connection. Payment rows carry ``CurrencyID`` directly and ignore this. Mapper fails loudly if neither the row nor this column carries a currency.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - BillingPlatformConnection: BillingPlatform integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'billingplatform', required
    - `api_url` string, nullable, required
    - `username` string, nullable, required
    - `client_id` string, nullable, required
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
    - `auth_method` 'oauth' | 'password', required
  - BoomiConnection: Boomi integration connection. Unlike other providers, `api_key` is generated server-side on create and must be readable on subsequent fetches — Boomi cannot push data without it, and the only way to share it with the Boomi team is to read it back from this response. Visibility is restricted to authenticated users with access to the connection's tenant. `outbound_webhook_url` and `outbound_username` are readable so the dashboard can show what's configured; `outbound_token` is intentionally write-only — masked on read and may only be supplied via the create / update bodies.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'boomi', required
    - `api_key` string, nullable, required
    - `outbound_webhook_url` string, nullable, required: Boomi-supplied endpoint for outbound writebacks. Masked in Neon branches (NULL) so a dev environment can never resolve a writeback-capable connection and POST to a live customer endpoint.
    - `outbound_username` string, nullable, required: Username Stuut presents in the outbound HTTP Basic auth header. Not encrypted at rest (Basic auth 'username' is not a secret on its own); masked in Neon branches for consistency with the paired token.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - ChargebeeConnection: Chargebee integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'chargebee', required
    - `site` string, required: Chargebee site name (e.g. 'hibid' for hibid.chargebee.com).
    - `api_key` string, password, required
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - CitiConnection: Citi Treasury and Trade Solutions integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'citi', required
    - `client_id` string, nullable, required: OAuth2 client ID for Citi API access. Falls back to env var if not set.
    - `selected_account_refs` string[], required: Citi account_refs this connection syncs. Empty means sync all accounts.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - DatamaticsConnection: Datamatics (FTNI) integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'datamatics', required
    - `site_id` integer, required: FTNI site ID for the tenant.
    - `item_queue_status` integer, required: FTNI item status code to pull during sync. Default 8 (unrecognized BU).
    - `writeback_queue_status` integer, required: FTNI item status code to set after cash application writeback. Default 1 (Approved).
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - JiraConnection: Jira integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'jira', required
    - `subdomain` string, required: Jira Cloud subdomain (e.g. 'acme' for acme.atlassian.net).
    - `email` string, required: Email of the Atlassian account that owns the API token.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - JpmcConnection: JP Morgan Chase integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'jpmc', required
    - `multi_tenant_client_id` string, required: JPMC multi-tenant child profile identifier (ClientID header).
    - `account_ids` string[], nullable, required: List of bank account IDs to sync transactions for.
    - `lockbox_enabled` boolean, required: Whether lockbox file sync is enabled for this connection.
    - `lockbox_sftp_username` string, nullable, required: SFTP username for lockbox file retrieval.
    - `lockbox_sftp_data_path` string, nullable, required: SFTP path for CSV/LDT data files (e.g. /outbound/LBX02). Falls back to JpmcConfig.LOCKBOX_SFTP_PATH.
    - `lockbox_sftp_img_path` string, nullable, required: SFTP path for IMG zip files (e.g. /outbound/IMG01). Falls back to JpmcConfig.LOCKBOX_SFTP_PATH.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - PncConnection: PNC Bank integration connection. The private key is never returned.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'pnc', required
    - `sftp_host` string, required: PNC EFX SFTP hostname.
    - `sftp_port` integer, required: SFTP port.
    - `sftp_path` string, required: Directory PNC drops lockbox files into.
    - `sftp_username` string, required: PNC-issued SFTP login.
    - `lockbox_business_units` object, required: Lockbox number (unpadded, e.g. ``831211``) to business unit name. A file containing a lockbox missing from this map is rejected.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
    - `has_sftp_private_key` boolean, required
  - KyribaConnection: Kyriba integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'kyriba', required
    - `api_url` string, required
    - `token_endpoint` string, required
    - `client_id` string, required
    - `templates` string[], required: Get configured template codes from settings.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - MaxioLegacyConnection: Maxio Legacy integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'maxio-legacy', required
    - `domain` string, nullable, required: SaaSOptics domain (e.g., a12.saasoptics.com)
    - `subdomain` string, nullable, required: SaaSOptics instance identifier (e.g., sandbox_1234)
    - `api_key` string, password, required
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - MSDynamicsBCConnection: Microsoft Dynamics Business Central integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'ms-dynamics-bc', required
    - `api_url` string, nullable, required: The base URL for the Business Central API. Only used for on premise instances.
    - `auth_method` 'oauth2' | 'basic', required: Auth scheme used for payment posting. 'oauth2' (default) uses the existing S2S client-credentials path; 'basic' uses HTTP Basic with the connection's username/password and is the only path that supports posting to closed periods on on-prem BC where the elevated permission cannot be granted to a service principal. Phase 1 only affects payment posting; other operations remain on OAuth2 regardless of this field.
    - `company` string, nullable, required: The company id associated with the Business Central connection. This is used to identify the specific company within the Business Central environment.
    - `company_name` string, nullable, required: The company name associated with the Business Central connection.
    - `environment` string, nullable, required: The name of the Business Central environment this connection is using.
    - `include_dimension_lines` boolean, required: Whether querying dimension lines is supported.
    - `is_bc_extension_installed` boolean, required: Whether the Stuut Business Central extension has been installed.
    - `is_on_premise` boolean, required: Whether the MS Dynamics BC instance is on-premise or cloud-based.
    - `tenant_id` string, nullable, required: The tenant ID associated with the MS Dynamics BC connection.
    - `username` string, nullable, required
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - MSDynamicsFOConnection: Microsoft Dynamics 365 Finance & Operations integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'ms-dynamics-fo', required
    - `api_url` string, required: The base URL for the MS Dynamics F&O instance (e.g., https://yourinstance.operations.dynamics.com). Required.
    - `tenant_id` string, nullable, required: The Azure AD tenant ID associated with the MS Dynamics F&O connection.
    - `legal_entity` string, nullable, required: The legal entity (dataAreaId) to scope all operations. Required for syncing data. Create separate integrations for multiple legal entities.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - NetsuiteConnection: Netsuite integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'netsuite', required
    - `account_id` string, nullable, required: The NetSuite account ID associated with the connection.
    - `auth_method` 'oauth2' | 'm2m', required
    - `m2m_public_certificate` string, nullable, required: PEM-encoded public certificate for uploading to NetSuite.
    - `pdf_restlet_script_id` string, nullable, required: Script ID of the RESTlet that downloads invoice PDFs.
    - `pdf_restlet_deploy_id` string, nullable, required: Deployment ID of the RESTlet that downloads invoice PDFs.
    - `last_contact_field` string, nullable, required: Customer field that receives the time of the most recent Stuut outreach.
    - `group_document_folder_ids` string, nullable, required: Comma-separated File Cabinet folder ids that hold group invoice PDFs.
    - `original_invoice_pdf_folder_ids` string, nullable, required: Comma-separated File Cabinet folder ids that hold invoice PDFs named by invoice number.
    - `consolidated_invoice_record_type` string, nullable, required: Script ID of the tenant's custom record type for consolidated invoice headers.
    - `consolidated_invoice_number_field` string, nullable, required: Invoice.custom_fields alias that holds the consolidated invoice's remote id.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - OdooConnection: Odoo integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'odoo', required
    - `subdomain` string, required: Odoo subdomain for your instance (e.g., 'company' for company.odoo.com). Required.
    - `database` string, required: Odoo database name. Required for XML-RPC authentication.
    - `username` string, required: User email address for Odoo authentication. Required.
    - `payment_journal_id` integer, nullable, required: Default journal ID for creating payments in Odoo. Optional.
    - `payment_method_line_id` integer, nullable, required: Default payment method line ID for creating payments. Optional.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - OICConnection: OIC integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'oic', required
    - `erp_type` string, required: ERP system behind the OIC middleware (e.g. oracle_fusion, sap).
    - `base_url` string, required: OIC instance base URL for REST flow invocations.
    - `token_endpoint` string, required: IDCS OAuth2 token endpoint URL.
    - `client_id` string, nullable, required: IDCS OAuth2 client ID.
    - `scope` string, nullable, required: OAuth2 scope string for the OIC instance.
    - `flow_config` object, nullable, required: Customer-specific OIC flow paths keyed by resource, e.g. {"customer_flow": "ACOS_INT_ERP_203D_.../1.0", "invoice_flow": "..."}.
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - OracleFusionConnection: Oracle Fusion Cloud integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'oracle-fusion', required
    - `base_url` string, required: Fusion REST base URL (e.g. https://fa-exut-dev2-saasfaprod1.fa.ocs.oraclecloud.com).
    - `token_endpoint` string, required: IDCS / OCI IAM token endpoint (e.g. https://idcs-XXXX.identity.oraclecloud.com/oauth2/v1/token).
    - `scope` string, required: OAuth scope string (e.g. urn:opc:resource:fa:instanceid=812709832urn:opc:resource:consumer::all).
    - `fusion_user` string, required: Fusion service-account username that JWT-issued tokens act as (e.g. SVC_INT_STUUT).
    - `cert_alias` string, required: Certificate alias the customer used when uploading our cert to IDCS (used as JWT ``kid``).
    - `cert_thumbprint` string, nullable, required: SHA-1 thumbprint of ``public_cert`` (uppercase hex, no separators). Used as JWT ``x5t`` fallback.
    - `business_units` string[], nullable, required: Business Units this connection is authorized for (informational; data security is enforced on Oracle side).
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - OracleFusion2Connection: Oracle Fusion Cloud 2 integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'oracle-fusion2', required
    - `base_url` string, required: Fusion REST base URL (e.g. https://fa-exut-dev2-saasfaprod1.fa.ocs.oraclecloud.com).
    - `token_endpoint` string, required: IDCS / OCI IAM token endpoint (e.g. https://idcs-XXXX.identity.oraclecloud.com/oauth2/v1/token).
    - `scope` string, required: OAuth scope string (e.g. urn:opc:resource:fa:instanceid=812709832urn:opc:resource:consumer::all).
    - `fusion_user` string, required: Fusion service-account username that JWT-issued tokens act as (e.g. SVC_INT_STUUT).
    - `cert_alias` string, required: Certificate alias the customer used when uploading our cert to IDCS (used as JWT ``kid``).
    - `cert_thumbprint` string, nullable, required: SHA-1 thumbprint of ``public_cert`` (uppercase hex, no separators). Used as JWT ``x5t`` fallback.
    - `business_units` string[], nullable, required: Business Units this connection is authorized for (informational; data security is enforced on Oracle side).
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - P21Connection: Epicor Prophet 21 (P21) integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
      - `is_custom_object` boolean, required: Whether this model is a custom object.
      - `is_file_upload_enabled` boolean, required
      - `is_webhooks_setup` boolean, required
      - `next_sync_at` string, date-time, required
      - `connection_id` string, required
      - `last_sync` IntegrationConnectionModelSync, required
        - `created_at` string, date-time, required
        - `modified_at` string, date-time, nullable, required
        - `id` string, required
        - `status` 'scheduled' | 'queued' | 'running' | 'cancelled' | 'failed' | 'pending_retry' | 'complete', required
        - `attempt` integer, required: Number of attempts made to run this sync. 0 means no attempts have been made.
        - `batch_id` string, uuid, nullable, required
        - `completed_at` string, date-time, required
        - `entity_id` string, nullable, required
        - `error` string, nullable, required: Error message if the sync failed.
        - `file_id` string, nullable, required
        - `is_initial_sync` boolean, required
        - `is_one_off` boolean, required: Whether or not this is a one off sync
        - `model_id` string, required
        - `pagination_state` object, nullable, required
        - `started_at` string, date-time, required
        - `timerange_end` string, date-time, required
        - `timerange_start` string, date-time, required
        - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `object` string, required: String representing the object's type. Objects of the same type share the same value.
      - `display_name` string, required
      - `is_read_supported` boolean, required
      - `is_write_supported` boolean, required
      - `is_sync_supported` boolean, required
    - `next_sync_at` string, date-time, required
    - `name` string, nullable, required: User defined name of the linked integration.
    - `owner_id` string, nullable, required
    - `requires_setup` boolean, required
    - `provider_name` 'p21', required
    - `base_url` string, required: P21 middleware server root, without a trailing slash (e.g. https://p21.example.com).
    - `object` string, required: String representing the object's type. Objects of the same type share the same value.
    - `authorization_url` string, nullable, required: The authorization url for this connection.
    - `provider` IntegrationProvider, required
      - `name` 'acumatica' | 'bill' | 'billingplatform' | 'boomi' | 'chargebee' | 'citi' | 'datamatics' | 'demo-mode' | 'jira' | 'jpmc' | 'kyriba' | 'maxio-legacy' | 'ms-dynamics-bc' | 'ms-dynamics-fo' | 'netsuite' | 'odoo' | 'oic' | 'oracle-fusion' | 'oracle-fusion2' | 'p21' | 'pnc' | 'quickbooks' | 'quickbooks-desktop' | 'sage-intacct' | 'salesforce-accountingseed' | 'sample-data-generator' | 'sap-btp' | 'servicenow' | 'servicetitan' | 'snowflake' | 'stripe' | 'trovata' | 'wells-fargo' | 'western-alliance-bank' | 'workday' | 'xero' | 'zendesk' | 'zoominfo' | 'zuora', required
      - `auth_type` 'api_key' | 'basic' | 'custom' | 'oauth1' | 'oauth2' | 'oauth2_cc'
      - `cash_app_features` CashAppIntegrationFeatures
        - `can_unpost_payment` boolean
        - `can_post_on_account_payment` boolean
      - `categories` IntegrationCategory[], required
      - `color` string, nullable
      - `connection_guide_url` string, nullable: Guide for the person connecting the integration. Shown alongside connection_instructions in the connect flow.
      - `connection_instructions` string[], nullable
      - `documentation_url` string, nullable: The provider's reference documentation. Shown as the Docs link on the connection page.
      - `description` string, nullable
      - `display_name` string, required
      - `is_api_connection` boolean, required: Whether connection to this integration provider is done through an API.
      - `is_enabled` boolean
      - `is_manual_sync_supported` boolean: Whether this integration supports manually triggering sync.
      - `is_webhooks_supported` boolean, required: Whether or not the integration is enabled
      - `logo` string, nullable: URL to the provider's logo.
      - `logo_square` string, nullable: URL to the provider's square logo.
      - `required_settings` string[]
      - `short_description` string, nullable
      - `website` string, nullable
    - `is_configured` boolean, required: Whether the integration connection is configured.
    - `missing_settings` string[], required: List of missing settings.
    - `is_healthy` boolean, required: Whether the integration connection is healthy. This is determined based on a few checks: 1. Configuration (e.g. settings) 2. Connection 3. Permissions
    - `linked_integration_id` string, nullable, required: The v1 linked integration id.
  - QuickbooksConnection: Quickbooks integration connection.
    - `created_at` string, date-time, required
    - `modified_at` string, date-time, nullable, required
    - `id` string, required
    - `is_authentication_pending` boolean, required: Whether this connection is still pending authentication. This is normally only used for oauth2 connections.
    - `is_running_setup` boolean, required
    - `is_sync_disabled` boolean, required: Whether sync tasks are disabled. The intent of this column is to temporarily pause sync tasks for maintenance/deploys/etc.
    - `health` IntegrationConnectionHealth, required
      - `authentication_required` boolean, required: Whether or not authentication is required to resolve the error.
      - `message` string, nullable, required: Human-readable error message.
      - `healthy` boolean, required
      - `status_code` 'healthy' | 'invalid_credentials' | 'credentials_expired' | 'credentials_expiring' | 'missing_permission' | 'missing_settings' | 'unknown_error' | 'connection_issue' | 'timeout', required
      - `suggested_resolution` string, nullable, required: Suggested resolution.
      - `timestamp` string, date-time, required
    - `models` IntegrationConnectionModel[], required: List of unified models synced through this connection
      - `created_at` string, date-time, required
      - `modified_at` string, date-time, nullable, required
      - `id` string, required
      - `name` string, required
      - `is_read_enabled` boolean, required
      - `is_write_enabled` boolean, required
- … truncated; see the full OpenAPI document linked below

## Other responses

- `422`: Validation Error

## Changes

- **2026-11-05** `ff0ad16a55ff`: 1 breaking, 35 warning, 3 info
  - added `#/components/schemas/SnapPayConnection` to the response body `oneOf` list for the response status `200`
  - added the new `snappay` enum value to the `oneOf[subschema #10: KyribaConnection]/provider/name` response property for the response status `200`
  - added the new `snappay` enum value to the `oneOf[subschema #11: MaxioLegacyConnection]/provider/name` response property for the response status `200`
  - added the new `snappay` enum value to the `oneOf[subschema #12: MSDynamicsBCConnection]/provider/name` response property for the response status `200`
  - …35 more

[Operation history](https://skmtc.dev/stuut/apis/stuut-api/changes/v2/integrations/connections/post.md)

---

[API](https://skmtc.dev/stuut/apis/stuut-api.md) - [All operations](https://skmtc.dev/stuut/apis/stuut-api/llms.txt) - [OpenAPI document](https://skmtc.dev/stuut/apis/stuut-api/revisions/3b5ab941f918?raw)
