Develop an extension
A tag extension should be thought of as a (small) product with its own requirements. Determining how an Adobe Experience Platform user will want to use your extension can help you sort the functionality into what event types, condition types, action types, and data element types your extension should provide.
With that knowledge, you can plan out what components should be provided in your extension.
Guides
With a plan in place, these guides can help you understand the extension development process:
- The getting started guide and other documents under Extension development in the left navigation are great reference material for understanding extensions. They include details on what extensions can do, how user information is stored and passed between your extension and Adobe Experience Platform, how your code is bundled into libraries, and how your extension code is interpreted and used at runtime in the browser.
- The extension tutorial video is a great place to start.
- The Introduction to Extensions YouTube playlist walks through the process of creating extension packages.
- Understanding JSON Schema article.
- JSON Lint/Validator.
- JSON Viewer Chrome extension to highlight & print JSON & JSONP.
- jsonschema.net editor to help create JSON schema from your object.
- JSON Schema Validator An online, interactive JSON Schema validator.
Tools
There are also a number of npm tools to help you with your extension package development:
- Tag Extension Scaffold Tool helps you easily create a starter project on your local machine.
- Tag Extension Sandbox helps you validate your extension views and modules on your local machine.
- Tag Extension Packager is a command-line utility for packaging a tag extension into a zip file.
- Tag Extension Uploader is an interactive command line tool to help you input your technical account credentials and upload your extension package to tags.
- Tag Extension Releaser is an interactive command line tool to help you release your extension to private availability.
Example extensions
There are example extensions on GitHub you can review or use as starter projects:
Slack workspace
You can request access to the Slack community workspace where extension authors can support each other using this request form.
Please note: while there are members of Adobe in this Slack workspace, it is a community resource not sponsored by or moderated by Adobe.