Member Junction
    Preparing search index...

    Client for invoking integration discovery operations through GraphQL. Follows the same pattern as GraphQLActionClient and GraphQLAIClient.

    const client = new GraphQLIntegrationClient(graphQLProvider);

    // Discover objects in an external system
    const objects = await client.DiscoverObjects(companyIntegrationID);

    // Discover fields on an object
    const fields = await client.DiscoverFields(companyIntegrationID, 'Members');

    // Test connection
    const test = await client.TestConnection(companyIntegrationID);
    Index

    Constructors

    Methods

    • Full automatic "Apply All" flow: auto-names schema/tables, runs RSU pipeline, creates entity maps + field maps, and starts sync.

      Parameters

      • companyIntegrationID: string

        ID of the CompanyIntegration

      • sourceObjectNames: string[]

        List of source object names to apply

      • platform: string = 'sqlserver'

        Target database platform

      • skipGitCommit: boolean = false

        Skip git commit step

      • skipRestart: boolean = false

        Skip API restart step

      Returns Promise<ApplyAllResult>

    • Batch Apply All: schema + entity maps + field maps + sync across one or more connectors. Calls the IntegrationApplyAllBatch resolver.

      Each connector's SourceObjects entries can be ID-based (existing IntegrationObject rows — HubSpot, YM, etc.) or Name-based (Salesforce's full-catalog picker). For Salesforce Name-based selections the server runs a filtered describe on just those objects, seeds IntegrationObject/ IntegrationObjectField rows from the describe output, then builds DDL.

      Parameters

      • connectors: { CompanyIntegrationID: string; SourceObjects: SourceObjectSelectionInput[] }[]
      • startSync: boolean = true
      • fullSync: boolean = false
      • syncScope: string = 'created'
      • platform: string = 'sqlserver'
      • skipGitCommit: boolean = false
      • skipRestart: boolean = false

      Returns Promise<ApplyAllResult>

    • Parameters

      • companyIntegrationID: string
      • objects: SchemaPreviewObjectInput[]
      • platform: string = 'sqlserver'
      • skipGitCommit: boolean = false
      • skipRestart: boolean = false

      Returns Promise<
          MutationResult & {
              APIRestarted?: boolean;
              GitCommitSuccess?: boolean;
              MigrationFilePath?: string;
              Steps?: {
                  DurationMs: number;
                  Message: string;
                  Name: string;
                  Status: string;
              }[];
          },
      >

    • Batch apply schema for multiple connectors in one RSU pipeline run. Sequential migrations, one CodeGen, one compile, one git PR, one restart.

      Parameters

      • items: { CompanyIntegrationID: string; Objects: SchemaPreviewObjectInput[] }[]
      • platform: string = 'sqlserver'
      • skipGitCommit: boolean = false
      • skipRestart: boolean = false

      Returns Promise<
          {
              APIRestarted?: boolean;
              GitCommitSuccess?: boolean;
              Items?: {
                  CompanyIntegrationID: string;
                  Message: string;
                  Success: boolean;
                  Warnings?: string[];
              }[];
              Message: string;
              Steps?: {
                  DurationMs: number;
                  Message: string;
                  Name: string;
                  Status: string;
              }[];
              Success: boolean;
          },
      >

    • Parameters

      • input: {
            CompanyID: string;
            Configuration?: string;
            CredentialName: string;
            CredentialTypeID: string;
            CredentialValues: string;
            ExternalSystemID?: string;
            IntegrationID: string;
        }

      Returns Promise<
          MutationResult & {
              CompanyIntegrationID?: string;
              CredentialID?: string;
          },
      >

    • Parameters

      • companyIntegrationID: string
      • entityMaps: {
            EntityID?: string;
            EntityName?: string;
            ExternalObjectName: string;
            FieldMaps?: {
                DestinationFieldName: string;
                IsKeyField?: boolean;
                IsRequired?: boolean;
                SourceFieldName: string;
            }[];
            Priority?: number;
            SyncDirection?: string;
        }[]

      Returns Promise<
          MutationResult & {
              Created?: {
                  EntityMapID: string;
                  ExternalObjectName: string;
                  FieldMapCount: number;
              }[];
          },
      >

    • Parameters

      • input: {
            CompanyIntegrationID: string;
            CronExpression: string;
            Description?: string;
            FullSync?: boolean;
            Name: string;
            SyncDirection?: "Pull" | "Push" | "Bidirectional";
            Timezone?: string;
        }

      Returns Promise<MutationResult & { ScheduledJobID?: string }>

    • Parameters

      • companyIntegrationID: string

      Returns Promise<
          MutationResult & {
              EntityMaps?: {
                  Entity: string;
                  ExternalObjectName: string;
                  ID: string;
                  Priority: number;
                  Status: string;
                  SyncDirection: string;
              }[];
          },
      >

    • Fetches a small sample of records from an external object for preview.

      Parameters

      • companyIntegrationID: string

        ID of the CompanyIntegration record

      • objectName: string

        Name of the external object to preview

      • limit: number = 5

        Maximum number of records to fetch (default 5, max 10)

      Returns Promise<PreviewDataResult>

      Preview data result containing parsed record objects

    • Parameters

      • companyIntegrationID: string
      • OptionalwebhookURL: string
      • OptionalfullSync: boolean
      • OptionalsyncDirection: "Pull" | "Push" | "Bidirectional"

      Returns Promise<MutationResult & { RunID?: string }>

    • Parameters

      • companyIntegrationID: string
      • OptionalcredentialValues: string
      • Optionalconfiguration: string
      • OptionalexternalSystemID: string

      Returns Promise<MutationResult>

    • Parameters

      • updates: {
            EntityMapID: string;
            Priority?: number;
            Status?: string;
            SyncDirection?: string;
        }[]

      Returns Promise<MutationResult>

    • Parameters

      • scheduledJobID: string
      • OptionalcronExpression: string
      • Optionaltimezone: string
      • Optionalname: string

      Returns Promise<MutationResult>