Twitter Post Scheduling API - Without Image
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 |
---|---|---|---|---|---|
content | string | Yes | The text content of your tweet | Text up to 280 characters | ”Excited to announce our new feature! 🚀“ |
channel | string | Yes | Target platform (always Twitter) | "Twitter" | ”Twitter” |
post_type | string | Yes | Type of content being posted | "post" | ”post” |
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" | ”scheduled” |
Example Requests
Schedule Tweet for Peak Hours
curl --location 'https://portfolio.tigest.club/api/v1/dashboard/post/webhook' \
--header 'X-API-KEY: your_api_key_here' \
--form 'content="🚀 Just launched our new dashboard! Clean design, powerful features, and lightning-fast performance. What do you think? #ProductLaunch #SaaS"' \
--form 'channel="Twitter"' \
--form 'post_type="post"' \
--form 'scheduled_at="2025-05-29T14:30:00Z"' \
--form 'status="scheduled"' \
--form 'calendar_uuid="69a1bf45-c48e-46cf-bd53-f47f3efa9763"'
Create Draft Tweet for Review
curl --location 'https://portfolio.tigest.club/api/v1/dashboard/post/webhook' \
--header 'X-API-KEY: your_api_key_here' \
--form 'content="Monday motivation: Every expert was once a beginner. Keep pushing forward, keep learning, and never stop growing! 💪 #MondayMotivation #Growth"' \
--form 'channel="Twitter"' \
--form 'post_type="post"' \
--form 'scheduled_at="2025-06-02T09:00:00Z"' \
--form 'status="draft"' \
--form 'calendar_uuid="69a1bf45-c48e-46cf-bd53-f47f3efa9763"'
Response Format
Successful Response
Status Code: 200 OK
{
"data": {
"id": 1073216,
"uuid": "d569c678-1601-4474-b359-84fa9dc53f29",
"calendar_uuid": "69a1bf45-c48e-46cf-bd53-f47f3efa9763",
"calendar_user_uuid": "cb3c071c-319a-4dfb-ab0c-538339d18325",
"content": "🚀 Just launched our new dashboard! Clean design, powerful features, and lightning-fast performance. What do you think? #ProductLaunch #SaaS",
"channel": "Twitter",
"images": [],
"status": "scheduled",
"scheduled_at": "2025-05-29T14:30:00Z",
"created_at": "2025-05-28T11:22:18.930968916Z",
"is_active": true,
"updated_at": "2025-05-28T11:22:18.930968916Z",
"post_type": "post",
"post_content": {},
"metadata": {},
"campaign_uuid": null,
"analytics": {}
},
"success": true
}
Response Fields Explained
Field | Type | Description |
---|---|---|
id | integer | Unique numeric identifier for the tweet |
uuid | string | Unique string identifier (use for API references) |
calendar_uuid | string | Links the tweet to your content calendar |
calendar_user_uuid | string | Identifies the calendar owner |
content | string | Your original tweet content |
channel | string | Always “Twitter” for this endpoint |
images | array | Empty array (text-only posts) |
status | string | Current tweet status (draft/scheduled/published) |
scheduled_at | string | Scheduled publication time in UTC |
created_at | string | Tweet creation timestamp |
is_active | boolean | Whether the tweet is active in the system |
updated_at | string | Last modification timestamp |
post_type | string | Always “post” for this endpoint |
post_content | object | Additional tweet configuration |
metadata | object | Additional metadata about the tweet |
campaign_uuid | string | Associated campaign identifier (if any) |
analytics | object | Tweet performance data (populated after publication) |
Error Handling
Common Error Codes
Past Date Scheduling (Code: 4001)
{
"errors": {
"code": 4001,
"message": "Oops! You can't schedule a post in the past. Please choose a future date and time."
},
"success": false
}
Tweet Creation Failed (Code: 4005)
{
"errors": {
"code": 4005,
"message": "We hit a snag while creating your post. Mind trying again?"
},
"success": false
}
Validation Errors
- Content Too Long: Tweet content must be 280 characters or less
- Missing Required Fields: All parameters marked as required must be provided
- Invalid Date Format: Use ISO 8601 format for
scheduled_at
- Invalid Status: Use only “draft”, “scheduled”, or “published”
- Invalid UUID: Ensure
calendar_uuid
follows proper UUID format
Last updated: May 28, 2025