Back to Autogpt

Misc

docs/integrations/block-integrations/misc.md

0.6.4442.2 KB
Original Source

Misc

<!-- MANUAL: file_description -->

Miscellaneous blocks including agent execution, scheduling, HTTP requests, webhooks, and other utility functions.

<!-- END MANUAL -->

Agent Executor

What it is

Executes an existing agent inside your agent

How it works

<!-- MANUAL: how_it_works -->

This block runs another agent as a sub-agent within your workflow. You provide the agent's graph ID, version, and input data, and the block executes that agent and returns its outputs.

Input and output schemas define the expected data structure for communication between the parent and child agents, enabling modular, reusable agent composition.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
user_idUser IDstrYes
graph_idGraph IDstrYes
graph_versionGraph VersionintYes
agent_nameName to display in the Builder UIstrNo
inputsInput data for the graphDict[str, Any]Yes
input_schemaInput schema for the graphDict[str, Any]Yes
output_schemaOutput schema for the graphDict[str, Any]Yes

Possible use case

<!-- MANUAL: use_case -->

Modular Workflows: Break complex workflows into smaller, reusable agents that can be composed together.

Specialized Agents: Call domain-specific agents (like a research agent or formatter) from a main orchestration agent.

Dynamic Routing: Execute different agents based on input type or user preferences.

<!-- END MANUAL -->

AutoPilot

What it is

Execute tasks using AutoGPT AutoPilot with full access to platform tools (agent management, workspace files, web fetch, block execution, and more). Enables sub-agent patterns and scheduled autopilot execution.

How it works

<!-- MANUAL: how_it_works -->

This block invokes the platform's copilot system directly via stream_chat_completion_sdk. It creates (or resumes) a chat session, streams the autopilot's response collecting text deltas, tool call details, and token usage, then returns the aggregated results. A recursion depth guard prevents infinite loops when the autopilot calls this block as a sub-agent.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
promptThe task or instruction for the autopilot to execute. The autopilot has access to platform tools like agent management, workspace files, web fetch, block execution, and more.strYes
system_contextOptional additional context prepended to the prompt. Use this to constrain autopilot behavior, provide domain context, or set output format requirements.strNo
session_idSession ID to continue an existing autopilot conversation. Leave empty to start a new session. Use the session_id output from a previous run to continue.strNo
max_recursion_depthMaximum nesting depth when the autopilot calls this block recursively (sub-agent pattern). Prevents infinite loops.intNo

Outputs

OutputDescriptionType
errorError message if the operation failedstr
responseThe final text response from the autopilot.str
tool_callsList of tools called during execution. Each entry has tool_call_id, tool_name, input, output, and success fields.List[ToolCallEntry]
conversation_historyCurrent turn messages (user prompt + assistant reply) as JSON. It can be used for logging or analysis.str
session_idSession ID for this conversation. Pass this back to continue the conversation in a future run.str
token_usageToken usage statistics: prompt_tokens, completion_tokens, total_tokens.TokenUsage

Possible use case

<!-- MANUAL: use_case -->

Scheduled Reports: Schedule an autopilot to run daily that checks workspace files, summarizes recent agent activity, and posts a report.

Multi-Step AI Workflows: Chain autopilot blocks where one gathers data and another analyzes it, enabling complex AI pipelines within the graph editor.

Sub-Agent Delegation: Delegate a research or formatting task to a sub-autopilot while the parent agent handles orchestration.

<!-- END MANUAL -->

Create Reddit Post

What it is

Create a new post on a subreddit. Can create text posts or link posts.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to create a new post in the specified subreddit. Provide the title and either text content for a self-post or a URL for a link post. Optionally apply flair using a flair ID from the GetSubredditFlairsBlock.

The block returns the created post's ID and URL, which can be used for chaining with comment blocks or monitoring.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
subredditSubreddit to post to, excluding the /r/ prefixstrYes
titleTitle of the poststrYes
contentBody text of the post (for text posts)strNo
urlURL to submit (for link posts). If provided, content is ignored.strNo
flair_idFlair template ID to apply to the post (from GetSubredditFlairsBlock)strNo
flair_textCustom flair text (only used if the flair template allows editing)strNo

Outputs

OutputDescriptionType
errorError message if the operation failedstr
post_idID of the created poststr
post_urlURL of the created poststr
subredditThe subreddit name (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Content Distribution: Automatically share articles or content to relevant subreddits.

Community Engagement: Post updates or announcements to subreddit communities.

Automated Posting: Schedule and post content to Reddit based on workflow triggers.

<!-- END MANUAL -->

Delete Reddit Comment

What it is

Delete a Reddit comment that you own.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to delete a comment you previously posted. The deletion is permanent and removes the comment from the post thread. You can only delete your own comments.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
comment_idThe ID of the comment to delete (must be your own comment)strYes

Outputs

OutputDescriptionType
errorError message if deletion failedstr
successWhether the deletion was successfulbool
comment_idThe comment ID (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Content Cleanup: Remove outdated or incorrect comments from discussions.

Automated Moderation: Delete comments that fail quality checks or receive negative feedback.

<!-- END MANUAL -->

Delete Reddit Post

What it is

Delete a Reddit post that you own.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to delete a post you previously created. The deletion is permanent and removes the post from the subreddit. You can only delete your own posts.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
post_idThe ID of the post to delete (must be your own post)strYes

Outputs

OutputDescriptionType
errorError message if deletion failedstr
successWhether the deletion was successfulbool
post_idThe post ID (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Content Management: Remove posts that are no longer relevant or contain errors.

Automated Cleanup: Delete posts based on performance metrics or time-based rules.

<!-- END MANUAL -->

Edit Reddit Post

What it is

Edit the body text of an existing Reddit post that you own. Only works for self/text posts.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to edit the body text of a self-post you created. Link posts cannot be edited. The new content replaces the existing post body.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
post_idThe ID of the post to edit (must be your own post)strYes
new_contentThe new body text for the poststrYes

Outputs

OutputDescriptionType
errorError message if the edit failedstr
successWhether the edit was successfulbool
post_idThe post ID (pass-through for chaining)str
post_urlURL of the edited poststr

Possible use case

<!-- MANUAL: use_case -->

Content Updates: Update posts with new information or corrections.

Dynamic Content: Modify post content based on changing data or feedback.

<!-- END MANUAL -->

Execute Code

What it is

Executes code in a sandbox environment with internet access.

How it works

<!-- MANUAL: how_it_works -->

This block executes Python, JavaScript, or Bash code in an isolated E2B sandbox with internet access. Use setup_commands to install dependencies before running your code.

The sandbox includes pip and npm pre-installed. Set timeout to limit execution time, and use dispose_sandbox to clean up after execution or keep the sandbox running for follow-up steps.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
setup_commandsShell commands to set up the sandbox before running the code. You can use curl or git to install your desired Debian based package manager. pip and npm are pre-installed. These commands are executed with sh, in the foreground.List[str]No
codeCode to execute in the sandboxstrNo
languageProgramming language to execute"python" | "js" | "bash" | "r" | "java"No
timeoutExecution timeout in secondsintNo
dispose_sandboxWhether to dispose of the sandbox immediately after execution. If disabled, the sandbox will run until its timeout expires.boolNo
template_idYou can use an E2B sandbox template by entering its ID here. Check out the E2B docs for more details: E2B - Sandbox templatestrNo

Outputs

OutputDescriptionType
errorError message if the operation failedstr
main_resultThe main result from the code executionMain Result
resultsList of results from the code executionList[CodeExecutionResult]
responseText output (if any) of the main execution resultstr
stdout_logsStandard output logs from executionstr
stderr_logsStandard error logs from executionstr
filesFiles created or modified during execution. Each file has path, name, content, and workspace_ref (if stored).List[SandboxFileOutput]

Possible use case

<!-- MANUAL: use_case -->

Data Processing: Run Python scripts to transform, analyze, or visualize data that can't be handled by standard blocks.

Custom Integrations: Execute code to call APIs or services not covered by built-in blocks.

Dynamic Computation: Generate and execute code based on AI suggestions for flexible problem-solving.

<!-- END MANUAL -->

Execute Code Step

What it is

Execute code in a previously instantiated sandbox.

How it works

<!-- MANUAL: how_it_works -->

This block executes additional code in a sandbox that was previously created with the Instantiate Code Sandbox block. The sandbox maintains state between steps, so variables and installed packages persist.

Use this for multi-step code execution where each step builds on previous results. Set dispose_sandbox to true on the final step to clean up.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
sandbox_idID of the sandbox instance to execute the code instrYes
step_codeCode to execute in the sandboxstrNo
languageProgramming language to execute"python" | "js" | "bash" | "r" | "java"No
dispose_sandboxWhether to dispose of the sandbox after executing this code.boolNo

Outputs

OutputDescriptionType
errorError message if the operation failedstr
main_resultThe main result from the code executionMain Result
resultsList of results from the code executionList[CodeExecutionResult]
responseText output (if any) of the main execution resultstr
stdout_logsStandard output logs from executionstr
stderr_logsStandard error logs from executionstr

Possible use case

<!-- MANUAL: use_case -->

Iterative Processing: Load data in one step, transform it in another, and export in a third.

Stateful Computation: Build up results across multiple code executions with shared variables.

Interactive Analysis: Run exploratory data analysis steps sequentially in the same environment.

<!-- END MANUAL -->

Get Reddit Comment

What it is

Get details about a specific Reddit comment by its ID.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to retrieve detailed information about a specific comment by its ID. Returns the comment content, author, score, timestamp, and other metadata.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
comment_idThe ID of the comment to fetchstrYes

Outputs

OutputDescriptionType
errorError message if comment couldn't be fetchedstr
commentThe comment detailsRedditComment

Possible use case

<!-- MANUAL: use_case -->

Comment Analysis: Analyze specific comments for sentiment or content moderation.

Thread Tracking: Monitor specific comments for engagement or replies.

<!-- END MANUAL -->

Get Reddit Comment Replies

What it is

Get replies to a specific Reddit comment.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to fetch replies to a specific comment. Returns a list of direct replies with their content, authors, and metadata.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
comment_idThe ID of the comment to get replies fromstrYes
post_idThe ID of the post containing the commentstrYes
limitMaximum number of replies to fetch (max 50)intNo

Outputs

OutputDescriptionType
errorError message if replies couldn't be fetchedstr
replyA reply to the commentRedditComment
repliesAll repliesList[RedditComment]
comment_idThe parent comment ID (pass-through for chaining)str
post_idThe post ID (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Conversation Threading: Build complete comment threads for analysis or display.

Response Monitoring: Track replies to your comments for engagement purposes.

<!-- END MANUAL -->

Get Reddit Inbox

What it is

Get messages, mentions, and comment replies from your Reddit inbox.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to fetch items from your Reddit inbox. Filter by type to get all items, unread only, direct messages, username mentions, or replies to your comments.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
inbox_typeType of inbox items to fetch"all" | "unread" | "messages" | "mentions" | "comment_replies"No
limitMaximum number of items to fetchintNo
mark_readWhether to mark fetched items as readboolNo

Outputs

OutputDescriptionType
errorError message if fetch failedstr
itemAn inbox itemRedditInboxItem
itemsAll fetched itemsList[RedditInboxItem]

Possible use case

<!-- MANUAL: use_case -->

Inbox Monitoring: Check for new messages or mentions to respond to.

Engagement Tracking: Monitor comment replies to stay engaged with discussions.

<!-- END MANUAL -->

Get Reddit Post

What it is

Get detailed information about a specific Reddit post by its ID.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to retrieve complete details about a specific post by its ID. Returns the post title, content, author, score, comment count, and other metadata.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
post_idThe ID of the post to fetch (e.g., 'abc123' or full ID 't3_abc123')strYes

Outputs

OutputDescriptionType
errorError message if the post couldn't be fetchedstr
postDetailed post informationRedditPostDetails

Possible use case

<!-- MANUAL: use_case -->

Post Analysis: Analyze specific posts for content quality or engagement metrics.

Content Verification: Verify post details before interacting with it programmatically.

<!-- END MANUAL -->

Get Reddit Post Comments

What it is

Get top-level comments on a Reddit post.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to fetch top-level comments on a post. Configure the sort order and limit to control which comments are returned.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
post_idThe ID of the post to get comments fromstrYes
limitMaximum number of top-level comments to fetch (max 100)intNo
sortSort order for comments"best" | "top" | "new" | "controversial" | "old" | "qa"No

Outputs

OutputDescriptionType
errorError message if comments couldn't be fetchedstr
commentA comment on the postRedditComment
commentsAll fetched commentsList[RedditComment]
post_idThe post ID (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Sentiment Analysis: Analyze comments to gauge community sentiment on a topic.

Content Moderation: Review comments for compliance with community guidelines.

<!-- END MANUAL -->

Get Reddit Posts

What it is

This block fetches Reddit posts from a defined subreddit name.

How it works

<!-- MANUAL: how_it_works -->

The block connects to Reddit using provided credentials, accesses the specified subreddit, and retrieves posts based on the given parameters. It can limit the number of posts, stop at a specific post, or fetch posts within a certain time frame.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
subredditSubreddit name, excluding the /r/ prefixstrNo
last_minutesPost time to stop minutes ago while fetching postsintNo
last_postPost ID to stop when reached while fetching postsstrNo
post_limitNumber of posts to fetchintNo

Outputs

OutputDescriptionType
errorError message if the operation failedstr
postReddit postRedditPost
postsList of all Reddit postsList[RedditPost]

Possible use case

<!-- MANUAL: use_case -->

A content curator could use this block to gather recent posts from a specific subreddit for analysis, summarization, or inclusion in a newsletter.

<!-- END MANUAL -->

Get Reddit User Info

What it is

Get information about a Reddit user including karma, account age, and verification status.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to retrieve public profile information about a Reddit user, including karma scores, account age, and verification status.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
usernameThe Reddit username to look up (without /u/ prefix)strYes

Outputs

OutputDescriptionType
errorError message if user lookup failedstr
userUser informationRedditUserInfo
usernameThe username (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

User Verification: Check user account age and karma before engaging.

User Research: Gather user profile data for analysis or outreach decisions.

<!-- END MANUAL -->

Get Subreddit Flairs

What it is

Get available link flair options for a subreddit.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to retrieve available link flair options for a subreddit. Use the flair IDs with the Create Reddit Post block to apply flair to your posts.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
subredditSubreddit name (without /r/ prefix)strYes

Outputs

OutputDescriptionType
errorError message if fetch failedstr
flairA flair optionSubredditFlair
flairsAll available flairsList[SubredditFlair]
subredditThe subreddit name (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Post Preparation: Get available flairs before creating posts to ensure proper categorization.

Flair Selection: Present flair options to users or select appropriate flair programmatically.

<!-- END MANUAL -->

Get Subreddit Info

What it is

Get information about a subreddit including subscriber count, description, and rules.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to retrieve metadata about a subreddit including subscriber count, description, creation date, and posting rules.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
subredditSubreddit name (without /r/ prefix)strYes

Outputs

OutputDescriptionType
errorError message if the subreddit couldn't be fetchedstr
infoSubreddit informationSubredditInfo
subredditThe subreddit name (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Subreddit Research: Analyze subreddits before deciding to post or engage.

Community Analysis: Compare subreddit sizes and activity for market research.

<!-- END MANUAL -->

Get Subreddit Rules

What it is

Get the rules for a subreddit to ensure compliance before posting.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to retrieve the posting rules for a subreddit. Review these rules before posting to ensure compliance.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
subredditSubreddit name (without /r/ prefix)strYes

Outputs

OutputDescriptionType
errorError message if fetch failedstr
ruleA subreddit ruleSubredditRule
rulesAll subreddit rulesList[SubredditRule]
subredditThe subreddit name (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Compliance Check: Review rules before automated posting to avoid violations.

Content Guidelines: Display rules to users before they submit content to a subreddit.

<!-- END MANUAL -->

Get User Posts

What it is

Fetch posts by a specific Reddit user.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to fetch posts submitted by a specific user. Configure sort order and limit to control which posts are returned.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
usernameReddit username to fetch posts from (without /u/ prefix)strYes
post_limitMaximum number of posts to fetchintNo
sortSort order for user posts"new" | "hot" | "top" | "controversial"No

Outputs

OutputDescriptionType
errorError message if posts couldn't be fetchedstr
postA post by the userRedditPost
postsAll posts by the userList[RedditPost]

Possible use case

<!-- MANUAL: use_case -->

User Analysis: Analyze a user's posting history for content patterns or topics.

Influencer Research: Research prolific posters in specific communities.

<!-- END MANUAL -->

Instantiate Code Sandbox

What it is

Instantiate a sandbox environment with internet access in which you can execute code with the Execute Code Step block.

How it works

<!-- MANUAL: how_it_works -->

This block creates a persistent E2B sandbox environment that can be used for multiple code execution steps. Run setup_commands and setup_code to prepare the environment with dependencies and initial state.

The sandbox persists until its timeout expires or it's explicitly disposed. Use the returned sandbox_id with Execute Code Step blocks for subsequent code execution.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
setup_commandsShell commands to set up the sandbox before running the code. You can use curl or git to install your desired Debian based package manager. pip and npm are pre-installed. These commands are executed with sh, in the foreground.List[str]No
setup_codeCode to execute in the sandboxstrNo
languageProgramming language to execute"python" | "js" | "bash" | "r" | "java"No
timeoutExecution timeout in secondsintNo
template_idYou can use an E2B sandbox template by entering its ID here. Check out the E2B docs for more details: E2B - Sandbox templatestrNo

Outputs

OutputDescriptionType
errorError message if the operation failedstr
sandbox_idID of the sandbox instancestr
responseText result (if any) of the setup code executionstr
stdout_logsStandard output logs from executionstr
stderr_logsStandard error logs from executionstr

Possible use case

<!-- MANUAL: use_case -->

Complex Pipelines: Set up an environment with data science libraries for multi-step analysis.

Persistent State: Create a sandbox with loaded models or data that multiple workflow branches can access.

Custom Environments: Configure specialized environments with specific package versions for reproducible execution.

<!-- END MANUAL -->

Post Reddit Comment

What it is

This block posts a Reddit comment on a specified Reddit post.

How it works

<!-- MANUAL: how_it_works -->

The block connects to Reddit using the provided credentials, locates the specified post, and then adds the given comment to that post.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
post_idThe ID of the post to comment onstrYes
commentThe content of the comment to poststrYes

Outputs

OutputDescriptionType
errorError message if the operation failedstr
comment_idPosted comment IDstr
post_idThe post ID (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

An automated moderation system could use this block to post pre-defined responses or warnings on Reddit posts that violate community guidelines.

<!-- END MANUAL -->

Publish To Medium

What it is

Publishes a post to Medium.

How it works

<!-- MANUAL: how_it_works -->

This block publishes articles to Medium using their API. Provide the content in HTML or Markdown format along with a title, tags, and publishing options. The author_id can be obtained from Medium's /me API endpoint.

Configure publish_status to publish immediately, save as draft, or make unlisted. The block returns the published post's ID and URL.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
author_idThe Medium AuthorID of the user. You can get this by calling the /me endpoint of the Medium API. curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" https://api.medium.com/v1/me The response will contain the authorId field.strNo
titleThe title of your Medium poststrYes
contentThe main content of your Medium poststrYes
content_formatThe format of the content: 'html' or 'markdown'strYes
tagsList of tags for your Medium post (up to 5)List[str]Yes
canonical_urlThe original home of this content, if it was originally published elsewherestrNo
publish_statusThe publish status"public" | "draft" | "unlisted"Yes
licenseThe license of the post: 'all-rights-reserved', 'cc-40-by', 'cc-40-by-sa', 'cc-40-by-nd', 'cc-40-by-nc', 'cc-40-by-nc-nd', 'cc-40-by-nc-sa', 'cc-40-zero', 'public-domain'strNo
notify_followersWhether to notify followers that the user has publishedboolNo

Outputs

OutputDescriptionType
errorError message if the post creation failedstr
post_idThe ID of the created Medium poststr
post_urlThe URL of the created Medium poststr
published_atThe timestamp when the post was publishedint

Possible use case

<!-- MANUAL: use_case -->

Content Syndication: Automatically publish blog posts or newsletters to Medium to reach a wider audience.

AI Content Publishing: Generate articles with AI and publish them directly to Medium.

Cross-Posting: Republish existing content from other platforms to Medium with proper canonical URL attribution.

<!-- END MANUAL -->

Read RSS Feed

What it is

Reads RSS feed entries from a given URL.

How it works

<!-- MANUAL: how_it_works -->

This block fetches and parses RSS or Atom feeds from a URL. Filter entries by time_period to only get recent items. When run_continuously is enabled, the block polls the feed at the specified polling_rate interval.

Each entry is output individually, enabling processing of new content as it appears. The block also outputs all entries as a list for batch processing.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
rss_urlThe URL of the RSS feed to readstrYes
time_periodThe time period to check in minutes relative to the run block runtime, e.g. 60 would check for new entries in the last hour.intNo
polling_rateThe number of seconds to wait between polling attempts.intYes
run_continuouslyWhether to run the block continuously or just once.boolNo

Outputs

OutputDescriptionType
errorError message if the operation failedstr
entryThe RSS itemRSSEntry
entriesList of all RSS entriesList[RSSEntry]

Possible use case

<!-- MANUAL: use_case -->

News Monitoring: Track industry news feeds and process new articles for summarization or alerts.

Content Aggregation: Collect posts from multiple RSS feeds for a curated digest or newsletter.

Blog Triggers: Monitor a competitor's blog feed to trigger analysis or response workflows.

<!-- END MANUAL -->

Reddit Get My Posts

What it is

Fetch posts created by the authenticated Reddit user (you).

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to fetch posts you've submitted to Reddit. Useful for managing or analyzing your own posting history.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
post_limitMaximum number of posts to fetchintNo
sortSort order for posts"new" | "hot" | "top" | "controversial"No

Outputs

OutputDescriptionType
errorError message if posts couldn't be fetchedstr
postA post by youRedditPost
postsAll your postsList[RedditPost]

Possible use case

<!-- MANUAL: use_case -->

Content Management: Review and manage your Reddit posting history.

Performance Tracking: Analyze the engagement of your previous posts.

<!-- END MANUAL -->

Reply To Reddit Comment

What it is

Reply to a specific Reddit comment. Useful for threaded conversations.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to post a reply to an existing comment. The reply appears as a nested response in the comment thread.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
comment_idThe ID of the comment to reply tostrYes
reply_textThe text content of the replystrYes

Outputs

OutputDescriptionType
errorError message if reply failedstr
comment_idID of the newly created replystr
parent_comment_idThe parent comment ID (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Automated Responses: Reply to comments that mention your product or brand.

Conversation Engagement: Participate in discussions by responding to relevant comments.

<!-- END MANUAL -->

Search Reddit

What it is

Search Reddit for posts matching a query. Can search all of Reddit or a specific subreddit.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to search for posts matching your query. Optionally limit the search to a specific subreddit and configure sort order and time filters.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
querySearch query stringstrYes
subredditLimit search to a specific subreddit (without /r/ prefix)strNo
sortSort order for search results"relevance" | "hot" | "top" | "new" | "comments"No
time_filterTime filter for search results"all" | "day" | "hour" | "month" | "week" | "year"No
limitMaximum number of results to returnintNo

Outputs

OutputDescriptionType
errorError message if search failedstr
resultA search resultRedditSearchResult
resultsAll search resultsList[RedditSearchResult]

Possible use case

<!-- MANUAL: use_case -->

Brand Monitoring: Search for mentions of your product or company across Reddit.

Topic Research: Find discussions about specific topics or keywords.

<!-- END MANUAL -->

Send Authenticated Web Request

What it is

Make an authenticated HTTP request with host-scoped credentials (JSON / form / multipart).

How it works

<!-- MANUAL: how_it_works -->

This block makes HTTP requests with automatic credential injection based on the request URL's host. Credentials are managed separately and applied when the URL matches a configured host pattern.

Supports JSON, form-encoded, and multipart requests with file uploads. The response is parsed and returned along with separate error outputs for client (4xx) and server (5xx) errors.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
urlThe URL to send the request tostrYes
methodThe HTTP method to use for the request"GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "OPTIONS" | "HEAD"No
headersThe headers to include in the requestDict[str, str]No
json_formatIf true, send the body as JSON (unless files are also present).boolNo
bodyForm/JSON body payload. If files are supplied, this must be a mapping of form‑fields.Dict[str, Any]No
files_nameThe name of the file field in the form data.strNo
filesMapping of form field name → Image url / path / base64 url.List[str (file)]No

Outputs

OutputDescriptionType
errorErrors for all other exceptionsstr
responseThe response from the serverResponse
client_errorErrors on 4xx status codesClient Error
server_errorErrors on 5xx status codesServer Error

Possible use case

<!-- MANUAL: use_case -->

Private API Access: Call APIs that require authentication without exposing credentials in the workflow.

OAuth Integrations: Access protected resources using pre-configured OAuth tokens.

Multi-Tenant APIs: Make requests to APIs where credentials vary by host or endpoint.

<!-- END MANUAL -->

Send Email

What it is

This block sends an email using the provided SMTP credentials.

How it works

<!-- MANUAL: how_it_works -->

This block sends emails via SMTP using your configured email server credentials. Provide the recipient address, subject, and body content. The SMTP configuration includes server host, port, username, and password.

The block handles connection, authentication, and message delivery, returning a status indicating success or failure.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
to_emailRecipient email addressstrYes
subjectSubject of the emailstrYes
bodyBody of the emailstrYes
configSMTP ConfigSMTP ConfigYes

Outputs

OutputDescriptionType
errorError message if the email sending failedstr
statusStatus of the email sending operationstr

Possible use case

<!-- MANUAL: use_case -->

Notification Emails: Send automated notifications when workflow events occur.

Report Delivery: Email generated reports or summaries to stakeholders.

Alert System: Send email alerts when monitoring workflows detect issues or thresholds.

<!-- END MANUAL -->

Send Reddit Message

What it is

Send a private message (DM) to a Reddit user.

How it works

<!-- MANUAL: how_it_works -->

This block uses the Reddit API via PRAW to send a private message to another Reddit user. The message appears in their inbox.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
usernameThe Reddit username to send a message to (without /u/ prefix)strYes
subjectThe subject line of the messagestrYes
messageThe body content of the messagestrYes

Outputs

OutputDescriptionType
errorError message if sending failedstr
successWhether the message was sentbool
usernameThe username (pass-through for chaining)str

Possible use case

<!-- MANUAL: use_case -->

Outreach: Send direct messages to users for collaboration or feedback requests.

Support: Provide private support or follow-up to users who engaged with your content.

<!-- END MANUAL -->

Send Web Request

What it is

Make an HTTP request (JSON / form / multipart).

How it works

<!-- MANUAL: how_it_works -->

This block makes HTTP requests to any URL. Configure the method (GET, POST, PUT, DELETE, PATCH), headers, and request body. Supports JSON, form-encoded, and multipart content types with file uploads.

The response body is parsed and returned. Separate error outputs distinguish between client errors (4xx), server errors (5xx), and other failures.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
urlThe URL to send the request tostrYes
methodThe HTTP method to use for the request"GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "OPTIONS" | "HEAD"No
headersThe headers to include in the requestDict[str, str]No
json_formatIf true, send the body as JSON (unless files are also present).boolNo
bodyForm/JSON body payload. If files are supplied, this must be a mapping of form‑fields.Dict[str, Any]No
files_nameThe name of the file field in the form data.strNo
filesMapping of form field name → Image url / path / base64 url.List[str (file)]No

Outputs

OutputDescriptionType
errorErrors for all other exceptionsstr
responseThe response from the serverResponse
client_errorErrors on 4xx status codesClient Error
server_errorErrors on 5xx status codesServer Error

Possible use case

<!-- MANUAL: use_case -->

API Integration: Call REST APIs to fetch data, trigger actions, or send updates.

Webhook Delivery: Send webhook notifications to external services when events occur.

Custom Services: Integrate with services that don't have dedicated blocks using their HTTP APIs.

<!-- END MANUAL -->

Transcribe Youtube Video

What it is

Transcribes a YouTube video using a proxy.

How it works

<!-- MANUAL: how_it_works -->

This block extracts transcripts from YouTube videos using a proxy service. It parses the YouTube URL to get the video ID and retrieves the available transcript, typically the auto-generated or manually uploaded captions.

The transcript text is returned as a single string, suitable for summarization, analysis, or other text processing.

<!-- END MANUAL -->

Inputs

InputDescriptionTypeRequired
youtube_urlThe URL of the YouTube video to transcribestrYes

Outputs

OutputDescriptionType
errorAny error message if the transcription failsstr
video_idThe extracted YouTube video IDstr
transcriptThe transcribed text of the videostr

Possible use case

<!-- MANUAL: use_case -->

Video Summarization: Extract video transcripts for AI summarization or key point extraction.

Content Repurposing: Convert YouTube content into written articles, social posts, or documentation.

Research Automation: Transcribe educational or informational videos for analysis and note-taking.

<!-- END MANUAL -->