Playbook
Unipile
Use these actions only with the workspace’s own Unipile API key and DSN (customer BYOK). Deepline does not bill provider spend for Unipile. Start withunipile_list_accounts to find the connected account_id for the
channel (LinkedIn, WhatsApp, and others), then unipile_list_chats and
unipile_get_chat_messages to read history. Reads are not rate limited.
unipile_send_message_in_chat and unipile_start_new_chat send real messages
from the customer’s connected account. Confirm the recipient and text before
executing them, and never retry a send to “check” it worked.
Deepline applies per-account guardrails before calling Unipile, and a blocked
call returns a validation error without an upstream request:
- LinkedIn: 100 profile retrievals, 100 messages (in-chat sends and non-InMail
new chats), and 40 InMails per account per rolling 24 hours, with 20 seconds
between outbound actions. Connection invites are not exposed; message
existing connections or use InMail (
linkedin.inmail: true, Premium only). - WhatsApp: 20 new chats per account per rolling 24 hours, 15 seconds between sends, and no new chats in the first 24 hours after an account connects.
unipile_list_accounts (or unipile_list_chats) first in the same
session. A send that Unipile rejects still counts toward the cap. Pace sends
yourself and stay well under the upstream limits.
LinkedIn people are addressed by provider ID (ACoAAA…, Sales Navigator
ACwAAA…) or public identifier (the last part of the profile URL). WhatsApp
recipients use the phone number with the @s.whatsapp.net suffix. List
endpoints paginate with cursor; a null cursor means no more results.