Buffer

Buffer is a social media management platform that lets teams draft, schedule, and publish content across their connected social channels from a single queue. Each channel — Instagram, LinkedIn, X, Facebook, TikTok, and more — is connected once in Buffer, and posts are published on the schedule you define.

With the Buffer integration in Studio, you can:

  • Publish and schedule posts: Create a post for a channel and add it to the queue, share it immediately, schedule it for a specific time, or save it as a draft
  • Attach media: Include an image or video with a post
  • Manage existing posts: Edit, retrieve, list, and delete posts
  • Browse channels: List the social channels connected to the account, along with their IDs and service types
  • Capture ideas: Create ideas and list ideas and idea groups from the Buffer content pipeline
  • Read account details: Retrieve the authenticated Buffer account

In Studio, the Buffer integration enables your agents to turn generated content into scheduled social posts without manual copy-paste. An agent can draft copy, look up the right channel, attach a generated image, and queue the post — or review the existing queue and clean up posts that are no longer relevant.

Usage Instructions

Integrate Buffer into your workflow. Create, schedule, edit, and delete posts across connected social channels (Instagram, LinkedIn, X, Facebook, TikTok, and more), attach images or videos, browse channels, and capture content ideas using the Buffer API.

Actions

Buffer Create Post

Create a post in Buffer for a channel — add it to the queue, share it immediately, schedule it for a specific time, or save it as a draft, optionally with an image or video attachment

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key
channelIdstringYesChannel to create the post for (find it with the Get Channels operation)
textstringNoText content of the post (required unless media is attached)
modestringYesHow to share the post: addToQueue, shareNext, shareNow, or customScheduled (requires dueAt)
schedulingTypestringNoHow the post publishes: automatic (Buffer publishes it, default) or notification (you get a mobile reminder)
dueAtstringNoPublish time as an ISO 8601 timestamp (required when mode is customScheduled)
saveToDraftbooleanNoSave the post as a draft instead of scheduling it
mediafileNoImage or video to attach — an uploaded file, a file reference from a previous block, or a publicly accessible URL. Buffer downloads the media at publish time; uploaded files are shared via a link valid for 7 days, so use a public URL for posts scheduled further out
mediaTypestringNoForce the attachment type when it cannot be detected from the file or URL: image or video (default auto)
mediaAltTextstringNoAlt text for an attached image

Output

ParameterTypeDescription
postobjectThe created post
↳ idstringPost ID
↳ textstringPost text content
↳ statusstringPost status (draft, needs_approval, scheduled, sending, sent, error)
↳ viastringHow the post was created (buffer, network, api)
↳ channelIdstringChannel the post belongs to
↳ channelServicestringSocial network of the channel
↳ schedulingTypestringHow the post publishes (automatic or notification)
↳ shareModestringShare mode used for the post
↳ isCustomScheduledbooleanWhether the post has a custom schedule
↳ sharedNowbooleanWhether the post was shared immediately
↳ createdAtstringCreation timestamp (ISO 8601)
↳ updatedAtstringLast update timestamp (ISO 8601)
↳ dueAtstringScheduled publish time (ISO 8601)
↳ sentAtstringPublish timestamp (ISO 8601)
↳ externalLinkstringLink to the published post on the social network
↳ errorobjectPublishing error details when the post failed
↳ messagestringError message
↳ supportUrlstringSupport article URL
↳ rawErrorstringRaw error from the network
↳ assetsarrayMedia attached to the post
↳ idstringAsset ID
↳ typestringAsset type
↳ mimeTypestringMIME type of the asset
↳ sourcestringSource URL of the asset
↳ thumbnailstringThumbnail URL of the asset

Buffer Edit Post

Edit an existing Buffer post — update its text, schedule, or media. Attaching new media replaces the existing attachments

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key
postIdstringYesID of the post to edit
textstringNoNew text content of the post
modestringYesHow to share the post: addToQueue, shareNext, shareNow, or customScheduled (requires dueAt)
schedulingTypestringNoHow the post publishes: automatic (Buffer publishes it, default) or notification (you get a mobile reminder)
dueAtstringNoPublish time as an ISO 8601 timestamp (required when mode is customScheduled)
saveToDraftbooleanNoSave the post as a draft instead of scheduling it
mediafileNoImage or video to attach — an uploaded file, a file reference from a previous block, or a publicly accessible URL. Buffer downloads the media at publish time; uploaded files are shared via a link valid for 7 days, so use a public URL for posts scheduled further out. Replaces existing attachments
mediaTypestringNoForce the attachment type when it cannot be detected from the file or URL: image or video (default auto)
mediaAltTextstringNoAlt text for an attached image

Output

ParameterTypeDescription
postobjectThe updated post
↳ idstringPost ID
↳ textstringPost text content
↳ statusstringPost status (draft, needs_approval, scheduled, sending, sent, error)
↳ viastringHow the post was created (buffer, network, api)
↳ channelIdstringChannel the post belongs to
↳ channelServicestringSocial network of the channel
↳ schedulingTypestringHow the post publishes (automatic or notification)
↳ shareModestringShare mode used for the post
↳ isCustomScheduledbooleanWhether the post has a custom schedule
↳ sharedNowbooleanWhether the post was shared immediately
↳ createdAtstringCreation timestamp (ISO 8601)
↳ updatedAtstringLast update timestamp (ISO 8601)
↳ dueAtstringScheduled publish time (ISO 8601)
↳ sentAtstringPublish timestamp (ISO 8601)
↳ externalLinkstringLink to the published post on the social network
↳ errorobjectPublishing error details when the post failed
↳ messagestringError message
↳ supportUrlstringSupport article URL
↳ rawErrorstringRaw error from the network
↳ assetsarrayMedia attached to the post
↳ idstringAsset ID
↳ typestringAsset type
↳ mimeTypestringMIME type of the asset
↳ sourcestringSource URL of the asset
↳ thumbnailstringThumbnail URL of the asset

Buffer Get Posts

List posts in a Buffer organization, optionally filtered by channel and status (draft, needs_approval, scheduled, sending, sent, error)

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key
organizationIdstringYesBuffer organization ID (find it with the Get Account operation)
channelIdsstringNoComma-separated channel IDs to filter by
statusstringNoComma-separated statuses to filter by: draft, needs_approval, scheduled, sending, sent, error
limitnumberNoMaximum number of posts to return (default 20)
afterstringNoPagination cursor from a previous page (pageInfo.endCursor)
sortBystringNoField to sort by: dueAt or createdAt (default dueAt)
sortDirectionstringNoSort direction: asc or desc (default asc)

Output

ParameterTypeDescription
postsarrayPosts matching the filters
↳ idstringPost ID
↳ textstringPost text content
↳ statusstringPost status (draft, needs_approval, scheduled, sending, sent, error)
↳ viastringHow the post was created (buffer, network, api)
↳ channelIdstringChannel the post belongs to
↳ channelServicestringSocial network of the channel
↳ schedulingTypestringHow the post publishes (automatic or notification)
↳ shareModestringShare mode used for the post
↳ isCustomScheduledbooleanWhether the post has a custom schedule
↳ sharedNowbooleanWhether the post was shared immediately
↳ createdAtstringCreation timestamp (ISO 8601)
↳ updatedAtstringLast update timestamp (ISO 8601)
↳ dueAtstringScheduled publish time (ISO 8601)
↳ sentAtstringPublish timestamp (ISO 8601)
↳ externalLinkstringLink to the published post on the social network
↳ errorobjectPublishing error details when the post failed
↳ messagestringError message
↳ supportUrlstringSupport article URL
↳ rawErrorstringRaw error from the network
↳ assetsarrayMedia attached to the post
↳ idstringAsset ID
↳ typestringAsset type
↳ mimeTypestringMIME type of the asset
↳ sourcestringSource URL of the asset
↳ thumbnailstringThumbnail URL of the asset
pageInfoobjectPagination info for fetching the next page
↳ hasNextPagebooleanWhether more results are available
↳ endCursorstringCursor to pass as "after" for the next page

Buffer Get Post

Get a single Buffer post by ID, including its status, schedule, and media

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key
postIdstringYesID of the post to fetch

Output

ParameterTypeDescription
postobjectThe requested post
↳ idstringPost ID
↳ textstringPost text content
↳ statusstringPost status (draft, needs_approval, scheduled, sending, sent, error)
↳ viastringHow the post was created (buffer, network, api)
↳ channelIdstringChannel the post belongs to
↳ channelServicestringSocial network of the channel
↳ schedulingTypestringHow the post publishes (automatic or notification)
↳ shareModestringShare mode used for the post
↳ isCustomScheduledbooleanWhether the post has a custom schedule
↳ sharedNowbooleanWhether the post was shared immediately
↳ createdAtstringCreation timestamp (ISO 8601)
↳ updatedAtstringLast update timestamp (ISO 8601)
↳ dueAtstringScheduled publish time (ISO 8601)
↳ sentAtstringPublish timestamp (ISO 8601)
↳ externalLinkstringLink to the published post on the social network
↳ errorobjectPublishing error details when the post failed
↳ messagestringError message
↳ supportUrlstringSupport article URL
↳ rawErrorstringRaw error from the network
↳ assetsarrayMedia attached to the post
↳ idstringAsset ID
↳ typestringAsset type
↳ mimeTypestringMIME type of the asset
↳ sourcestringSource URL of the asset
↳ thumbnailstringThumbnail URL of the asset

Buffer Delete Post

Delete a Buffer post by ID

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key
postIdstringYesID of the post to delete

Output

ParameterTypeDescription
deletedbooleanWhether the post was deleted
idstringID of the deleted post

Buffer Get Channels

List the social media channels connected to a Buffer organization, including their channel IDs (needed to create posts)

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key
organizationIdstringYesBuffer organization ID (find it with the Get Account operation)

Output

ParameterTypeDescription
channelsarrayChannels connected to the organization
↳ idstringChannel ID
↳ namestringChannel name
↳ displayNamestringChannel display name
↳ servicestringSocial network (instagram, linkedin, twitter, ...)
↳ serviceIdstringID of the account on the social network
↳ avatarstringChannel avatar URL
↳ timezonestringChannel timezone
↳ typestringChannel type (page, profile, business, ...)
↳ isQueuePausedbooleanWhether the posting queue is paused
↳ isDisconnectedbooleanWhether the channel needs reconnection
↳ organizationIdstringOrganization the channel belongs to

Buffer Create Idea

Save a content idea to a Buffer organization for later drafting and scheduling

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key
organizationIdstringYesBuffer organization ID (find it with the Get Account operation)
textstringYesText content of the idea
titlestringNoOptional title for the idea
groupIdstringNoOptional idea group (board column) to place the idea in

Output

ParameterTypeDescription
ideaobjectThe created idea
↳ idstringIdea ID
↳ organizationIdstringOrganization the idea belongs to
↳ groupIdstringIdea group ID
↳ titlestringIdea title
↳ textstringIdea text content

Buffer Get Ideas

List content ideas saved in a Buffer organization

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key
organizationIdstringYesBuffer organization ID (find it with the Get Account operation)
limitnumberNoMaximum number of ideas to return (default 20)
afterstringNoPagination cursor from a previous page (pageInfo.endCursor)

Output

ParameterTypeDescription
ideasarrayContent ideas in the organization
↳ idstringIdea ID
↳ organizationIdstringOrganization the idea belongs to
↳ groupIdstringIdea group ID
↳ titlestringIdea title
↳ textstringIdea text content
pageInfoobjectPagination info for fetching the next page
↳ hasNextPagebooleanWhether more results are available
↳ endCursorstringCursor to pass as "after" for the next page

Buffer Get Idea Groups

List idea groups (board columns) in a Buffer organization, including the group IDs used when creating ideas

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key
organizationIdstringYesBuffer organization ID (find it with the Get Account operation)

Output

ParameterTypeDescription
ideaGroupsarrayIdea groups (board columns) in the organization
↳ idstringIdea group ID
↳ namestringIdea group name
↳ isLockedbooleanWhether the group is locked

Buffer Get Account

Get the authenticated Buffer account, including its organizations and their IDs (needed for channel and post operations)

Input

ParameterTypeRequiredDescription
apiKeystringYesBuffer API key

Output

ParameterTypeDescription
accountobjectThe authenticated Buffer account
↳ idstringAccount ID
↳ emailstringAccount email
↳ namestringAccount holder name
↳ timezonestringAccount timezone
↳ organizationsarrayOrganizations the account belongs to
↳ idstringOrganization ID
↳ namestringOrganization name
↳ channelCountnumberNumber of connected channels
↳ ownerEmailstringEmail of the organization owner