ProtectedapiGet the API base URL for the platform
ProtectedbufferCommon params shared by all Buffer actions.
ProtectedcommonCommon parameters for all social media actions
ProtectedoauthOAuth-specific parameters that all OAuth actions should include
ProtectedplatformGet the platform name (e.g., 'Twitter', 'LinkedIn')
ProtectedbuildBuild a standardized error result from a caught exception.
ProtectedbuildBuild common API headers including authentication
OptionaladditionalHeaders: Record<string, string>ProtectedcreateCreate a post via the createPost mutation.
ProtecteddeleteDelete a post via the deletePost mutation.
ProtectedensureValidate CompanyIntegrationID and initialize OAuth.
Pass the full RunActionParams so the per-request provider on params.Provider is
threaded into initializeOAuth (multi-tenant correctness — every entity load/save
inside the OAuth flow binds to the request's connection, not the global default).
Returns null on success, or an error result.
ProtectedexecuteExecute a GraphQL query or mutation against the Buffer API.
Optionalvariables: Record<string, unknown>ProtectedextractProtectedfetchFetch all channels for an organization.
ProtectedfetchFetch posts with optional filters and cursor-based pagination.
Optionalfilters: {Optionalfirst: numberOptionalafter: stringProtectedformatFormat date for API requests (ISO 8601)
ProtectedgetGet the current access token
ProtectedgetGet custom attributes from company integration
ProtectedgetHelper to get parameter value from params array
ProtectedgetGet profile ID from parameters or default from integration
ProtectedgetGet the refresh token
ProtectedgroupGroup posts by day using a date accessor.
ProtectedhandleProtectedhandleHandle rate limiting with exponential backoff
OptionalretryAfter: numberProtectedinitializeInitialize OAuth connection by loading integration details.
the MJ Company Integration ID to load
Optionalparams: RunActionParamsthe 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.
ProtectedInternalInternal method that must be implemented by derived action classes. This is where the actual action logic should be implemented.
The action execution parameters including typed context
Promise resolving to the action result
ProtectedisDetermine if an error is an authentication error. Can be overridden by subclasses for platform-specific error detection.
ProtectedisCheck if the current token is expired
ProtectedlogLog API request for debugging
Optionaldata: anyProtectedlogLog API response for debugging
ProtectedmakeProtectedmapProtectednormalizeNormalize platform-specific analytics to common format
ProtectednormalizeConvert platform-specific post data to common format
ProtectedparseParse date from API response
ProtectedparseParse rate limit headers from API response
ProtectedrefreshRefresh the access token using the refresh token. Must be implemented by platform-specific subclasses.
ProtectedresolveResolve org ID from params or by fetching the account's first org.
Executes the action with the provided parameters.
The action execution parameters including context
Promise resolving to the action result
ProtectedsearchSearch for posts on the platform
ProtectedsetSet custom attributes in company integration
ProtectedsetSet an output parameter value by name.
ProtectedupdateUpdate stored tokens after refresh
OptionalrefreshToken: stringOptionalexpiresIn: numberProtecteduploadProtecteduploadProtectedvalidate
Retrieves pending (queued) posts from Buffer. Uses the posts query filtered by status "buffer" (Buffer's term for queued posts).