Quote Post With Media

Create Community Quote With Media

POST/tw-v2/interaction/create-community-quote-with-media

Description

Quote tweet another tweet inside a specific community with your own commentary and media attachments (images or video). Supports text content up to 280 characters for non-premium users, or 25,000 characters for premium users.

Request Body

ParameterTypeRequiredDescription
authTokenstringrequiredAccount authentication token (auth_token cookie value)
textstringrequiredThe text content of the quote tweet (max 280 characters for non-premium, 25,000 for premium)
attachmentUrlstringrequiredThe URL of the tweet to quote (e.g. https://x.com/sample_user_00001/status/2001844185)
communityIdstringrequiredThe ID of the community to post to (numeric only)
mediaarrayrequiredArray of media objects (1-4 items). Each object must use exactly one source: {url: string}, {data: string, type: string}, or {media_id: string}.
proxystringrequiredProxy in format 'hostname:port@username:password' (required for better success rates)
disableLinkPreviewbooleanoptionalWhen true, disables link preview cards for tweets containing URLs (defaults to false)

Media Input

Each item in media can be one of:

  • { "url": "https://example.com/image.jpg" }: TweetAPI fetches and uploads the media.
  • { "data": "<base64>", "type": "image/png" }: TweetAPI uploads base64 media with the provided MIME type.
  • { "media_id": "1971008286821380096" }: attach a caller-managed Twitter media ID directly.

When using media_id, upload and finalize the media with the same Twitter/X account first, wait for video or GIF processing to finish, then pass the returned media_id_string. TweetAPI does not pre-validate ownership, expiry, processing state, or media category.

Code Examples

const body = {
  authToken: 'YOUR_AUTH_TOKEN',
  text: 'Sample post text 93445 for documentation.',
  attachmentUrl: 'https://x.com/sample_user_00001/status/2001844185',
  communityId: '4001272782786434945',
  media: [{ url: 'https://example.com/link-94089/profile-29900/image.jpg' }],
  proxy: 'proxy.example.com:8080@user:pass'
};

const response = await fetch('https://api.tweetapi.com/tw-v2/interaction/create-community-quote-with-media', {
  method: 'POST',
  headers: {
    'X-API-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(body)
});

const data = await response.json();
console.log(data);

Response

Success Response (201 Created)

201
{
  "data": {
    "id": "9002678350904613166",
    "action": "create_community_quote_with_media",
    "timestamp": "2026-04-16T10:30:42.315Z",
    "success": true,
    "metadata": {
      "tweet_id": "2001292875488652844",
      "author_username": "username",
      "text": "Sample post text 93445 for documentation.",
      "created_at": "Wed Apr 16 10:30:42 +0000 2026",
      "url": "https://example.com/link-94089/profile-41921/username/status/2001444823882833836",
      "quoted_tweet_id": "1234567890",
      "quoted_tweet_url": "https://example.com/link-94089/profile-41921/username/status/2001362066"
    }
  }
}

Error Responses

Status CodeDescription
400Bad Request - Invalid parameters, community ID, attachment URL, or media format
401Unauthorized - Invalid or missing API key
403Forbidden - Account not authorized to post in this community
404Not Found - Community or quoted tweet doesn't exist
429Too Many Requests - Rate limit exceeded
500Internal Server Error - Server error

Notes

  • Community ID must be numeric only
  • Attachment URL must be a valid tweet URL (e.g. https://x.com/sample_user_00001/status/2001844185)
  • Maximum 4 images or 1 video per tweet
  • Media can be provided as base64 data with type, or as a URL
  • All timestamps are in ISO 8601 format
  • IDs are snowflake IDs (strings)
  • Tweets longer than 280 characters automatically use premium note tweet format

API Playground

POST/tw-v2/interaction/create-community-quote-with-media

Sensitive Credentials Required

Requires your Twitter authToken. Use a test account.

Press ⌘ + Enter to execute

curl -X POST "https://api.tweetapi.com/tw-v2/interaction/create-community-quote-with-media" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json"
Response

Click "Try It!" to see the response