schedule_content
ActiveTool of SendIt
Schedule content for future publishing. Same media rules as publish_content apply. • mediaUrl must be a public HTTPS URL — call create_upload_session if user shares a file in chat. • Content is validated at schedule time, not publish time.
Parameters schema
{
"type": "object",
"required": [
"platforms",
"content",
"scheduledTime"
],
"properties": {
"content": {
"type": "object",
"required": [
"text"
],
"properties": {
"link": {
"type": "string",
"description": "Pinterest source URL for the pin"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "YouTube video tags"
},
"text": {
"type": "string",
"description": "Post caption/text. Required for all platforms."
},
"title": {
"type": "string",
"description": "YouTube video title, Pinterest pin title"
},
"boardId": {
"type": "string",
"description": "Pinterest only: Board ID to pin to. If not specified, uses first available board."
},
"mediaUrl": {
"type": "string",
"description": "Public HTTPS media URL. Do NOT pass local file paths — use create_upload_session to get a public URL first."
},
"boardName": {
"type": "string",
"description": "Pinterest only: Board name (alternative to boardId). Searches for matching board."
},
"mediaType": {
"enum": [
"image",
"video",
"auto"
],
"type": "string",
"description": "Media type hint: 'image' for photos, 'video' for Reels/TikTok"
},
"mediaUrls": {
"type": "array",
"items": {
"type": "string"
},
"description": "Carousel: Instagram (2-10 images), Threads (2-20 mixed), X (2-4 images)"
},
"description": {
"type": "string",
"description": "YouTube video description"
},
"youtubeMode": {
"enum": [
"auto",
"short",
"standard"
],
"type": "string",
"deprecated": true,
"description": "Deprecated compatibility alias for YouTube mode. Preferred: content.platformSettings.youtube.youtubeMode"
},
"facebookMode": {
"enum": [
"auto",
"reel",
"feed"
],
"type": "string",
"deprecated": true,
"description": "Deprecated compatibility alias for Facebook mode. Preferred: content.platformSettings.facebook.facebookMode"
},
"firstComment": {
"type": "string",
"description": "Instagram first comment text (often used for hashtags)"
},
"threadTweets": {
"type": "array",
"items": {
"type": "object",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"description": "Tweet text (max 280 chars)"
},
"mediaUrl": {
"type": "string",
"description": "Optional public HTTPS image or video URL for this tweet"
},
"mediaType": {
"enum": [
"image",
"video",
"auto"
],
"type": "string",
"description": "Media type hint"
},
"mediaUrls": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional multiple images for this tweet (max 4)"
}
}
},
"description": "X (Twitter) only: additional tweets in the thread after the main text. The main text is always the first tweet. Each item here becomes a subsequent reply in the thread."
},
"privacyStatus": {
"enum": [
"public",
"unlisted",
"private"
],
"type": "string",
"description": "YouTube video privacy: public, unlisted, or private"
},
"pinterestBoardId": {
"type": "string",
"deprecated": true,
"description": "Deprecated compatibility alias for Pinterest board targeting. Preferred: content.platformSettings.pinterest.boardId"
},
"platformSettings": {
"type": "object",
"description": "Optional advanced per-platform settings map. Key by platform ID and use it for platform-specific publish options plus per-platform text/title/description overrides.",
"additionalProperties": {
"type": "object",
"additionalProperties": true
}
}
}
},
"team_id": {
"type": "string",
"description": "Team ID to schedule as team. Get available teams with list_teams. If omitted, schedules from personal accounts."
},
"timezone": {
"type": "string",
"description": "Optional IANA timezone for queue scheduling and recurring series metadata."
},
"platforms": {
"type": "array",
"items": {
"enum": [
"x",
"linkedin",
"linkedin-page",
"facebook",
"instagram",
"threads",
"bluesky",
"mastodon",
"nostr",
"youtube",
"tiktok",
"lemmy",
"discord",
"slack",
"telegram",
"pinterest",
"dribbble",
"devto",
"hashnode",
"gmb",
"whop",
"producthunt"
],
"type": "string"
},
"description": "Target platforms - ensure content matches each platform's requirements"
},
"scoreGate": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Optional forward-compatible minimum content score threshold for advanced scheduling flows."
},
"recurrence": {
"type": "object",
"required": [
"frequency"
],
"properties": {
"count": {
"type": "number",
"maximum": 52,
"minimum": 1
},
"until": {
"type": "string",
"format": "date-time"
},
"interval": {
"type": "number",
"minimum": 1
},
"frequency": {
"enum": [
"daily",
"weekly",
"monthly"
],
"type": "string"
}
},
"description": "Optional forward-compatible structured recurrence definition."
},
"bypassToken": {
"type": "string",
"description": "Optional forward-compatible bypass token returned by advanced scheduling score-gate checks."
},
"scheduleMode": {
"enum": [
"exact",
"queue"
],
"type": "string",
"description": "Optional forward-compatible scheduling mode. 'queue' asks SendIt to place the post in the next available queue slot."
},
"scheduledTime": {
"type": "string",
"format": "date-time",
"description": "ISO 8601 datetime in UTC (e.g., 2025-01-15T14:30:00Z)"
},
"recurrenceRule": {
"type": "string",
"description": "Optional forward-compatible RRULE string for recurring schedules."
},
"targetAccounts": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional advanced scheduling target account IDs. Legacy handlers may ignore this until advanced scheduling is enabled."
},
"mediaAttachments": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"url"
],
"properties": {
"id": {
"type": "string"
},
"url": {
"type": "string"
},
"altText": {
"type": "string"
},
"saveToLibrary": {
"type": "boolean"
}
}
},
"description": "Optional forward-compatible media asset attachments to associate with the scheduled post."
},
"platformOverrides": {
"type": "object",
"description": "Optional forward-compatible per-platform overrides keyed by platform ID.",
"additionalProperties": {
"type": "object",
"additionalProperties": true
}
},
"recurrenceEndDate": {
"type": "string",
"format": "date-time",
"description": "Optional forward-compatible ISO 8601 end date for recurrence."
}
}
}No endpoints wrapped at confidence ≥ 0.70.
Parent server
SendIt
https://github.com/Shree-git/sendit
1/7 registries