Message composer
The message composer at the bottom of the chat includes several AgencyKey enhancements.
| Area | Location | Contains |
|---|
| Top Toolbar | Above text input | Emoji bar, Scripts button, Checklist button |
| Text Input | Center | Message text area |
| Bottom Toolbar | Below text input | Media buttons, Language toggle, Send button |
Sending text messages
- Click in the text input area
- Type your message
- Click Send (or press Enter)
The Send button turns blue when your message is ready to send.
Emoji
- Click emoji icons in the top toolbar for quick access
- Or use the emoji picker for full emoji selection
Text formatting
Click the text formatting button (Aa) in the bottom toolbar to access formatting options:
| Format | Button | Effect |
|---|
| Bold | B | Makes text bold |
| Italic | I | Makes text italic |
| Underline | U | Adds underline to text |
| Strikethrough | S | Adds strikethrough to text |
| Link | Link icon | Converts text to clickable hyperlink |
| Clear | Eraser | Removes all formatting |
You can also choose text styles from the dropdown:
- Default
- Heading 1
- Heading 2
- Paragraph
Click the media buttons in the bottom toolbar to add content:
| Button | Function |
|---|
| Gallery | Add photos from the vault |
| GIF | Search and add GIFs |
| Video | Add videos from the vault |
| Microphone | Record or add audio |
Vault integration
When you open the vault to select media, AgencyKey shows which items have already been sent to this fan:
- Dimmed items (50% opacity) — Already sent to this fan
- Normal items — Not yet sent
This helps you avoid sending duplicate content to the same fan.
Paid content (PPV)
PPV (Pay-Per-View) messages contain content that fans must purchase to unlock.
Creating a PPV message
- Click the price tag button in the bottom toolbar
- Add media to your message
- Set the price (minimum $3 USD)
- Optionally add free preview media
- Click Send
Free preview vs. paid content
You can organize media into two zones:
| Zone | Description |
|---|
| Free Preview | Media fans see before purchasing |
| Price to View | Media fans unlock after paying |
To move media between zones:
- Drag and drop media items
- Or use the arrow buttons on each item
Setting the price
- Click on the price field
- Enter the amount (minimum $3)
- The price appears on the sent message
PPV message display
Sent PPV messages show:
- Price badge — The cost to unlock
- Paid/Unpaid status — Whether the fan has purchased
- Media thumbnails — Preview of locked content
Scheduled messages
Schedule messages to send later or when the fan comes online.
Setting a delay
- Click the clock icon next to the Send button
- Choose a delay option:
| Option | Sends After |
|---|
| 30 sec | 30 seconds |
| 1 min | 1 minute |
| 2 min | 2 minutes |
| 3 min | 3 minutes |
| 5 min | 5 minutes |
| 10 min | 10 minutes |
| Custom | Your specified hours/minutes |
| When online | When the fan comes online |
Cancellation options
Configure when scheduled messages should be cancelled:
| Option | Effect |
|---|
| Cancel if they message | Auto-cancel if fan sends a message before your scheduled one |
| Cancel if I message | Auto-cancel if you send another message first |
Scheduled message indicator
Scheduled messages show a clock badge with the remaining time until they send.
Scripts (message templates)
Scripts are pre-written message templates you can insert or send with one click.
Using Scripts
- Click the Scripts button in the top toolbar
- Browse or search available scripts
- Choose an action:
| Action | What It Does |
|---|
| Insert | Puts the script text into your message input (you can edit before sending) |
| Send | Sends the script immediately as a message |
The name variable
Scripts can include the {name} placeholder, which automatically replaces with the fan’s name:
Script text: “Hey {name}, how are you today?”
Sent message: “Hey John, how are you today?”
The system uses this priority for the name:
- Fan’s custom nickname (if you set one)
- Default fan nickname (if configured)
- Literal
{name} (if no name available)
Scripts can include:
- Attached media (photos, videos, audio)
- Price (for PPV messages)
When you send a script with a price, it sends as a PPV message.
Translation
AgencyKey provides two translation features to help communicate with international fans.
Translate while typing
Translates your message to English as you type.
- Click the language icon in the bottom toolbar
- Enable “Translate While Typing”
- As you type, a translation panel shows the English version
- The translated text is sent instead of your original
Chat translation
Automatically translates incoming messages from fans.
- Click the translate button in the chat header
- Enable “Chat Translation”
- Select your preferred language:
- English
- Russian
- Ukrainian
- Incoming messages show the original + translation
Translations appear below the original message text.
Message statuses
After sending, messages show their delivery status:
| Status | Icon | Meaning |
|---|
| Sent | Single check | Message delivered to OnlyFans |
| Read | Double check (blue) | Fan has seen the message |
| Error | Warning triangle | Failed to send |
| Delayed | Clock icon | Scheduled for later |
Message actions
For your messages (outgoing)
Hover over a message or right-click to access actions:
| Action | Description |
|---|
| Unsend | Remove the message (time-limited) |
| Pin | Pin important messages for quick access |
| Reply | Quote this message and respond |
For Fan messages (incoming)
| Action | Description |
|---|
| Like | React to the message with a heart |
| Reply | Quote and reply to this specific message |
| Pin | Pin important messages |
| Copy | Copy message text to clipboard |
| Hide | Hide the message from view |
| Report | Report inappropriate content |
Replying to messages
When you reply to a message:
- Click the Reply button on any message
- A reply preview appears above the composer showing:
- Original author name
- Message text (truncated)
- Date sent
- Type your response
- Click Send — your message will be linked to the original
Click the X on the reply preview to cancel the reply.
Pinning messages
Pin important messages for quick reference:
- Click the Pin button on any message
- The message is added to pinned messages
- Click Pinned messages button in the chat header to view all pinned messages
Pinned messages show a filled pin icon instead of an outline.
To unpin: Click the pin button again on a pinned message.
PPV tab (in Insights Panel)
The right-side panel has a PPV tab showing all paid messages with this fan.
PPV statistics
| Stat | Description |
|---|
| Highest Price | Most expensive PPV this fan has seen |
| Average Price | Average PPV price for this fan |
| Lowest Price | Least expensive PPV this fan has seen |
PPV message list
Scrollable list showing all PPV messages:
- Message text preview
- Media thumbnails (up to 6 visible)
- Price and paid/unpaid status
- Send date
Permissions
What you can do depends on your permissions:
| Action | Required Permission |
|---|
| Send messages | Send messages permission |
| Send paid content | Send paid messages permission |
| Use scripts | View scripts permission |
| Use translation | Translation permission |
Tips
- Track vault usage — Dimmed items help you avoid sending duplicates
- Use scripts for efficiency — Pre-write common responses with
{name} variable for personalization
- Schedule strategically — Use “When online” for important messages
- Check PPV stats — The PPV tab shows what price points work for each fan
- Enable translation — Communicate effectively regardless of language barriers