# Blocks

> Blocks are the steps of a flow: send messages, manage members, store data, call APIs and more.

[All reference](https://inventor.bot/docs/reference.md)

## [Advanced Messages](https://inventor.bot/docs/reference/blocks/advanced-messages.md)

| Block | ID | Description |
| --- | --- | --- |
| [Text](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-content-text.md) | `advmsgcmp_content_text` | Text component. |
| [Message Container](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-layout-container.md) | `advmsgcmp_layout_container` | Holds text, thumbnails, galleries, and other content components. |
| [Section](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-layout-section.md) | `advmsgcmp_layout_section` | Holds text alongside an accessory button or thumbnail. |
| [Action Row](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-layout-actionrow.md) | `advmsgcmp_layout_actionrow` | Holds up to 5 buttons or a single select component. |
| [Separator](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-layout-separator.md) | `advmsgcmp_layout_separator` | Adds vertical padding between message components, with an optional divider line. |
| [Button](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-interaction-button.md) | `advmsgcmp_interaction_button` | Create a button for users to click on. Triggers with a new flow and Custom ID. |
| [Gallery](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-layout-gallery.md) | `advmsgcmp_layout_gallery` | Top-level container for 1-10 media items. |
| [Image](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-media-image.md) | `advmsgcmp_media_image` | Single media item in a gallery or a thumbnail accessory. |
| [String Select Option](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-interaction-select-option.md) | `advmsgcmp_interaction_select_option` | Option item for a String Select component. |
| [String Select](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-interaction-select-string.md) | `advmsgcmp_interaction_select_string` | String select menu for advanced messages and modals. |
| [User Select](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-interaction-select-user.md) | `advmsgcmp_interaction_select_user` | User select menu for advanced messages and modals. |
| [Role Select](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-interaction-select-role.md) | `advmsgcmp_interaction_select_role` | Role select menu for advanced messages and modals. |
| [Mentionable Select](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-interaction-select-mentionable.md) | `advmsgcmp_interaction_select_mentionable` | Mentionable select menu for advanced messages and modals. |
| [Channel Select](https://inventor.bot/docs/reference/blocks/advanced-messages/advmsgcmp-interaction-select-channel.md) | `advmsgcmp_interaction_select_channel` | Channel select menu for advanced messages and modals. |

## [Auto Moderation](https://inventor.bot/docs/reference/blocks/auto-moderation.md)

| Block | ID | Description |
| --- | --- | --- |
| [Get AutoMod Rule](https://inventor.bot/docs/reference/blocks/auto-moderation/get-automod-rule.md) | `get_automod_rule` | Get details of an auto moderation rule. |
| [Get AutoMod Rules](https://inventor.bot/docs/reference/blocks/auto-moderation/get-automod-rules.md) | `get_automod_rules` | List all auto moderation rules for a server. |
| [Create AutoMod Rule](https://inventor.bot/docs/reference/blocks/auto-moderation/create-automod-rule.md) | `create_automod_rule` | Create an auto moderation rule. |
| [Modify AutoMod Rule](https://inventor.bot/docs/reference/blocks/auto-moderation/modify-automod-rule.md) | `modify_automod_rule` | Modify an existing auto moderation rule. |
| [Delete AutoMod Rule](https://inventor.bot/docs/reference/blocks/auto-moderation/delete-automod-rule.md) | `delete_automod_rule` | Delete an auto moderation rule. |

## [Channels](https://inventor.bot/docs/reference/blocks/channels.md)

| Block | ID | Description |
| --- | --- | --- |
| [Get Channel](https://inventor.bot/docs/reference/blocks/channels/get-discord-channel.md) | `get_discord_channel` | Retrieve a Discord channel's information by its ID. |
| [Create Channel](https://inventor.bot/docs/reference/blocks/channels/create-channel.md) | `create_channel` | Create a text/voice/stage/etc channel or channel category in a server. |
| [Modify Channel](https://inventor.bot/docs/reference/blocks/channels/modify-discord-channel.md) | `modify_discord_channel` | Modify a channel's information by its ID. |
| [Move Channel](https://inventor.bot/docs/reference/blocks/channels/modify-channel-parent.md) | `modify_channel_parent` | Move a channel to a new category. |
| [Move Member to Voice Channel](https://inventor.bot/docs/reference/blocks/channels/move-member-to-voice-channel.md) | `move_member_to_voice_channel` | Move a member from one voice channel to another. |
| [Get Channels](https://inventor.bot/docs/reference/blocks/channels/get-discord-guild-channels.md) | `get_discord_guild_channels` | Retrieve a Discord server's channels by its ID. |
| [Delete Channel](https://inventor.bot/docs/reference/blocks/channels/delete-channel.md) | `delete_channel` | Delete a Discord channel by its ID. |
| [Trigger Typing Indicator](https://inventor.bot/docs/reference/blocks/channels/trigger-typing-indicator.md) | `trigger_typing_indicator` | Trigger a typing indicator in a channel. |
| [Set Channel Permissions](https://inventor.bot/docs/reference/blocks/channels/set-channel-permissions.md) | `set_channel_permissions` | Set allowed and denied permission overrides for a user or role in a channel. Supports setting both allow and deny in one block, and can either replace existing overrides or update them. |
| [Delete Channel Permission](https://inventor.bot/docs/reference/blocks/channels/delete-channel-permission.md) | `delete_channel_permission` | Delete a channel permission overwrite for a user or role. |

## [Databases](https://inventor.bot/docs/reference/blocks/databases.md)

| Block | ID | Description |
| --- | --- | --- |
| [Database Lookup (Single)](https://inventor.bot/docs/reference/blocks/databases/db-lookup-single.md) | `db_lookup_single` | Find a single row from a database matching your query. Returns the first matching row. |
| [Database Lookup (Iterator)](https://inventor.bot/docs/reference/blocks/databases/db-lookup-iterator.md) | `db_lookup_iterator` | Find multiple rows from a database and iterate over each one. |
| [Database Create Row](https://inventor.bot/docs/reference/blocks/databases/db-create-row.md) | `db_create_row` | Create a new row in a database with the specified values. |
| [Database Duplicate Row](https://inventor.bot/docs/reference/blocks/databases/db-duplicate-row.md) | `db_duplicate_row` | Duplicate an existing row in a database by its ID. |
| [Database Update Row](https://inventor.bot/docs/reference/blocks/databases/db-update-row.md) | `db_update_row` | Update an existing row in a database with new values. |
| [Clear Row Data](https://inventor.bot/docs/reference/blocks/databases/db-clear-row-data.md) | `db_clear_row_data` | Clear selected columns from a database row. Does nothing if the row does not exist. |
| [Clear Matching Row Data](https://inventor.bot/docs/reference/blocks/databases/db-clear-matching-row-data.md) | `db_clear_matching_row_data` | Find rows matching a query and clear selected columns from all of them. |
| [Update Matching Rows](https://inventor.bot/docs/reference/blocks/databases/db-update-matching-rows.md) | `db_update_matching_rows` | Find rows matching a query and update them all with the specified values. |
| [Delete Matching Rows](https://inventor.bot/docs/reference/blocks/databases/db-delete-matching-rows.md) | `db_delete_matching_rows` | Delete rows matching a query and return how many were deleted. |
| [Database Delete Row](https://inventor.bot/docs/reference/blocks/databases/db-delete-row.md) | `db_delete_row` | Delete a row from a database by its ID. |

## [Emojis](https://inventor.bot/docs/reference/blocks/emojis.md)

| Block | ID | Description |
| --- | --- | --- |
| [Get Emojis](https://inventor.bot/docs/reference/blocks/emojis/list-emojis.md) | `list_emojis` | Get all emojis from a server. |
| [Get Emoji](https://inventor.bot/docs/reference/blocks/emojis/get-emoji.md) | `get_emoji` | Get an emoji by ID. |
| [Create Emoji](https://inventor.bot/docs/reference/blocks/emojis/create-emoji.md) | `create_emoji` | Creates a new emoji in a server. |
| [Modify Emoji](https://inventor.bot/docs/reference/blocks/emojis/modify-emoji.md) | `modify_emoji` | Modifies a given emoji in a server. |
| [Delete Emoji](https://inventor.bot/docs/reference/blocks/emojis/delete-emoji.md) | `delete_emoji` | Deletes a given emoji in a server. |

## [Interactions](https://inventor.bot/docs/reference/blocks/interactions.md)

| Block | ID | Description |
| --- | --- | --- |
| [Respond to Interaction with Text](https://inventor.bot/docs/reference/blocks/interactions/respond-interaction-text.md) | `respond_interaction_text` | Send a text response to an interaction (slash command, button, etc.). |
| [Defer Interaction](https://inventor.bot/docs/reference/blocks/interactions/defer-interaction.md) | `defer_interaction` | Acknowledge an interaction and show a loading state. Use this when your response will take a while. |
| [Respond to Interaction with Advanced Message](https://inventor.bot/docs/reference/blocks/interactions/respond-interaction-advanced.md) | `respond_interaction_advanced` | Send a Components v2 response to an interaction (slash command, button, etc.). |
| [Embed Reply to Interaction](https://inventor.bot/docs/reference/blocks/interactions/respond-interaction-embed-message.md) | `respond_interaction_embed_message` | Send an embed response to an interaction. |
| [Get Interaction Message Data](https://inventor.bot/docs/reference/blocks/interactions/get-interaction-message-data.md) | `get_interaction_message_data` | Get message, channel, and server data from an interaction response. |
| [Show Modal](https://inventor.bot/docs/reference/blocks/interactions/show-modal.md) | `show_modal` | Show a modal dialog in response to an interaction. |

## [Invites](https://inventor.bot/docs/reference/blocks/invites.md)

| Block | ID | Description |
| --- | --- | --- |
| [Create Invite](https://inventor.bot/docs/reference/blocks/invites/create-invite.md) | `create_invite` | Create an invite for a channel. |
| [Get Invite](https://inventor.bot/docs/reference/blocks/invites/get-invite.md) | `get_invite` | Retrieve an invite's information by its code. |
| [Get Channel Invites](https://inventor.bot/docs/reference/blocks/invites/get-invites.md) | `get_invites` | Retrieve a list of invites for a channel. |
| [Get Server Invites](https://inventor.bot/docs/reference/blocks/invites/get-guild-invites.md) | `get_guild_invites` | Retrieve a list of invites for a server. |
| [Delete Invite](https://inventor.bot/docs/reference/blocks/invites/delete-invite.md) | `delete_invite` | Delete an invite by its code. |

## [Logic](https://inventor.bot/docs/reference/blocks/logic.md)

| Block | ID | Description |
| --- | --- | --- |
| [Loop](https://inventor.bot/docs/reference/blocks/logic/loop-basic.md) | `loop_basic` | Run the nested blocks a fixed number of times. |
| [While Loop](https://inventor.bot/docs/reference/blocks/logic/while-loop.md) | `while_loop` | Repeat blocks while a condition is true. |
| [If Statement](https://inventor.bot/docs/reference/blocks/logic/if-statement.md) | `if_statement` | Compare two values and run different blocks based on the result. |
| [Advanced Conditional](https://inventor.bot/docs/reference/blocks/logic/advanced-conditional.md) | `advanced_conditional` | Run different blocks based on grouped comparisons. |
| [Conditional Value](https://inventor.bot/docs/reference/blocks/logic/ternary-conditional-value.md) | `ternary_conditional_value` | Compare two values and output one of two values based on the result. |
| [Folder](https://inventor.bot/docs/reference/blocks/logic/folder.md) | `folder` | Organize blocks into a folder. Creates a variable scope. |
| [Break](https://inventor.bot/docs/reference/blocks/logic/break-loop.md) | `break_loop` | Stop the current loop and continue with the blocks after it. |
| [Continue](https://inventor.bot/docs/reference/blocks/logic/continue-loop.md) | `continue_loop` | Skip the rest of this loop iteration and move to the next one. |
| [Exit Flow](https://inventor.bot/docs/reference/blocks/logic/exit-flow.md) | `exit_flow` | Stop the entire flow immediately. No further blocks will run. |
| [Call Custom Block](https://inventor.bot/docs/reference/blocks/logic/call-custom-block.md) | `call_custom_block` | Call a custom block and use its returned outputs. |
| [Return](https://inventor.bot/docs/reference/blocks/logic/return-from-custom-block.md) | `return_from_custom_block` | Return outputs from the current custom block and stop executing it. |

## [Math](https://inventor.bot/docs/reference/blocks/math.md)

| Block | ID | Description |
| --- | --- | --- |
| [Math Operations](https://inventor.bot/docs/reference/blocks/math/general-math-operations.md) | `general_math_operations` | Perform addition, subtraction, multiplication, division, modulo and exponent operations. |
| [Math Operations (Float)](https://inventor.bot/docs/reference/blocks/math/float-math-operations.md) | `float_math_operations` | Perform addition, subtraction, multiplication, division, modulo and exponent operations with floating point numbers. |
| [Round Number](https://inventor.bot/docs/reference/blocks/math/round-number.md) | `round_number` | Round a number using a chosen method (round, floor, ceil, truncate) to a specified number of digits. |
| [Absolute Value](https://inventor.bot/docs/reference/blocks/math/absolute-value-basic.md) | `absolute_value_basic` | Get the absolute value of a number. |
| [Square Root](https://inventor.bot/docs/reference/blocks/math/square-root-basic.md) | `square_root_basic` | Get the square root (sqrt) of a number. |
| [Logarithm](https://inventor.bot/docs/reference/blocks/math/logarithm-basic.md) | `logarithm_basic` | Get the logarithm of a number with a specified base. |
| [Factorial](https://inventor.bot/docs/reference/blocks/math/factorial-basic.md) | `factorial_basic` | Calculate the factorial of a number. |
| [Random Number Generator](https://inventor.bot/docs/reference/blocks/math/random-number-generator-basic.md) | `random_number_generator_basic` | Generate a random number using specified minimum and maximum values. |
| [Passphrase Generator](https://inventor.bot/docs/reference/blocks/math/passphrase-generator.md) | `passphrase_generator` | Generate a random passphrase with a specified number of words. |
| [If Number is in Range](https://inventor.bot/docs/reference/blocks/math/if-number-in-range.md) | `if_number_in_range` | Check if a number is in a specified range. |
| [If Number is Close to Other Number](https://inventor.bot/docs/reference/blocks/math/if-number-close-to-other-number.md) | `if_number_close_to_other_number` | Check if a number is close to another number within a specified tolerance. |
| [If Value is Number](https://inventor.bot/docs/reference/blocks/math/if-value-is-number.md) | `if_value_is_number` | Check if a value is a number. |
| [Hex to Int](https://inventor.bot/docs/reference/blocks/math/hex-to-int.md) | `hex_to_int` | Convert a hexadecimal number to an integer. |
| [Int to Hex](https://inventor.bot/docs/reference/blocks/math/int-to-hex.md) | `int_to_hex` | Convert an integer to a hexadecimal number. |
| [Percentage Math (Integer)](https://inventor.bot/docs/reference/blocks/math/percentage-math-integer.md) | `percentage_math_integer` | Add or subtract a percentage to/from an integer. |
| [Percentage Math (Float)](https://inventor.bot/docs/reference/blocks/math/percentage-math-float.md) | `percentage_math_float` | Add or subtract a percentage to/from a floating point number. |

## [Messages](https://inventor.bot/docs/reference/blocks/messages.md)

| Block | ID | Description |
| --- | --- | --- |
| [Send or Edit Text Message](https://inventor.bot/docs/reference/blocks/messages/send-text-message.md) | `send_text_message` | Send or Edit a text-only message |
| [Send TTS Message](https://inventor.bot/docs/reference/blocks/messages/send-tts-message.md) | `send_tts_message` | Send a text-to-speech message. |
| [Send Advanced Message](https://inventor.bot/docs/reference/blocks/messages/send-advanced-message.md) | `send_advanced_message` | Send a Components v2 message. |
| [Send or Edit Embed Message](https://inventor.bot/docs/reference/blocks/messages/send-embed-message.md) | `send_embed_message` | Send or edit an embed message. |
| [Get Message](https://inventor.bot/docs/reference/blocks/messages/get-discord-message.md) | `get_discord_message` | Fetch a single message by its ID from a channel. |
| [Get Messages](https://inventor.bot/docs/reference/blocks/messages/get-discord-channel-messages.md) | `get_discord_channel_messages` | Fetch recent messages from a channel and iterate over them. |
| [Search Server Messages](https://inventor.bot/docs/reference/blocks/messages/search-discord-guild-messages.md) | `search_discord_guild_messages` | Search a server's messages and iterate over the matched messages. |
| [Get Pinned Messages](https://inventor.bot/docs/reference/blocks/messages/get-discord-pinned-messages.md) | `get_discord_pinned_messages` | Fetch pinned messages from a channel and iterate over them. |
| [Forward Message](https://inventor.bot/docs/reference/blocks/messages/forward-message.md) | `forward_message` | Forward a message into another channel. |
| [Delete Message](https://inventor.bot/docs/reference/blocks/messages/delete-message.md) | `delete_message` | Delete a message by its ID from a channel. |
| [Pin Message](https://inventor.bot/docs/reference/blocks/messages/pin-discord-message.md) | `pin_discord_message` | Pin a message in a channel. |
| [Unpin Message](https://inventor.bot/docs/reference/blocks/messages/unpin-discord-message.md) | `unpin_discord_message` | Unpin a message in a channel. |
| [Publish Message](https://inventor.bot/docs/reference/blocks/messages/crosspost-message.md) | `crosspost_message` | Publish an announcement message to all channels following the announcement channel. |
| [Suppress Message Embeds](https://inventor.bot/docs/reference/blocks/messages/remove-opengraph-embeds.md) | `remove_opengraph_embeds` | Suppresses link preview embeds on a message by setting the SUPPRESS_EMBEDS flag. |
| [Purge Messages](https://inventor.bot/docs/reference/blocks/messages/purge-discord-messages.md) | `purge_discord_messages` | Bulk-delete messages from a channel. |
| [Poll Answer](https://inventor.bot/docs/reference/blocks/messages/poll-answer.md) | `poll_answer` | A single answer option for a poll. |
| [Send Poll](https://inventor.bot/docs/reference/blocks/messages/send-poll.md) | `send_poll` | Send a poll message in a channel. |
| [End Poll](https://inventor.bot/docs/reference/blocks/messages/end-poll.md) | `end_poll` | Immediately end a poll on a message. |
| [Get Poll Answer Voters](https://inventor.bot/docs/reference/blocks/messages/get-poll-answer-voters.md) | `get_poll_answer_voters` | Fetch users who voted for a specific poll answer and iterate over them. |

## [Modals](https://inventor.bot/docs/reference/blocks/modals.md)

| Block | ID | Description |
| --- | --- | --- |
| [Modal Label](https://inventor.bot/docs/reference/blocks/modals/modalcmp-layout-label.md) | `modalcmp_layout_label` | Label wrapper for a text input or select component in a modal. |
| [Text Input](https://inventor.bot/docs/reference/blocks/modals/modalcmp-input-text.md) | `modalcmp_input_text` | Text input component for modal forms. |

## [Network](https://inventor.bot/docs/reference/blocks/network.md)

| Block | ID | Description |
| --- | --- | --- |
| [Escape JSON Field](https://inventor.bot/docs/reference/blocks/network/escape-json-field.md) | `escape_json_field` | Escape a string to be used as a JSON field. |
| [Parse JSON](https://inventor.bot/docs/reference/blocks/network/parse-json.md) | `parse_json` | Retrieve a value from a JSON string. |
| [Format JSON](https://inventor.bot/docs/reference/blocks/network/format-json.md) | `format_json` | Indent a JSON string for readability. |
| [Generate Form Body](https://inventor.bot/docs/reference/blocks/network/generate-form-body.md) | `generate_form_body` | Generate a HTTP form body from a list of key-value pairs. |
| [Network Request](https://inventor.bot/docs/reference/blocks/network/network-request.md) | `network_request` | Send an HTTP request and return the response. |
| [Respond to Incoming Webhook](https://inventor.bot/docs/reference/blocks/network/incoming-webhook-response.md) | `incoming_webhook_response` | Respond to an incoming webhook request with a custom status code and response body. |

## [Reactions](https://inventor.bot/docs/reference/blocks/reactions.md)

| Block | ID | Description |
| --- | --- | --- |
| [Get Reactions](https://inventor.bot/docs/reference/blocks/reactions/get-reactions.md) | `get_reactions` | Get all reactions from a message. |
| [Get Reactions Count](https://inventor.bot/docs/reference/blocks/reactions/get-reactions-count.md) | `get_reactions_count` | Get number of reactions from a message. |
| [Add Reaction](https://inventor.bot/docs/reference/blocks/reactions/add-reaction.md) | `add_reaction` | Add a reaction to a message. |
| [Remove Reaction](https://inventor.bot/docs/reference/blocks/reactions/remove-reaction.md) | `remove_reaction` | Remove your reaction from a message. |
| [Remove All Reactions](https://inventor.bot/docs/reference/blocks/reactions/remove-all-reactions.md) | `remove_all_reactions` | Remove all reactions from a message. |
| [Remove User Reaction](https://inventor.bot/docs/reference/blocks/reactions/remove-user-reaction.md) | `remove_user_reaction` | Remove a user's reaction from a message. |

## [Regex](https://inventor.bot/docs/reference/blocks/regex.md)

| Block | ID | Description |
| --- | --- | --- |
| [Regex Match](https://inventor.bot/docs/reference/blocks/regex/regex-match.md) | `regex_match` | Check if a string matches a regular expression. |
| [Regex Find Matches List](https://inventor.bot/docs/reference/blocks/regex/regex-find-list.md) | `regex_find_list` | Find matches of a regular expression in a string. |
| [Regex Find Matches Iterator](https://inventor.bot/docs/reference/blocks/regex/regex-find-iterator.md) | `regex_find_iterator` | Iterate over matches of a regular expression in a string. |
| [Regex Replace](https://inventor.bot/docs/reference/blocks/regex/regex-replace.md) | `regex_replace` | Replace all matches of a regular expression in a string. |

## [Roles](https://inventor.bot/docs/reference/blocks/roles.md)

| Block | ID | Description |
| --- | --- | --- |
| [Get Roles](https://inventor.bot/docs/reference/blocks/roles/get-discord-roles.md) | `get_discord_roles` | Get all roles in the specified server. |
| [Get Role](https://inventor.bot/docs/reference/blocks/roles/get-discord-role.md) | `get_discord_role` | Get a role in the specified server. |
| [Update Role](https://inventor.bot/docs/reference/blocks/roles/update-role.md) | `update_role` | Update a role in the specified server. |
| [Create Role](https://inventor.bot/docs/reference/blocks/roles/create-role.md) | `create_role` | Create a role in the specified server. |
| [Delete Role](https://inventor.bot/docs/reference/blocks/roles/delete-role.md) | `delete_role` | Delete a role in the specified server. |
| [Get @everyone Role](https://inventor.bot/docs/reference/blocks/roles/get-everyone-role.md) | `get_everyone_role` | Get the @everyone role in the specified server. |

## [Scheduled Event](https://inventor.bot/docs/reference/blocks/scheduled-event.md)

| Block | ID | Description |
| --- | --- | --- |
| [Create Scheduled Event](https://inventor.bot/docs/reference/blocks/scheduled-event/create-scheduled-event.md) | `create_scheduled_event` | Create a scheduled event. |
| [Get Scheduled Event](https://inventor.bot/docs/reference/blocks/scheduled-event/get-scheduled-event.md) | `get_scheduled_event` | Get a scheduled event. |
| [Get Scheduled Events](https://inventor.bot/docs/reference/blocks/scheduled-event/get-scheduled-events.md) | `get_scheduled_events` | List scheduled events for a server. |
| [Modify Scheduled Event](https://inventor.bot/docs/reference/blocks/scheduled-event/modify-scheduled-event.md) | `modify_scheduled_event` | Modify a scheduled event. |
| [Delete Scheduled Event](https://inventor.bot/docs/reference/blocks/scheduled-event/delete-scheduled-event.md) | `delete_scheduled_event` | Delete a scheduled event. |

## [Servers](https://inventor.bot/docs/reference/blocks/servers.md)

| Block | ID | Description |
| --- | --- | --- |
| [Get Server](https://inventor.bot/docs/reference/blocks/servers/get-discord-guild.md) | `get_discord_guild` | Retrieve a Discord server's information by its ID. |
| [Get Servers](https://inventor.bot/docs/reference/blocks/servers/get-discord-guilds.md) | `get_discord_guilds` | Retrieve a list of Discord servers the bot is a member of. |
| [Get Server Vanity URL](https://inventor.bot/docs/reference/blocks/servers/get-discord-guild-vanity-url.md) | `get_discord_guild_vanity_url` | Retrieve a server's vanity invite URL. |
| [Update Server](https://inventor.bot/docs/reference/blocks/servers/update-discord-guild.md) | `update_discord_guild` | Update a Discord server's information by its ID. |
| [Leave Server](https://inventor.bot/docs/reference/blocks/servers/leave-discord-guild.md) | `leave_discord_guild` | Leave a Discord server by its ID. |
| [Get Server Audit Logs](https://inventor.bot/docs/reference/blocks/servers/get-server-audit-logs.md) | `get_server_audit_logs` | Retrieve audit log entries for a server. |

## [Strings](https://inventor.bot/docs/reference/blocks/strings.md)

| Block | ID | Description |
| --- | --- | --- |
| [String Length](https://inventor.bot/docs/reference/blocks/strings/string-length.md) | `string_length` | Get the length of a string in characters and in bytes. |
| [String Split List](https://inventor.bot/docs/reference/blocks/strings/string-split.md) | `string_split` | Split a string into a list of strings with a delimiter. |
| [Split String Iterator](https://inventor.bot/docs/reference/blocks/strings/split-string.md) | `split_string` | Iterate over a string separated by a delimiter. |
| [String Contains Count](https://inventor.bot/docs/reference/blocks/strings/string-contains-count.md) | `string_contains_count` | Count the number of times a substring appears in a string. |
| [String Replace](https://inventor.bot/docs/reference/blocks/strings/string-replace.md) | `string_replace` | Replace a substring with a new substring within a string. |
| [String to Lowercase](https://inventor.bot/docs/reference/blocks/strings/string-to-lowercase.md) | `string_to_lowercase` | Convert a string to lowercase. |
| [String to Uppercase](https://inventor.bot/docs/reference/blocks/strings/string-to-uppercase.md) | `string_to_uppercase` | Convert a string to uppercase. |
| [String Trim Prefix](https://inventor.bot/docs/reference/blocks/strings/string-trim-prefix.md) | `string_trim_prefix` | Remove a prefix from a string. |
| [String Trim Suffix](https://inventor.bot/docs/reference/blocks/strings/string-trim-suffix.md) | `string_trim_suffix` | Remove a suffix from a string. |
| [Truncate String](https://inventor.bot/docs/reference/blocks/strings/string-truncate.md) | `string_truncate` | Truncate a string to a certain length. |
| [Base64 Encode](https://inventor.bot/docs/reference/blocks/strings/base64-encode.md) | `base64_encode` | Encode a string to Base64. |
| [Base64 Decode](https://inventor.bot/docs/reference/blocks/strings/base64-decode.md) | `base64_decode` | Decode a Base64 string. |
| [Format Number](https://inventor.bot/docs/reference/blocks/strings/format-number.md) | `format_number` | Format a number with commas. |
| [Generate UUIDv4](https://inventor.bot/docs/reference/blocks/strings/generate-uuid.md) | `generate_uuid` | Generate a UUIDv4 (fully-random). |
| [Generate UUIDv7](https://inventor.bot/docs/reference/blocks/strings/generate-uuid-v7.md) | `generate_uuid_v7` | Generate a UUIDv7 (time-based). |
| [Parse Color](https://inventor.bot/docs/reference/blocks/strings/parse-color.md) | `parse_color` | Parse a color string (name or hex code) into a hex string. |
| [URL Query Escape](https://inventor.bot/docs/reference/blocks/strings/url-param-encode.md) | `url_param_encode` | Encode a string to be used as a URL parameter. |
| [URL Query Unescape](https://inventor.bot/docs/reference/blocks/strings/url-param-decode.md) | `url_param_decode` | Decode a string used as a URL parameter. |
| [Bcrypt Hash String](https://inventor.bot/docs/reference/blocks/strings/bcrypt-hash.md) | `bcrypt_hash` | Apply a one-way hash to a string using bcrypt. |
| [Bcrypt Compare Hash](https://inventor.bot/docs/reference/blocks/strings/bcrypt-compare-hash.md) | `bcrypt_compare_hash` | Compare a string to a bcrypt hash. |
| [Verify HMAC](https://inventor.bot/docs/reference/blocks/strings/verify-hmac.md) | `verify_hmac` | Verify a message against an HMAC signature. |
| [MD5 Hash](https://inventor.bot/docs/reference/blocks/strings/md5-hash.md) | `md5_hash` | Generate an MD5 hash of a string. |
| [Sort Lines by Number Prefix or Suffix](https://inventor.bot/docs/reference/blocks/strings/sort-lines-by-number-prefix.md) | `sort_lines_by_number_prefix` | Sort lines of text by the number at the beginning or end of each line. |
| [Truncate Split String List](https://inventor.bot/docs/reference/blocks/strings/truncate-split-string-list.md) | `truncate_split_string_list` | Split a string into groups of a certain number of characters. |
| [Truncate Split String Iterator](https://inventor.bot/docs/reference/blocks/strings/truncate-split-string-iterator.md) | `truncate_split_string_iterator` | Iterate over a string by groups of a certain number of characters. |
| [Scramble String](https://inventor.bot/docs/reference/blocks/strings/scramble-string.md) | `scramble_string` | Scramble the order of characters in a string. |
| [Random String Generator](https://inventor.bot/docs/reference/blocks/strings/random-string-generator.md) | `random_string_generator` | Generate a random string of a specified length using a chosen character set. |
| [Repeat String](https://inventor.bot/docs/reference/blocks/strings/string-repeat.md) | `string_repeat` | Repeat a string a specified number of times. |
| [Reverse String](https://inventor.bot/docs/reference/blocks/strings/string-reverse.md) | `string_reverse` | Reverse the characters of a string. |
| [Reorder Comma Separated List](https://inventor.bot/docs/reference/blocks/strings/reverse-comma-separated-list.md) | `reverse_comma_separated_list` | Reorder the elements in a comma separated list. |
| [Intersection of Comma Separated Lists](https://inventor.bot/docs/reference/blocks/strings/intersection-comma-separated-lists.md) | `intersection_comma_separated_lists` | Compare two comma separated lists and find items exclusive to each list and items common to both. |
| [Remap String](https://inventor.bot/docs/reference/blocks/strings/remap-string.md) | `remap_string` | Remap or replace values in a string using a set of original-to-replacement pairs. |
| [Get UUIDv7 Creation Time](https://inventor.bot/docs/reference/blocks/strings/decode-uuid-v7-time.md) | `decode_uuid_v7_time` | Get the creation time of a UUIDv7. |

## [Threads](https://inventor.bot/docs/reference/blocks/threads.md)

| Block | ID | Description |
| --- | --- | --- |
| [Start Thread From Message](https://inventor.bot/docs/reference/blocks/threads/start-thread-from-message.md) | `start_thread_from_message` | Start a thread from a message. |
| [Start Thread From Channel](https://inventor.bot/docs/reference/blocks/threads/start-thread-from-channel.md) | `start_thread_from_channel` | Start a thread from a channel. |
| [Create Forum Thread](https://inventor.bot/docs/reference/blocks/threads/create-forum-thread.md) | `create_forum_thread` | Create a thread in a forum channel. |
| [Get Forum Channel Available Tags](https://inventor.bot/docs/reference/blocks/threads/get-forum-thread-tags.md) | `get_forum_thread_tags` | Get the tags of a forum channel. |
| [Update Forum Thread Tags](https://inventor.bot/docs/reference/blocks/threads/update-forum-thread-tags.md) | `update_forum_thread_tags` | Update the tags of a forum thread. |
| [Join Thread](https://inventor.bot/docs/reference/blocks/threads/join-thread.md) | `join_thread` | Join a thread. |
| [Leave Thread](https://inventor.bot/docs/reference/blocks/threads/leave-thread.md) | `leave_thread` | Leave a thread. |
| [Add Thread Member](https://inventor.bot/docs/reference/blocks/threads/add-thread-member.md) | `add_thread_member` | Add a member to a thread. |
| [Remove Thread Member](https://inventor.bot/docs/reference/blocks/threads/remove-thread-member.md) | `remove_thread_member` | Remove a member from a thread. |
| [Archive Thread](https://inventor.bot/docs/reference/blocks/threads/archive-thread.md) | `archive_thread` | Archive a thread. |
| [Unarchive Thread](https://inventor.bot/docs/reference/blocks/threads/unarchive-thread.md) | `unarchive_thread` | Unarchive a thread. |
| [Lock Thread](https://inventor.bot/docs/reference/blocks/threads/lock-thread.md) | `lock_thread` | Lock a thread. |
| [Unlock Thread](https://inventor.bot/docs/reference/blocks/threads/unlock-thread.md) | `unlock_thread` | Unlock a thread. |
| [Pin Thread](https://inventor.bot/docs/reference/blocks/threads/pin-thread.md) | `pin_thread` | Pin a thread. |
| [Unpin Thread](https://inventor.bot/docs/reference/blocks/threads/unpin-thread.md) | `unpin_thread` | Unpin a thread. |

## [Time](https://inventor.bot/docs/reference/blocks/time.md)

| Block | ID | Description |
| --- | --- | --- |
| [Get Current Date and Time](https://inventor.bot/docs/reference/blocks/time/get-current-datetime-basic.md) | `get_current_datetime_basic` | Get the current UTC date and time in various formats. |
| [Parse Unix Time](https://inventor.bot/docs/reference/blocks/time/parse-unix-time.md) | `parse_unix_time` | Parse a Unix timestamp into a human-readable date and time. |
| [Get Snowflake Timestamp](https://inventor.bot/docs/reference/blocks/time/get-snowflake-timestamp.md) | `get_snowflake_timestamp` | Convert a Discord snowflake ID into a creation date and time. |
| [Sleep / Wait](https://inventor.bot/docs/reference/blocks/time/sleep-wait.md) | `sleep_wait` | Pause the flow for a specified duration. |
| [Parse Relative Time](https://inventor.bot/docs/reference/blocks/time/parse-relative-time.md) | `parse_relative_time` | Parse a user-provided relative time string into a Unix timestamp. |
| [Modify Time](https://inventor.bot/docs/reference/blocks/time/modify-time.md) | `modify_time` | Add or subtract time from a Unix timestamp. |
| [Get Specific Time](https://inventor.bot/docs/reference/blocks/time/get-specific-time.md) | `get_specific_time` | Get a specific time in the future or past in a variety of formats. |
| [Truncate Time](https://inventor.bot/docs/reference/blocks/time/truncate-time.md) | `truncate_time` | Truncate a Unix timestamp to a given period. |
| [Parse Month Name](https://inventor.bot/docs/reference/blocks/time/parse-month-name.md) | `parse_month_name` | Parse a month name into a number. |
| [Parse Date and Time](https://inventor.bot/docs/reference/blocks/time/parse-datetime.md) | `parse_datetime` | Parse a date and time into a Unix timestamp with a variety of parsing options. |
| [Standard Format Date and Time](https://inventor.bot/docs/reference/blocks/time/machine-format-datetime.md) | `machine_format_datetime` | Format a Unix timestamp into a standardized date and time string. |
| [Generate Timecode](https://inventor.bot/docs/reference/blocks/time/generate-timecode.md) | `generate_timecode` | Generate a Discord timestamp timecode from a Unix time. |

## [Users](https://inventor.bot/docs/reference/blocks/users.md)

| Block | ID | Description |
| --- | --- | --- |
| [Get User](https://inventor.bot/docs/reference/blocks/users/get-discord-user.md) | `get_discord_user` | Retrieve a Discord user's information by their ID. |
| [Create DM Channel](https://inventor.bot/docs/reference/blocks/users/create-dm-channel.md) | `create_dm_channel` | Create a DM channel with a user. |
| [Get Server Member](https://inventor.bot/docs/reference/blocks/users/get-discord-guild-member.md) | `get_discord_guild_member` | Retrieve a Discord server member information by their ID. |
| [Get Highest Role Position of Member](https://inventor.bot/docs/reference/blocks/users/get-highest-role-position-of-member.md) | `get_highest_role_position_of_member` | Retrieve the position of the highest role of a member in a server. |
| [Get Server Members](https://inventor.bot/docs/reference/blocks/users/get-discord-guild-members.md) | `get_discord_guild_members` | Retrieve members of a Discord server. |
| [Kick Server Member](https://inventor.bot/docs/reference/blocks/users/kick-server-member.md) | `kick_server_member` | Kick a member from a server. |
| [Ban Server Member](https://inventor.bot/docs/reference/blocks/users/ban-server-member.md) | `ban_server_member` | Ban a member from a server. |
| [Unban Server Member](https://inventor.bot/docs/reference/blocks/users/unban-server-member.md) | `unban_server_member` | Unban a member from a server. |
| [Get Server Bans](https://inventor.bot/docs/reference/blocks/users/get-server-bans.md) | `get_server_bans` | Retrieve a list of banned users in a server. |
| [Timeout Server Member](https://inventor.bot/docs/reference/blocks/users/timeout-server-member.md) | `timeout_server_member` | Timeout a member from a server. |
| [Assign Role](https://inventor.bot/docs/reference/blocks/users/assign-role.md) | `assign_role` | Assign a role to a user. |
| [Remove Role](https://inventor.bot/docs/reference/blocks/users/remove-role.md) | `remove_role` | Remove a role from a user. |
| [Change Member Nickname](https://inventor.bot/docs/reference/blocks/users/change-member-nickname.md) | `change_member_nickname` | Change a member's nickname in a server. |

## [Utilities](https://inventor.bot/docs/reference/blocks/utilities.md)

| Block | ID | Description |
| --- | --- | --- |
| [Log Error](https://inventor.bot/docs/reference/blocks/utilities/log-error.md) | `log_error` | Log an error to the errors dashboard. |
| [Get Error Details](https://inventor.bot/docs/reference/blocks/utilities/get-error-details.md) | `get_error_details` | Retrieve details of a logged error. |
| [Discord API Ping](https://inventor.bot/docs/reference/blocks/utilities/discord-api-ping.md) | `discord_api_ping` | Measure current patency to the Discord API. |
| [Change Bot Status](https://inventor.bot/docs/reference/blocks/utilities/change-bot-status.md) | `change_bot_status` | Update the bot's presence and status text. |
| [Get Server Count](https://inventor.bot/docs/reference/blocks/utilities/get-server-count.md) | `get_server_count` | Get the number of servers the bot is in. |
| [Custom Loop](https://inventor.bot/docs/reference/blocks/utilities/advanced-custom-loop.md) | `advanced_custom_loop` | Loop over a customized range of numbers. |
| [Check Permission](https://inventor.bot/docs/reference/blocks/utilities/is-permission-in-bitfield.md) | `is_permission_in_bitfield` | Check if a permission exists in a bitfield. |
| [Member/Role Has Permissions](https://inventor.bot/docs/reference/blocks/utilities/member-role-has-permissions.md) | `member_role_has_permissions` | Check if a member or role has specific permissions. |
| [Redact Secret](https://inventor.bot/docs/reference/blocks/utilities/redact-secret.md) | `redact_secret` | Redact a secret (e.g. example -> e*****e). |
| [Get Bot Details](https://inventor.bot/docs/reference/blocks/utilities/get-bot-details.md) | `get_bot_details` | Get cached details of the current branch's bot user. |
| [Generate Snowflake ID](https://inventor.bot/docs/reference/blocks/utilities/generate-snowflake-id.md) | `generate_snowflake_id` | Generate a unique Snowflake-like ID. |
| [Update Local Variable](https://inventor.bot/docs/reference/blocks/utilities/update-local-variable.md) | `update_local_variable` | Set a local variable to a new value. |
| [Append New Line to Local Variable](https://inventor.bot/docs/reference/blocks/utilities/append-new-line-to-local-variable.md) | `append_new_line_to_local_variable` | Append text to a local variable on a new line. |
| [Comment](https://inventor.bot/docs/reference/blocks/utilities/comment.md) | `comment` | Add a note or comment to your flow. This block does nothing when run. |
| [Increment or Decrement Local Variable](https://inventor.bot/docs/reference/blocks/utilities/increment-local-variable.md) | `increment_local_variable` | Increment or decrement a numeric local variable by a value. |

## [Webhooks](https://inventor.bot/docs/reference/blocks/webhooks.md)

| Block | ID | Description |
| --- | --- | --- |
| [Create Webhook](https://inventor.bot/docs/reference/blocks/webhooks/create-webhook.md) | `create_webhook` | Create a webhook in a channel. |
| [Get Webhooks](https://inventor.bot/docs/reference/blocks/webhooks/get-webhooks.md) | `get_webhooks` | Get all webhooks in a channel. |
| [Get Webhook](https://inventor.bot/docs/reference/blocks/webhooks/get-webhook.md) | `get_webhook` | Get a webhook by its ID. |
| [Get Server Webhooks](https://inventor.bot/docs/reference/blocks/webhooks/get-server-webhooks.md) | `get_server_webhooks` | Get all webhooks in a server. |
| [Delete Webhook](https://inventor.bot/docs/reference/blocks/webhooks/delete-webhook.md) | `delete_webhook` | Delete a webhook. |
| [Modify Webhook](https://inventor.bot/docs/reference/blocks/webhooks/modify-webhook.md) | `modify_webhook` | Modify a webhook. |
| [Execute Webhook](https://inventor.bot/docs/reference/blocks/webhooks/execute-webhook.md) | `execute_webhook` | Send a message with a webhook. |