feat(buffer): add Buffer integration with posts, channels, and ideas#5637
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
|
@cursor review |
PR SummaryMedium Risk Overview Capabilities: Ten tools cover post create/edit/delete/get/list (queue modes, drafts, custom Media path: Because Buffer only accepts public asset URLs, create/edit post go through new internal routes ( Also registers the block/tools, BufferIcon, docs ( Reviewed by Cursor Bugbot for commit fa61c55. Configure here. |
Greptile SummaryThis PR adds a Buffer integration for scheduling and managing social posts. The main changes are:
Confidence Score: 4/5This is close, but the media handling should be fixed before merging.
apps/sim/app/api/tools/buffer/server-utils.ts Important Files Changed
Reviews (10): Last reviewed commit: "fix(buffer): guard missing post on PostA..." | Re-trigger Greptile |
Greptile SummaryThis PR adds Buffer as a new social scheduling integration. The main changes are:
Confidence Score: 5/5This looks safe to merge after a small media-input cleanup.
apps/sim/lib/api/contracts/tools/buffer.ts Important Files Changed
Sequence Diagram%%{init: {'theme': 'neutral'}}%%
sequenceDiagram
participant Workflow as Workflow Buffer Tool
participant Route as Internal Buffer Route
participant Files as File Resolver / Storage
participant Buffer as Buffer GraphQL API
Workflow->>Route: POST create/edit post with API key, text, mode, media
Route->>Route: Internal auth and contract validation
alt media provided
Route->>Files: Resolve uploaded file, file reference, or public URL
Files-->>Route: Public or presigned media URL
end
Route->>Buffer: createPost/editPost mutation
Buffer-->>Route: PostActionSuccess or MutationError
Route-->>Workflow: Normalized success or error response
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
sequenceDiagram
participant Workflow as Workflow Buffer Tool
participant Route as Internal Buffer Route
participant Files as File Resolver / Storage
participant Buffer as Buffer GraphQL API
Workflow->>Route: POST create/edit post with API key, text, mode, media
Route->>Route: Internal auth and contract validation
alt media provided
Route->>Files: Resolve uploaded file, file reference, or public URL
Files-->>Route: Public or presigned media URL
end
Route->>Buffer: createPost/editPost mutation
Buffer-->>Route: PostActionSuccess or MutationError
Route-->>Workflow: Normalized success or error response
Reviews (2): Last reviewed commit: "feat(buffer): add Buffer integration wit..." | Re-trigger Greptile |
|
@cursor review |
…never fail validation
|
@cursor review |
…s are not sent as images
|
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit 18fe14c. Configure here.
…RL classification
|
@cursor review |
|
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit fa61c55. Configure here.
|
@greptile review |
|
@greptile review |
|
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit fa61c55. Configure here.
|
@greptile review |
|
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit fa61c55. Configure here.
Summary
/api/tools/buffer/create-post,/api/tools/buffer/edit-post) that verify file access and mint short-lived presigned URLs, since Buffer only accepts publicly fetchable media URLscanonicalParamId), status/channel filters with pagination, and BufferBlockMeta (8 templates, 5 skills)Type of Change
Testing
Validated all GraphQL documents against Buffer's live schema (introspection + graphql-js validation); typecheck, lint, check:api-validation:strict, and check:bare-icons all pass
Checklist