Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseTwitter/X API Skill
Twitter/X API 技能
Interact with X (Twitter) via API v2 for reading, posting, replying, DMs, search, and analytics.
通过API v2与X (Twitter)交互,实现读取、发布、回复、私信、搜索和分析功能。
Setup
配置
Credentials
凭证
Store credentials in environment variables or :
~/.config/twitter/credentials.jsonbash
export TWITTER_API_KEY="your-api-key"
export TWITTER_API_SECRET="your-api-secret"
export TWITTER_ACCESS_TOKEN="your-access-token"
export TWITTER_ACCESS_SECRET="your-access-secret"
export TWITTER_BEARER_TOKEN="your-bearer-token" # For read-only operationsOr create credentials file:
bash
mkdir -p ~/.config/twitter
cat > ~/.config/twitter/credentials.json << 'EOF'
{
"api_key": "your-api-key",
"api_secret": "your-api-secret",
"access_token": "your-access-token",
"access_secret": "your-access-secret",
"bearer_token": "your-bearer-token"
}
EOF
chmod 600 ~/.config/twitter/credentials.json将凭证存储在环境变量或 中:
~/.config/twitter/credentials.jsonbash
export TWITTER_API_KEY="your-api-key"
export TWITTER_API_SECRET="your-api-secret"
export TWITTER_ACCESS_TOKEN="your-access-token"
export TWITTER_ACCESS_SECRET="your-access-secret"
export TWITTER_BEARER_TOKEN="your-bearer-token" # 用于只读操作或者创建凭证文件:
bash
mkdir -p ~/.config/twitter
cat > ~/.config/twitter/credentials.json << 'EOF'
{
"api_key": "your-api-key",
"api_secret": "your-api-secret",
"access_token": "your-access-token",
"access_secret": "your-access-secret",
"bearer_token": "your-bearer-token"
}
EOF
chmod 600 ~/.config/twitter/credentials.jsonInstall Dependencies
安装依赖
bash
pip install tweepybash
pip install tweepyQuick Reference
快速参考
| Task | Command |
|---|---|
| Post tweet | |
| Post with image | |
| Reply | |
| Thread | |
| Get timeline | |
| Get mentions | |
| Get DMs | |
| Send DM | |
| Search | |
| User info | |
| Tweet info | |
| Analytics | |
| 任务 | 命令 |
|---|---|
| 发布推文 | |
| 带图发布 | |
| 回复推文 | |
| 发布推文串 | |
| 获取时间线 | |
| 获取提及通知 | |
| 获取私信 | |
| 发送私信 | |
| 搜索 | |
| 获取用户信息 | |
| 获取推文信息 | |
| 查看分析数据 | |
Scripts
脚本
tweet.py
tweet.py
Main script for all Twitter operations. Run with for details:
--helpbash
{baseDir}/scripts/tweet.py --help
{baseDir}/scripts/tweet.py post --help处理所有Twitter操作的主脚本,运行时添加 查看详情:
--helpbash
{baseDir}/scripts/tweet.py --help
{baseDir}/scripts/tweet.py post --helpCommon Workflows
常用工作流
Post a simple tweet:
bash
{baseDir}/scripts/tweet.py post "Hello, world!"Post with image:
bash
{baseDir}/scripts/tweet.py post "Check this out!" --media photo.png
{baseDir}/scripts/tweet.py post "Multiple images" --media img1.png --media img2.pngReply to a tweet:
bash
{baseDir}/scripts/tweet.py reply 1234567890 "Great point!"Post a thread:
bash
{baseDir}/scripts/tweet.py thread \
"First tweet in thread" \
"Second tweet" \
"Third tweet"Read your mentions:
bash
{baseDir}/scripts/tweet.py mentions --count 50Search for tweets:
bash
{baseDir}/scripts/tweet.py search "openclaw agent" --count 20
{baseDir}/scripts/tweet.py search "#AI lang:en" --count 20Get user info:
bash
{baseDir}/scripts/tweet.py user elonmuskSend a DM:
bash
{baseDir}/scripts/tweet.py dm username "Hello from OpenClaw!"View tweet analytics:
bash
{baseDir}/scripts/tweet.py analytics 1234567890发布一条简单推文:
bash
{baseDir}/scripts/tweet.py post "Hello, world!"带图发布推文:
bash
{baseDir}/scripts/tweet.py post "Check this out!" --media photo.png
{baseDir}/scripts/tweet.py post "Multiple images" --media img1.png --media img2.png回复一条推文:
bash
{baseDir}/scripts/tweet.py reply 1234567890 "Great point!"发布推文串:
bash
{baseDir}/scripts/tweet.py thread \
"First tweet in thread" \
"Second tweet" \
"Third tweet"读取提及通知:
bash
{baseDir}/scripts/tweet.py mentions --count 50搜索推文:
bash
{baseDir}/scripts/tweet.py search "openclaw agent" --count 20
{baseDir}/scripts/tweet.py search "#AI lang:en" --count 20获取用户信息:
bash
{baseDir}/scripts/tweet.py user elonmusk发送私信:
bash
{baseDir}/scripts/tweet.py dm username "Hello from OpenClaw!"查看推文分析数据:
bash
{baseDir}/scripts/tweet.py analytics 1234567890API Tiers & Limits
API层级与限制
| Tier | Cost | Read | Write | Search |
|---|---|---|---|---|
| Free | $0 | Limited | - | - |
| Basic | $100/mo | 10k/mo | 1.5k/mo | 50/mo |
| Pro | $5000/mo | 1M/mo | 300k/mo | 500/mo |
Free tier can only post tweets (no read access to timeline/mentions).
Basic tier required for reading mentions, timeline, and search.
Write-only operations work on free tier.
See for detailed rate limits.
{baseDir}/references/api-limits.md| 层级 | 费用 | 读取额度 | 写入额度 | 搜索额度 |
|---|---|---|---|---|
| 免费版 | $0 | 有限额度 | - | - |
| 基础版 | $100/月 | 1万次/月 | 1500次/月 | 50次/月 |
| 专业版 | $5000/月 | 100万次/月 | 30万次/月 | 500次/月 |
免费层级仅可发布推文(无时间线/提及的读取权限)。
基础层级是读取提及、时间线和搜索功能的必要条件。
仅写入操作可在免费层级正常使用。
查看 获取详细的速率限制信息。
{baseDir}/references/api-limits.mdError Handling
错误处理
Common errors:
| Error | Cause | Solution |
|---|---|---|
| 403 Forbidden | Insufficient tier | Upgrade API tier or check endpoint access |
| 429 Too Many Requests | Rate limit hit | Wait and retry; check rate limit headers |
| 401 Unauthorized | Invalid credentials | Verify API keys and tokens |
| 404 Not Found | Tweet/user deleted | Handle gracefully, inform user |
| 422 Unprocessable | Duplicate tweet | Wait before posting same content |
常见错误:
| 错误 | 原因 | 解决方案 |
|---|---|---|
| 403 禁止访问 | 层级权限不足 | 升级API层级或检查端点访问权限 |
| 429 请求过多 | 达到速率限制 | 等待后重试,检查速率限制响应头 |
| 401 未授权 | 凭证无效 | 验证API密钥和令牌是否正确 |
| 404 未找到 | 推文/用户已删除 | 优雅处理异常,告知用户 |
| 422 无法处理请求 | 推文内容重复 | 间隔一段时间后再发布相同内容 |
Notes
注意事项
- Rate limits: X API has strict rate limits. Scripts include retry logic.
- Media uploads: Images must be <5MB (PNG/JPG) or <15MB (GIF). Videos <512MB.
- Character limit: 280 characters per tweet. Threads for longer content.
- DMs: Require OAuth 1.0a user context (not Bearer token).
- Search operators: for advanced queries.
{baseDir}/references/search-operators.md
- 速率限制:X API有严格的速率限制,脚本内置重试逻辑。
- 媒体上传:图片大小必须小于5MB(PNG/JPG)或小于15MB(GIF),视频大小小于512MB。
- 字符限制:每条推文最多280字符,长内容可使用推文串发布。
- 私信:需要OAuth 1.0a用户上下文(不可使用Bearer token)。
- 搜索运算符:查看 了解高级查询语法。
{baseDir}/references/search-operators.md
Related Files
相关文件
- - Main CLI for all operations
{baseDir}/scripts/tweet.py - - Detailed rate limits by endpoint
{baseDir}/references/api-limits.md - - Twitter search syntax
{baseDir}/references/search-operators.md
- - 处理所有操作的主CLI工具
{baseDir}/scripts/tweet.py - - 各端点详细速率限制说明
{baseDir}/references/api-limits.md - - Twitter搜索语法说明
{baseDir}/references/search-operators.md