{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-@l10n/ja/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"tdx engage - Email Campaign Management | Treasure AI","description":"Manage Engage campaigns, email templates, and workspaces. Create, launch, and monitor marketing campaigns.","siteUrl":"https://docs.treasure.ai","lang":"en-US","jsonLd":{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.treasure.ai/","name":"Treasure AI","url":"https://www.treasure.ai/","logo":"https://www.treasure.ai/hubfs/assets/images/logos/primary-logo.svg"},{"@type":"WebSite","@id":"https://docs.treasure.ai/#website","name":"Treasure AI Documentation","url":"https://docs.treasure.ai/","inLanguage":["en","ja"],"publisher":{"@id":"https://www.treasure.ai/"}}]},"image":"/assets/og-image.ba836864a30434f560a4f7720f8a09019ad30ff828b20c5052ae933ba7121524.d7ef4821.png"},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"engage-commands","__idx":0},"children":["Engage Commands"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Manage Engage campaigns, email templates, and workspaces."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"workspace-context","__idx":1},"children":["Workspace Context"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Engage commands require a workspace context. You can specify a workspace in two ways (in order of priority):"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Command option"]},": ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace <name>"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Session context"]},": ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx use engage_workspace <name>"]}]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Set workspace for the current session\ntdx use engage_workspace \"Marketing Team\"\n\n# Now all engage commands use this workspace\ntdx engage campaigns\ntdx engage campaign create --name \"Newsletter\" --type email\n\n# Override workspace for a single command\ntdx engage campaigns --workspace \"Sales Team\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"campaigns","__idx":2},"children":["Campaigns"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"list-campaigns","__idx":3},"children":["List Campaigns"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# List all campaigns (uses workspace from session context)\ntdx engage campaign list\ntdx engage campaigns              # alias for \"campaign list\"\n\n# List campaigns in a specific workspace\ntdx engage campaign list --workspace \"Marketing Team\"\n\n# Filter campaigns by pattern (glob pattern with * and ? wildcards)\ntdx engage campaign list \"test*\"\ntdx engage campaign list \"*_production\"\n\n# Filter by campaign type\ntdx engage campaign list --type email\ntdx engage campaign list --type push\n\n# Filter by status\ntdx engage campaign list --status DRAFT\ntdx engage campaign list --status ACTIVE\ntdx engage campaign list --status PAUSED\ntdx engage campaign list --status COMPLETED\n\n# Combine filters\ntdx engage campaign list --workspace \"Marketing\" --type email --status ACTIVE\n\n# Limit results\ntdx engage campaign list --limit 10\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"show-campaign-details","__idx":4},"children":["Show Campaign Details"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Show campaign by name\ntdx engage campaign show \"My Newsletter Campaign\"\n\n# Show campaign by UUID\ntdx engage campaign show \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\"\n\n# Specify workspace when using name\ntdx engage campaign show \"My Campaign\" --workspace \"Marketing Team\"\n\n# Show full JSON:API response with all fields (emailContent, pushContent, etc.)\ntdx engage campaign show \"My Campaign\" --full\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"create-campaign","__idx":5},"children":["Create Campaign"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Note:"]}," Workspace is required for creating campaigns. Set it via ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx use engage_workspace"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace"]},"."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Create an email campaign (workspace from session)\ntdx engage campaign create --name \"Monthly Newsletter\" --type email\n\n# Create with explicit workspace\ntdx engage campaign create --name \"Monthly Newsletter\" --type email \\\n  --workspace \"Marketing Team\"\n\n# Create with description\ntdx engage campaign create --name \"Monthly Newsletter\" --type email \\\n  --description \"Monthly newsletter for subscribers\"\n\n# Create with segment targeting (by path)\ntdx engage campaign create --name \"VIP Campaign\" --type email \\\n  --segment \"My Audience/VIP Users\"\n\n# Create with email sender configuration\ntdx engage campaign create --name \"Monthly Newsletter\" --type email \\\n  --email-sender-id \"sender-uuid-123\" \\\n  --json-columns \"email,name,preferences\"\n\n# Create with delivery schedule\ntdx engage campaign create --name \"Morning Newsletter\" --type email \\\n  --start-at \"2024-01-15T09:00:00\" \\\n  --timezone \"Asia/Tokyo\"\n\n# Create a push notification campaign\ntdx engage campaign create --name \"Flash Sale Alert\" --type push\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"update-campaign","__idx":6},"children":["Update Campaign"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Update campaign name\ntdx engage campaign update \"Monthly Newsletter\" --name \"Weekly Newsletter\"\n\n# Update campaign description\ntdx engage campaign update \"Monthly Newsletter\" --description \"Updated description\"\n\n# Update segment targeting\ntdx engage campaign update \"My Campaign\" \\\n  --segment \"New Audience/Premium Users\"\n\n# Update delivery schedule\ntdx engage campaign update \"My Campaign\" \\\n  --start-at \"2024-02-01T10:00:00\" \\\n  --timezone \"UTC\"\n\n# Update email sender configuration\ntdx engage campaign update \"My Campaign\" \\\n  --email-sender-id \"new-sender-uuid\"\n\n# Specify workspace when using name\ntdx engage campaign update \"My Campaign\" --workspace \"Marketing\" --name \"New Name\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"delete-campaign","__idx":7},"children":["Delete Campaign"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Delete campaign by name (prompts for confirmation)\ntdx engage campaign delete \"Old Campaign\"\n\n# Delete campaign by UUID\ntdx engage campaign delete \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\"\n\n# Skip confirmation prompt\ntdx engage campaign delete \"Old Campaign\" --yes\n\n# Specify workspace when using name\ntdx engage campaign delete \"My Campaign\" --workspace \"Marketing\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"campaign-lifecycle-commands","__idx":8},"children":["Campaign Lifecycle Commands"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Launch a campaign (changes status from DRAFT to ACTIVE)\ntdx engage campaign launch \"Monthly Newsletter\"\ntdx engage campaign launch \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\"\n\n# Pause a running campaign (changes status from ACTIVE to PAUSED)\ntdx engage campaign pause \"Monthly Newsletter\"\n\n# Resume a paused campaign (changes status from PAUSED to ACTIVE)\ntdx engage campaign resume \"Monthly Newsletter\"\n\n# Duplicate a campaign (creates a copy in DRAFT status)\ntdx engage campaign duplicate \"Monthly Newsletter\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"pull-campaigns","__idx":9},"children":["Pull Campaigns"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Export campaigns from Engage to local YAML + HTML files. This is the starting point for the YAML-based campaign workflow."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Pull all campaigns from a workspace\ntdx engage campaign pull \"Marketing Team\"\ntdx engage campaign pull --workspace \"Marketing Team\"\n\n# Pull using session context\ntdx use engage_workspace \"Marketing Team\"\ntdx engage campaign pull\n\n# Pull a specific campaign by name\ntdx engage campaign pull \"Marketing Team\" --name \"Monthly Newsletter\"\n\n# Pull only email campaigns\ntdx engage campaign pull \"Marketing Team\" --type email\n\n# Preview what would be written without writing files\ntdx engage campaign pull \"Marketing Team\" --dry-run\n\n# Skip confirmation prompt\ntdx engage campaign pull \"Marketing Team\" --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace <name>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Workspace name"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--name <name>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Pull specific campaign by name"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--type <type>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Filter by campaign type (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["push"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["line"]},")"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--dry-run"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Show what would be written without writing"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["-y, --yes"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Skip confirmation prompt"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Pulled files are written to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["campaigns/<workspace-slug>/"]}," under the current directory. Each campaign produces a YAML file and optionally an HTML file (if the campaign has an HTML email override)."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"push-campaigns","__idx":10},"children":["Push Campaigns"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Push local YAML campaign files to the Engage API. Matches campaigns by name — existing campaigns are updated, new ones are created."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Push a single campaign file\ntdx engage campaign push path/to/campaign.yaml\n\n# Push all campaign files in a directory\ntdx engage campaign push path/to/campaigns/\n\n# Push all campaigns (uses tdx.json for workspace context)\ntdx engage campaign push\n\n# Push with explicit workspace\ntdx engage campaign push campaign.yaml --workspace \"Marketing Team\"\n\n# Validate against API without applying changes\ntdx engage campaign push campaign.yaml --dry-run\n\n# Skip confirmation prompt\ntdx engage campaign push campaign.yaml --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace <name>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Workspace name (overrides tdx.json and session context)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--dry-run"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Show what would be applied without applying"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["-y, --yes"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Skip confirmation prompt"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Workspace resolution order:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace"]}," option > ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx.json"]}," (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["engage_workspace"]}," field) > session context."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For email campaigns, the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email:"]}," YAML section may include ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["preheader"]}," for inbox preview text. It supports Liquid tags, is limited to 220 characters by the API, and accepts ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," to clear an existing value."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"validate-campaigns","__idx":11},"children":["Validate Campaigns"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Validate campaign YAML files locally without pushing to the API."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Validate all campaign files in current directory\ntdx engage campaign validate\n\n# Validate a specific file\ntdx engage campaign validate campaign.yaml\n\n# Validate all campaigns in a directory\ntdx engage campaign validate path/to/campaigns/\n\n# Show all files including valid ones\ntdx engage campaign validate --verbose\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--verbose"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Show all files including valid ones"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For API-level validation (resolving references), use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx engage campaign push --dry-run"]}," instead."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"email-templates","__idx":12},"children":["Email Templates"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"list-templates","__idx":13},"children":["List Templates"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# List all email templates (uses workspace from session context)\ntdx engage template list\ntdx engage templates              # alias for \"template list\"\n\n# List templates in a specific workspace\ntdx engage template list --workspace \"Marketing Team\"\n\n# Filter templates by pattern\ntdx engage template list \"welcome*\"\ntdx engage template list \"*_newsletter\"\n\n# Limit results\ntdx engage template list --limit 20\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"show-template-details","__idx":14},"children":["Show Template Details"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Show template by name\ntdx engage template show \"Welcome Email\"\n\n# Show template by UUID\ntdx engage template show \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\"\n\n# Specify workspace when using name\ntdx engage template show \"Welcome Email\" --workspace \"Marketing\"\n\n# Show full JSON:API response with all fields (htmlTemplate, beefreeJson, etc.)\ntdx engage template show \"Welcome Email\" --full\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"create-template","__idx":15},"children":["Create Template"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Note:"]}," Workspace is required for creating templates. Set it via ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx use engage_workspace"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace"]},"."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Create an email template (workspace from session)\ntdx engage template create --name \"Welcome Email\" \\\n  --subject \"Welcome to our service!\" \\\n  --preheader \"Start exploring your new account today.\" \\\n  --html \"<html><body><h1>Welcome!</h1></body></html>\"\n\n# Create with explicit workspace\ntdx engage template create --name \"Welcome Email\" \\\n  --subject \"Welcome to our service!\" \\\n  --html \"<html><body><h1>Welcome!</h1></body></html>\" \\\n  --workspace \"Marketing Team\"\n\n# Create from an HTML file\ntdx engage template create --name \"Welcome Email\" \\\n  --subject \"Welcome to our service!\" \\\n  --html-file ./templates/welcome.html\n\n# Create with plaintext version\ntdx engage template create --name \"Welcome Email\" \\\n  --subject \"Welcome to our service!\" \\\n  --html \"<html><body><h1>Welcome!</h1></body></html>\" \\\n  --plaintext \"Welcome to our service!\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"update-template","__idx":16},"children":["Update Template"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Update template name\ntdx engage template update \"Welcome Email\" --name \"New Welcome Email\"\n\n# Update template subject or inbox preview text\ntdx engage template update \"Welcome Email\" --subject \"New Subject Line\"\ntdx engage template update \"Welcome Email\" --preheader \"A concise preview for inboxes\"\n\n# Update template HTML\ntdx engage template update \"Welcome Email\" --html \"<html><body><h1>Updated!</h1></body></html>\"\n\n# Update template HTML from file\ntdx engage template update \"Welcome Email\" --html-file ./templates/updated.html\n\n# Update by UUID\ntdx engage template update \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\" --name \"New Name\"\n\n# Specify workspace when using name\ntdx engage template update \"Welcome Email\" --workspace \"Marketing\" --name \"New Name\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"delete-template","__idx":17},"children":["Delete Template"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Delete template by name (prompts for confirmation)\ntdx engage template delete \"Old Template\"\n\n# Delete template by UUID\ntdx engage template delete \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\"\n\n# Skip confirmation prompt\ntdx engage template delete \"Old Template\" --yes\n\n# Specify workspace when using name\ntdx engage template delete \"My Template\" --workspace \"Marketing\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"in-browser-messages","__idx":18},"children":["In-Browser Messages"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Manage workspace-scoped popup and inline web messages as local YAML definitions. The workflow supports drafts only: it does not launch, pause, finish, or delete messages."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"list-and-show","__idx":19},"children":["List and Show"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# List messages in the current workspace\n# The plural form is an alias for \"in-browser-message list\"\ntdx engage in-browser-message list\ntdx engage in-browser-messages\n\n# Filter by glob pattern or type\ntdx engage in-browser-message list \"summer*\" --workspace \"Marketing Team\"\ntdx engage in-browser-message list --type popup\ntdx engage in-browser-message list --type inline\n\n# Show by exact name or UUID\ntdx engage in-browser-message show \"Summer Promo\" --workspace \"Marketing Team\"\ntdx engage in-browser-message show \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\" --workspace \"Marketing Team\"\n\n# Show the full JSON:API resource, including HTML and BeeFree state\ntdx engage in-browser-message show \"Summer Promo\" --full\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"pull-and-validate","__idx":20},"children":["Pull and Validate"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pull"]}," writes definitions to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["in-browser-messages/<workspace-slug>/"]},". Each workspace directory contains ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx.json"]},", a YAML file per message, its HTML companion file, and—for popups returned with editor state—a BeeFree JSON companion file."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"in-browser-messages/marketing-team/\n├── tdx.json\n├── summer-promo.yaml\n├── summer-promo.html\n├── summer-promo.json\n├── homepage-banner.yaml\n└── homepage-banner.html\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Pull all messages, preview file changes, or select a subset\ntdx engage in-browser-message pull \"Marketing Team\"\ntdx engage in-browser-message pull \"Marketing Team\" --dry-run\ntdx engage in-browser-message pull \"Marketing Team\" --type popup --yes\ntdx engage in-browser-message pull \"Marketing Team\" --name \"Summer Promo\" --yes\n\n# Validate one definition or every in-browser-message YAML file below a directory\ntdx engage in-browser-message validate ./in-browser-messages/marketing-team\n# Include valid and skipped files in the output\ntdx engage in-browser-message validate ./in-browser-messages/marketing-team --verbose\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For pull, the workspace is resolved in this order: positional workspace, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace"]},", nearby ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx.json"]},", then the session context. Pull shows a diff for changed files, does not write during ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--dry-run"]},", and prompts before writing unless ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--yes"]}," is provided. Pulling an empty workspace still creates or updates its ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx.json"]}," and sets the workspace context."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"yaml-format","__idx":21},"children":["YAML Format"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Popup messages keep their rendered HTML and optional BeeFree editor state in companion files:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"# summer-promo.yaml\ntype: in_browser_message\nname: Summer Promo\nmessage_type: popup\ndescription: Seasonal popup modal\nworkspace: Marketing Team\n\nparent_segment:\n  id: segment-uuid\n  name: Customers\npersonalization:\n  id: personalization-uuid\n  name: Hero Section\n\nhtml_file: summer-promo.html\nbeefree_json_file: summer-promo.json\nappearance:\n  position: center\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Inline messages require a CSS selector and cannot specify popup-only fields:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"# homepage-banner.yaml\ntype: in_browser_message\nname: Homepage Banner\nmessage_type: inline\nworkspace: Marketing Team\nhtml_file: homepage-banner.html\ncss_selector: \"#promo-banner-container\"\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All messages require ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["message_type"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["html_file"]},". ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["message_type"]}," is either ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["popup"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["inline"]},". Inline messages require ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["css_selector"]},"; it cannot be ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["*"]}," or begin with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[">"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["+"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["~"]},". Popups cannot set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["css_selector"]},". Inline definitions cannot set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["appearance"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["beefree_json_file"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When specified, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["parent_segment"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["personalization"]}," must each contain the complete ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]}," metadata returned by Engage. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["appearance"]}," is the backend-shaped popup appearance configuration. Omit it to preserve the server's default appearance settings. The HTML and BeeFree paths must be safe relative paths contained within the YAML definition directory."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"push-drafts","__idx":22},"children":["Push Drafts"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["push"]}," discovers ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type: in_browser_message"]}," YAML files, validates them locally, and matches messages by exact trimmed name within the selected workspace. It creates missing messages as drafts and updates matching drafts."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Preview create/update actions without API writes\ntdx engage in-browser-message push ./in-browser-messages/marketing-team --dry-run\n\n# Push one definition or an entire directory\ntdx engage in-browser-message push ./in-browser-messages/marketing-team/summer-promo.yaml --yes\ntdx engage in-browser-message push ./in-browser-messages/marketing-team --yes\n\n# Override workspace stored in tdx.json\ntdx engage in-browser-message push ./in-browser-messages/marketing-team --workspace \"Marketing Team\" --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For push, workspace resolution is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace"]},", then the nearest ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx.json"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["engage_workspace"]},", then the session context. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--dry-run"]}," reads companion files and reports the intended create/update actions without sending POST or PATCH requests. Normal push prompts for confirmation unless ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--yes"]}," is supplied."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message type is immutable: a local popup cannot replace an existing inline message (or the reverse). Only ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DRAFT"]}," messages can be updated. Resolve these conditions in Engage before pushing; this command intentionally does not include lifecycle or deletion operations."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"landing-pages","__idx":23},"children":["Landing Pages"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Landing Pages use a local static-site workflow. A page belongs to an Engage workspace and requires a Web Domain that has been attached to that workspace. The normal workflow is:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"tdx engage domain create --domain-name pages.example.com\ntdx engage domain attach pages.example.com --workspace \"Marketing Team\"\ntdx engage landing-page init \"Spring Launch\" --domain pages.example.com --workspace \"Marketing Team\"\ncd landing-pages/spring-launch\ntdx engage landing-page validate\ntdx engage landing-page push --dry-run\ntdx engage landing-page push --yes\ntdx engage landing-page publish \"Spring Launch\" --workspace \"Marketing Team\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"web-domains","__idx":24},"children":["Web Domains"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Web Domains are account-scoped custom subdomains used to host Landing Pages. Create a domain and configure the DNS records shown by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["show"]},"; deployment must be active before a Landing Page can be published. Attach the domain to every workspace that will use it."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Discover domain status and required DNS records\ntdx engage domain list\ntdx engage domain show pages.example.com\n\n# Register and attach a domain\ntdx engage domain create --domain-name pages.example.com --display-name \"Marketing pages\"\ntdx engage domain attach pages.example.com --workspace \"Marketing Team\"\n\n# Change display metadata or re-deploy a suspended domain\ntdx engage domain update pages.example.com --display-name \"Campaign pages\"\ntdx engage domain deploy pages.example.com\n\n# Remove an unused association or domain\ntdx engage domain detach pages.example.com --workspace \"Marketing Team\"\ntdx engage domain delete pages.example.com --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"local-project-format","__idx":25},"children":["Local Project Format"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["init"]}," creates a project directory containing ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx.json"]},", a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["landing-page.yaml"]}," definition, and a root ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["site/index.html"]}," entrypoint. It does not overwrite an existing directory."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"landing-pages/spring-launch/\n├── tdx.json\n├── landing-page.yaml\n└── site/\n    └── index.html\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"type: landing_page\nname: Spring Launch\ndescription: Spring campaign site\nslug: campaigns/2026/spring\ndomain: ref:pages.example.com\nsite_dir: site\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The definition supports only ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]},", optional ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["description"]},"/",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["slug"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["domain"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["site_dir"]},". A slug uses lowercase letters, numbers, hyphens, and slash-separated path segments. The static site must contain ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["index.html"]},"; it permits HTML, CSS, JavaScript, common image/font files, JSON, text, XML, and web manifests. Uploads are limited to 1,000 files, 20 MB per file, and 100 MB in total."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"commands","__idx":26},"children":["Commands"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Create and locally validate a project\ntdx engage landing-page init \"Spring Launch\" --domain pages.example.com --workspace \"Marketing Team\"\ntdx engage landing-page validate [landing-page.yaml]\n\n# Inspect pages in the workspace\ntdx engage landing-page list --workspace \"Marketing Team\"\ntdx engage landing-page list \"spring*\" --status DRAFT --workspace \"Marketing Team\"\ntdx engage landing-page show \"Spring Launch\" --workspace \"Marketing Team\"\n\n# Upload a local static site as a draft; it never publishes automatically\ntdx engage landing-page push [landing-page.yaml] --workspace \"Marketing Team\" --dry-run\ntdx engage landing-page push [landing-page.yaml] --workspace \"Marketing Team\" --yes\n\n# Publish or unpublish explicitly\ntdx engage landing-page publish \"Spring Launch\" --workspace \"Marketing Team\"\ntdx engage landing-page unpublish \"Spring Launch\" --workspace \"Marketing Team\"\n\n# Delete after unpublishing\ntdx engage landing-page delete \"Spring Launch\" --workspace \"Marketing Team\" --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"push-a-local-site","__idx":27},"children":["Push a Local Site"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["push"]}," accepts a path to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["landing-page.yaml"]},", not a ZIP archive or an HTML file. When the path is omitted, it uses ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["./landing-page.yaml"]},". The YAML ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["site_dir"]}," identifies the directory to upload and must contain ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<site_dir>/index.html"]}," at its root. Workspace resolution is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace"]},", then the nearest project ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx.json"]},", then the session context."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# From a pulled or initialized project directory\ntdx engage landing-page validate landing-page.yaml\ntdx engage landing-page push landing-page.yaml --dry-run\ntdx engage landing-page push landing-page.yaml --yes\n\n# Or pass a definition path from another directory\ntdx engage landing-page push ./landing-pages/spring-launch/landing-page.yaml --workspace \"Marketing Team\" --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"pull-a-landing-page","__idx":28},"children":["Pull a Landing Page"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pull"]}," always retrieves the Landing Page configuration as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx.json"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["landing-page.yaml"]},". For a published page, it also reads the current published upload attempt's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["webAssets"]}," manifest and downloads every file in that manifest from the page's public URL, including files that are not referenced by HTML or CSS. For a draft or content-less page, it creates a configuration-only project with an empty ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["site/"]}," directory; it does not retrieve a draft upload attempt or draft site files."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pull"]}," does not execute JavaScript, crawl navigation links or iframes, or retrieve historical versions. A published page with an invalid or unavailable published manifest fails rather than silently replacing the local site with a configuration-only project."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Preview a pull without changing local files\ntdx engage landing-page pull \"Spring Launch\" --workspace \"Marketing Team\" --dry-run\n\n# Replace the project directory after confirmation\ntdx engage landing-page pull \"Spring Launch\" --workspace \"Marketing Team\"\n\n# Replace a chosen directory without confirmation\ntdx engage landing-page pull \"Spring Launch\" --workspace \"Marketing Team\" --dir ./spring-launch --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Pull replaces the destination project directory, so files that are not in the pulled project are removed. Public-site crawler requests must ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not"]}," send TD API authorization headers, OAuth credentials, cookies, or any private session data."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"workspaces","__idx":29},"children":["Workspaces"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"list-workspaces","__idx":30},"children":["List Workspaces"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# List all workspaces\ntdx engage workspace list\ntdx engage workspaces              # alias for \"workspace list\"\n\n# Filter workspaces by pattern\ntdx engage workspace list \"marketing*\"\ntdx engage workspace list \"*_production\"\n\n# Limit results\ntdx engage workspace list --limit 10\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"show-workspace-details","__idx":31},"children":["Show Workspace Details"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Show workspace by name\ntdx engage workspace show \"Marketing Team\"\n\n# Show workspace by UUID\ntdx engage workspace show \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\"\n\n# Show full JSON:API response with all fields (workspaceConfig, ownerUser, etc.)\ntdx engage workspace show \"Marketing Team\" --full\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"create-workspace","__idx":32},"children":["Create Workspace"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Create a workspace\ntdx engage workspace create --name \"Marketing Team\"\n\n# Create with description\ntdx engage workspace create --name \"Marketing Team\" \\\n  --description \"Workspace for marketing campaigns\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"update-workspace","__idx":33},"children":["Update Workspace"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Update workspace name\ntdx engage workspace update \"Marketing Team\" --name \"Marketing Department\"\n\n# Update workspace description\ntdx engage workspace update \"Marketing Team\" --description \"Updated description\"\n\n# Update by UUID\ntdx engage workspace update \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\" --name \"New Name\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"delete-workspace","__idx":34},"children":["Delete Workspace"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Delete workspace by name (prompts for confirmation)\ntdx engage workspace delete \"Old Workspace\"\n\n# Delete workspace by UUID\ntdx engage workspace delete \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\"\n\n# Skip confirmation prompt\ntdx engage workspace delete \"Old Workspace\" --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"set-workspace-context","__idx":35},"children":["Set Workspace Context"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Set workspace for the current session (alias for \"tdx use engage_workspace\")\ntdx engage workspace use \"Marketing Team\"\n\n# This is equivalent to:\ntdx use engage_workspace \"Marketing Team\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"line-sender-accounts","__idx":36},"children":["LINE Sender Accounts"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["LINE sender accounts are the LINE Official Account credentials used to send LINE messages. Manage them before creating LINE campaigns."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"list-line-sender-accounts","__idx":37},"children":["List LINE Sender Accounts"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# List all LINE sender accounts\ntdx engage line-sender-account list\n\n# Filter by pattern (glob wildcards supported)\ntdx engage line-sender-account list \"my-brand*\"\n\n# Filter by workspace\ntdx engage line-sender-account list --workspace \"Marketing Team\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"show-line-sender-account-details","__idx":38},"children":["Show LINE Sender Account Details"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Show by name\ntdx engage line-sender-account show \"My LINE Account\"\n\n# Show by UUID\ntdx engage line-sender-account show \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\"\n\n# Specify workspace when using name\ntdx engage line-sender-account show \"My LINE Account\" --workspace \"Marketing Team\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"line-imagemap-images","__idx":39},"children":["LINE Imagemap Images"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Before creating a LINE imagemap campaign, upload the image to receive a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["baseUrl"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"upload-an-image","__idx":40},"children":["Upload an Image"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Upload a JPEG image\ntdx engage line-imagemap-image upload ./banner.jpg\n\n# Upload a PNG image\ntdx engage line-imagemap-image upload ./banner.png\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Constraints (enforced by LINE):"]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Constraint"},"children":["Constraint"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Value"},"children":["Value"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Format"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["JPEG or PNG"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Max file size"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["10 MB"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Min width"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1040 px"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Example output:"]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"baseUrl: https://profile.line-scdn.net/0h...\n\nResized URLs:\n  240px : https://profile.line-scdn.net/0h.../240\n  300px : https://profile.line-scdn.net/0h.../300\n  460px : https://profile.line-scdn.net/0h.../460\n  700px : https://profile.line-scdn.net/0h.../700\n 1040px : https://profile.line-scdn.net/0h.../1040\n\nUse baseUrl in your campaign YAML:\n  line:\n    messages:\n      - type: imagemap\n        base_url: \"https://profile.line-scdn.net/0h...\"\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Copy the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["baseUrl"]}," value into your campaign YAML ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["line.messages[].base_url"]}," field."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All Engage commands support name-based selection in addition to UUIDs:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["By Name"]},": ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx engage campaign show \"My Campaign\""]}," - searches by exact name match"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["By UUID"]},": ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx engage campaign show \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\""]}," - direct ID lookup"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When multiple resources share the same name across workspaces, use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace"]}," to narrow the search."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"output-formats","__idx":41},"children":["Output Formats"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All commands support standard tdx output formats:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# JSON output (default)\ntdx engage campaign list\n\n# Table format\ntdx engage campaign list --format table\n\n# TSV format for scripting\ntdx engage campaign list --format tsv\n\n# JSONL format for streaming\ntdx engage campaign list --format jsonl\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"always-on-campaigns","__idx":42},"children":["Always-On Campaigns"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Always-on campaigns run continuously (no scheduling) and support a different lifecycle from regular campaigns: DRAFT → LIVE → PAUSED → FINISHED."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All always-on campaign commands require a workspace context (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--workspace"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx use engage_workspace"]},")."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"list-always-on-campaigns","__idx":43},"children":["List Always-On Campaigns"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# List all always-on campaigns\ntdx engage always-on-campaign list --workspace \"Marketing Team\"\ntdx engage always-on-campaigns --workspace \"Marketing Team\"  # alias\n\n# Filter by pattern\ntdx engage always-on-campaign list \"welcome*\" --workspace \"Marketing Team\"\n\n# Filter by type or status\ntdx engage always-on-campaign list --workspace \"Marketing Team\" --type email\ntdx engage always-on-campaign list --workspace \"Marketing Team\" --status LIVE\n\n# Combine filters\ntdx engage always-on-campaign list --workspace \"Marketing\" --type email --status DRAFT\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"show-always-on-campaign-details","__idx":44},"children":["Show Always-On Campaign Details"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Show campaign by name\ntdx engage always-on-campaign show \"My Campaign\" --workspace \"Marketing Team\"\n\n# Show campaign by UUID\ntdx engage always-on-campaign show \"01968a3a-ae17-7ef6-9b45-f1a0af1224b4\" --workspace \"Marketing Team\"\n\n# Show full JSON:API response\ntdx engage always-on-campaign show \"My Campaign\" --workspace \"Marketing Team\" --full\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"create-always-on-campaign","__idx":45},"children":["Create Always-On Campaign"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Create an email always-on campaign\ntdx engage always-on-campaign create --workspace \"Marketing Team\" \\\n  --name \"Welcome Flow\" --type email\n\n# Create with description and audience targeting\ntdx engage always-on-campaign create --workspace \"Marketing Team\" \\\n  --name \"Welcome Flow\" --type email \\\n  --description \"Automated welcome emails\" \\\n  --segment \"My Audience/New Users\"\n\n# Create a push campaign with UTM tracking\ntdx engage always-on-campaign create --workspace \"Marketing Team\" \\\n  --name \"Daily Digest\" --type push \\\n  --enable-utm-tracking\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"update-always-on-campaign","__idx":46},"children":["Update Always-On Campaign"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Update name or description\ntdx engage always-on-campaign update \"Welcome Flow\" --workspace \"Marketing Team\" \\\n  --name \"New Welcome Flow\"\n\ntdx engage always-on-campaign update \"Welcome Flow\" --workspace \"Marketing Team\" \\\n  --description \"Updated description\"\n\n# Update audience targeting\ntdx engage always-on-campaign update \"Welcome Flow\" --workspace \"Marketing Team\" \\\n  --segment \"My Audience/Premium Users\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"delete-always-on-campaign","__idx":47},"children":["Delete Always-On Campaign"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Only DRAFT campaigns can be deleted."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Delete with confirmation prompt\ntdx engage always-on-campaign delete \"Draft Campaign\" --workspace \"Marketing Team\"\n\n# Skip confirmation\ntdx engage always-on-campaign delete \"Draft Campaign\" --workspace \"Marketing Team\" --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"always-on-campaign-lifecycle-commands","__idx":48},"children":["Always-On Campaign Lifecycle Commands"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Launch (DRAFT → LIVE)\ntdx engage always-on-campaign launch \"Welcome Flow\" --workspace \"Marketing Team\"\n\n# Pause (LIVE → PAUSED)\ntdx engage always-on-campaign pause \"Welcome Flow\" --workspace \"Marketing Team\"\n\n# Resume (PAUSED → LIVE)\ntdx engage always-on-campaign resume \"Welcome Flow\" --workspace \"Marketing Team\"\n\n# Finish permanently (prompts for confirmation)\ntdx engage always-on-campaign finish \"Welcome Flow\" --workspace \"Marketing Team\"\ntdx engage always-on-campaign finish \"Welcome Flow\" --workspace \"Marketing Team\" --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"duplicate-always-on-campaign","__idx":49},"children":["Duplicate Always-On Campaign"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Duplicate with a new name (required)\ntdx engage always-on-campaign duplicate \"Welcome Flow\" --workspace \"Marketing Team\" \\\n  --name \"Welcome Flow Copy\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"validate-always-on-campaign-yaml-files","__idx":50},"children":["Validate Always-On Campaign YAML Files"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Validate YAML files locally without authentication. Useful for checking syntax and required fields before pushing."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Validate YAML files in a directory\ntdx engage always-on-campaign validate ./campaigns\n\n# Verbose mode shows all files including valid ones\ntdx engage always-on-campaign validate ./campaigns --verbose\n\n# Validate specific file\ntdx engage always-on-campaign validate campaign.yaml\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"pull-always-on-campaigns-to-yaml","__idx":51},"children":["Pull Always-On Campaigns to YAML"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Export always-on campaigns from Engage API to local YAML files for editing."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Pull all campaigns from a workspace\ntdx engage always-on-campaign pull --workspace \"Marketing Team\"\n\n# Pull campaigns with filter by name pattern\ntdx engage always-on-campaign pull --workspace \"Marketing Team\" --name \"welcome*\"\n\n# Pull campaigns by type (email, push, line, sms)\ntdx engage always-on-campaign pull --workspace \"Marketing Team\" --type email\n\n# Dry-run mode shows what would be pulled without writing files\ntdx engage always-on-campaign pull --workspace \"Marketing Team\" --dry-run\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Output directory structure:"]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"always-on-campaigns/\n├── Marketing Team/\n│   ├── tdx.json                          # Workspace config\n│   ├── welcome-email.yaml                # Campaign definition\n│   ├── welcome-email.html                # Email HTML template (if email type)\n│   ├── welcome-email.txt                 # Email plaintext (optional)\n│   └── daily-push.yaml                   # Push campaign\n"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"push-always-on-campaigns-from-yaml","__idx":52},"children":["Push Always-On Campaigns from YAML"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Create or update always-on campaigns from local YAML files."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# Push a campaign YAML file (creates new or updates existing by name match)\ntdx engage always-on-campaign push campaign.yaml --workspace \"Marketing Team\"\n\n# Push all campaigns in a directory\ntdx engage always-on-campaign push ./campaigns --workspace \"Marketing Team\"\n\n# Dry-run mode shows what would be applied without creating/updating\ntdx engage always-on-campaign push campaign.yaml --workspace \"Marketing Team\" --dry-run\n\n# Skip confirmation prompts\ntdx engage always-on-campaign push campaign.yaml --workspace \"Marketing Team\" --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["YAML File Format — Always-On Campaign:"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Always-on campaigns support email, push, LINE, and SMS content types. Unlike one-off campaigns, they run continuously without scheduling."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"type: always_on_campaign\nname: Welcome Series\ncampaign_type: email\ndescription: Automated welcome emails\nworkspace: Marketing Team # optional if set via --workspace\naudience: ref:New Users # ref: prefix required\n\nemail:\n  subject: 'Welcome to {{company}}!'\n  preheader: 'Everything you need to get started'\n  template: ref:Welcome Template # ref: prefix required\n  html_file: welcome.html # relative to YAML file\n  sender_id: ref:Sender ID # ref: prefix required, required for launch\n\n# For push campaigns:\npush:\n  title: Daily Digest\n  message: Check out today's updates\n  image_url: https://example.com/image.png\n\n# For LINE campaigns:\nline:\n  line_sender_account_id: ref:LINE Sender\n  messages:\n    - type: textV2\n      text: Hello {{profile.first_name}}!\n\n# For SMS campaigns (Always-On specific):\nsms:\n  sender_id: ACME # SMS sender ID\n  text: Your code is {{code}}\n  send_window_timezone: Asia/Tokyo # always-on: required for launch\n  send_window_start: '09:00:00' # always-on: required for launch\n  send_window_end: '21:00:00' # always-on: required for launch\n  send_window_blocked_weekdays: # optional\n    - Sunday\n    - Saturday\n\n# Optional sections:\nutm:\n  enabled: true\n  id: campaign-001\n  medium: email\n  source: treasuredata\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email.preheader"]}," is optional inbox preview text. It supports Liquid tags, is limited to 220 characters by the API, and accepts ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," to clear an existing value."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Content Types Supported:"]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required fields"},"children":["Required fields"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Email template"},"children":["Email template"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Launch requirements"},"children":["Launch requirements"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["subject"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["html_file"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["template"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["HTML file in same directory"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sender_id"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["push"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["title"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["message"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["(none)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["line"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["line_sender_account_id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["messages"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["(none)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sms"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sender_id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["text"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["—"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sender_id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["text"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["send_window_timezone"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["send_window_start"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["send_window_end"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"always-on-campaign-status-reference","__idx":53},"children":["Always-On Campaign Status Reference"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DRAFT"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Campaign is being prepared, not yet launched"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["LIVE"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Campaign is actively running"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PAUSED"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Campaign is temporarily paused"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["FINISHED"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Campaign has been permanently completed"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"campaign-status-reference","__idx":54},"children":["Campaign Status Reference"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DRAFT"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Campaign is being prepared, not yet launched"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ACTIVE"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Campaign is currently running"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PAUSED"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Campaign is temporarily paused"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["COMPLETED"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Campaign has finished execution"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"campaign-types","__idx":55},"children":["Campaign Types"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Email marketing campaigns"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["push"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Push notification campaigns"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["line"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["LINE messaging campaigns"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"line-campaign-yaml-reference","__idx":56},"children":["LINE Campaign YAML Reference"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["LINE campaigns use a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["line:"]}," section in the campaign YAML. Two message types are supported."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"textv2--text-message","__idx":57},"children":["textV2 — Text Message"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"type: campaign\nname: My LINE Campaign\ncampaign_type: line\n\nline:\n  line_sender_account_id: '<sender-uuid>' # From: tdx engage line-sender-account list\n  messages:\n    - type: textV2\n      text: 'Hello {{profile.first_name}}! Check out our latest offer.'\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"imagemap--image-with-tappable-areas","__idx":58},"children":["imagemap — Image with Tappable Areas"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Upload the image first with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx engage line-imagemap-image upload"]},", then use the returned ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["baseUrl"]},":"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"type: campaign\nname: My LINE Imagemap Campaign\ncampaign_type: line\n\nline:\n  line_sender_account_id: '<sender-uuid>'\n  messages:\n    - type: imagemap\n      base_url: 'https://profile.line-scdn.net/0h...' # From: tdx engage line-imagemap-image upload\n      alt_text: 'Tap to explore our offers'\n      base_size:\n        width: 1040\n        height: 1040\n      actions:\n        # URI action — opens a URL\n        - type: uri\n          link_uri: 'https://example.com/offer'\n          label: 'View Offer'\n          area: { x: 0, y: 0, width: 1040, height: 1040 }\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Action types:"]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required fields"},"children":["Required fields"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["uri"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["link_uri"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["area"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Opens a URL when tapped"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["message"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["text"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["area"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Sends ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["text"]}," as a message from the user ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["(not yet supported)"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clipboard"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clipboard_text"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["area"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Copies ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clipboard_text"]}," to the user's clipboard ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["(not yet supported)"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["uri"]}," action supports an optional ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["label"]}," field."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["base_size"]}," constraints:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["width"]}," must be ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1040"]},". ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["height"]}," can be any value, but LINE recommends a 1:1 ratio (1040×1040)."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Limits:"]}," Up to 5 messages per ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["line:"]}," section; up to 50 actions per imagemap message."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"workflow","__idx":59},"children":["Workflow"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# 1. Find your LINE sender account\ntdx engage line-sender-account list --workspace \"Marketing Team\"\n\n# 2. Upload imagemap image (if using imagemap type)\ntdx engage line-imagemap-image upload ./banner.jpg\n\n# 3. Write campaign YAML (use baseUrl from step 2)\n\n# 4. Validate locally\ntdx engage campaign validate my-line-campaign.yaml\n\n# 5. Push to API (dry-run first)\ntdx engage campaign push my-line-campaign.yaml --dry-run\ntdx engage campaign push my-line-campaign.yaml --yes\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"media-dam","__idx":60},"children":["Media (DAM)"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Manage images and assets in the Engage Digital Asset Management (DAM) storage."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"# List root directory\ntdx engage media ls\n\n# List a specific folder\ntdx engage media ls uploads/images\n\n# Find recent matching files, newest first\ntdx engage media ls uploads/images --name hero --node-type media_file --date-range last_30_days --sort=-updatedAt\n\n# Page through files uploaded by a specific user\n# --limit is a global option; DAM accepts values from 1 through 100\ntdx engage media ls --uploaded-by \"Admin User\" --limit 20 --offset 20\n\n# Upload an image (JPEG, PNG, GIF supported)\ntdx engage media upload ./banner.jpg\ntdx engage media upload ./banner.jpg --path uploads/images\ntdx engage media upload ./banner.jpg --path uploads --conflict replace\n\n# Create a directory\ntdx engage media mkdir uploads/images\n\n# Delete a file\ntdx engage media rm uploads/images/banner.jpg\n\n# Delete a directory (must be empty)\ntdx engage media rmdir uploads/images\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"filtering-and-pagination-for-media-ls","__idx":61},"children":["Filtering and pagination for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["media ls"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tdx engage media ls [path]"]}," supports server-side filtering, sorting, and pagination:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Values"},"children":["Values"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--name <text>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Any text"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Case-insensitive partial match on asset or folder name."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--node-type <type>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["media_file"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["media_folder"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Restrict results to files or folders."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--uploaded-by <name>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Any text"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Case-insensitive partial match on the uploader name. This filter returns files only."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--date-range <range>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["last_7_days"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["last_30_days"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["all"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Restrict results by upload date."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--sort <order>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["updatedAt"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["-updatedAt"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["-name"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Sort results. Prefix with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["-"]}," for descending order; use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--sort=-updatedAt"]}," when the value starts with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["-"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--limit <number>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1"]},"–",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["100"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Maximum matching items to return. This is a global option."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--offset <number>"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Non-negative integer"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Number of matching items to skip before returning results."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["JSON and JSONL output include the API's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paginationMeta.total"]}," and page navigation links, in addition to the directory metadata and listed items."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"conflict-strategies-for-media-upload","__idx":62},"children":["Conflict strategies for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["media upload"]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Strategy"},"children":["Strategy"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Behavior"},"children":["Behavior"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ask"]}," (default)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Fails with HTTP 409 if the file already exists"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["replace"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Overwrites the existing file"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["keep"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Auto-renames to avoid conflict (e.g. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["image_20240427103045.jpg"]},")"]}]}]}]}]}]},"headings":[{"value":"Engage Commands","id":"engage-commands","depth":1},{"value":"Workspace Context","id":"workspace-context","depth":2},{"value":"Campaigns","id":"campaigns","depth":2},{"value":"List Campaigns","id":"list-campaigns","depth":3},{"value":"Show Campaign Details","id":"show-campaign-details","depth":3},{"value":"Create Campaign","id":"create-campaign","depth":3},{"value":"Update Campaign","id":"update-campaign","depth":3},{"value":"Delete Campaign","id":"delete-campaign","depth":3},{"value":"Campaign Lifecycle Commands","id":"campaign-lifecycle-commands","depth":3},{"value":"Pull Campaigns","id":"pull-campaigns","depth":3},{"value":"Push Campaigns","id":"push-campaigns","depth":3},{"value":"Validate Campaigns","id":"validate-campaigns","depth":3},{"value":"Email Templates","id":"email-templates","depth":2},{"value":"List Templates","id":"list-templates","depth":3},{"value":"Show Template Details","id":"show-template-details","depth":3},{"value":"Create Template","id":"create-template","depth":3},{"value":"Update Template","id":"update-template","depth":3},{"value":"Delete Template","id":"delete-template","depth":3},{"value":"In-Browser Messages","id":"in-browser-messages","depth":2},{"value":"List and Show","id":"list-and-show","depth":3},{"value":"Pull and Validate","id":"pull-and-validate","depth":3},{"value":"YAML Format","id":"yaml-format","depth":3},{"value":"Push Drafts","id":"push-drafts","depth":3},{"value":"Landing Pages","id":"landing-pages","depth":2},{"value":"Web Domains","id":"web-domains","depth":3},{"value":"Local Project Format","id":"local-project-format","depth":3},{"value":"Commands","id":"commands","depth":3},{"value":"Push a Local Site","id":"push-a-local-site","depth":3},{"value":"Pull a Landing Page","id":"pull-a-landing-page","depth":3},{"value":"Workspaces","id":"workspaces","depth":2},{"value":"List Workspaces","id":"list-workspaces","depth":3},{"value":"Show Workspace Details","id":"show-workspace-details","depth":3},{"value":"Create Workspace","id":"create-workspace","depth":3},{"value":"Update Workspace","id":"update-workspace","depth":3},{"value":"Delete Workspace","id":"delete-workspace","depth":3},{"value":"Set Workspace Context","id":"set-workspace-context","depth":3},{"value":"LINE Sender Accounts","id":"line-sender-accounts","depth":2},{"value":"List LINE Sender Accounts","id":"list-line-sender-accounts","depth":3},{"value":"Show LINE Sender Account Details","id":"show-line-sender-account-details","depth":3},{"value":"LINE Imagemap Images","id":"line-imagemap-images","depth":2},{"value":"Upload an Image","id":"upload-an-image","depth":3},{"value":"Output Formats","id":"output-formats","depth":2},{"value":"Always-On Campaigns","id":"always-on-campaigns","depth":2},{"value":"List Always-On Campaigns","id":"list-always-on-campaigns","depth":3},{"value":"Show Always-On Campaign Details","id":"show-always-on-campaign-details","depth":3},{"value":"Create Always-On Campaign","id":"create-always-on-campaign","depth":3},{"value":"Update Always-On Campaign","id":"update-always-on-campaign","depth":3},{"value":"Delete Always-On Campaign","id":"delete-always-on-campaign","depth":3},{"value":"Always-On Campaign Lifecycle Commands","id":"always-on-campaign-lifecycle-commands","depth":3},{"value":"Duplicate Always-On Campaign","id":"duplicate-always-on-campaign","depth":3},{"value":"Validate Always-On Campaign YAML Files","id":"validate-always-on-campaign-yaml-files","depth":3},{"value":"Pull Always-On Campaigns to YAML","id":"pull-always-on-campaigns-to-yaml","depth":3},{"value":"Push Always-On Campaigns from YAML","id":"push-always-on-campaigns-from-yaml","depth":3},{"value":"Always-On Campaign Status Reference","id":"always-on-campaign-status-reference","depth":3},{"value":"Campaign Status Reference","id":"campaign-status-reference","depth":2},{"value":"Campaign Types","id":"campaign-types","depth":2},{"value":"LINE Campaign YAML Reference","id":"line-campaign-yaml-reference","depth":2},{"value":"textV2 — Text Message","id":"textv2--text-message","depth":3},{"value":"imagemap — Image with Tappable Areas","id":"imagemap--image-with-tappable-areas","depth":3},{"value":"Workflow","id":"workflow","depth":3},{"value":"Media (DAM)","id":"media-dam","depth":2},{"value":"Filtering and pagination for media ls","id":"filtering-and-pagination-for-media-ls","depth":3},{"value":"Conflict strategies for media upload","id":"conflict-strategies-for-media-upload","depth":3}],"frontmatter":{"seo":{"title":"tdx engage - Email Campaign Management | Treasure AI","description":"Manage Engage campaigns, email templates, and workspaces. Create, launch, and monitor marketing campaigns.","image":"/assets/og-image.ba836864a30434f560a4f7720f8a09019ad30ff828b20c5052ae933ba7121524.d7ef4821.png"}},"lastModified":"2026-09-04T02:45:56.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/ja/treasure-code/commands/engage","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}