Member Junction
    Preparing search index...

    Class BaseOAuthActionAbstract

    Base class for actions that require OAuth authentication. Provides common OAuth token management functionality including retrieval, refresh, and error handling.

    Multi-provider note: OAuth actions run server-side and must respect the per-request provider passed in RunActionParams.Provider. Subclasses pass their params to initializeOAuth; the base class stores the resolved provider on this so all subsequent entity loads (_companyIntegration.Save(), etc.) bind to the same connection.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    _companyIntegration: MJCompanyIntegrationEntity = null
    _integration: MJIntegrationEntity = null
    AuthorizesCaller: boolean = false

    True when the action authorizes its caller itself, so a public entry point such as the RunAction mutation may run it for an authenticated user without an MJ: Action Authorizations link. Set it only on an action that either checks an authorization the caller must hold, or reads and writes only with the caller's own permissions. Leave it false for an action that acts with more authority than its caller, or that reaches data or sends messages the caller chooses but could not otherwise reach.

    The engine reads the marker only from the class that runs, never from its parent classes. A subclass that overrides a marked action must declare the marker again.

    Accessors

    Methods

    • Initialize OAuth connection by loading integration details.

      Parameters

      • companyIntegrationId: string

        the MJ Company Integration ID to load

      • Optionalparams: RunActionParams

        the running action's params; params.Provider is captured so all subsequent entity loads/saves bind to the per-request provider (multi-tenant correctness). When omitted, falls back to the global default Metadata provider.

      Returns Promise<boolean>

    • Determine if an error is an authentication error. Can be overridden by subclasses for platform-specific error detection.

      Parameters

      • error: any

      Returns boolean

    • Make an authenticated API request with automatic retry on auth failure

      Type Parameters

      • T

      Parameters

      • requestFn: (token: string) => Promise<T>
      • retryOnAuthFailure: boolean = true

      Returns Promise<T>

    • Set custom attributes in company integration

      Parameters

      • attributeNumber: 1 | 2 | 3 | 4 | 5
      • value: string

      Returns Promise<void>

    • Update stored tokens after refresh

      Parameters

      • accessToken: string
      • OptionalrefreshToken: string
      • OptionalexpiresIn: number

      Returns Promise<void>