docs(blocks): Add documentation for each block we currently have (#8289)

* Initial upload of block docks

* add github + google block docs

* small tweak
pull/8336/head^2
Bently 2024-10-16 16:09:34 +01:00 committed by GitHub
parent 405dd1659e
commit c029fde502
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
31 changed files with 2375 additions and 0 deletions

View File

@ -0,0 +1,32 @@
# AI Shortform Video Creator
## What it is
The AI Shortform Video Creator is a tool that generates short-form videos using artificial intelligence and various customization options.
## What it does
This block creates short videos by combining AI-generated visuals, narration, and background music based on user input. It can produce different styles of videos, including stock videos, moving AI images, or AI-generated videos.
## How it works
The block takes user input for script, visual style, audio, and other parameters. It then sends this information to the revid.ai API, which processes the request and generates the video. The block monitors the video creation process and provides the final video URL once it's ready.
## Inputs
| Input | Description |
|-------|-------------|
| API Key | Your revid.ai API key for authentication |
| Script | The text content for the video, including spoken narration and visual directions |
| Ratio | The aspect ratio of the video (e.g., "9 / 16" for vertical videos) |
| Resolution | The video resolution (e.g., "720p") |
| Frame Rate | The number of frames per second in the video |
| Generation Preset | The visual style for AI-generated content (e.g., "Default", "Anime", "Realist") |
| Background Music | The choice of background music track |
| Voice | The AI voice to use for narration |
| Video Style | The type of visual media to use (stock videos, moving AI images, or AI video) |
## Outputs
| Output | Description |
|--------|-------------|
| Video URL | The web address where the created video can be accessed |
| Error | A message explaining any issues that occurred during video creation (if applicable) |
## Possible use case
A social media marketer could use this block to quickly create engaging short-form videos for platforms like TikTok or Instagram Reels. They could input a script about a new product, choose a suitable visual style and background music, and get a professional-looking video without needing advanced video editing skills.

View File

@ -0,0 +1,223 @@
# Basic Operations Blocks
## Store Value
### What it is
A basic block that stores and forwards a value.
### What it does
This block takes an input value and stores it, allowing it to be reused without changes.
### How it works
It accepts an input value and optionally a data value. If a data value is provided, it is used as the output. Otherwise, the input value is used as the output.
### Inputs
| Input | Description |
|-------|-------------|
| Input | The value to be stored or forwarded |
| Data | An optional constant value to be stored instead of the input |
### Outputs
| Output | Description |
|--------|-------------|
| Output | The stored value (either the input or the data) |
### Possible use case
Storing a user's name at the beginning of a workflow to use it in multiple subsequent blocks without asking for it again.
---
## Print to Console
### What it is
A basic block that prints text to the console for debugging purposes.
### What it does
This block takes a text input and prints it to the console, then outputs a status message.
### How it works
It receives a text input, prints it to the console with a "Print: " prefix, and then yields a "printed" status.
### Inputs
| Input | Description |
|-------|-------------|
| Text | The text to be printed to the console |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating that the text was printed ("printed") |
### Possible use case
Debugging a workflow by printing intermediate results or messages at various stages.
---
## Find in Dictionary
### What it is
A basic block that looks up a value in a dictionary, object, or list using a given key.
### What it does
This block searches for a specified key in the input data structure and returns the corresponding value if found.
### How it works
It accepts an input (dictionary, object, or list) and a key. It then attempts to find the key in the input and return the corresponding value. If the key is not found, it returns the entire input as "missing".
### Inputs
| Input | Description |
|-------|-------------|
| Input | The dictionary, object, or list to search in |
| Key | The key to look up in the input |
### Outputs
| Output | Description |
|--------|-------------|
| Output | The value found for the given key |
| Missing | The entire input if the key was not found |
### Possible use case
Extracting specific information from a complex data structure, such as finding a user's email address in a user profile dictionary.
---
## Agent Input
### What it is
An input block that provides a way to accept user input in a workflow.
### What it does
This block allows users to input values into the workflow, with options for naming, describing, and setting placeholder values.
### How it works
It accepts a value from the user, along with metadata such as name, description, and optional placeholder values. The block then outputs the provided value.
### Inputs
| Input | Description |
|-------|-------------|
| Value | The actual input value provided by the user |
| Name | A name for the input field |
| Description | An optional description of the input |
| Placeholder Values | Optional list of suggested values |
| Limit to Placeholder Values | Option to restrict input to placeholder values only |
### Outputs
| Output | Description |
|--------|-------------|
| Result | The value provided as input |
### Possible use case
Collecting user preferences at the start of a personalized recommendation workflow.
---
## Agent Output
### What it is
An output block that records and formats the final results of a workflow.
### What it does
This block takes a value and associated metadata, optionally formats it, and presents it as the output of the workflow.
### How it works
It accepts an input value along with a name, description, and optional format string. If a format string is provided, it attempts to apply the formatting to the input value before outputting it.
### Inputs
| Input | Description |
|-------|-------------|
| Value | The value to be recorded as output |
| Name | A name for the output |
| Description | An optional description of the output |
| Format | An optional format string to apply to the value |
### Outputs
| Output | Description |
|--------|-------------|
| Output | The formatted (if applicable) output value |
### Possible use case
Presenting the final results of a data analysis workflow in a specific format.
---
## Add to Dictionary
### What it is
A basic block that adds a new key-value pair to a dictionary.
### What it does
This block takes an existing dictionary (or creates a new one), a key, and a value, and adds the key-value pair to the dictionary.
### How it works
It accepts an optional input dictionary, a key, and a value. If no dictionary is provided, it creates a new one. It then adds the key-value pair to the dictionary and returns the updated dictionary.
### Inputs
| Input | Description |
|-------|-------------|
| Dictionary | An optional existing dictionary to add to |
| Key | The key for the new entry |
| Value | The value for the new entry |
### Outputs
| Output | Description |
|--------|-------------|
| Updated Dictionary | The dictionary with the new entry added |
| Error | An error message if the operation fails |
### Possible use case
Building a user profile by gradually adding new information as it's collected throughout a workflow.
---
## Add to List
### What it is
A basic block that adds a new entry to a list.
### What it does
This block takes an existing list (or creates a new one) and adds a new entry to it, optionally at a specified position.
### How it works
It accepts an optional input list, an entry to add, and an optional position. If no list is provided, it creates a new one. It then adds the entry to the list at the specified position (or at the end if no position is given) and returns the updated list.
### Inputs
| Input | Description |
|-------|-------------|
| List | An optional existing list to add to |
| Entry | The new item to add to the list |
| Position | An optional position to insert the new entry |
### Outputs
| Output | Description |
|--------|-------------|
| Updated List | The list with the new entry added |
| Error | An error message if the operation fails |
### Possible use case
Maintaining a to-do list in a task management workflow, where new tasks can be added at specific priorities (positions).
---
## Note
### What it is
A basic block that displays a sticky note with custom text.
### What it does
This block takes a text input and displays it as a sticky note in the workflow interface.
### How it works
It simply accepts a text input and passes it through as an output to be displayed as a note.
### Inputs
| Input | Description |
|-------|-------------|
| Text | The text to display in the sticky note |
### Outputs
| Output | Description |
|--------|-------------|
| Output | The text to display in the sticky note |
### Possible use case
Adding explanatory notes or reminders within a complex workflow to help users understand different stages or provide additional context.

View File

@ -0,0 +1,132 @@
# AutoGPT Blocks Overview
AutoGPT uses a modular approach with various "blocks" to handle different tasks. These blocks are the building blocks of AutoGPT workflows, allowing users to create complex automations by combining simple, specialized components.
Below is a comprehensive list of all available blocks, categorized by their primary function. Click on any block name to view its detailed documentation.
## Basic Operations
| Block Name | Description |
|------------|-------------|
| [Store Value](basic.md#store-value) | Stores and forwards a value |
| [Print to Console](basic.md#print-to-console) | Outputs text to the console for debugging |
| [Find in Dictionary](basic.md#find-in-dictionary) | Looks up a value in a dictionary or list |
| [Agent Input](basic.md#agent-input) | Accepts user input in a workflow |
| [Agent Output](basic.md#agent-output) | Records and formats workflow results |
| [Add to Dictionary](basic.md#add-to-dictionary) | Adds a new key-value pair to a dictionary |
| [Add to List](basic.md#add-to-list) | Adds a new entry to a list |
| [Note](basic.md#note) | Displays a sticky note in the workflow |
## Data Processing
| Block Name | Description |
|------------|-------------|
| [Read CSV](csv.md#read-csv) | Processes and extracts data from CSV files |
| [Data Sampling](sampling.md#data-sampling) | Selects a subset of data using various sampling methods |
## Text Processing
| Block Name | Description |
|------------|-------------|
| [Match Text Pattern](text.md#match-text-pattern) | Checks if text matches a specified pattern |
| [Extract Text Information](text.md#extract-text-information) | Extracts specific information from text using patterns |
| [Fill Text Template](text.md#fill-text-template) | Populates a template with provided values |
| [Combine Texts](text.md#combine-texts) | Merges multiple text inputs into one |
| [Text Decoder](decoder_block.md#text-decoder) | Converts encoded text into readable format |
## AI and Language Models
| Block Name | Description |
|------------|-------------|
| [AI Structured Response Generator](llm.md#ai-structured-response-generator) | Generates structured responses using LLMs |
| [AI Text Generator](llm.md#ai-text-generator) | Produces text responses using LLMs |
| [AI Text Summarizer](llm.md#ai-text-summarizer) | Summarizes long texts using LLMs |
| [AI Conversation](llm.md#ai-conversation) | Facilitates multi-turn conversations with LLMs |
| [AI List Generator](llm.md#ai-list-generator) | Creates lists based on prompts using LLMs |
## Web and API Interactions
| Block Name | Description |
|------------|-------------|
| [Send Web Request](http.md#send-web-request) | Makes HTTP requests to specified web addresses |
| [Read RSS Feed](rss.md#read-rss-feed) | Retrieves and processes entries from RSS feeds |
| [Get Weather Information](search.md#get-weather-information) | Fetches current weather data for a location |
| [Google Maps Search](google_maps.md#google-maps-search) | Searches for local businesses using Google Maps API |
## Social Media and Content
| Block Name | Description |
|------------|-------------|
| [Get Reddit Posts](reddit.md#get-reddit-posts) | Retrieves posts from specified subreddits |
| [Post Reddit Comment](reddit.md#post-reddit-comment) | Posts comments on Reddit |
| [Publish to Medium](medium.md#publish-to-medium) | Publishes content directly to Medium |
| [Read Discord Messages](discord.md#read-discord-messages) | Retrieves messages from Discord channels |
| [Send Discord Message](discord.md#send-discord-message) | Sends messages to Discord channels |
## Search and Information Retrieval
| Block Name | Description |
|------------|-------------|
| [Get Wikipedia Summary](search.md#get-wikipedia-summary) | Fetches summaries of topics from Wikipedia |
| [Search The Web](search.md#search-the-web) | Performs web searches and returns results |
| [Extract Website Content](search.md#extract-website-content) | Retrieves and extracts content from websites |
## Time and Date
| Block Name | Description |
|------------|-------------|
| [Get Current Time](time_blocks.md#get-current-time) | Provides the current time |
| [Get Current Date](time_blocks.md#get-current-date) | Provides the current date |
| [Get Current Date and Time](time_blocks.md#get-current-date-and-time) | Provides both current date and time |
| [Countdown Timer](time_blocks.md#countdown-timer) | Acts as a countdown timer |
## Math and Calculations
| Block Name | Description |
|------------|-------------|
| [Calculator](maths.md#calculator) | Performs basic mathematical operations |
| [Count Items](maths.md#count-items) | Counts items in a collection |
## Media Generation
| Block Name | Description |
|------------|-------------|
| [Ideogram Model](ideogram.md#ideogram-model) | Generates images based on text prompts |
| [Create Talking Avatar Video](talking_head.md#create-talking-avatar-video) | Creates videos with talking avatars |
| [Unreal Text to Speech](text_to_speech_block.md#unreal-text-to-speech) | Converts text to speech using Unreal Speech API |
| [AI Shortform Video Creator](ai_shortform_video_block.md#ai-shortform-video-creator) | Generates short-form videos using AI |
| [Replicate Flux Advanced Model](replicate_flux_advanced.md#replicate-flux-advanced-model) | Creates images using Replicate's Flux models |
## Miscellaneous
| Block Name | Description |
|------------|-------------|
| [Transcribe YouTube Video](youtube.md#transcribe-youtube-video) | Transcribes audio from YouTube videos |
| [Send Email](email_block.md#send-email) | Sends emails using SMTP |
| [Condition Block](branching.md#condition-block) | Evaluates conditions for workflow branching |
| [Step Through Items](iteration.md#step-through-items) | Iterates through lists or dictionaries |
## Google Services
| Block Name | Description |
|------------|-------------|
| [Gmail Read](google/gmail.md#gmail-read) | Retrieves and reads emails from a Gmail account |
| [Gmail Send](google/gmail.md#gmail-send) | Sends emails using a Gmail account |
| [Gmail List Labels](google/gmail.md#gmail-list-labels) | Retrieves all labels from a Gmail account |
| [Gmail Add Label](google/gmail.md#gmail-add-label) | Adds a label to a specific email in a Gmail account |
| [Gmail Remove Label](google/gmail.md#gmail-remove-label) | Removes a label from a specific email in a Gmail account |
| [Google Sheets Read](google/sheet.md#google-sheets-read) | Reads data from a Google Sheets spreadsheet |
| [Google Sheets Write](google/sheet.md#google-sheets-write) | Writes data to a Google Sheets spreadsheet |
| [Google Maps Search](google_maps.md#google-maps-search) | Searches for local businesses using the Google Maps API |
## GitHub Integration
| Block Name | Description |
|------------|-------------|
| [GitHub Comment](github/issues.md#github-comment) | Posts comments on GitHub issues or pull requests |
| [GitHub Make Issue](github/issues.md#github-make-issue) | Creates new issues on GitHub repositories |
| [GitHub Read Issue](github/issues.md#github-read-issue) | Retrieves information about a specific GitHub issue |
| [GitHub List Issues](github/issues.md#github-list-issues) | Retrieves a list of issues from a GitHub repository |
| [GitHub Add Label](github/issues.md#github-add-label) | Adds a label to a GitHub issue or pull request |
| [GitHub Remove Label](github/issues.md#github-remove-label) | Removes a label from a GitHub issue or pull request |
| [GitHub Assign Issue](github/issues.md#github-assign-issue) | Assigns a user to a GitHub issue |
| [GitHub List Tags](github/repo.md#github-list-tags) | Retrieves and lists all tags for a specified GitHub repository |
| [GitHub List Branches](github/repo.md#github-list-branches) | Retrieves and lists all branches for a specified GitHub repository |
| [GitHub List Discussions](github/repo.md#github-list-discussions) | Retrieves and lists recent discussions for a specified GitHub repository |
| [GitHub Make Branch](github/repo.md#github-make-branch) | Creates a new branch in a GitHub repository |
| [GitHub Delete Branch](github/repo.md#github-delete-branch) | Deletes a specified branch from a GitHub repository |
| [GitHub List Pull Requests](github/pull_requests.md#github-list-pull-requests) | Retrieves a list of pull requests from a specified GitHub repository |
| [GitHub Make Pull Request](github/pull_requests.md#github-make-pull-request) | Creates a new pull request in a specified GitHub repository |
| [GitHub Read Pull Request](github/pull_requests.md#github-read-pull-request) | Retrieves detailed information about a specific GitHub pull request |
| [GitHub Assign PR Reviewer](github/pull_requests.md#github-assign-pr-reviewer) | Assigns a reviewer to a specific GitHub pull request |
| [GitHub Unassign PR Reviewer](github/pull_requests.md#github-unassign-pr-reviewer) | Removes an assigned reviewer from a specific GitHub pull request |
| [GitHub List PR Reviewers](github/pull_requests.md#github-list-pr-reviewers) | Retrieves a list of all assigned reviewers for a specific GitHub pull request |
This comprehensive list covers all the blocks available in AutoGPT. Each block is designed to perform a specific task, and they can be combined to create powerful, automated workflows. For more detailed information on each block, click on its name to view the full documentation.

View File

@ -0,0 +1,29 @@
# Condition Block
## What it is
The Condition Block is a logical component that evaluates comparisons between two values and produces outputs based on the result.
## What it does
This block compares two input values using a specified comparison operator and determines whether the condition is true or false. It then outputs the result of the comparison and provides corresponding output values for both true and false cases.
## How it works
The block takes two values and a comparison operator as inputs. It then performs the comparison using the specified operator. Based on the result of the comparison, it outputs a boolean value (true or false) and the corresponding output value for the true or false case.
## Inputs
| Input | Description |
|-------|-------------|
| Value 1 | The first value to be compared. This can be any type of value (number, text, or boolean) |
| Operator | The comparison operator to use (e.g., equal to, not equal to, greater than, less than) |
| Value 2 | The second value to be compared. This can be any type of value (number, text, or boolean) |
| Yes Value | (Optional) The value to output if the condition is true. If not provided, Value 1 will be used |
| No Value | (Optional) The value to output if the condition is false. If not provided, Value 1 will be used |
## Outputs
| Output | Description |
|--------|-------------|
| Result | A boolean value (true or false) indicating whether the condition was met |
| Yes Output | The output value if the condition is true. This will be the Yes Value if provided, or Value 1 if not |
| No Output | The output value if the condition is false. This will be the No Value if provided, or Value 1 if not |
## Possible use case
This block could be used in a customer loyalty program to determine if a customer qualifies for a discount. For example, you could compare the customer's total purchases (Value 1) with a threshold amount (Value 2) using the "greater than or equal to" operator. The Yes Value could be "Qualified for discount" and the No Value could be "Not qualified". The block would then output whether the customer qualifies and the appropriate message.

View File

@ -0,0 +1,31 @@
# Read CSV
## What it is
A block that reads and processes CSV (Comma-Separated Values) files.
## What it does
This block takes CSV content as input, processes it, and outputs the data as individual rows and a complete dataset.
## How it works
The Read CSV block takes the contents of a CSV file and splits it into rows and columns. It can handle different formatting options, such as custom delimiters and quote characters. The block processes the CSV data and outputs each row individually, as well as the complete dataset.
## Inputs
| Input | Description |
|-------|-------------|
| Contents | The CSV data as a string |
| Delimiter | The character used to separate values in the CSV (default is comma ",") |
| Quotechar | The character used to enclose fields containing special characters (default is double quote '"') |
| Escapechar | The character used to escape special characters (default is backslash "\") |
| Has_header | Indicates whether the CSV has a header row (default is true) |
| Skip_rows | The number of rows to skip at the beginning of the CSV (default is 0) |
| Strip | Whether to remove leading and trailing whitespace from values (default is true) |
| Skip_columns | A list of column names to exclude from the output (default is an empty list) |
## Outputs
| Output | Description |
|--------|-------------|
| Row | A dictionary representing a single row of the CSV, with column names as keys and cell values as values |
| All_data | A list of dictionaries containing all rows from the CSV |
## Possible use case
This block could be used in a data analysis pipeline to import and process customer information from a CSV file. The individual rows could be used for real-time processing, while the complete dataset could be used for batch analysis or reporting.

View File

@ -0,0 +1,32 @@
# Text Decoder
## What it is
A tool that converts text with special characters into regular, readable text.
## What it does
It takes a string of text that contains escaped characters (like '\n' for new lines or '\"' for quotation marks) and converts them into their actual representations in the text.
## How it works
The Text Decoder looks at the input text and identifies special character sequences. It then replaces these sequences with their actual characters, making the text more readable and removing any escape characters.
## Inputs
| Input | Description |
|-------|-------------|
| Text | The text you want to decode, which may contain escaped characters like '\n' for new lines or '\"' for quotation marks |
## Outputs
| Output | Description |
|--------|-------------|
| Decoded Text | The text after processing, with all escape sequences converted to their actual characters |
| Error | If there's a problem during the decoding process, an error message will be provided instead |
## Possible use case
Imagine you receive a text message that looks like this: "Hello\nWorld!\nThis is a \"quoted\" string." The Text Decoder can convert it into a more readable format:
```
Hello
World!
This is a "quoted" string.
```
This could be useful when working with data from various sources where text might be encoded to preserve special characters, such as when importing data from a file or receiving it from an API.

View File

@ -0,0 +1,54 @@
## Read Discord Messages
### What it is
A block that reads messages from a Discord channel using a bot token.
### What it does
This block connects to Discord using a bot token and retrieves messages from a specified channel. It can operate continuously or retrieve a single message.
### How it works
The block uses a Discord bot to log into a server and listen for new messages. When a message is received, it extracts the content, channel name, and username of the sender. If the message contains a text file attachment, the block also retrieves and includes the file's content.
### Inputs
| Input | Description |
|-------|-------------|
| Discord Bot Token | A secret token used to authenticate the bot with Discord |
| Continuous Read | A boolean flag indicating whether to continuously read messages or stop after one message |
### Outputs
| Output | Description |
|--------|-------------|
| Message Content | The text content of the received message, including any attached file content |
| Channel Name | The name of the Discord channel where the message was received |
| Username | The name of the user who sent the message |
### Possible use case
This block could be used to monitor a Discord channel for support requests. When a user posts a message, the block captures it, allowing another part of the system to process and respond to the request.
---
## Send Discord Message
### What it is
A block that sends messages to a Discord channel using a bot token.
### What it does
This block connects to Discord using a bot token and sends a specified message to a designated channel.
### How it works
The block uses a Discord bot to log into a server, locate the specified channel, and send the provided message. If the message is longer than Discord's character limit, it automatically splits the message into smaller chunks and sends them sequentially.
### Inputs
| Input | Description |
|-------|-------------|
| Discord Bot Token | A secret token used to authenticate the bot with Discord |
| Message Content | The text content of the message to be sent |
| Channel Name | The name of the Discord channel where the message should be sent |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A string indicating the result of the operation (e.g., "Message sent" or "Channel not found") |
### Possible use case
This block could be used as part of an automated notification system. For example, it could send alerts to a Discord channel when certain events occur in another system, such as when a new user signs up or when a critical error is detected.

View File

@ -0,0 +1,35 @@
# Send Email
## What it is
The Send Email block is a tool for sending emails using SMTP (Simple Mail Transfer Protocol) credentials.
## What it does
This block allows users to send an email to a specified recipient with a custom subject and body. It uses provided SMTP credentials to connect to an email server and send the message.
## How it works
The block takes the recipient's email address, subject, and body of the email as inputs. It also requires SMTP credentials, including the server address, port, username, and password. The block then connects to the specified SMTP server, authenticates using the provided credentials, and sends the email. After attempting to send the email, it reports back whether the operation was successful or if an error occurred.
## Inputs
| Input | Description |
|-------|-------------|
| To Email | The email address of the recipient |
| Subject | The subject line of the email |
| Body | The main content of the email message |
| SMTP Credentials | Server, port, username, and password for authentication |
### SMTP Credentials Details
| Credential | Description | Default |
|------------|-------------|---------|
| SMTP Server | The address of the SMTP server | smtp.gmail.com |
| SMTP Port | The port number for the SMTP server | 25 |
| SMTP Username | The username for authenticating with the SMTP server | - |
| SMTP Password | The password for authenticating with the SMTP server | - |
## Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating whether the email was sent successfully |
| Error | If the email sending fails, this output provides details about the error that occurred |
## Possible use case
This block could be used in an automated customer support system. When a customer submits a support ticket through a website, the Send Email block could automatically send a confirmation email to the customer, acknowledging receipt of their request and providing them with a ticket number for future reference.

View File

@ -0,0 +1,236 @@
# GitHub Issues
## Github Comment
### What it is
A block that posts comments on GitHub issues or pull requests.
### What it does
This block allows users to add comments to existing GitHub issues or pull requests using the GitHub API.
### How it works
The block takes the GitHub credentials, the URL of the issue or pull request, and the comment text as inputs. It then sends a request to the GitHub API to post the comment on the specified issue or pull request.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication information |
| Issue URL | The URL of the GitHub issue or pull request where the comment will be posted |
| Comment | The text content of the comment to be posted |
### Outputs
| Output | Description |
|--------|-------------|
| ID | The unique identifier of the created comment |
| URL | The direct link to the posted comment on GitHub |
| Error | Any error message if the comment posting fails |
### Possible use case
Automating responses to issues in a GitHub repository, such as thanking contributors for their submissions or providing status updates on reported bugs.
---
## Github Make Issue
### What it is
A block that creates new issues on GitHub repositories.
### What it does
This block allows users to create new issues in a specified GitHub repository with a title and body content.
### How it works
The block takes the GitHub credentials, repository URL, issue title, and issue body as inputs. It then sends a request to the GitHub API to create a new issue with the provided information.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication information |
| Repo URL | The URL of the GitHub repository where the issue will be created |
| Title | The title of the new issue |
| Body | The main content or description of the new issue |
### Outputs
| Output | Description |
|--------|-------------|
| Number | The issue number assigned by GitHub |
| URL | The direct link to the newly created issue on GitHub |
| Error | Any error message if the issue creation fails |
### Possible use case
Automatically creating issues for bug reports or feature requests submitted through an external system or form.
---
## Github Read Issue
### What it is
A block that retrieves information about a specific GitHub issue.
### What it does
This block fetches the details of a given GitHub issue, including its title, body content, and the user who created it.
### How it works
The block takes the GitHub credentials and the issue URL as inputs. It then sends a request to the GitHub API to fetch the issue's details and returns the relevant information.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication information |
| Issue URL | The URL of the GitHub issue to be read |
### Outputs
| Output | Description |
|--------|-------------|
| Title | The title of the issue |
| Body | The main content or description of the issue |
| User | The username of the person who created the issue |
| Error | Any error message if reading the issue fails |
### Possible use case
Gathering information about reported issues for analysis or to display on a dashboard.
---
## Github List Issues
### What it is
A block that retrieves a list of issues from a GitHub repository.
### What it does
This block fetches all open issues from a specified GitHub repository and provides their titles and URLs.
### How it works
The block takes the GitHub credentials and repository URL as inputs. It then sends a request to the GitHub API to fetch the list of issues and returns their details.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication information |
| Repo URL | The URL of the GitHub repository to list issues from |
### Outputs
| Output | Description |
|--------|-------------|
| Issue | A list of issues, each containing: |
| - Title | The title of the issue |
| - URL | The direct link to the issue on GitHub |
| Error | Any error message if listing the issues fails |
### Possible use case
Creating a summary of open issues for a project status report or displaying them on a project management dashboard.
---
## Github Add Label
### What it is
A block that adds a label to a GitHub issue or pull request.
### What it does
This block allows users to add a specified label to an existing GitHub issue or pull request.
### How it works
The block takes the GitHub credentials, the URL of the issue or pull request, and the label to be added as inputs. It then sends a request to the GitHub API to add the label to the specified issue or pull request.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication information |
| Issue URL | The URL of the GitHub issue or pull request to add the label to |
| Label | The name of the label to be added |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating whether the label was successfully added |
| Error | Any error message if adding the label fails |
### Possible use case
Automatically categorizing issues based on their content or assigning priority labels to newly created issues.
---
## Github Remove Label
### What it is
A block that removes a label from a GitHub issue or pull request.
### What it does
This block allows users to remove a specified label from an existing GitHub issue or pull request.
### How it works
The block takes the GitHub credentials, the URL of the issue or pull request, and the label to be removed as inputs. It then sends a request to the GitHub API to remove the label from the specified issue or pull request.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication information |
| Issue URL | The URL of the GitHub issue or pull request to remove the label from |
| Label | The name of the label to be removed |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating whether the label was successfully removed |
| Error | Any error message if removing the label fails |
### Possible use case
Updating the status of issues as they progress through a workflow, such as removing a "In Progress" label when an issue is completed.
---
## Github Assign Issue
### What it is
A block that assigns a user to a GitHub issue.
### What it does
This block allows users to assign a specific GitHub user to an existing issue.
### How it works
The block takes the GitHub credentials, the URL of the issue, and the username of the person to be assigned as inputs. It then sends a request to the GitHub API to assign the specified user to the issue.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication information |
| Issue URL | The URL of the GitHub issue to assign |
| Assignee | The username of the person to be assigned to the issue |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating whether the issue was successfully assigned |
| Error | Any error message if assigning the issue fails |
### Possible use case
Automatically assigning new issues to team members based on their expertise or workload.
---
## Github Unassign Issue
### What it is
A block that unassigns a user from a GitHub issue.
### What it does
This block allows users to remove a specific GitHub user's assignment from an existing issue.
### How it works
The block takes the GitHub credentials, the URL of the issue, and the username of the person to be unassigned as inputs. It then sends a request to the GitHub API to remove the specified user's assignment from the issue.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication information |
| Issue URL | The URL of the GitHub issue to unassign |
| Assignee | The username of the person to be unassigned from the issue |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating whether the issue was successfully unassigned |
| Error | Any error message if unassigning the issue fails |
### Possible use case
Automatically unassigning issues that have been inactive for a certain period or when reassigning workload among team members.

View File

@ -0,0 +1,182 @@
# Pull Requests
## GitHub List Pull Requests
### What it is
A block that retrieves a list of pull requests from a specified GitHub repository.
### What it does
This block fetches all open pull requests for a given GitHub repository and provides their titles and URLs.
### How it works
It connects to the GitHub API using the provided credentials and repository URL, then retrieves the list of pull requests and formats the information for easy viewing.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication details to access the repository |
| Repository URL | The URL of the GitHub repository to fetch pull requests from |
### Outputs
| Output | Description |
|--------|-------------|
| Pull Request | A list of pull requests, each containing: |
| - Title | The title of the pull request |
| - URL | The web address of the pull request |
| Error | An error message if the operation fails |
### Possible use case
A development team leader wants to quickly review all open pull requests in their project repository to prioritize code reviews.
---
## GitHub Make Pull Request
### What it is
A block that creates a new pull request in a specified GitHub repository.
### What it does
This block allows users to create a new pull request by providing details such as title, body, and branch information.
### How it works
It uses the GitHub API to create a new pull request with the given information, including the source and target branches for the changes.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication details to access the repository |
| Repository URL | The URL of the GitHub repository where the pull request will be created |
| Title | The title of the new pull request |
| Body | The description or content of the pull request |
| Head | The name of the branch containing the changes |
| Base | The name of the branch you want to merge the changes into |
### Outputs
| Output | Description |
|--------|-------------|
| Number | The unique identifier of the created pull request |
| URL | The web address of the newly created pull request |
| Error | An error message if the pull request creation fails |
### Possible use case
A developer has finished working on a new feature in a separate branch and wants to create a pull request to merge their changes into the main branch for review.
---
## GitHub Read Pull Request
### What it is
A block that retrieves detailed information about a specific GitHub pull request.
### What it does
This block fetches and provides comprehensive information about a given pull request, including its title, body, author, and optionally, the changes made.
### How it works
It connects to the GitHub API using the provided credentials and pull request URL, then retrieves and formats the requested information.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication details to access the repository |
| Pull Request URL | The URL of the specific GitHub pull request to read |
| Include PR Changes | An option to include the actual changes made in the pull request |
### Outputs
| Output | Description |
|--------|-------------|
| Title | The title of the pull request |
| Body | The description or content of the pull request |
| Author | The username of the person who created the pull request |
| Changes | A list of changes made in the pull request (if requested) |
| Error | An error message if reading the pull request fails |
### Possible use case
A code reviewer wants to get a comprehensive overview of a pull request, including its description and changes, before starting the review process.
---
## GitHub Assign PR Reviewer
### What it is
A block that assigns a reviewer to a specific GitHub pull request.
### What it does
This block allows users to assign a designated reviewer to a given pull request in a GitHub repository.
### How it works
It uses the GitHub API to add the specified user as a reviewer for the given pull request.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication details to access the repository |
| Pull Request URL | The URL of the specific GitHub pull request to assign a reviewer to |
| Reviewer | The username of the GitHub user to be assigned as a reviewer |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating whether the reviewer was successfully assigned |
| Error | An error message if the reviewer assignment fails |
### Possible use case
A project manager wants to assign a specific team member to review a newly created pull request for a critical feature.
---
## GitHub Unassign PR Reviewer
### What it is
A block that removes an assigned reviewer from a specific GitHub pull request.
### What it does
This block allows users to unassign a previously designated reviewer from a given pull request in a GitHub repository.
### How it works
It uses the GitHub API to remove the specified user from the list of reviewers for the given pull request.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication details to access the repository |
| Pull Request URL | The URL of the specific GitHub pull request to unassign a reviewer from |
| Reviewer | The username of the GitHub user to be unassigned as a reviewer |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating whether the reviewer was successfully unassigned |
| Error | An error message if the reviewer unassignment fails |
### Possible use case
A team lead realizes that an assigned reviewer is unavailable and wants to remove them from a pull request to reassign it to another team member.
---
## GitHub List PR Reviewers
### What it is
A block that retrieves a list of all assigned reviewers for a specific GitHub pull request.
### What it does
This block fetches and provides information about all the reviewers currently assigned to a given pull request in a GitHub repository.
### How it works
It connects to the GitHub API using the provided credentials and pull request URL, then retrieves and formats the list of assigned reviewers.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication details to access the repository |
| Pull Request URL | The URL of the specific GitHub pull request to list reviewers for |
### Outputs
| Output | Description |
|--------|-------------|
| Reviewer | A list of assigned reviewers, each containing: |
| - Username | The GitHub username of the reviewer |
| - URL | The profile URL of the reviewer |
| Error | An error message if listing the reviewers fails |
### Possible use case
A project coordinator wants to check who is currently assigned to review a specific pull request to ensure all necessary team members are involved in the code review process.

View File

@ -0,0 +1,234 @@
# Repository
## GitHub List Tags
### What it is
A block that retrieves and lists all tags for a specified GitHub repository.
### What it does
This block fetches all tags associated with a given GitHub repository and provides their names and URLs.
### How it works
The block connects to the GitHub API using provided credentials, sends a request to retrieve tag information for the specified repository, and then processes the response to extract tag names and URLs.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication credentials required to access the repository |
| Repository URL | The URL of the GitHub repository to fetch tags from |
### Outputs
| Output | Description |
|--------|-------------|
| Tag | Information about each tag, including its name and URL |
| Error | Any error message if the tag listing process fails |
### Possible use case
A developer wants to quickly view all release tags for a project to identify the latest version or track the project's release history.
---
## GitHub List Branches
### What it is
A block that retrieves and lists all branches for a specified GitHub repository.
### What it does
This block fetches all branches associated with a given GitHub repository and provides their names and URLs.
### How it works
The block authenticates with the GitHub API, sends a request to get branch information for the specified repository, and then processes the response to extract branch names and URLs.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication credentials required to access the repository |
| Repository URL | The URL of the GitHub repository to fetch branches from |
### Outputs
| Output | Description |
|--------|-------------|
| Branch | Information about each branch, including its name and URL |
| Error | Any error message if the branch listing process fails |
### Possible use case
A project manager wants to review all active branches in a repository to track ongoing development efforts and feature implementations.
---
## GitHub List Discussions
### What it is
A block that retrieves and lists recent discussions for a specified GitHub repository.
### What it does
This block fetches a specified number of recent discussions from a given GitHub repository and provides their titles and URLs.
### How it works
The block uses the GitHub GraphQL API to request discussion data for the specified repository, processes the response, and extracts discussion titles and URLs.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication credentials required to access the repository |
| Repository URL | The URL of the GitHub repository to fetch discussions from |
| Number of Discussions | The number of recent discussions to retrieve (default is 5) |
### Outputs
| Output | Description |
|--------|-------------|
| Discussion | Information about each discussion, including its title and URL |
| Error | Any error message if the discussion listing process fails |
### Possible use case
A community manager wants to monitor recent discussions in a project's repository to identify trending topics or issues that need attention.
---
## GitHub List Releases
### What it is
A block that retrieves and lists all releases for a specified GitHub repository.
### What it does
This block fetches all releases associated with a given GitHub repository and provides their names and URLs.
### How it works
The block connects to the GitHub API, sends a request to get release information for the specified repository, and then processes the response to extract release names and URLs.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication credentials required to access the repository |
| Repository URL | The URL of the GitHub repository to fetch releases from |
### Outputs
| Output | Description |
|--------|-------------|
| Release | Information about each release, including its name and URL |
| Error | Any error message if the release listing process fails |
### Possible use case
A user wants to view all official releases of a software project to choose the appropriate version for installation or to track the project's release history.
---
## GitHub Read File
### What it is
A block that reads the content of a specified file from a GitHub repository.
### What it does
This block retrieves the content of a specified file from a given GitHub repository, providing both the raw and decoded text content along with the file size.
### How it works
The block authenticates with the GitHub API, sends a request to fetch the specified file's content, and then processes the response to provide the file's raw content, decoded text content, and size.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication credentials required to access the repository |
| Repository URL | The URL of the GitHub repository containing the file |
| File Path | The path to the file within the repository |
| Branch | The branch name to read from (defaults to "master") |
### Outputs
| Output | Description |
|--------|-------------|
| Text Content | The content of the file decoded as UTF-8 text |
| Raw Content | The raw base64-encoded content of the file |
| Size | The size of the file in bytes |
| Error | Any error message if the file reading process fails |
### Possible use case
A developer wants to quickly view the contents of a configuration file or source code file in a GitHub repository without having to clone the entire repository.
---
## GitHub Read Folder
### What it is
A block that reads the content of a specified folder from a GitHub repository.
### What it does
This block retrieves the list of files and directories within a specified folder from a given GitHub repository.
### How it works
The block connects to the GitHub API, sends a request to fetch the contents of the specified folder, and then processes the response to provide information about files and directories within that folder.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication credentials required to access the repository |
| Repository URL | The URL of the GitHub repository containing the folder |
| Folder Path | The path to the folder within the repository |
| Branch | The branch name to read from (defaults to "master") |
### Outputs
| Output | Description |
|--------|-------------|
| File | Information about each file in the folder, including its name, path, and size |
| Directory | Information about each directory in the folder, including its name and path |
| Error | Any error message if the folder reading process fails |
### Possible use case
A project manager wants to explore the structure of a repository or specific folder to understand the organization of files and directories without cloning the entire repository.
---
## GitHub Make Branch
### What it is
A block that creates a new branch in a GitHub repository.
### What it does
This block creates a new branch in a specified GitHub repository, based on an existing source branch.
### How it works
The block authenticates with the GitHub API, retrieves the latest commit SHA of the source branch, and then creates a new branch pointing to that commit.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication credentials required to access the repository |
| Repository URL | The URL of the GitHub repository where the new branch will be created |
| New Branch | The name of the new branch to create |
| Source Branch | The name of the existing branch to use as the starting point for the new branch |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating the success of the branch creation operation |
| Error | Any error message if the branch creation process fails |
### Possible use case
A developer wants to start working on a new feature and needs to create a new branch based on the current state of the main development branch.
---
## GitHub Delete Branch
### What it is
A block that deletes a specified branch from a GitHub repository.
### What it does
This block removes a specified branch from a given GitHub repository.
### How it works
The block authenticates with the GitHub API and sends a delete request for the specified branch.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | GitHub authentication credentials required to access the repository |
| Repository URL | The URL of the GitHub repository containing the branch to be deleted |
| Branch | The name of the branch to delete |
### Outputs
| Output | Description |
|--------|-------------|
| Status | A message indicating the success of the branch deletion operation |
| Error | Any error message if the branch deletion process fails |
### Possible use case
After merging a feature branch into the main development branch, a developer wants to clean up the repository by removing the now-obsolete feature branch.

View File

@ -0,0 +1,144 @@
# Gmail
## Gmail Read
### What it is
A block that retrieves and reads emails from a Gmail account.
### What it does
This block searches for and retrieves emails from a specified Gmail account based on given search criteria. It can fetch multiple emails and provide detailed information about each email, including subject, sender, recipient, date, body content, and attachments.
### How it works
The block connects to the user's Gmail account using their credentials, performs a search based on the provided query, and retrieves the specified number of email messages. It then processes each email to extract relevant information and returns the results.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | The user's Gmail account credentials for authentication |
| Query | A search query to filter emails (e.g., "is:unread" for unread emails) |
| Max Results | The maximum number of emails to retrieve |
### Outputs
| Output | Description |
|--------|-------------|
| Email | Detailed information about a single email |
| Emails | A list of email data for multiple emails |
| Error | An error message if something goes wrong during the process |
### Possible use case
Automatically checking for new customer inquiries in a support email inbox and organizing them for quick response.
---
## Gmail Send
### What it is
A block that sends emails using a Gmail account.
### What it does
This block allows users to compose and send emails through their Gmail account. It handles the creation of the email message and sends it to the specified recipient.
### How it works
The block authenticates with the user's Gmail account, creates an email message with the provided details (recipient, subject, and body), and then sends the email using Gmail's API.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | The user's Gmail account credentials for authentication |
| To | The recipient's email address |
| Subject | The subject line of the email |
| Body | The main content of the email |
### Outputs
| Output | Description |
|--------|-------------|
| Result | Confirmation of the sent email, including a message ID |
| Error | An error message if something goes wrong during the process |
### Possible use case
Automatically sending confirmation emails to customers after they make a purchase on an e-commerce website.
---
## Gmail List Labels
### What it is
A block that retrieves all labels (categories) from a Gmail account.
### What it does
This block fetches and lists all the labels or categories that are set up in the user's Gmail account. These labels are used to organize and categorize emails.
### How it works
The block connects to the user's Gmail account and requests a list of all labels. It then processes this information and returns a simplified list of label names and their corresponding IDs.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | The user's Gmail account credentials for authentication |
### Outputs
| Output | Description |
|--------|-------------|
| Result | A list of labels, including their names and IDs |
| Error | An error message if something goes wrong during the process |
### Possible use case
Creating a dashboard that shows an overview of how many emails are in each category or label in a business email account.
---
## Gmail Add Label
### What it is
A block that adds a label to a specific email in a Gmail account.
### What it does
This block allows users to add a label (category) to a particular email message in their Gmail account. If the label doesn't exist, it creates a new one.
### How it works
The block first checks if the specified label exists in the user's Gmail account. If it doesn't, it creates the label. Then, it adds the label to the specified email message using the message ID.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | The user's Gmail account credentials for authentication |
| Message ID | The unique identifier of the email message to be labeled |
| Label Name | The name of the label to add to the email |
### Outputs
| Output | Description |
|--------|-------------|
| Result | Confirmation of the label addition, including the label ID |
| Error | An error message if something goes wrong during the process |
### Possible use case
Automatically categorizing incoming customer emails based on their content, adding labels like "Urgent," "Feedback," or "Invoice" for easier processing.
---
## Gmail Remove Label
### What it is
A block that removes a label from a specific email in a Gmail account.
### What it does
This block allows users to remove a label (category) from a particular email message in their Gmail account.
### How it works
The block first finds the ID of the specified label in the user's Gmail account. If the label exists, it removes it from the specified email message using the message ID.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | The user's Gmail account credentials for authentication |
| Message ID | The unique identifier of the email message to remove the label from |
| Label Name | The name of the label to remove from the email |
### Outputs
| Output | Description |
|--------|-------------|
| Result | Confirmation of the label removal, including the label ID |
| Error | An error message if something goes wrong during the process |
### Possible use case
Automatically removing the "Unread" label from emails after they have been processed by a customer service representative.

View File

@ -0,0 +1,56 @@
## Google Sheets Read
### What it is
A block that reads data from a Google Sheets spreadsheet.
### What it does
This block retrieves information from a specified range within a Google Sheets spreadsheet.
### How it works
The block connects to Google Sheets using provided credentials, then fetches data from the specified spreadsheet and range.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | Authentication information required to access Google Sheets |
| Spreadsheet ID | The unique identifier of the spreadsheet you want to read from |
| Range | The specific area of the spreadsheet you want to read (e.g., "Sheet1!A1:B2") |
### Outputs
| Output | Description |
|--------|-------------|
| Result | The data retrieved from the spreadsheet, organized in rows and columns |
| Error | Any error message that occurred during the process |
### Possible use case
A marketing team could use this block to automatically retrieve the latest campaign performance data from a shared Google Sheets document for analysis and reporting.
---
## Google Sheets Write
### What it is
A block that writes data to a Google Sheets spreadsheet.
### What it does
This block allows you to input data into a specified range within a Google Sheets spreadsheet.
### How it works
The block authenticates with Google Sheets using provided credentials, then updates the specified spreadsheet range with the given data.
### Inputs
| Input | Description |
|-------|-------------|
| Credentials | Authentication information required to access Google Sheets |
| Spreadsheet ID | The unique identifier of the spreadsheet you want to write to |
| Range | The specific area of the spreadsheet where you want to write data (e.g., "Sheet1!A1:B2") |
| Values | The data you want to write to the spreadsheet, organized in rows and columns |
### Outputs
| Output | Description |
|--------|-------------|
| Result | Information about the write operation, such as the number of cells, columns, and rows updated |
| Error | Any error message that occurred during the process |
### Possible use case
An automated inventory system could use this block to update stock levels in a Google Sheets spreadsheet whenever products are sold or restocked, ensuring real-time inventory tracking.

View File

@ -0,0 +1,33 @@
# Google Maps Search
## What it is
A block that searches for local businesses using the Google Maps API.
## What it does
This block allows users to search for places of interest, such as restaurants, shops, or attractions, within a specified area using Google Maps data.
## How it works
The block takes a search query, location details, and API credentials as input. It then communicates with the Google Maps API to fetch information about relevant places. The results are processed and returned as structured data containing details about each place found.
## Inputs
| Input | Description |
|-------|-------------|
| API Key | A secret key required to authenticate and use the Google Maps API |
| Query | The search term for finding local businesses (e.g., "restaurants in New York") |
| Radius | The search area radius in meters, with a maximum of 50,000 meters (about 31 miles) |
| Max Results | The maximum number of places to return, up to 60 results |
## Outputs
| Output | Description |
|--------|-------------|
| Place | Information about a found place, including: |
| - Name | The name of the business or location |
| - Address | The full address of the place |
| - Phone | The contact phone number |
| - Rating | The average rating (out of 5) given by users |
| - Reviews | The total number of user reviews |
| - Website | The official website of the place, if available |
| Error | A message describing any issues that occurred during the search process |
## Possible use case
A travel planning application could use this block to help users discover popular restaurants, attractions, or accommodations in their destination city. By inputting a search query like "family-friendly restaurants in Paris" and specifying a search radius around their hotel, travelers could quickly get a list of suitable dining options with ratings, contact information, and websites for making reservations.

View File

@ -0,0 +1,28 @@
# Send Web Request
## What it is
The Send Web Request block is a tool for making HTTP requests to specified web addresses.
## What it does
This block allows you to send various types of web requests (such as GET, POST, PUT, etc.) to a given URL, optionally including headers and a request body. It then processes the response and categorizes it based on the status code received.
## How it works
When activated, the block takes the provided URL, request method, headers, and body. It then sends the request to the specified web address. Upon receiving a response, it analyzes the status code and returns the response data in one of three categories: successful response, client error, or server error.
## Inputs
| Input | Description |
|-------|-------------|
| URL | The web address to which the request will be sent |
| Method | The type of HTTP request (e.g., GET, POST, PUT). Default is POST |
| Headers | Additional information sent with the request, such as authentication tokens or content type. This is optional |
| Body | The main content of the request, typically used for sending data in POST or PUT requests. This is optional |
## Outputs
| Output | Description |
|--------|-------------|
| Response | The data received from a successful request (status codes 200-299) |
| Client Error | Information about errors caused by the client, such as invalid requests (status codes 400-499) |
| Server Error | Information about errors on the server side (status codes 500-599) |
## Possible use case
This block could be used in an application that needs to interact with external APIs. For example, it could send user data to a registration service, retrieve product information from an e-commerce platform, or post updates to a social media service. The block's ability to handle different types of responses makes it versatile for various web-based interactions.

View File

@ -0,0 +1,33 @@
# Ideogram Model
## What it is
The Ideogram Model block is an AI-powered image generation tool that creates custom images based on text prompts and various settings.
## What it does
This block generates images using the Ideogram AI model, allowing users to create unique visuals by describing what they want in text. It offers various customization options, including different model versions, aspect ratios, and style preferences.
## How it works
The block takes a text prompt and several optional parameters as input. It then sends this information to the Ideogram API, which processes the request and generates an image. The resulting image URL is returned as output. If requested, the block can also upscale the generated image for higher quality.
## Inputs
| Input | Description |
|-------|-------------|
| API Key | Your personal Ideogram API key for authentication |
| Prompt | The text description of the image you want to generate |
| Image Generation Model | Choose from different versions of the Ideogram model |
| Aspect Ratio | Select the desired dimensions for your image |
| Upscale Image | Option to enhance the image quality after generation |
| Magic Prompt Option | Enables automatic enhancement of your text prompt |
| Seed | An optional number for reproducible image generation |
| Style Type | Choose a specific artistic style for your image |
| Negative Prompt | Describe elements you want to exclude from the image |
| Color Palette Preset | Select a predefined color scheme for your image |
## Outputs
| Output | Description |
|--------|-------------|
| Result | The URL of the generated image |
| Error | An error message if something goes wrong during the process |
## Possible use case
A marketing team needs unique visuals for a new product campaign. They can use the Ideogram Model block to quickly generate custom images based on their product descriptions and brand guidelines, exploring different styles and aspect ratios without the need for a professional designer.

View File

@ -0,0 +1,24 @@
## Step Through Items
### What it is
A block that iterates through a list or dictionary, processing each item one by one.
### What it does
This block takes a list or dictionary as input and goes through each item, outputting the current item and its corresponding key or index.
### How it works
When given a list or dictionary, the block processes each item individually. For lists, it keeps track of the item's position (index). For dictionaries, it focuses on the values, using the value as both the item and the key in the output.
### Inputs
| Input | Description |
|-------|-------------|
| Items | A list or dictionary that you want to process item by item. For example, you could input a list of numbers [1, 2, 3, 4, 5] or a dictionary of key-value pairs {'key1': 'value1', 'key2': 'value2'} |
### Outputs
| Output | Description |
|--------|-------------|
| Item | The current item being processed from the input list or dictionary |
| Key | For lists, this is the index (position) of the current item. For dictionaries, this is the same as the item (the dictionary's value) |
### Possible use case
Imagine you have a list of customer names and you want to perform a specific action for each customer, like sending a personalized email. This block could help you go through the list one by one, allowing you to process each customer individually.

View File

@ -0,0 +1,159 @@
# Large Language Model (LLM) Blocks
## AI Structured Response Generator
### What it is
A block that generates structured responses using a Large Language Model (LLM).
### What it does
It takes a prompt and other parameters, sends them to an LLM, and returns a structured response in a specified format.
### How it works
The block sends the input prompt to a chosen LLM, along with any system prompts and expected response format. It then processes the LLM's response, ensuring it matches the expected format, and returns the structured data.
### Inputs
| Input | Description |
|-------|-------------|
| Prompt | The main text prompt to send to the LLM |
| Expected Format | A dictionary specifying the structure of the desired response |
| Model | The specific LLM to use (e.g., GPT-4 Turbo, Claude 3) |
| API Key | The secret key for accessing the LLM service |
| System Prompt | An optional prompt to guide the LLM's behavior |
| Retry | Number of attempts to generate a valid response |
| Prompt Values | Dictionary of values to fill in the prompt template |
### Outputs
| Output | Description |
|--------|-------------|
| Response | The structured response from the LLM |
| Error | Any error message if the process fails |
### Possible use case
Extracting specific information from unstructured text, such as generating a product description with predefined fields (name, features, price) from a lengthy product review.
---
## AI Text Generator
### What it is
A block that generates text responses using a Large Language Model (LLM).
### What it does
It takes a prompt and other parameters, sends them to an LLM, and returns a text response.
### How it works
The block sends the input prompt to a chosen LLM, processes the response, and returns the generated text.
### Inputs
| Input | Description |
|-------|-------------|
| Prompt | The main text prompt to send to the LLM |
| Model | The specific LLM to use (e.g., GPT-4 Turbo, Claude 3) |
| API Key | The secret key for accessing the LLM service |
| System Prompt | An optional prompt to guide the LLM's behavior |
| Retry | Number of attempts to generate a valid response |
| Prompt Values | Dictionary of values to fill in the prompt template |
### Outputs
| Output | Description |
|--------|-------------|
| Response | The text response from the LLM |
| Error | Any error message if the process fails |
### Possible use case
Generating creative writing, such as short stories or poetry, based on a given theme or starting sentence.
---
## AI Text Summarizer
### What it is
A block that summarizes long texts using a Large Language Model (LLM).
### What it does
It takes a long text, breaks it into manageable chunks, summarizes each chunk, and then combines these summaries into a final summary.
### How it works
The block splits the input text into smaller chunks, sends each chunk to an LLM for summarization, and then combines these summaries. If the combined summary is still too long, it repeats the process until a concise summary is achieved.
### Inputs
| Input | Description |
|-------|-------------|
| Text | The long text to be summarized |
| Model | The specific LLM to use for summarization |
| Focus | The main topic or aspect to focus on in the summary |
| Style | The desired style of the summary (e.g., concise, detailed, bullet points) |
| API Key | The secret key for accessing the LLM service |
| Max Tokens | The maximum number of tokens for each chunk |
| Chunk Overlap | The number of overlapping tokens between chunks |
### Outputs
| Output | Description |
|--------|-------------|
| Summary | The final summarized text |
| Error | Any error message if the process fails |
### Possible use case
Summarizing lengthy research papers or articles to quickly grasp the main points and key findings.
---
## AI Conversation
### What it is
A block that facilitates multi-turn conversations using a Large Language Model (LLM).
### What it does
It takes a list of conversation messages, sends them to an LLM, and returns the model's response to continue the conversation.
### How it works
The block sends the entire conversation history to the chosen LLM, including system messages, user inputs, and previous responses. It then returns the LLM's response as the next part of the conversation.
### Inputs
| Input | Description |
|-------|-------------|
| Messages | A list of previous messages in the conversation |
| Model | The specific LLM to use for the conversation |
| API Key | The secret key for accessing the LLM service |
| Max Tokens | The maximum number of tokens to generate in the response |
### Outputs
| Output | Description |
|--------|-------------|
| Response | The LLM's response to continue the conversation |
| Error | Any error message if the process fails |
### Possible use case
Creating an interactive chatbot that can maintain context over multiple exchanges, such as a customer service assistant or a language learning companion.
---
## AI List Generator
### What it is
A block that generates lists based on given prompts or source data using a Large Language Model (LLM).
### What it does
It takes a focus or source data, sends it to an LLM, and returns a generated list based on the input.
### How it works
The block formulates a prompt based on the given focus or source data, sends it to the chosen LLM, and then processes the response to ensure it's a valid Python list. It can retry multiple times if the initial attempts fail.
### Inputs
| Input | Description |
|-------|-------------|
| Focus | The main topic or theme for the list to be generated |
| Source Data | Optional data to use as a basis for list generation |
| Model | The specific LLM to use for list generation |
| API Key | The secret key for accessing the LLM service |
| Max Retries | The maximum number of attempts to generate a valid list |
### Outputs
| Output | Description |
|--------|-------------|
| Generated List | The full list generated by the LLM |
| List Item | Each individual item in the generated list |
| Error | Any error message if the process fails |
### Possible use case
Automatically generating a list of key points or action items from a long meeting transcript or summarizing the main topics discussed in a series of documents.

View File

@ -0,0 +1,54 @@
# Mathematical Operations Blocks
## Calculator
### What it is
A block that performs mathematical operations on two numbers.
### What it does
This block takes two numbers and performs a selected mathematical operation (addition, subtraction, multiplication, division, or exponentiation) on them. It can also optionally round the result to a whole number.
### How it works
The Calculator block takes in two numbers and an operation choice. It then applies the chosen operation to the numbers and returns the result. If rounding is selected, it rounds the result to the nearest whole number.
### Inputs
| Input | Description |
|-------|-------------|
| Operation | Choose the math operation you want to perform (Add, Subtract, Multiply, Divide, or Power) |
| A | Enter the first number for the calculation |
| B | Enter the second number for the calculation |
| Round result | Choose whether to round the result to a whole number (True or False) |
### Outputs
| Output | Description |
|--------|-------------|
| Result | The result of your calculation |
### Possible use case
A user wants to quickly perform a calculation, such as adding two numbers or calculating a percentage. They can input the numbers and operation into this block and receive the result instantly.
---
## Count Items
### What it is
A block that counts the number of items in a collection.
### What it does
This block takes a collection (such as a list, dictionary, or string) and counts the number of items within it.
### How it works
The Count Items block receives a collection as input. It then determines the type of collection and uses the appropriate method to count the items. For most collections, it uses the length function. For other iterable objects, it counts the items one by one.
### Inputs
| Input | Description |
|-------|-------------|
| Collection | Enter the collection you want to count (e.g., a list, dictionary, or string) |
### Outputs
| Output | Description |
|--------|-------------|
| Count | The number of items in the collection |
### Possible use case
A user has a list of customer names and wants to quickly determine how many customers are in the list. They can input the list into this block and receive the total count immediately.

View File

@ -0,0 +1,35 @@
# Publish to Medium
## What it is
The Publish to Medium block is a tool that enables direct publication of content to the Medium platform from within an automated workflow.
## What it does
This block takes a fully formatted blog post, along with associated metadata, and publishes it to Medium using the platform's API. It handles all aspects of the publication process, including setting the title, content, tags, and other post-specific details.
## How it works
The block uses the provided Medium API key and author ID to authenticate with the Medium platform. It then constructs an API request containing all the post details and sends it to Medium's servers. After the post is published, the block retrieves and returns relevant information about the newly created post, such as its unique ID and public URL.
## Inputs
| Input | Description |
|-------|-------------|
| Author ID | The unique identifier for the Medium author account |
| Title | The headline of the Medium post |
| Content | The main body of the post (in HTML or Markdown format) |
| Content Format | Specifies whether the content is in 'html' or 'markdown' format |
| Tags | Up to 5 topic tags to categorize the post (comma-separated) |
| Canonical URL | The original URL if the content was first published elsewhere |
| Publish Status | Sets the post visibility: 'public', 'draft', or 'unlisted' |
| License | The copyright license for the post (default: 'all-rights-reserved') |
| Notify Followers | Boolean flag to notify the author's followers about the new post |
| API Key | The Medium API key for authentication |
## Outputs
| Output | Description |
|--------|-------------|
| Post ID | The unique identifier assigned to the published post by Medium |
| Post URL | The public web address where the post can be viewed |
| Published At | The timestamp indicating when the post was published |
| Error | Any error message returned if the publication process fails |
## Possible use case
A digital marketing team could integrate this block into their content management system to streamline their cross-platform publishing strategy. After creating and approving a blog post in their main system, they could use this block to automatically publish the content to Medium, ensuring consistent and timely distribution across multiple platforms without manual intervention.

View File

@ -0,0 +1,56 @@
# Reddit Interaction Blocks
## Get Reddit Posts
### What it is
A block that retrieves posts from a specified subreddit on Reddit.
### What it does
This block fetches a set number of recent posts from a given subreddit, allowing users to collect content from Reddit for various purposes.
### 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.
### Inputs
| Input | Description |
|-------|-------------|
| Subreddit | The name of the subreddit to fetch posts from |
| Reddit Credentials | Login information for accessing Reddit |
| Last Minutes | An optional time limit to stop fetching posts (in minutes) |
| Last Post | An optional post ID to stop fetching when reached |
| Post Limit | The maximum number of posts to fetch (default is 10) |
### Outputs
| Output | Description |
|--------|-------------|
| Post | A Reddit post containing the post ID, subreddit name, title, and body text |
### Possible 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.
---
## Post Reddit Comment
### What it is
A block that posts a comment on a specified Reddit post.
### What it does
This block allows users to submit a comment to a particular Reddit post using provided credentials and comment data.
### 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.
### Inputs
| Input | Description |
|-------|-------------|
| Reddit Credentials | Login information for accessing Reddit |
| Comment Data | Contains the post ID to comment on and the comment text |
### Outputs
| Output | Description |
|--------|-------------|
| Comment ID | The unique identifier of the newly posted comment |
### Possible use case
An automated moderation system could use this block to post pre-defined responses or warnings on Reddit posts that violate community guidelines.

View File

@ -0,0 +1,52 @@
## Replicate Flux Advanced Model
### What it is
The Replicate Flux Advanced Model block is an AI-powered image generation tool that creates images based on text prompts and various customizable settings.
### What it does
This block generates high-quality images using advanced AI models from Replicate, specifically the Flux series of models. It allows users to input a text description and adjust various parameters to fine-tune the image generation process.
### How it works
The block takes a text prompt and several customization options as input. It then sends this information to the selected Flux model on the Replicate platform. The AI model processes the input and generates an image based on the provided specifications. Finally, the block returns a URL to the generated image.
### Inputs
| Input | Description |
|-------|-------------|
| API Key | Your Replicate API key for authentication |
| Prompt | A text description of the image you want to generate (e.g., "A futuristic cityscape at sunset") |
| Image Generation Model | Choose from Flux Schnell, Flux Pro, or Flux Pro 1.1 |
| Seed | An optional number for reproducible image generation |
| Steps | The number of diffusion steps in the image generation process |
| Guidance | Controls how closely the image follows the text prompt |
| Interval | Affects the variety of possible outputs |
| Aspect Ratio | The width-to-height ratio of the generated image |
| Output Format | Choose between WEBP, JPG, or PNG file formats |
| Output Quality | Image quality setting (0-100) for JPG and WEBP formats |
| Safety Tolerance | Content safety setting, from 1 (strictest) to 5 (most permissive) |
### Outputs
| Output | Description |
|--------|-------------|
| Result | A URL link to the generated image |
| Error | An error message if the image generation process fails |
### Possible use case
A graphic designer could use this block to quickly generate concept art for a sci-fi game. They might input a prompt like "A futuristic spaceport on a distant planet with multiple moons in the sky" and adjust the settings to get the desired style and quality. The generated image could then serve as inspiration or a starting point for further design work.
- API Key: Your Replicate API key for authentication
- Prompt: A text description of the image you want to generate (e.g., "A futuristic cityscape at sunset")
- Image Generation Model: Choose from Flux Schnell, Flux Pro, or Flux Pro 1.1
- Seed: An optional number for reproducible image generation
- Steps: The number of diffusion steps in the image generation process
- Guidance: Controls how closely the image follows the text prompt
- Interval: Affects the variety of possible outputs
- Aspect Ratio: The width-to-height ratio of the generated image
- Output Format: Choose between WEBP, JPG, or PNG file formats
- Output Quality: Image quality setting (0-100) for JPG and WEBP formats
- Safety Tolerance: Content safety setting, from 1 (strictest) to 5 (most permissive)
### Outputs
- Result: A URL link to the generated image
- Error: An error message if the image generation process fails
### Possible use case
A graphic designer could use this block to quickly generate concept art for a sci-fi game. They might input a prompt like "A futuristic spaceport on a distant planet with multiple moons in the sky" and adjust the settings to get the desired style and quality. The generated image could then serve as inspiration or a starting point for further design work.

View File

@ -0,0 +1,32 @@
# Read RSS Feed
## What it is
A block that retrieves and processes entries from an RSS feed.
## What it does
This block reads entries from a specified RSS feed URL, filters them based on a given time period, and outputs the entries one by one.
## How it works
The block connects to the provided RSS feed URL, fetches the feed content, and processes each entry. It checks if the entry's publication date falls within the specified time period and, if so, formats and outputs the entry information.
## Inputs
| Input | Description |
|-------|-------------|
| RSS URL | The web address of the RSS feed you want to read from |
| Time Period | The number of minutes to look back for new entries, relative to when the block starts running |
| Polling Rate | How often (in seconds) the block should check for new entries |
| Run Continuously | Whether the block should keep checking for new entries indefinitely or just run once |
## Outputs
| Output | Description |
|--------|-------------|
| Entry | An RSS feed item containing the following information: |
| | - Title: The headline or name of the item |
| | - Link: The web address where the full item can be found |
| | - Description: A brief summary or excerpt of the item |
| | - Publication Date: When the item was published |
| | - Author: Who wrote or created the item |
| | - Categories: Topics or tags associated with the item |
## Possible use case
A news aggregator application could use this block to continuously monitor multiple RSS feeds from different news sources. The application could then display the latest news items to users, categorized by topic and sorted by publication date.

View File

@ -0,0 +1,31 @@
# Data Sampling
## What it is
The Data Sampling block is a tool for selecting a subset of data from a larger dataset using various sampling methods.
## What it does
This block takes a dataset as input and returns a smaller sample of that data based on specified criteria. It supports multiple sampling methods, allowing users to choose the most appropriate technique for their needs.
## How it works
The block processes the input data and applies the chosen sampling method to select a subset of items. It can work with different data structures and supports data accumulation for scenarios where data is received in batches.
## Inputs
| Input | Description |
|-------|-------------|
| Data | The dataset to sample from. This can be a single dictionary, a list of dictionaries, or a list of lists. |
| Sample Size | The number of items to select from the dataset. |
| Sampling Method | The technique used to select the sample. Options include random, systematic, top, bottom, stratified, weighted, reservoir, and cluster sampling. |
| Accumulate | A flag indicating whether to accumulate data before sampling. This is useful for scenarios where data is received in batches. |
| Random Seed | An optional value to ensure reproducible random sampling. |
| Stratify Key | The key to use for stratified sampling (required when using the stratified sampling method). |
| Weight Key | The key to use for weighted sampling (required when using the weighted sampling method). |
| Cluster Key | The key to use for cluster sampling (required when using the cluster sampling method). |
## Outputs
| Output | Description |
|--------|-------------|
| Sampled Data | The selected subset of the input data. |
| Sample Indices | The indices of the sampled items in the original dataset. |
## Possible use case
A data scientist working with a large customer dataset wants to create a representative sample for analysis. They could use this Data Sampling block to select a smaller subset of customers using stratified sampling, ensuring that the sample maintains the same proportions of different customer segments as the full dataset.

View File

@ -0,0 +1,111 @@
## Get Wikipedia Summary
### What it is
A block that retrieves a summary of a given topic from Wikipedia.
### What it does
This block takes a topic as input and fetches a concise summary about that topic from Wikipedia's API.
### How it works
The block sends a request to Wikipedia's API with the provided topic. It then extracts the summary from the response and returns it. If there's an error during this process, it will return an error message instead.
### Inputs
| Input | Description |
|-------|-------------|
| Topic | The subject you want to get a summary about from Wikipedia |
### Outputs
| Output | Description |
|--------|-------------|
| Summary | A brief overview of the requested topic from Wikipedia |
| Error | An error message if the summary retrieval fails |
### Possible use case
A student researching for a project could use this block to quickly get overviews of various topics, helping them decide which areas to focus on for more in-depth study.
---
## Search The Web
### What it is
A block that performs web searches and returns the results.
### What it does
This block takes a search query and returns a list of relevant web pages, including their titles, URLs, and brief descriptions.
### How it works
The block sends the search query to a search engine API, processes the results, and returns them in a structured format.
### Inputs
| Input | Description |
|-------|-------------|
| Query | The search term or phrase to look up on the web |
| Number of Results | How many search results to return (optional, default may vary) |
### Outputs
| Output | Description |
|--------|-------------|
| Results | A list of search results, each containing a title, URL, and description |
| Error | An error message if the search fails |
### Possible use case
A content creator could use this block to research trending topics in their field, gathering ideas for new articles or videos.
---
## Extract Website Content
### What it is
A block that retrieves and extracts content from specified websites.
### What it does
This block takes a URL as input, visits the webpage, and extracts the main content, removing navigation elements, ads, and other non-essential parts.
### How it works
The block sends a request to the given URL, downloads the HTML content, and uses content extraction algorithms to identify and extract the main text content of the page.
### Inputs
| Input | Description |
|-------|-------------|
| URL | The web address of the page to extract content from |
### Outputs
| Output | Description |
|--------|-------------|
| Content | The main text content extracted from the webpage |
| Title | The title of the webpage |
| Error | An error message if the content extraction fails |
### Possible use case
A data analyst could use this block to automatically extract article content from news websites for sentiment analysis or topic modeling.
---
## Get Weather Information
### What it is
A block that fetches current weather data for a specified location.
### What it does
This block takes a location name as input and returns current weather information such as temperature, humidity, and weather conditions.
### How it works
The block sends a request to a weather API (like OpenWeatherMap) with the provided location. It then processes the response to extract relevant weather data.
### Inputs
| Input | Description |
|-------|-------------|
| Location | The city or area you want to get weather information for |
| API Key | Your personal OpenWeatherMap API key (this is kept secret) |
| Use Celsius | An option to choose between Celsius (true) or Fahrenheit (false) for temperature |
### Outputs
| Output | Description |
|--------|-------------|
| Temperature | The current temperature in the specified location |
| Humidity | The current humidity percentage in the specified location |
| Condition | A description of the current weather condition (e.g., "overcast clouds") |
| Error | A message explaining what went wrong if the weather data retrieval fails |
### Possible use case
A travel planning application could use this block to provide users with current weather information for their destination cities.

View File

@ -0,0 +1,35 @@
## Create Talking Avatar Video
### What it is
This block is an AI-powered tool that creates video clips featuring a talking avatar using the D-ID service.
### What it does
It generates a video of a digital avatar speaking a given script, with customizable voice, presenter, and visual settings.
### How it works
The block sends a request to the D-ID API with your specified parameters. It then regularly checks the status of the video creation process until it's complete or an error occurs.
### Inputs
| Input | Description |
|-------|-------------|
| API Key | Your D-ID API key for authentication |
| Script Input | The text you want the avatar to speak |
| Provider | The voice provider to use (options: microsoft, elevenlabs, amazon) |
| Voice ID | The specific voice to use for the avatar |
| Presenter ID | The visual appearance of the avatar |
| Driver ID | The animation style for the avatar |
| Result Format | The file format of the final video (options: mp4, gif, wav) |
| Crop Type | How the video should be cropped (options: wide, square, vertical) |
| Subtitles | Whether to include subtitles in the video |
| SSML | Whether the input script uses Speech Synthesis Markup Language |
| Max Polling Attempts | Maximum number of times to check for video completion |
| Polling Interval | Time to wait between each status check (in seconds) |
### Outputs
| Output | Description |
|--------|-------------|
| Video URL | The web address where you can access the completed video |
| Error | A message explaining what went wrong if the video creation failed |
### Possible use case
A marketing team could use this block to create engaging video content for social media. They could input a script promoting a new product, select a friendly-looking avatar, and generate a video that explains the product's features in an appealing way.

View File

@ -0,0 +1,113 @@
## Match Text Pattern
### What it is
A block that matches text against a specified pattern.
### What it does
This block takes input text and a pattern, then checks if the text matches the pattern. It forwards the data to either a positive or negative output based on whether a match is found.
### How it works
The block uses regular expressions to search for the specified pattern within the input text. It considers options like case sensitivity and whether the dot should match all characters.
### Inputs
| Input | Description |
|-------|-------------|
| Text | The text to be matched against the pattern |
| Match | The pattern (regular expression) to search for in the text |
| Data | Additional information to be forwarded to the output |
| Case sensitive | Option to make the match case-sensitive or not |
| Dot all | Option to make the dot character match all characters, including newlines |
### Outputs
| Output | Description |
|--------|-------------|
| Positive | The output data if a match is found |
| Negative | The output data if no match is found |
### Possible use case
Filtering customer feedback messages based on specific keywords or phrases to categorize them as positive or negative reviews.
---
## Extract Text Information
### What it is
A block that extracts specific information from text using a pattern.
### What it does
This block searches for a pattern within the input text and extracts a portion of the text based on that pattern.
### How it works
The block uses regular expressions to find the specified pattern in the text. It then extracts a particular group from the match, which can be the entire match or a specific captured group.
### Inputs
| Input | Description |
|-------|-------------|
| Text | The text from which to extract information |
| Pattern | The pattern (regular expression) used to find the desired information |
| Group | The group number to extract from the match (0 for the entire match) |
| Case sensitive | Option to make the match case-sensitive or not |
| Dot all | Option to make the dot character match all characters, including newlines |
### Outputs
| Output | Description |
|--------|-------------|
| Positive | The extracted text if a match is found |
| Negative | The original text if no match is found |
### Possible use case
Extracting phone numbers or email addresses from a large body of text, such as a customer database.
---
## Fill Text Template
### What it is
A block that fills a text template with provided values.
### What it does
This block takes a template string and a dictionary of values, then replaces placeholders in the template with the corresponding values.
### How it works
The block uses a template engine to replace placeholders in the format string with the provided values. It supports both simple placeholder replacement and more complex operations like loops.
### Inputs
| Input | Description |
|-------|-------------|
| Values | A dictionary containing the values to be inserted into the template |
| Format | The template string with placeholders for the values |
### Outputs
| Output | Description |
|--------|-------------|
| Output | The formatted text with placeholders replaced by actual values |
### Possible use case
Generating personalized email messages by filling a template with customer-specific information like name, order details, or account status.
---
## Combine Texts
### What it is
A block that combines multiple text inputs into a single output.
### What it does
This block takes a list of text inputs and joins them together, optionally using a specified delimiter.
### How it works
The block concatenates all the input texts in the order they are provided, inserting the specified delimiter (if any) between each text.
### Inputs
| Input | Description |
|-------|-------------|
| Input | A list of text strings to be combined |
| Delimiter | An optional string to be inserted between each text input (default is an empty string) |
### Outputs
| Output | Description |
|--------|-------------|
| Output | The combined text |
### Possible use case
Merging multiple parts of an address (street, city, state, zip code) into a single, formatted address string.

View File

@ -0,0 +1,26 @@
## Unreal Text to Speech
### What it is
A block that converts text into speech using the Unreal Speech API.
### What it does
This block takes a text input and generates an audio file of that text being spoken. It allows users to specify the voice they want to use for the speech conversion.
### How it works
The block sends the provided text and voice selection to the Unreal Speech API. The API processes this information and returns a URL where the generated audio file can be accessed.
### Inputs
| Input | Description |
|-------|-------------|
| Text | The text you want to convert into speech. This could be a sentence, paragraph, or any written content you'd like to hear spoken aloud. |
| Voice ID | The identifier for the voice you want to use for the speech. By default, it uses a voice called "Scarlett," but you can change this to other available voices. |
| API Key | Your personal key to access the Unreal Speech API. This is kept secret and secure. |
### Outputs
| Output | Description |
|--------|-------------|
| MP3 URL | The web address where you can access or download the generated audio file in MP3 format. |
| Error | If something goes wrong during the process, this will contain a message explaining what happened. |
### Possible use case
This block could be used in an application that helps visually impaired users consume written content. For example, a news app could use this block to convert articles into audio format, allowing users to listen to the news instead of reading it.

View File

@ -0,0 +1,106 @@
## Get Current Time
### What it is
A block that provides the current time.
### What it does
This block outputs the current time in hours, minutes, and seconds.
### How it works
When triggered, the block retrieves the current system time and formats it as a string in the HH:MM:SS format.
### Inputs
| Input | Description |
|-------|-------------|
| trigger | A string input that activates the block. The content of this input doesn't affect the output. |
### Outputs
| Output | Description |
|--------|-------------|
| time | A string representing the current time in the format HH:MM:SS (e.g., "14:30:45"). |
### Possible use case
This block could be used in a chatbot that needs to provide the current time to users when asked.
---
## Get Current Date
### What it is
A block that provides the current date, with an optional offset.
### What it does
This block outputs the current date or a date offset from the current date by a specified number of days.
### How it works
When triggered, the block retrieves the current system date. If an offset is provided, it calculates a new date by subtracting the offset number of days from the current date. The resulting date is then formatted as a string in the YYYY-MM-DD format.
### Inputs
| Input | Description |
|-------|-------------|
| trigger | A string input that activates the block. The content of this input doesn't affect the output. |
| offset | An integer or string representing the number of days to subtract from the current date. If not provided or invalid, it defaults to 0. |
### Outputs
| Output | Description |
|--------|-------------|
| date | A string representing the date in the format YYYY-MM-DD (e.g., "2023-05-15"). |
### Possible use case
This block could be used in a scheduling application to calculate and display dates for upcoming events or deadlines.
---
## Get Current Date and Time
### What it is
A block that provides both the current date and time.
### What it does
This block outputs the current date and time combined into a single string.
### How it works
When triggered, the block retrieves the current system date and time, then formats them together as a string in the YYYY-MM-DD HH:MM:SS format.
### Inputs
| Input | Description |
|-------|-------------|
| trigger | A string input that activates the block. The content of this input doesn't affect the output. |
### Outputs
| Output | Description |
|--------|-------------|
| date_time | A string representing the current date and time in the format YYYY-MM-DD HH:MM:SS (e.g., "2023-05-15 14:30:45"). |
### Possible use case
This block could be used in a logging system to timestamp events with both date and time information.
---
## Countdown Timer
### What it is
A block that acts as a countdown timer, triggering after a specified duration.
### What it does
This block waits for a specified amount of time and then outputs a message.
### How it works
The block takes input for the duration in days, hours, minutes, and seconds. It calculates the total wait time in seconds, pauses execution for that duration, and then outputs the specified message.
### Inputs
| Input | Description | Default |
|-------|-------------|---------|
| input_message | The message to be output when the timer finishes. | "timer finished" |
| seconds | The number of seconds to wait. | 0 |
| minutes | The number of minutes to wait. | 0 |
| hours | The number of hours to wait. | 0 |
| days | The number of days to wait. | 0 |
### Outputs
| Output | Description |
|--------|-------------|
| output_message | The message specified in the input_message, output after the timer completes. |
### Possible use case
This block could be used in a reminder application to trigger notifications after a set amount of time, or in a cooking app to notify users when a recipe step is complete.

View File

@ -0,0 +1,26 @@
## Transcribe YouTube Video
### What it is
A block that transcribes the audio content of a YouTube video into text.
### What it does
This block takes a YouTube video URL as input and produces a text transcript of the video's audio content. It also extracts and provides the unique video ID associated with the YouTube video.
### How it works
The block first extracts the video ID from the provided YouTube URL. It then uses this ID to fetch the video's transcript. The transcript is processed and formatted into a readable text format. If any errors occur during this process, the block will capture and report them.
### Inputs
| Input | Description |
|-------|-------------|
| YouTube URL | The web address of the YouTube video you want to transcribe. This can be in various formats, such as a standard watch URL, a shortened URL, or an embed URL. |
### Outputs
| Output | Description |
|--------|-------------|
| Video ID | The unique identifier for the YouTube video, extracted from the input URL. |
| Transcript | The full text transcript of the video's audio content. |
| Error | Any error message that occurs if the transcription process fails. |
### Possible use case
A content creator could use this block to automatically generate subtitles for their YouTube videos. They could also use it to create text-based summaries of video content for SEO purposes or to make their content more accessible to hearing-impaired viewers.

View File

@ -13,6 +13,7 @@ nav:
- Advanced Setup: server/advanced_setup.md
- Using Ollama: server/ollama.md
- Using D-ID: server/d_id.md
- Blocks: server/blocks/blocks.md
- AutoGPT Agent:
- Introduction: AutoGPT/index.md