
Security News
Happy Birthday, Shai-Hulud
It has been one year since Shai-Hulud made its first appearance on npm.
ampscript-data
Advanced tools
Canonical AMPscript function catalog, keywords, and personalization strings for SFMC tooling
Canonical AMPscript function catalog, keywords, and personalization strings for Salesforce Marketing Cloud (SFMC) tooling.
This package is the single source of truth consumed by:
npm install ampscript-data
import {
FUNCTIONS,
AMPSCRIPT_KEYWORDS,
PERSONALIZATION_STRINGS,
DEPRECATED_FUNCTIONS,
functionLookup,
functionNames,
CANONICAL_FUNCTIONS,
FUNCTION_CANONICAL_MAP,
deprecatedFunctionLookup,
isEmailExcluded,
} from 'ampscript-data';
FUNCTIONSAn array of all known AMPscript functions with full metadata:
import { FUNCTIONS } from 'ampscript-data';
for (const fn of FUNCTIONS) {
console.log(fn.name); // e.g. 'Lookup'
console.log(fn.minArgs); // minimum argument count
console.log(fn.maxArgs); // maximum argument count (Infinity = variadic)
console.log(fn.category); // e.g. 'Data Extension'
console.log(fn.description); // human-readable description
console.log(fn.params); // array of { name, description, type?, optional? }
console.log(fn.returnType); // e.g. 'string'
console.log(fn.syntax); // canonical signature string
console.log(fn.example); // usage example (where available)
}
functionLookupA Map<string, FunctionEntry> keyed by lowercase function name for O(1) lookups:
import { functionLookup } from 'ampscript-data';
const entry = functionLookup.get('lookup');
functionNamesA Set<string> of all function names in lowercase — useful for existence checks:
import { functionNames } from 'ampscript-data';
if (functionNames.has('lookup')) { /* ... */ }
CANONICAL_FUNCTIONSAn array of function names in their canonical casing (e.g. 'Lookup'), used for casing normalization:
import { CANONICAL_FUNCTIONS } from 'ampscript-data';
FUNCTION_CANONICAL_MAPA Map<string, string> from lowercase name to canonical-cased name:
import { FUNCTION_CANONICAL_MAP } from 'ampscript-data';
FUNCTION_CANONICAL_MAP.get('lookup'); // 'Lookup'
DEPRECATED_FUNCTIONSAn array of deprecated function entries with the same shape as FUNCTIONS:
import { DEPRECATED_FUNCTIONS } from 'ampscript-data';
deprecatedFunctionLookupA Map<string, FunctionEntry> for deprecated functions, keyed by lowercase name:
import { deprecatedFunctionLookup } from 'ampscript-data';
isEmailExcludedReturns true if the function is not available in email send contexts:
import { isEmailExcluded } from 'ampscript-data';
isEmailExcluded('HTTPGet'); // true — not available in email
AMPSCRIPT_KEYWORDSAn array of AMPscript language keywords (IF, FOR, SET, etc.):
import { AMPSCRIPT_KEYWORDS } from 'ampscript-data';
PERSONALIZATION_STRINGSAn array of AMPscript personalization string descriptors (subscriber attributes, system variables, etc.):
import { PERSONALIZATION_STRINGS } from 'ampscript-data';
for (const ps of PERSONALIZATION_STRINGS) {
console.log(ps.name); // e.g. 'emailaddr'
console.log(ps.description); // human-readable description
}
MIT
FAQs
Canonical AMPscript function catalog, keywords, and personalization strings for SFMC tooling
The npm package ampscript-data receives a total of 234 weekly downloads. As such, ampscript-data popularity was classified as not popular.
We found that ampscript-data demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
It has been one year since Shai-Hulud made its first appearance on npm.

Research
/Security News
Operators behind PolinRider used a compromised GitHub account to plant malware in four development versions of a Packagist package with 700,000+ downloads.

Security News
GitHub Actions now supports cache-mode, a least-privilege control on the Actions cache aimed at the cache poisoning technique behind recent compromises.