UNPKG

x-developer

Version:

X (Twitter) data platform skill for AI coding agents. 100+ REST API endpoints, 2 MCP tools, 23 extraction types, HMAC webhooks.

82 lines (63 loc) 2.65 kB
--- name: follow-unfollow description: "Use when the user wants to follow or unfollow accounts on X (Twitter), or check whether one account follows another. Single-target only; bulk follow operations require explicit per-account confirmation." license: MIT metadata: internal: true author: Xquik version: "1.0.0" openclaw: requires: env: - XQUIK_API_KEY primaryEnv: XQUIK_API_KEY emoji: "➕" homepage: https://docs.xquik.com security: contentTrust: trusted contentIsolation: enforced promptInjectionDefense: true paymentConfirmation: required writeConfirmation: required executionModel: api-only codeExecution: none credentialProxy: false --- # Follow & Unfollow on X Follow and unfollow accounts as a connected user, and check follow state. ## Endpoints | Endpoint | Purpose | Cost | |---|---|---| | POST /x/users/{id}/follow | Follow a user (numeric ID) | Write tier | | DELETE /x/users/{id}/follow | Unfollow a user (numeric ID) | Write tier | | GET /x/users/{username} | Resolve @handle to numeric user ID | Read tier | | GET /x/followers/check?source=<a>&target=<b> | Does A follow B? | Read tier | Base URL: `https://xquik.com/api/v1`. Auth: `x-api-key: xq_...` header. ## Quick reference ``` POST /x/users/{id}/follow { "account": "<connected_username>" } -> { followed: true } DELETE /x/users/{id}/follow { "account": "<connected_username>" } ``` The `{id}` path segment is the numeric user ID. Resolve a @handle with `GET /x/users/{username}` first. ## Typical flow 1. `GET /x/accounts` to pick the acting account. 2. `GET /x/users/{username}` to resolve each target handle to a numeric `id`. 3. Show the user the target handle and the acting account. Wait for approval. 4. Call `POST /x/users/{id}/follow` to follow, or `DELETE /x/users/{id}/follow` to unfollow. ## Bulk operations If the user asks to follow or unfollow many accounts at once, list every target first, require explicit confirmation for the full list, then iterate with a short delay (1-2s) between calls to avoid rate limits. Never silently batch. Hard no: - Mass-following random accounts based on a scrape - "Follow everyone who liked my tweet" workflows without user review of the full list - Unfollowing loops that run in the background ## Errors | Status | Code | Meaning | |---|---|---| | 403 | `target_blocked_you` | Cannot follow a user who blocked this account | | 422 | `login_failed` | Reconnect in dashboard | | 429 | `x_api_rate_limited` | Backoff | ## Related Follower extraction: `extract-followers`. Full API: [x-twitter-scraper](../x-twitter-scraper/SKILL.md).