Member Junction
    Preparing search index...

    Deletes a post from Buffer via the GraphQL deletePost mutation.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    _companyIntegration: MJCompanyIntegrationEntity
    _integration: MJIntegrationEntity
    AuthorizesCaller: boolean

    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

    • get oauthParams(): ActionParam[]

      OAuth-specific parameters that all OAuth actions should include

      Returns ActionParam[]

    • get SupportsAudience(): boolean

      Whether this action can bound what it returns to an audience (RunActionParams.Audience): everyone besides the caller who will see its output, such as the other participants of a shared conversation.

      false by default, and the engine enforces it: when a run's audience adds a reader beyond the caller, ActionEngineServer.RunAction refuses the action with result code AUDIENCE_UNSUPPORTED, without running it. Override to return true only when the action honours the audience in full — every record, snippet and count it returns is something every reader may see (pass the audience to the search engine, check each reader's entitlement to anything it scopes by, and leave out aggregates computed before that filtering).

      Returns boolean

    Methods

    • Create a post via the createPost mutation.

      metadata is Buffer's per-service extras channel, keyed by service name — e.g. { linkedin: { annotations: [...] } } for

      Parameters

      • input: {
            assets?: BufferAssetInput[];
            channelId: string;
            dueAt?: string;
            metadata?: Record<string, unknown>;
            mode?: BufferShareMode;
            schedulingType?: string;
            tagIds?: string[];
            text: string;
        }

      Returns Promise<BufferPost>

      annotations. It is passed through untouched rather than modelled, because its shape belongs to whichever network the channel points at and Buffer adds to it independently of this package.

    • Fetch posts with optional filters and cursor-based pagination.

      Parameters

      • organizationId: string
      • Optionalfilters: {
            channelIds?: string[];
            endDate?: string;
            startDate?: string;
            status?: BufferPostStatus;
            tags?: string[];
        }
      • Optionalfirst: number
      • Optionalafter: string

      Returns Promise<BufferPostsConnection>

    • Get custom attributes from company integration

      Parameters

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

      Returns string

    • Get the refresh token

      Returns string

    • 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

    • Check if the current token is expired

      Returns boolean

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

      Type Parameters

      • T

      Parameters

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

      Returns Promise<T>

    • Load an access token out of an MJ: Credentials row.

      This is the seam for acting as an identity other than the tenant's own Buffer connection — publishing to an employee's personal channel, reading the queue of the person who owns it. The token stays in the credential store; only its ID travels through action params.

      A CredentialID that was supplied but cannot be read is fatal, never a silent fallback to the CompanyIntegration token: falling back would publish under the wrong identity, and the caller would have no way to notice.

      Returns the token, or an error result to hand straight back to the caller.

      Parameters

      Returns Promise<string | ActionResultSimple>

    • Search for posts on the platform

      Parameters

      • params: {
            channelIds?: string[];
            endDate?: Date;
            hashtags?: string[];
            limit?: number;
            offset?: number;
            organizationId?: string;
            query?: string;
            startDate?: Date;
        }

      Returns Promise<SocialPost[]>

    • 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>