Dribbble automation · runs daily
Answer Dribbble Project Requests and client messages
A client finds you in Designer Search, presses Get in Touch and sends a Project Request while you are deep in another project. By the time you open Dribbble Messages two days later, your Response Time has already taken the hit.
Cotlet does it in your own Dribbble account with list_leads, list_conversations, get_conversation and reply_to_message, called by your AI agent, an n8n workflow or a script.
Hosted · nothing to install or maintain
Official options
Can Dribbble do this on its own?
Dribbble has no API for Messages or Project Requests (checked 11 Oct 2026): API v2 covers your shots, attachments, projects and jobs only. In the help center (checked 12 Oct 2026) Dribbble offers quick triage actions, Decline Request and Mark as Spam, that count toward Response Time, and shows Response Time and Response Rate in Pro Analytics. We found no auto-reply, saved reply or reminder for unanswered requests, so each first reply is still typed by hand in Messages.
By hand
How you do it in Dribbble today
- Dribbble only sends Project Requests when Available for Work is on under your avatar > Work Preferences; Allow Messages alone shows the Get in Touch button but no requests.
- Open Dribbble Messages and read each new Project Request thread from the first message, including any files the client attached.
- Choose an answer for each Dribbble request: a message reply, a proposal, Decline Request or Mark as Spam. Dribbble counts all four as a reply.
- Before sending, reread the Dribbble message for an email address, phone number, website or payment link, because sharing them before the first payment breaks Dribbble's Terms of Service.
- Repeat this every day. One busy week with requests left in the inbox raises the 90-day median Response Time that clients see in Designer Search, and a request you never answer lowers Response Rate.
With an agent
How to answer Dribbble Project Requests and client messages
Prompt
Go through my Dribbble Project Requests and unread messages from this week. Draft a reply or a polite decline for each one I have not answered, and show me every draft before it is sent. - 01
Collect what is still waiting
The agent calls list_leads with unanswered_only and a since date seven days back, then list_conversations with unread_only for clients who write outside a request, such as a past client asking for a revision. Requests come first, oldest first, because the first reply to a request is what Response Time measures.
- 02
Read the whole thread before deciding
get_conversation returns every message in the thread. The agent sorts each request into four groups: a fit with enough detail to answer, a fit with a vague brief, outside your services, and spam. It reads attached file names but does not claim to have opened the files.
- 03
Draft the right kind of reply
A clear fit gets a short answer with your availability and the two or three questions that decide the price. A vague brief gets questions only. Work you do not take gets a polite decline message, which Dribbble also counts as a reply. Spam gets no draft; the agent lists it so you can press Mark as Spam yourself, since Cotlet has no tool for that button.
- 04
Keep contact details out
Drafts never carry an email address, phone number, portfolio site with contact details or payment link. When a client asks to move to email or WhatsApp, the draft explains that the conversation stays on Dribbble until the first payment, which is Dribbble's own rule.
- 05
Send only after your OK
reply_to_message posts in the existing thread under your name, one call per thread, after you approve or edit the draft. Threads where the last message is already yours are skipped, so a second run the same day never answers twice.
What you get back
Example data
4 Project Requests without a reply since 6 Oct, 1 unread message from a past client.
Nordlicht GmbH, fintech dashboard redesign (received 8 Oct): reply drafted with 3 scope questions. Sent after your OK.
Priya Shah, logo and brand book (received 9 Oct): outside your services, polite decline drafted. Sent after your OK.
Tomás Reyes, "need app, budget?" (received 10 Oct): vague brief, 2 questions drafted. Waiting for your OK.
"Crypto promo partnership" (received 10 Oct): looks like spam, no draft. Mark it as spam in Dribbble.
Marta Kowal asks for a call link and your email; reply drafted that keeps the talk on Dribbble until the first payment. Other ways to ask
- Every morning at 9:00, list Dribbble Project Requests older than 24 hours that still have no reply. Do not draft anything.
- Draft polite declines for every request about logos or print. I only take product and web design work.
- Did any project requests come in this week that I have not answered yet?
- Only unread messages from clients I already worked with: summarize what each one needs.
Before you automate it
What Dribbble allows, and what to know first
- Dribbble measures Response Time as the median time to the first reply in a new Project Request over the last 90 days, and shows it to clients in Designer Search in bands from about an hour to within a week.
- Dribbble counts Message Reply, Proposal Created, Decline Request and Mark as Spam as a reply, so a fast decline protects Response Time as well as a full answer does.
- Dribbble forbids sharing email addresses, social handles, phone numbers, websites with contact details and payment links in messages before the project starts and the first payment is made, and can suspend accounts that do it.
- Dribbble says designers who answer Project Requests the same day tend to have a higher chance of winning the project, and that a decline or spam mark counts even when you are not interested in the project.
reply_to_message asks for your OK by default. To run it daily without you, switch confirmation off for that tool in your dashboard.
Sources: Dribbble Help: Response Time · Dribbble Help: Keeping projects on Dribbble · Dribbble Help: How do I get the Get in Touch button on my profile? · Dribbble Help: Responding to Project Briefs
REST
Call list_leads from a script
curl
curl https://cotlet.dev/api/v1/dribbble/list_leads \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"since":"2026-10-05","unanswered_only":true}' Example response
{
"leads": [
{
"lead_id": "ld_30912",
"client": "Marta Kowal",
"type": "Project Request",
"received_at": "2026-10-08T11:02:00Z",
"replied": false,
"conversation_id": "8841207"
}
],
"next_cursor": null
} MCP: add https://cotlet.dev/mcp/v1 with the same key; the tool is dribbble_list_leads. Example data.
Schedule it in n8n, Make, Zapier or cronTools
Dribbble tools this automation uses
| Tool | Parameters |
|---|---|
| list_leads | since, unanswered_only |
| list_conversations | unread_only, limit, cursor |
| get_conversation | conversation_id |
| reply_to_message | conversation_id, body |
Frequently asked questions
Can the agent answer Project Briefs too?
No. Project Briefs are a separate Pro feature: each intro or proposal costs one credit, only Pro Standard and Plus members get credits, and an intro cannot be edited after it is sent. Cotlet has no tool for briefs; the agent answers Project Requests and messages that reach your inbox.
Can the agent send a proposal?
No. reply_to_message sends text in the thread. Proposals, with their milestones, are created in Dribbble, and the agent can draft the wording for you to paste in.
Give your agent access to Dribbble.
Free 7-day trial with 5,000 credits, no card needed. Cotlet is independent and not affiliated with Dribbble.