send-dms

Send direct messages and read DM history on X via API.

177|17|Updated Feb 27, 2026
One-click install
npx skills add https://github.com/Xquik-dev/x-twitter-scraper --skill send-dms
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: send-dms
Source: https://github.com/Xquik-dev/x-twitter-scraper/tree/main/skills/send-dms
Command: npx skills add https://github.com/Xquik-dev/x-twitter-scraper --skill send-dms

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Send direct messages on X and read DM history for one-to-one conversations, automating private communication tasks that usually require manual steps.

Core Features & Use Cases

  • Send DMs to a user by numeric ID via POST /x/dm/{userId} with a message as the body.
  • Read DM history with a user via GET /x/dm/{userId}/history to provide context for conversations.
  • Resolve @handles to numeric user IDs via GET /x/users/{username} to identify recipients.

Quick Start

Connect your X account, resolve the recipient's handle to a numeric user ID, then send a DM using the API with your message.

Frequently Asked Questions about send-dms

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I send direct messages on X using an API?

To send direct messages on X using an API, you must connect your account, resolve the recipient's @handle to a numeric user ID, and send a message via POST /x/dm/{userId} with explicit user approval.

Can I read DM history for one-to-one conversations on X?

Yes, you can read DM history for one-to-one conversations on X by calling GET /x/dm/{userId}/history, which retrieves past messages to provide context for your automated communication workflows.

Do I need explicit user consent before sending automated DMs on X?

Yes, sending automated DMs on X requires explicit user approval before any write action. The Skill enforces strict confirmation rules to ensure secure, consent-based direct messaging.

How do I resolve an X username to a numeric ID for direct messaging?

You resolve an X @handle to a numeric user ID by calling GET /x/users/{username}. This ID is required to identify the recipient before you can send or read direct messages.

What are the limitations of automating private communication on X?

Automating private communication on X is limited to one-to-one conversations and requires a connected API key. It does not support group messaging and enforces strict confirmation rules before any write action.