Static ReadonlyAuthorizesTrue 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.
ProtectedEscapeEscapes single quotes in strings for SQL query safety Prevents SQL injection in dynamic filter construction
String to escape
Escaped string with doubled single quotes
ProtectedgetExtract parameter value by name (case-insensitive) Handles special case where 'null' string should be treated as null value
The action parameters
Name of the parameter to extract
Parameter value or null if not found or explicitly 'null'
ProtectedInternalMain entry point for the Apollo contact enrichment action
The action parameters containing:
Promise
ProtectedIsChecks if a job title should be excluded from contact processing Filters out non-business contacts like students and volunteers
Job title to check
boolean - true if title should be excluded
ProtectedIsValidates if a date string represents a valid date Used for employment/education history date validation
Date string to validate
boolean - true if valid date
ProtectedPageRetrieves a page of records from a specified entity using RunView Supports pagination with configurable page size and filtering
Parameters defining entity, page, and filter criteria
User context for data access
Array of records or null if query failed
ProtectedProcessProcesses a group of contact records using Apollo's bulk people matching API Enriches contacts with social profiles, company data, and employment history
Group processing parameters with contact data and entity mappings
Promise
Executes the action with the provided parameters.
The action execution parameters including context
Promise resolving to the action result
ProtectedUpsertCreates or updates employment and education history records for a contact Processes Apollo employment history data to create both employment and education records
Apollo person data containing employment history
Contact entity to create history for
Processing parameters with history entity configurations
ProtectedUpsertEnriches contacts by searching for people at a specific organization domain Uses Apollo's people search to find contacts and update their employment/education history
Organization domain to search for people
Processing parameters with entity configurations
ProtectedWrapWraps Apollo.io API calls with intelligent retry logic for rate limiting Handles both per-minute and hourly rate limits with appropriate backoff
HTTP method ('get' or 'post')
Apollo API endpoint path
Request payload for POST requests
Axios configuration object
Number of retry attempts remaining (default: 1)
Promise
Action that enriches contact records using Apollo.io's people matching and search APIs
This action performs contact enrichment by:
Example