Appearance
Automation Configuration Guide
A comprehensive guide to configuring content and account automation in Repliz.
Overview
Repliz Automation allows you to automatically interact with your audience across social media platforms. Automation rules are powered by a flexible config JSON object divided into modular automation actions:
- Delete: Automatically remove unwanted or spam comments.
- Reply: Automatically reply to comments with text, keyword rules, or AI.
- Like: Automatically like incoming comments.
- Message: Automatically send a Direct Message (DM) to commenters.
- Story: Automatically respond to story mentions and interactions.
- Chat: Automatically respond to incoming chat conversations at the account level.
WARNING
YouTube automation can only be configured per content using POST /public/automation. YouTube does not support account-level automation (PUT /public/account/{accountId}/automation).
Platform Support Matrix
| Automation Module | Threads | TikTok | YouTube | Scope | |||
|---|---|---|---|---|---|---|---|
| Delete | ✅ | ✅ | ✅ | ✅ | ✅ | ✅* | Content & Account |
| Reply | ✅ | ✅ | ✅ | ✅ | ✅ | ✅* | Content & Account |
| Like | ✅ | ❌ | ❌ | ✅ | ✅ | ❌ | Content & Account |
| Message | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | Content & Account |
| Story | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | Content & Account |
| Chat | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | Account Only |
*YouTube automation is supported per content only.
1. Delete Module
The delete object controls automatic deletion of comments. It supports two modes: Keyword matching and AI sentiment/intent detection.
Supported Platforms: Facebook Instagram Threads TikTok LinkedIn YouTube (Per Content Only)
Schema
| Field | Type | Required | Description |
|---|---|---|---|
isActive | boolean | Yes | Toggles the delete automation module. |
type | string | Yes | Moderation strategy: keyword or ai. |
keywords | string[] | Yes | List of blacklisted words (used when type: "keyword"). |
prompt | string | Yes | Instructions for AI to evaluate comments (used when type: "ai"). |
Examples
json
{
"delete": {
"isActive": true,
"type": "keyword",
"keywords": ["spam", "scam", "promo", "crypto", "casino"],
"prompt": ""
}
}json
{
"delete": {
"isActive": true,
"type": "ai",
"keywords": [],
"prompt": "You are a content moderator. Automatically delete comments containing hate speech, offensive language, or unverified promotional links."
}
}2. Reply Module
The reply object configures automated public comment replies. Replies can be static text, keyword-based, or AI-generated.
Supported Platforms: Facebook Instagram Threads TikTok LinkedIn YouTube (Per Content Only)
Schema
| Field | Type | Required | Description |
|---|---|---|---|
isActive | boolean | Yes | Toggles public comment reply automation. |
type | string | Yes | Reply mode: text, keyword, or ai. |
text | string | Yes | Static reply message (when type: "text"). |
prompt | string | Yes | AI instructions for generating responses (when type: "ai"). |
isIncludeContentContext | boolean | Yes | Include post caption/context in AI prompt for relevant answers. |
keyword | object | Yes | Keyword mapping rules (when type: "keyword"). |
exception | object | Yes | Exception rules to exclude specific keywords from replying. |
condition | object | Yes | Filters determining when reply should trigger. |
delay | object | Yes | Artificial delay before replying to appear natural. |
Sub-Objects
keyword Object
isExactMatch: Strict keyword match iftrue, partial match iffalse.values: Array of{ keyword: string, text: string }pairs.
exception Object
isActive: Toggles exception rules.isExactMatch: Strict keyword match iftrue, partial match iffalse.keywords: Array of keywords that prevent automated replies when detected in comments.
condition Object
isActive: Toggles trigger conditions.isExactMatch: Keyword matching precision.keywords: Trigger keywords that must be present in the comment.
delay Object
isActive: Toggles delay.value: Duration value (e.g.10).type: Unit ("second"or"minute").
Examples
json
{
"reply": {
"isActive": true,
"type": "text",
"text": "Thank you for commenting! We appreciate your feedback. 🙏",
"prompt": "",
"isIncludeContentContext": false,
"keyword": {
"isExactMatch": false,
"values": []
},
"exception": {
"isActive": false,
"isExactMatch": false,
"keywords": []
},
"condition": {
"isActive": false,
"isExactMatch": false,
"keywords": []
},
"delay": {
"isActive": false,
"value": 10,
"type": "second"
}
}
}json
{
"reply": {
"isActive": true,
"type": "keyword",
"text": "",
"prompt": "",
"isIncludeContentContext": false,
"keyword": {
"isExactMatch": false,
"values": [
{
"keyword": "price",
"text": "Our pricing starts at $10/month! Check out our website for full details."
},
{
"keyword": "location",
"text": "We are located at Central Street No. 45, Jakarta."
}
]
},
"exception": {
"isActive": false,
"isExactMatch": false,
"keywords": []
},
"condition": {
"isActive": false,
"isExactMatch": false,
"keywords": []
},
"delay": {
"isActive": false,
"value": 10,
"type": "second"
}
}
}json
{
"reply": {
"isActive": true,
"type": "ai",
"text": "",
"prompt": "You are a customer service assistant. Answer user questions politely based on our product guide.",
"isIncludeContentContext": true,
"keyword": {
"isExactMatch": false,
"values": []
},
"exception": {
"isActive": false,
"isExactMatch": false,
"keywords": []
},
"condition": {
"isActive": false,
"isExactMatch": false,
"keywords": []
},
"delay": {
"isActive": true,
"value": 5,
"type": "second"
}
}
}3. Like Module
The like object automatically likes incoming comments to increase user engagement.
Supported Platforms: Facebook TikTok LinkedIn
Schema
| Field | Type | Required | Description |
|---|---|---|---|
isActive | boolean | Yes | Toggles auto-liking of comments. |
json
{
"like": {
"isActive": true
}
}4. Message (DM) Module
The message object sends a private Direct Message (DM) to users who comment on your post. This is ideal for sending lead magnets, purchase links, or private discount codes.
Supported Platforms: Facebook Instagram
Schema
| Field | Type | Required | Description |
|---|---|---|---|
isActive | boolean | Yes | Toggles private DM automation. |
type | string | Yes | Message mode: ai, text, opening, or keyword. |
text | string | Yes | Static message text. |
prompt | string | Yes | AI instructions for generating messages. |
opening | object | Yes | Rich opening message with postback, additional, or web URL buttons. |
keyword | object | Yes | Keyword mapping rules (same as Reply keyword). |
condition | object | Yes | Trigger conditions (same as Reply condition). |
delay | object | Yes | Delay settings (same as Reply delay). |
Opening Message Structure
opening.postback: Postback button opening (isActive,text,image,button).opening.additional: Additional postback settings (isActive,isPreventBeforeFollow,text,image,button).opening.webUrl: External web URL button opening (text,image,buttons).
Button Structure
type: Button action type ("postback"or"web_url").title: Button label text (e.g."Click Me").payload: Internal payload identifier.url: Destination URL.
Example
json
{
"message": {
"isActive": true,
"type": "ai",
"text": "Hello",
"prompt": "You are a helpful sales assistant.",
"opening": {
"postback": {
"isActive": false,
"text": "Want to know more?",
"image": "https://storage.repliz.com/automations/sample.png",
"button": {
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
},
"additional": {
"isActive": false,
"isPreventBeforeFollow": false,
"text": "Want to know more?",
"image": "https://storage.repliz.com/automations/sample.png",
"button": {
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
},
"webUrl": {
"text": "Want to know more?",
"image": "https://storage.repliz.com/automations/sample.png",
"buttons": [
{
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
]
}
},
"keyword": {
"isExactMatch": false,
"values": [
{
"keyword": "Hello",
"text": "Hi! Check your DM."
}
]
},
"condition": {
"isActive": false,
"isExactMatch": false,
"keywords": ["hello"]
},
"delay": {
"isActive": false,
"value": 10,
"type": "second"
}
}
}5. Story Module
The story object automates responses to Instagram Story mentions and story replies. Its schema is identical to the Message Module.
Supported Platforms: Instagram
json
{
"story": {
"isActive": true,
"type": "ai",
"text": "Hello",
"prompt": "You are a friendly assistant. Reply to story mentions.",
"opening": {
"postback": {
"isActive": false,
"text": "Want to know more?",
"image": "https://storage.repliz.com/automations/sample.png",
"button": {
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
},
"additional": {
"isActive": false,
"isPreventBeforeFollow": false,
"text": "Want to know more?",
"image": "https://storage.repliz.com/automations/sample.png",
"button": {
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
},
"webUrl": {
"text": "Want to know more?",
"image": "https://storage.repliz.com/automations/sample.png",
"buttons": [
{
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
]
}
},
"keyword": {
"isExactMatch": false,
"values": [
{
"keyword": "Hello",
"text": "Hi! Thanks for the mention."
}
]
},
"condition": {
"isActive": false,
"isExactMatch": false,
"keywords": ["hello"]
},
"delay": {
"isActive": false,
"value": 10,
"type": "second"
}
}
}6. Chat Module
The chat object automates responses to direct chat messages at the account level (PUT /public/account/{accountId}/automation). It supports ai, text, and keyword response modes.
Supported Platforms: Facebook Instagram TikTok (Account-Level Automation Only)
Schema
| Field | Type | Required | Description |
|---|---|---|---|
isActive | boolean | Yes | Toggles account-level chat automation. |
type | string | Yes | Chat response mode: ai, text, or keyword. |
text | string | Yes | Static response text (used when type: "text"). |
prompt | string | Yes | AI system prompt (used when type: "ai"). |
keyword | object | Yes | Keyword mapping rules (same as Reply keyword). |
delay | object | Yes | Response delay configuration (same as Reply delay). |
Example
json
{
"chat": {
"isActive": true,
"type": "ai",
"text": "Hello! How can we help you today?",
"prompt": "You are a customer support agent. Answer user questions politely.",
"keyword": {
"isExactMatch": false,
"values": [
{
"keyword": "help",
"text": "Sure, let us know what you need help with!"
}
]
},
"delay": {
"isActive": false,
"value": 10,
"type": "second"
}
}
}Complete Configuration Example
Here is a full, ready-to-use config object containing all 6 modules matching the official Repliz DTO schema:
json
{
"delete": {
"isActive": true,
"type": "ai",
"keywords": ["baca", "oke"],
"prompt": "You are a content moderator."
},
"reply": {
"isActive": true,
"type": "ai",
"text": "Hello",
"prompt": "You are a social media assistant.",
"isIncludeContentContext": false,
"keyword": {
"isExactMatch": false,
"values": [
{
"keyword": "Hello",
"text": "Text to reply message"
}
]
},
"condition": {
"isActive": false,
"isExactMatch": false,
"keywords": ["hello"]
},
"delay": {
"isActive": false,
"value": 10,
"type": "second"
}
},
"like": {
"isActive": true
},
"message": {
"isActive": true,
"type": "ai",
"text": "Hello",
"prompt": "You are a sales assistant.",
"opening": {
"postback": {
"isActive": false,
"text": "Want to know?",
"image": "https://storage.repliz.com/automations/sample.png",
"button": {
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
},
"additional": {
"isActive": false,
"isPreventBeforeFollow": false,
"text": "Want to know?",
"image": "https://storage.repliz.com/automations/sample.png",
"button": {
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
},
"webUrl": {
"text": "Want to know?",
"image": "https://storage.repliz.com/automations/sample.png",
"buttons": [
{
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
]
}
},
"keyword": {
"isExactMatch": false,
"values": [
{
"keyword": "Hello",
"text": "Text to reply message"
}
]
},
"condition": {
"isActive": false,
"isExactMatch": false,
"keywords": ["hello"]
},
"delay": {
"isActive": false,
"value": 10,
"type": "second"
}
},
"chat": {
"isActive": true,
"type": "ai",
"text": "Hello",
"prompt": "You are a customer support agent.",
"keyword": {
"isExactMatch": false,
"values": [
{
"keyword": "Hello",
"text": "Text to reply message"
}
]
},
"delay": {
"isActive": false,
"value": 10,
"type": "second"
}
},
"story": {
"isActive": true,
"type": "ai",
"text": "Hello",
"prompt": "You are a friendly assistant.",
"opening": {
"postback": {
"isActive": false,
"text": "Want to know?",
"image": "https://storage.repliz.com/automations/sample.png",
"button": {
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
},
"additional": {
"isActive": false,
"isPreventBeforeFollow": false,
"text": "Want to know?",
"image": "https://storage.repliz.com/automations/sample.png",
"button": {
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
},
"webUrl": {
"text": "Want to know?",
"image": "https://storage.repliz.com/automations/sample.png",
"buttons": [
{
"type": "postback",
"title": "Click Me",
"payload": "payloadcustompostback",
"url": "https://repliz.com"
}
]
}
},
"keyword": {
"isExactMatch": false,
"values": [
{
"keyword": "Hello",
"text": "Text to reply message"
}
]
},
"condition": {
"isActive": false,
"isExactMatch": false,
"keywords": ["hello"]
},
"delay": {
"isActive": false,
"value": 10,
"type": "second"
}
}
}Related API Endpoints
- Create Automation — Create a content automation.
- Update Automation — Update an existing automation rule.
- Update Automation Account — Apply automation rules to connected accounts.
