Twitter Quote Repost API
Overview
The Twitter Quote Repost API allows you to programmatically create and schedule quote reposts of existing tweets. This powerful endpoint enables you to share and comment on tweets while maintaining the original content’s context.
What You Can Do
- Create quote reposts of existing tweets
- Add your own commentary to reposted tweets
- Schedule quote reposts for future publication
- Create draft quote reposts for review and approval
- Manage your Twitter quote repost strategy programmatically
- Automate your Twitter content sharing workflow
Common Use Cases
- Content Amplification: Share valuable content with your audience
- Thought Leadership: Add insights to industry discussions
- Community Engagement: Participate in relevant conversations
- News Sharing: Share and comment on news articles
- Product Promotion: Share and comment on product-related tweets
- Event Coverage: Share and comment on event-related content
- Educational Content: Share and add context to educational tweets
- Industry Updates: Share and comment on industry news
Authentication
All API requests require authentication using an API key passed in the request header.
X-API-KEY: your_api_key_here
Security Note: Keep your API key secure and never expose it in client-side code or public repositories.
Rate Limiting
Daily Limit: 30 requests per day per API key
- Resets at midnight UTC
- Plan your quote repost publishing schedule accordingly
- Consider using draft status for content that needs review
- Monitor your usage to avoid hitting the daily limit
- Each quote repost creation counts as one request
Quote Repost Structure and Limitations
Twitter Quote Repost Requirements
- Character Limit: Each quote repost follows Twitter’s 280-character limit
- Tweet ID: Required to identify the tweet being reposted
- Content: Optional additional commentary on the reposted tweet
- Scheduling: Future publication date and time in UTC
- Status: Draft, scheduled, or published state
Quote Repost Content Strategy
- Value Addition: Add meaningful commentary to the reposted content
- Context: Provide relevant context for your audience
- Timing: Consider optimal timing for maximum engagement
- Engagement: Encourage discussion through your commentary
- Brand Voice: Maintain consistent brand voice in your additions
API Implementation
Endpoint Details
POST https://portfolio.tigest.club/api/v1/dashboard/post/webhook
Content-Type: multipart/form-data
Request Parameters
Parameter | Type | Required | Description | Valid Values | Example |
---|---|---|---|---|---|
channel | string | Yes | Target platform (always Twitter) | "Twitter" | ”Twitter” |
post_type | string | Yes | Type of content being posted | "quote_repost" | ”quote_repost” |
content | string | Yes | Additional commentary for the quote repost | Up to 280 characters | ”Test with image” |
calendar_uuid | string | Yes | Unique identifier for your content calendar | Valid UUID format | ”69a1bf45-c48e-46cf-bd53-f47f3efa9763” |
scheduled_at | string | Yes | Publication date and time in ISO 8601 format | Future datetime in UTC | ”2025-05-30T21:30:00Z” |
status | string | Yes | Post publication status | "draft" , "published" , "scheduled" | ”draft” |
tweet_id | string | Yes | ID of the tweet being reposted | Valid Twitter tweet ID | ”1926945210002493637” |
Example Requests
Simple Quote Repost
curl --location 'https://portfolio.tigest.club/api/v1/dashboard/post/webhook' \
--header 'X-API-KEY: your_api_key_here' \
--form 'content="Test with image"' \
--form 'channel="Twitter"' \
--form 'post_type="quote_repost"' \
--form 'scheduled_at="2025-05-30T21:30:00Z"' \
--form 'status="draft"' \
--form 'calendar_uuid="69a1bf45-c48e-46cf-bd53-f47f3efa9763"' \
--form 'tweet_id="1926945210002493637"'
Quote Repost with Commentary
curl --location 'https://portfolio.tigest.club/api/v1/dashboard/post/webhook' \
--header 'X-API-KEY: your_api_key_here' \
--form 'content="This is a great insight! Here'\''s why this matters for our industry:\n\n1. First point\n2. Second point\n3. Third point\n\nWhat are your thoughts on this?"' \
--form 'channel="Twitter"' \
--form 'post_type="quote_repost"' \
--form 'scheduled_at="2025-05-30T21:30:00Z"' \
--form 'status="draft"' \
--form 'calendar_uuid="69a1bf45-c48e-46cf-bd53-f47f3efa9763"' \
--form 'tweet_id="1926945210002493637"'
Response Format
Successful Response
Status Code: 200 OK
{
"data": {
"id": 1074031,
"uuid": "e9336adf-164b-4db0-a22c-0e782d0ff82e",
"calendar_uuid": "69a1bf45-c48e-46cf-bd53-f47f3efa9763",
"calendar_user_uuid": "cb3c071c-319a-4dfb-ab0c-538339d18325",
"content": "Test with image",
"channel": "Twitter",
"images": [],
"status": "draft",
"scheduled_at": "2025-05-30T21:30:00Z",
"created_at": "2025-05-29T15:52:10.764934101Z",
"is_active": true,
"updated_at": "2025-05-29T15:52:10.764934101Z",
"post_type": "quote_repost",
"post_content": {
"text": "Test with image",
"images": [],
"tweet_id": "1926945210002493637"
},
"metadata": {},
"campaign_uuid": null,
"analytics": {}
},
"success": true
}
Response Fields Explained
Field | Type | Description |
---|---|---|
id | integer | Unique numeric identifier for the quote repost |
uuid | string | Unique string identifier (use for API references) |
calendar_uuid | string | Links the quote repost to your content calendar |
calendar_user_uuid | string | Identifies the calendar owner |
content | string | The additional commentary for the quote repost |
channel | string | Always “Twitter” for this endpoint |
images | array | Array of image URLs (empty for text-only reposts) |
status | string | Current quote repost status |
scheduled_at | string | Scheduled publication time in UTC |
created_at | string | Quote repost creation timestamp |
is_active | boolean | Whether the quote repost is active in the system |
updated_at | string | Last modification timestamp |
post_type | string | Always “quote_repost” for this endpoint |
post_content | object | Contains the complete quote repost structure |
metadata | object | Additional metadata about the quote repost |
campaign_uuid | string | Associated campaign identifier (if any) |
analytics | object | Quote repost performance data |
Error Handling
Quote Repost-Specific Errors
Invalid Tweet ID (Code: 4001)
{
"errors": {
"code": 4001,
"message": "Invalid tweet ID. The tweet does not exist or is not accessible."
},
"success": false
}
Solution: Ensure the tweet ID is valid and the tweet is accessible.
Character Limit Exceeded (Code: 4009)
{
"errors": {
"code": 4009,
"message": "Quote repost exceeds 280 character limit."
},
"success": false
}
Solution: Ensure your additional commentary is 280 characters or less.
Missing Content (Code: 4011)
{
"errors": {
"code": 4011,
"message": "Quote repost content is required."
},
"success": false
}
Solution: Provide content for your quote repost.
Invalid Status (Code: 4012)
{
"errors": {
"code": 4012,
"message": "Invalid status value. Must be one of: draft, published, scheduled."
},
"success": false
}
Solution: Use a valid status value: “draft”, “published”, or “scheduled”.
Best Practices
Content Planning for Quote Reposts
- Value Addition: Add meaningful commentary to the reposted content
- Context: Provide relevant context for your audience
- Timing: Consider optimal timing for maximum engagement
- Engagement: Encourage discussion through your commentary
- Brand Voice: Maintain consistent brand voice in your additions
Optimal Quote Repost Timing
- Response Time: Consider the original tweet’s timing
- Audience Activity: Post when your audience is most active
- Content Type: Match timing to the original tweet’s context
- Time Zone Awareness: Consider your global audience’s active hours
Quote Repost Engagement Optimization
- Relevance: Keep commentary relevant to the original tweet
- Clarity: Use clear and concise language
- Engagement Prompts: Ask questions to encourage interaction
- Value Addition: Provide unique insights or perspectives
- Cross-Promotion: Link to relevant content when appropriate
Technical Implementation
- Content Validation: Validate character count before submission
- Error Handling: Implement robust error handling
- Draft Workflow: Use draft status for collaborative creation
- Scheduling Strategy: Plan timing for maximum impact
- Analytics Tracking: Monitor quote repost performance
Last updated: May 29, 2025