# Learn WorkflowDog ## Docs - [Welcome to WorkflowDog](https://learn.workflow.dog/introduction.md): Build automations by connecting triggers, actions, and data. - [Quickstart](https://learn.workflow.dog/quickstart.md): Build and run a live HTTP workflow in a few minutes. - [Workflows](https://learn.workflow.dog/essentials/workflows.md): Understand the graph, editing model, and execution rules behind every WorkflowDog automation. - [Triggers](https://learn.workflow.dog/essentials/triggers.md): Choose, configure, and use the event that starts a workflow. - [Actions](https://learn.workflow.dog/essentials/actions.md): Add, configure, and connect the nodes that perform work in a workflow. - [Connect Data](https://learn.workflow.dog/building/connect-data.md): Pass values between actions, configure fixed inputs, and expose the exact outputs you need. - [Use Meta Controls](https://learn.workflow.dog/building/meta-controls.md): Gate, order, observe, and debug any action without changing its core behavior. - [Branch Workflows](https://learn.workflow.dog/building/branching.md): Choose values, route execution, and combine conditions without hiding control flow. - [Work With Lists and Loops](https://learn.workflow.dog/building/lists-and-loops.md): Build, transform, inspect, and process collections without losing order or type information. - [Build Sub-Workflows](https://learn.workflow.dog/building/sub-workflows.md): Extract reusable workflow logic, define its input and output, and call it safely. - [Files and Structured Data](https://learn.workflow.dog/building/files-and-structured-data.md): Move between files, text, objects, JSON, YAML, and data URLs without losing the intended format. - [Organize the Canvas](https://learn.workflow.dog/building/organizing-the-canvas.md): Select, arrange, label, highlight, and pin nodes as workflows grow. - [HTTP endpoints and webhooks](https://learn.workflow.dog/guides/http-webhooks.md): Receive requests with URL, Webhook, or Form Submission triggers and return a response. - [Scheduling workflows](https://learn.workflow.dog/guides/scheduling.md): Choose between recurring schedules and one-time delayed sub-workflow runs. - [Service triggers](https://learn.workflow.dog/guides/service-triggers.md): Start workflows from Gmail, Outlook, Google Forms, and TidyCal events. - [External triggers](https://learn.workflow.dog/essentials/external-triggers.md): Configure and operate provider-backed event subscriptions safely. - [Testing workflows](https://learn.workflow.dog/guides/testing-workflows.md): Test a workflow with representative trigger data and verify each branch. - [Enable and pause workflows](https://learn.workflow.dog/essentials/enable-and-pause.md): Control whether new trigger events are allowed to execute a workflow. - [Workflow runs](https://learn.workflow.dog/essentials/workflow-runs.md): Inspect run history, understand statuses, replay inputs, and cancel scheduled work. - [Troubleshoot workflow runs](https://learn.workflow.dog/guides/troubleshooting-runs.md): Find the cause of failed runs and node errors, fix the current workflow, and test safely. - [Projects](https://learn.workflow.dog/essentials/projects.md): Organize workflows, data, integrations, and teammates in a project. - [Integrations](https://learn.workflow.dog/essentials/integrations.md): Connect, select, reconnect, swap, and disconnect external accounts. - [Project variables](https://learn.workflow.dog/essentials/variables.md): Persist values between workflow runs and share them across a project. - [Team and permissions](https://learn.workflow.dog/essentials/team-and-permissions.md): Invite teammates and control who can view or change a project. - [Usage and billing](https://learn.workflow.dog/essentials/usage-and-billing.md): Understand run credits, pay-as-you-go usage, seats, and billing failures. - [Build an HTTP Endpoint](https://learn.workflow.dog/recipes/http-endpoint.md): Receive an HTTP request, process its data, and return a controlled response. - [Build a Scheduled Automation](https://learn.workflow.dog/recipes/scheduled-automation.md): Run a workflow repeatedly or queue another workflow for a future time. - [Route Incoming Email](https://learn.workflow.dog/recipes/email-routing.md): Classify an incoming message and send it down the right workflow branch. - [Use Structured AI Output](https://learn.workflow.dog/recipes/structured-ai.md): Turn unstructured text or files into predictable fields for later actions. - [Actions](https://learn.workflow.dog/reference/actions/index.md): Reference documentation for every action available in WorkflowDog. - [Append to List in Project Variables](https://learn.workflow.dog/reference/actions/core/append-to-project-var-list.md): Add values to a project-wide persistent list. - [Callable Workflow](https://learn.workflow.dog/reference/actions/core/workflow.md): Select a callable workflow and expose it as a value. - [Comment](https://learn.workflow.dog/reference/actions/core/comment.md): Add explanatory Markdown to the workflow canvas. - [Convert Encoding](https://learn.workflow.dog/reference/actions/core/convert-encoding.md): Decode text from one byte encoding and encode it as another. - [Convert to JSON](https://learn.workflow.dog/reference/actions/core/json-stringify.md): Serialize a workflow value as JSON text. - [Convert to Number](https://learn.workflow.dog/reference/actions/core/to-number.md): Coerce a value into a number. - [Convert to True/False](https://learn.workflow.dog/reference/actions/core/to-boolean.md): Convert an arbitrary value into a Boolean. - [Convert to YAML](https://learn.workflow.dog/reference/actions/core/yaml-stringify.md): Serialize a workflow value as YAML text. - [Data from Trigger](https://learn.workflow.dog/reference/actions/core/trigger-data.md): Access the data that started the current workflow run. - [Format Number](https://learn.workflow.dog/reference/actions/core/format-number.md): Render a number as localized decimal, currency, percentage, or compact text. - [Get Project Variable](https://learn.workflow.dog/reference/actions/core/get-project-var.md): Load a persistent value shared across the current project. - [Is Null?](https://learn.workflow.dog/reference/actions/core/is-null.md): Check whether a value is null or missing. - [Is Number?](https://learn.workflow.dog/reference/actions/core/is-number.md): Check whether a value has the Number type. - [Is True/False?](https://learn.workflow.dog/reference/actions/core/is-boolean.md): Check whether a value is a Boolean. - [Loop Workflow](https://learn.workflow.dog/reference/actions/core/loop-workflow.md): Run a callable workflow once for each item in a list. - [Null](https://learn.workflow.dog/reference/actions/core/null.md): Produce an explicit null value. - [Number](https://learn.workflow.dog/reference/actions/core/number.md): Provide a fixed numeric value. - [Parse JSON](https://learn.workflow.dog/reference/actions/core/json-parse.md): Convert JSON text into a workflow value. - [Return Data](https://learn.workflow.dog/reference/actions/core/return-data.md): Return a value to the workflow that called this sub-workflow. - [Run Workflow](https://learn.workflow.dog/reference/actions/core/run-workflow.md): Run a callable workflow and wait for its returned data. - [Schedule Workflow](https://learn.workflow.dog/reference/actions/core/schedule-workflow.md): Queue a callable workflow to run at a future date and time. - [Send Email](https://learn.workflow.dog/reference/actions/core/send-email.md): Send a Markdown email to members of the current project. - [Set Project Variable](https://learn.workflow.dog/reference/actions/core/set-project-var.md): Store a persistent value shared across the current project. - [Text](https://learn.workflow.dog/reference/actions/core/text.md): Provide fixed text or render a Handlebars template. - [Third-Party Account](https://learn.workflow.dog/reference/actions/core/account.md): Select a connected account and pass it to another action. - [Throw Error](https://learn.workflow.dog/reference/actions/core/throw-error.md): Fail the current workflow run with a custom message. - [True/False](https://learn.workflow.dog/reference/actions/core/boolean.md): Provide a fixed Boolean value. - [Collapse Whitespace](https://learn.workflow.dog/reference/actions/text/collpase-whitespace.md): Limit consecutive spaces and line breaks while preserving the text. - [Contains Text](https://learn.workflow.dog/reference/actions/text/contains-text.md): Check whether one piece of text appears anywhere inside another. - [Convert to Text](https://learn.workflow.dog/reference/actions/text/to-string.md): Coerce a workflow value into text. - [Count Occurrences](https://learn.workflow.dog/reference/actions/text/count-occurrences.md): Count literal text or regular-expression matches inside a string. - [Ends With](https://learn.workflow.dog/reference/actions/text/ends-with.md): Check whether text finishes with a specific sequence of characters. - [Extract Text with Regex](https://learn.workflow.dog/reference/actions/text/search-regex.md): Find every regex match and return its capture groups. - [Generate UUID](https://learn.workflow.dog/reference/actions/text/generate-uuid.md): Create a random version 4 UUID. - [Is Email?](https://learn.workflow.dog/reference/actions/text/is-email.md): Check whether text has a valid email-address format. - [Is Text?](https://learn.workflow.dog/reference/actions/text/is-string.md): Check whether a workflow value is text. - [Is URL?](https://learn.workflow.dog/reference/actions/text/is-url.md): Check whether text is a valid absolute URL. - [Is UUID?](https://learn.workflow.dog/reference/actions/text/is-uuid.md): Check whether text is a valid UUID. - [Join Text](https://learn.workflow.dog/reference/actions/text/join.md): Combine multiple text values with an optional separator. - [Line Break](https://learn.workflow.dog/reference/actions/text/newline.md): Create text containing a chosen number of line breaks. - [Lowercase](https://learn.workflow.dog/reference/actions/text/lowercase.md): Convert every letter in a string to lowercase. - [Matches Regex](https://learn.workflow.dog/reference/actions/text/matches-regex.md): Test whether a regular expression matches any part of a string. - [Random Text](https://learn.workflow.dog/reference/actions/text/random.md): Generate a random string from selected character groups. - [Regular Expression](https://learn.workflow.dog/reference/actions/text/regex.md): Define a reusable regular-expression pattern and flags. - [Replace Text](https://learn.workflow.dog/reference/actions/text/replace.md): Replace literal text or regex matches inside a string. - [Slice Text](https://learn.workflow.dog/reference/actions/text/slice.md): Extract part of a string by start and end index. - [Split Text](https://learn.workflow.dog/reference/actions/text/split.md): Break a string into a list using literal text or a regex separator. - [Starts With](https://learn.workflow.dog/reference/actions/text/starts-with.md): Check whether text begins with a specific sequence of characters. - [Text Length](https://learn.workflow.dog/reference/actions/text/length.md): Count the characters in a piece of text. - [Title Case](https://learn.workflow.dog/reference/actions/text/titlecase.md): Turn words and identifiers into start-cased text. - [Trim Whitespace](https://learn.workflow.dog/reference/actions/text/trim.md): Remove whitespace from both ends of a string. - [Uppercase](https://learn.workflow.dog/reference/actions/text/uppercase.md): Convert every letter in a string to uppercase. - [Absolute Value](https://learn.workflow.dog/reference/actions/math/absolute.md): Return a number's distance from zero. - [Add](https://learn.workflow.dog/reference/actions/math/add.md): Add two or more numbers. - [Ceil](https://learn.workflow.dog/reference/actions/math/ceil.md): Round a number upward to the nearest integer. - [Clamp](https://learn.workflow.dog/reference/actions/math/clamp.md): Keep a number between minimum and maximum limits. - [Cosine](https://learn.workflow.dog/reference/actions/math/cos.md): Calculate the cosine of an angle in radians or degrees. - [Divide](https://learn.workflow.dog/reference/actions/math/divide.md): Divide two numbers with decimal or integer division. - [E](https://learn.workflow.dog/reference/actions/math/e.md): Return Euler's number, the base of natural logarithms. - [Floor](https://learn.workflow.dog/reference/actions/math/floor.md): Round a number downward to the nearest integer. - [Greater Than](https://learn.workflow.dog/reference/actions/math/greater-than.md): Check whether one number is larger than another. - [Greater Than or Equal](https://learn.workflow.dog/reference/actions/math/greater-than-or-equal.md): Check whether one number is at least another. - [Inverse](https://learn.workflow.dog/reference/actions/math/inverse.md): Calculate the reciprocal of a nonzero number. - [Less Than](https://learn.workflow.dog/reference/actions/math/less-than.md): Check whether one number is smaller than another. - [Less Than or Equal](https://learn.workflow.dog/reference/actions/math/less-than-or-equal.md): Check whether one number is no larger than another. - [Logarithm](https://learn.workflow.dog/reference/actions/math/log.md): Calculate a natural logarithm or a logarithm in a chosen base. - [Map Range](https://learn.workflow.dog/reference/actions/math/map-range.md): Convert a number's position in one range to another range. - [Max](https://learn.workflow.dog/reference/actions/math/max.md): Return the largest value from two or more numbers. - [Min](https://learn.workflow.dog/reference/actions/math/min.md): Return the smallest value from two or more numbers. - [Multiply](https://learn.workflow.dog/reference/actions/math/multiply.md): Multiply two or more numbers together. - [Negate](https://learn.workflow.dog/reference/actions/math/negate.md): Reverse the sign of a number. - [Number in Range](https://learn.workflow.dog/reference/actions/math/in-range.md): Check whether a number falls inside inclusive bounds. - [Pi](https://learn.workflow.dog/reference/actions/math/pi.md): Return the mathematical constant π. - [Power](https://learn.workflow.dog/reference/actions/math/power.md): Raise a base number to an exponent. - [Random Number](https://learn.workflow.dog/reference/actions/math/random.md): Generate a random decimal or whole number within a range. - [Round](https://learn.workflow.dog/reference/actions/math/round.md): Round a number to a chosen number of decimal places. - [Sine](https://learn.workflow.dog/reference/actions/math/sin.md): Calculate the sine of an angle in radians or degrees. - [Square Root](https://learn.workflow.dog/reference/actions/math/sqrt.md): Calculate the principal square root of a number. - [Subtract](https://learn.workflow.dog/reference/actions/math/subtract.md): Subtract each later number from the first. - [Tangent](https://learn.workflow.dog/reference/actions/math/tan.md): Calculate the tangent of an angle in radians or degrees. - [Append to List](https://learn.workflow.dog/reference/actions/arrays/append.md): Add one or more items to the end of a list. - [Chunk List](https://learn.workflow.dog/reference/actions/arrays/chunk.md): Split a list into smaller lists of a fixed maximum size. - [Create List](https://learn.workflow.dog/reference/actions/arrays/build.md): Combine individual values into a new list. - [Create Range](https://learn.workflow.dog/reference/actions/arrays/range.md): Create a regularly spaced list of numbers. - [Empty List](https://learn.workflow.dog/reference/actions/arrays/empty-array.md): Produce a list containing no items. - [Filter With Workflow](https://learn.workflow.dog/reference/actions/arrays/filter-with-workflow.md): Keep the list items for which another workflow returns a truthy value. - [Find With Workflow](https://learn.workflow.dog/reference/actions/arrays/find-with-workflow.md): Return the first list item accepted by another workflow. - [Flatten List](https://learn.workflow.dog/reference/actions/arrays/flatten.md): Combine nested lists into a single list. - [Get First Item](https://learn.workflow.dog/reference/actions/arrays/get-first-item.md): Return the item at the beginning of a list. - [Get Items by Index](https://learn.workflow.dog/reference/actions/arrays/get-items.md): Expose selected list positions as individual outputs. - [Get Last Item](https://learn.workflow.dog/reference/actions/arrays/get-last-item.md): Return the item at the end of a list. - [Get Length](https://learn.workflow.dog/reference/actions/arrays/length.md): Count the number of items in a list. - [Get Unique Items](https://learn.workflow.dog/reference/actions/arrays/unique.md): Remove duplicate values while keeping their first occurrence. - [Insert at Index](https://learn.workflow.dog/reference/actions/arrays/insert-at-index.md): Insert one or more items at a chosen list position. - [Is List?](https://learn.workflow.dog/reference/actions/arrays/is-array.md): Check whether a value is a list. - [Join Lists](https://learn.workflow.dog/reference/actions/arrays/join.md): Concatenate multiple lists into one. - [List Contains](https://learn.workflow.dog/reference/actions/arrays/list-contains.md): Check whether a list contains a value. - [Prepend to List](https://learn.workflow.dog/reference/actions/arrays/prepend.md): Add one or more items to the beginning of a list. - [Repeat Elements](https://learn.workflow.dog/reference/actions/arrays/repeat.md): Repeat a sequence of list items a chosen number of times. - [Reverse List](https://learn.workflow.dog/reference/actions/arrays/reverse.md): Return a list with its item order reversed. - [Shuffle List](https://learn.workflow.dog/reference/actions/arrays/shuffle.md): Randomly reorder the items in a list. - [Slice List](https://learn.workflow.dog/reference/actions/arrays/slice.md): Extract a section of a list by position. - [Sort List](https://learn.workflow.dog/reference/actions/arrays/sort.md): Sort numbers, strings, or object properties. - [Zip Lists](https://learn.workflow.dog/reference/actions/arrays/zip.md): Combine matching positions from multiple lists. - [Are Objects Equal?](https://learn.workflow.dog/reference/actions/objects/compare-objects.md): Deeply compare two objects for equivalent contents. - [Count Properties](https://learn.workflow.dog/reference/actions/objects/count-properties.md): Count an object's top-level properties. - [Create Object](https://learn.workflow.dog/reference/actions/objects/build.md): Build an object from a repeatable list of keys and values. - [Delete Properties](https://learn.workflow.dog/reference/actions/objects/delete-properties.md): Return a copy of an object without selected properties. - [Empty Object](https://learn.workflow.dog/reference/actions/objects/empty-object.md): Provide a new object with no properties. - [Find Matching Object](https://learn.workflow.dog/reference/actions/objects/find-matching-object.md): Find the first or all objects whose property meets a condition. - [Get Keys as List](https://learn.workflow.dog/reference/actions/objects/get-keys.md): Return an object's top-level property names in a list. - [Get Properties](https://learn.workflow.dog/reference/actions/objects/get-properties.md): Expose selected values from one object as separate outputs. - [Get Properties From Each](https://learn.workflow.dog/reference/actions/objects/get-properties-for-each.md): Collect selected property values across a list of objects. - [Get Values as List](https://learn.workflow.dog/reference/actions/objects/get-values.md): Return an object's top-level values in a list. - [Has Key?](https://learn.workflow.dog/reference/actions/objects/has-key.md): Check whether an object contains a property or nested path. - [Is Empty?](https://learn.workflow.dog/reference/actions/objects/is-empty.md): Check whether an object has no top-level properties. - [Is Object?](https://learn.workflow.dog/reference/actions/objects/is-object.md): Check whether a value has JavaScript's non-null object type. - [Map Keys](https://learn.workflow.dog/reference/actions/objects/map-keys.md): Rename or move property paths within an object. - [Map Keys For Each](https://learn.workflow.dog/reference/actions/objects/map-keys-for-each.md): Apply the same key-path mappings to every object in a list. - [Merge Objects](https://learn.workflow.dog/reference/actions/objects/merge-objects.md): Combine objects in order with optional deep merging. - [Object](https://learn.workflow.dog/reference/actions/objects/object.md): Build and merge one or more property sets into a final object. - [Pick Properties](https://learn.workflow.dog/reference/actions/objects/pick-properties.md): Return a new object containing only selected property paths. - [Set Properties](https://learn.workflow.dog/reference/actions/objects/set-properties.md): Add or replace properties on a copy of an object. - [Transform Properties](https://learn.workflow.dog/reference/actions/objects/transform-properties.md): Run another workflow once for each property in an object. - [And](https://learn.workflow.dog/reference/actions/logic/and.md): Return true only when every input is true. - [Buffer](https://learn.workflow.dog/reference/actions/logic/buffer.md): Pass a Boolean value through unchanged. - [Equals](https://learn.workflow.dog/reference/actions/logic/equal.md): Check whether two values are strictly equal. - [NAND](https://learn.workflow.dog/reference/actions/logic/nand.md): Return false only when every input is true. - [NOR](https://learn.workflow.dog/reference/actions/logic/nor.md): Return true only when every input is false. - [Not](https://learn.workflow.dog/reference/actions/logic/not.md): Invert a Boolean value. - [Not Equals](https://learn.workflow.dog/reference/actions/logic/not-equal.md): Check whether two values are not strictly equal. - [Or](https://learn.workflow.dog/reference/actions/logic/or.md): Return true when at least one input is true. - [XNOR](https://learn.workflow.dog/reference/actions/logic/xnor.md): Return true when an even number of inputs are true. - [XOR](https://learn.workflow.dog/reference/actions/logic/xor.md): Return true when an odd number of inputs are true. - [Choose Value](https://learn.workflow.dog/reference/actions/control/mux.md): Choose between two values using a Boolean condition. - [Choose Value by Case](https://learn.workflow.dog/reference/actions/control/mux-case.md): Map an exact text match to a corresponding output value. - [Fallback](https://learn.workflow.dog/reference/actions/control/coalesce.md): Choose the first usable value from an ordered set of alternatives. - [Is Falsy?](https://learn.workflow.dog/reference/actions/control/is-falsy.md): Convert JavaScript-style falsiness into a Boolean result. - [Is Truthy?](https://learn.workflow.dog/reference/actions/control/is-truthy.md): Convert JavaScript-style truthiness into a Boolean result. - [Passthrough](https://learn.workflow.dog/reference/actions/control/passthrough.md): Expose an input unchanged as an output. - [Route Value](https://learn.workflow.dog/reference/actions/control/demux.md): Send a value to one of two outputs based on a condition. - [Balanced Select](https://learn.workflow.dog/reference/actions/selector/balanced.md): Choose the option with the lowest current balance. - [Random Select](https://learn.workflow.dog/reference/actions/selector/random.md): Choose one option at random on each run. - [Round Robin](https://learn.workflow.dog/reference/actions/selector/round-robin.md): Cycle through options in order across workflow runs. - [Current Date & Time](https://learn.workflow.dog/reference/actions/datetime/current.md): Capture the date and time when the action runs. - [Date & Time](https://learn.workflow.dog/reference/actions/datetime/datetime.md): Provide a fixed date and time to a workflow. - [Date from Text](https://learn.workflow.dog/reference/actions/datetime/natural-language-date.md): Parse a date from a natural-language expression. - [Format Date/Time](https://learn.workflow.dog/reference/actions/datetime/format-date.md): Convert a date and time into display-ready text. - [Relative Date](https://learn.workflow.dog/reference/actions/datetime/relative-date.md): Add a duration to a starting date and time. - [Build URL](https://learn.workflow.dog/reference/actions/utilities/build-url.md): Construct an absolute URL from a base, path, query parameters, and fragment. - [Decode URI Component](https://learn.workflow.dog/reference/actions/utilities/decode-uri-component.md): Convert percent-encoded URL text back to readable text. - [Delay](https://learn.workflow.dog/reference/actions/utilities/delay.md): Pause the current workflow for up to five seconds. - [Encode URI Component](https://learn.workflow.dog/reference/actions/utilities/encode-uri-component.md): Percent-encode text for use as one part of a URL. - [Encode URI Parameters](https://learn.workflow.dog/reference/actions/utilities/encode-uri-params.md): Turn parameter entries into a URL query string. - [Escape HTML](https://learn.workflow.dog/reference/actions/utilities/escape-html.md): Replace HTML-sensitive characters with safe entities. - [Execute Code](https://learn.workflow.dog/reference/actions/utilities/execute-code.md): Run custom JavaScript or TypeScript with Bun and return named exports. - [HTML to Markdown](https://learn.workflow.dog/reference/actions/utilities/html-to-md.md): Convert HTML markup into Markdown text. - [HTML to Text](https://learn.workflow.dog/reference/actions/utilities/html-to-text.md): Convert HTML markup into readable plain text. - [Markdown to HTML](https://learn.workflow.dog/reference/actions/utilities/markdown-to-html.md): Render Markdown text as HTML. - [Resolve Account Secret](https://learn.workflow.dog/reference/actions/utilities/resolve-account-secret.md): Expose the credential data stored in a connected third-party account. - [Validate JSON Schema](https://learn.workflow.dog/reference/actions/utilities/validate-json-schema.md): Validate any value against JSON Schema and expose validation results. - [Close Window](https://learn.workflow.dog/reference/actions/http/close-window.md): Return a small HTML response that asks the browser window to close. - [Make HTTP Request](https://learn.workflow.dog/reference/actions/http/fetch.md): Call an external HTTP endpoint and use its body, status, and headers. - [Redirect](https://learn.workflow.dog/reference/actions/http/redirect.md): Redirect an HTTP caller to another URL. - [Respond File](https://learn.workflow.dog/reference/actions/http/respond-file.md): Return a file for display or download from an HTTP workflow. - [Respond HTML](https://learn.workflow.dog/reference/actions/http/respond-html.md): Return an HTML document from a URL or form workflow. - [Respond JSON](https://learn.workflow.dog/reference/actions/http/respond-json.md): Serialize a value as JSON and return it to an HTTP caller. - [Respond Status](https://learn.workflow.dog/reference/actions/http/respond-status.md): Finish an HTTP request with a status code and no custom body. - [Respond Text](https://learn.workflow.dog/reference/actions/http/respond.md): Finish an HTTP-triggered workflow with a text response. - [Convert Data URL to File](https://learn.workflow.dog/reference/actions/files/data-url-to-file.md): Decode a base64 data URL into a file. - [Convert File to Data URL](https://learn.workflow.dog/reference/actions/files/file-to-data-url.md): Encode a file as a base64 data URL. - [Create Text File](https://learn.workflow.dog/reference/actions/files/create-text-file.md): Turn string content into a named file. - [Download File from URL](https://learn.workflow.dog/reference/actions/files/download-from-url.md): Fetch a public URL and return its response as a file. - [Rename File](https://learn.workflow.dog/reference/actions/files/rename.md): Create a copy of a file with a different name. - [Adjust Colors](https://learn.workflow.dog/reference/actions/images/adjust-colors.md): Change an image's brightness, saturation, contrast, and hue. - [Blur Image](https://learn.workflow.dog/reference/actions/images/blur.md): Apply a configurable Gaussian blur to an image. - [Convert Image Format](https://learn.workflow.dog/reference/actions/images/convert-format.md): Convert an image to JPEG, PNG, WebP, AVIF, or TIFF. - [Crop Image](https://learn.workflow.dog/reference/actions/images/crop.md): Extract a rectangular region from an image by pixel coordinates. - [Flip Image](https://learn.workflow.dog/reference/actions/images/flip.md): Mirror an image horizontally, vertically, or in both directions. - [Generate Gradient](https://learn.workflow.dog/reference/actions/images/generate-gradient.md): Create a linear or radial gradient image from a list of colors. - [Get Image Dimensions](https://learn.workflow.dog/reference/actions/images/get-dimensions.md): Read an image's pixel width, height, and aspect ratio. - [Invert Colors](https://learn.workflow.dog/reference/actions/images/invert.md): Create a color-negative version of an image. - [Modify EXIF](https://learn.workflow.dog/reference/actions/images/modify-exif.md): Strip or preserve image metadata and orientation information. - [Overlay Images](https://learn.workflow.dog/reference/actions/images/overlay.md): Scale and place a foreground image over a background image. - [Resize Image](https://learn.workflow.dog/reference/actions/images/resize.md): Resize an image in pixels or as a percentage with configurable fit behavior. - [Rotate Image](https://learn.workflow.dog/reference/actions/images/rotate.md): Rotate an image clockwise and choose the color behind exposed corners. - [Sharpen Image](https://learn.workflow.dog/reference/actions/images/sharpen.md): Increase edge contrast with a configurable sharpening effect. - [Autocomplete Places](https://learn.workflow.dog/reference/actions/geo/autocomplete-places.md): Find likely places and search suggestions from partial text. - [Validate Address](https://learn.workflow.dog/reference/actions/geo/refine-address.md): Standardize an address and return location and deliverability details. - [Run Query](https://learn.workflow.dog/reference/actions/postgres/run-query.md): Execute a parameterized SQL query on PostgreSQL. - [Chat](https://learn.workflow.dog/reference/actions/openai/chat.md): Send a prompt, files, and optional instructions to an OpenAI model. - [Classify Text](https://learn.workflow.dog/reference/actions/openai/classify.md): Assign text to one or more categories with OpenAI. - [Extract Text](https://learn.workflow.dog/reference/actions/openai/extract.md): Pull a configured set of text fields from unstructured content. - [Generate Image](https://learn.workflow.dog/reference/actions/openai/generate-image.md): Create an image from a prompt with DALL·E or GPT Image. - [Produce Text](https://learn.workflow.dog/reference/actions/openai/produce.md): Generate one clean text result for each prompt. - [Text to Speech](https://learn.workflow.dog/reference/actions/openai/tts.md): Turn text into a spoken audio file with OpenAI. - [Transcribe Audio](https://learn.workflow.dog/reference/actions/openai/transcribe.md): Convert an audio file to text with OpenAI. - [Yes/No Question](https://learn.workflow.dog/reference/actions/openai/binary-decision.md): Ask an OpenAI model for a boolean decision. - [Chat](https://learn.workflow.dog/reference/actions/google-genai/chat.md): Generate a text response with a Google Gemini model. - [Generate Image](https://learn.workflow.dog/reference/actions/google-genai/generate-image.md): Create an image with a Google Gemini image model. - [Crawl Website](https://learn.workflow.dog/reference/actions/firecrawl/crawl.md): Crawl multiple pages from a site and return content, links, and screenshots. - [Scrape URL](https://learn.workflow.dog/reference/actions/firecrawl/scrape.md): Extract page content, links, and an optional screenshot with Firecrawl. - [Search Web](https://learn.workflow.dog/reference/actions/firecrawl/search.md): Search the web with Firecrawl and return titles, descriptions, and URLs. - [Scrape URL](https://learn.workflow.dog/reference/actions/scrapfly/scrape.md): Extract page content through Scrapfly with rendering and anti-bot controls. - [Take Screenshot](https://learn.workflow.dog/reference/actions/scrapfly/screenshot.md): Capture a rendered webpage as an image with Scrapfly. - [Get Links on Page](https://learn.workflow.dog/reference/actions/cloudflare/links.md): Render a web page and return the links Cloudflare finds on it. - [Get Page Content](https://learn.workflow.dog/reference/actions/cloudflare/content.md): Render a URL with Cloudflare Browser Rendering and return HTML, Markdown, JSON, or a PDF. - [HTML to PDF](https://learn.workflow.dog/reference/actions/cloudflare/html-to-pdf.md): Render an HTML document as a PDF with Cloudflare Browser Rendering. - [HTML to Screenshot](https://learn.workflow.dog/reference/actions/cloudflare/html-to-screenshot.md): Render HTML and capture it as a PNG, JPEG, or WebP image. - [Take Screenshot](https://learn.workflow.dog/reference/actions/cloudflare/screenshot.md): Capture a rendered web page as a PNG, JPEG, or WebP image. - [Add Label](https://learn.workflow.dog/reference/actions/gmail/add-label.md): Apply a Gmail label to one message. - [Delete Draft](https://learn.workflow.dog/reference/actions/gmail/delete-draft.md): Permanently delete a Gmail draft. - [Draft Email](https://learn.workflow.dog/reference/actions/gmail/draft-email.md): Create an unsent Gmail draft with optional recipients and attachments. - [Draft Reply](https://learn.workflow.dog/reference/actions/gmail/draft-reply.md): Create an unsent reply draft for a Gmail message. - [Forward](https://learn.workflow.dog/reference/actions/gmail/forward.md): Forward a Gmail message, including its original attachments. - [Get Message by ID](https://learn.workflow.dog/reference/actions/gmail/get-message.md): Retrieve Gmail message content and optionally download its attachments. - [Has Label?](https://learn.workflow.dog/reference/actions/gmail/has-label.md): Check whether a Gmail message has a specific label. - [Is Important?](https://learn.workflow.dog/reference/actions/gmail/is-important.md): Check whether Gmail marks a message as important. - [Is Starred?](https://learn.workflow.dog/reference/actions/gmail/is-starred.md): Check whether a Gmail message is starred. - [Is Unread?](https://learn.workflow.dog/reference/actions/gmail/is-unread.md): Check whether a Gmail message is unread. - [Mark as Important](https://learn.workflow.dog/reference/actions/gmail/mark-as-important.md): Mark one Gmail message as important. - [Mark as Read](https://learn.workflow.dog/reference/actions/gmail/mark-as-read.md): Mark one Gmail message as read. - [Mark as Unread](https://learn.workflow.dog/reference/actions/gmail/mark-as-unread.md): Mark one Gmail message as unread. - [Remove Label](https://learn.workflow.dog/reference/actions/gmail/remove-label.md): Remove an existing Gmail label from one message. - [Remove Reply Text](https://learn.workflow.dog/reference/actions/gmail/remove-reply-text.md): Attempt to remove quoted reply history from plain-text email content. - [Search Messages](https://learn.workflow.dog/reference/actions/gmail/search-messages.md): Find Gmail message IDs using Gmail search syntax and date filters. - [Send Email](https://learn.workflow.dog/reference/actions/gmail/send-email.md): Send a plain-text or HTML email from a connected Gmail account. - [Send Reply](https://learn.workflow.dog/reference/actions/gmail/reply.md): Reply to a specific Gmail message with optional attachments. - [Send Reply to Thread](https://learn.workflow.dog/reference/actions/gmail/reply-thread.md): Reply to the most recent inbox message in a Gmail thread. - [Star Message](https://learn.workflow.dog/reference/actions/gmail/star.md): Add Gmail's star to one message. - [Trash Message](https://learn.workflow.dog/reference/actions/gmail/trash-message.md): Move one Gmail message to Trash. - [Unmark as Important](https://learn.workflow.dog/reference/actions/gmail/unmark-as-important.md): Remove Gmail's important marker from one message. - [Unstar Message](https://learn.workflow.dog/reference/actions/gmail/unstar.md): Remove Gmail's star from one message. - [Untrash Message](https://learn.workflow.dog/reference/actions/gmail/untrash-message.md): Restore one Gmail message from Trash. - [Append Values to Range](https://learn.workflow.dog/reference/actions/google-sheets/append-values.md): Append one or more rows at the end of a Google Sheets data range. - [Clear Range](https://learn.workflow.dog/reference/actions/google-sheets/clear-range.md): Remove values from a Google Sheets range without deleting its cells. - [Create Range from Parts](https://learn.workflow.dog/reference/actions/google-sheets/build-range.md): Build Google Sheets A1 notation from row and column components. - [Create Sheet](https://learn.workflow.dog/reference/actions/google-sheets/create-sheet.md): Add a blank sheet to an existing Google Spreadsheet. - [Create Spreadsheet](https://learn.workflow.dog/reference/actions/google-sheets/create-spreadsheet.md): Create a new Google Spreadsheet. - [Create Table](https://learn.workflow.dog/reference/actions/google-sheets/create-table.md): Create a new sheet with headers and optional header formatting. - [Delete Row(s)](https://learn.workflow.dog/reference/actions/google-sheets/delete-row.md): Delete one or more numbered rows from a Google Sheet. - [Delete Sheet](https://learn.workflow.dog/reference/actions/google-sheets/delete-sheet.md): Delete a sheet tab from a Google Spreadsheet. - [Find Table Row(s) by Column](https://learn.workflow.dog/reference/actions/google-sheets/find-rows-by-column.md): Find Google Sheets table rows using one or more typed column filters. - [Get First N Table Rows](https://learn.workflow.dog/reference/actions/google-sheets/get-first-n-table-rows.md): Read the first N data rows below a Google Sheets header. - [Get Last N Table Rows](https://learn.workflow.dog/reference/actions/google-sheets/get-last-n-table-rows.md): Read the last N populated rows from a Google Sheets table. - [Get Spreadsheet Details](https://learn.workflow.dog/reference/actions/google-sheets/get-spreadsheet.md): Retrieve a Google Spreadsheet's title, URL, ID, and sheets. - [Get Table Row Range(s)](https://learn.workflow.dog/reference/actions/google-sheets/get-table-row-range.md): Read one or more inclusive row ranges as table objects. - [Get Table Row(s)](https://learn.workflow.dog/reference/actions/google-sheets/get-table-row.md): Read numbered Google Sheets rows as objects keyed by column headers. - [Highlight Range](https://learn.workflow.dog/reference/actions/google-sheets/highlight-range.md): Set the background color of a Google Sheets range. - [Insert Table Rows](https://learn.workflow.dog/reference/actions/google-sheets/insert-table-rows.md): Append, insert, or overwrite rows using Google Sheets column headers. - [Parse Range](https://learn.workflow.dog/reference/actions/google-sheets/parse-range.md): Split Google Sheets A1 notation into sheet, row, and column fields. - [Read Range](https://learn.workflow.dog/reference/actions/google-sheets/read-range.md): Read a Google Sheets range as rows or columns. - [Update Table Row(s)](https://learn.workflow.dog/reference/actions/google-sheets/update-table-row.md): Update selected columns in one or more numbered Google Sheets rows. - [Write Range](https://learn.workflow.dog/reference/actions/google-sheets/write-range.md): Write user-entered values into a Google Sheets range. - [Check Availability](https://learn.workflow.dog/reference/actions/google-calendar/check-availability.md): Check whether a Google Calendar has any conflicts during a specific time. - [Create Event](https://learn.workflow.dog/reference/actions/google-calendar/create-event.md): Create an event in Google Calendar and optionally invite attendees. - [Find Free Time](https://learn.workflow.dog/reference/actions/google-calendar/find-free-time.md): Find open periods of a minimum length in a Google Calendar. - [Get Event](https://learn.workflow.dog/reference/actions/google-calendar/get-event.md): Retrieve the details of one Google Calendar event. - [List Events](https://learn.workflow.dog/reference/actions/google-calendar/list-events.md): List Google Calendar events in chronological order. - [Create Form](https://learn.workflow.dog/reference/actions/google-forms/create-form.md): Create a blank Google Form with a title. - [Get Form Details](https://learn.workflow.dog/reference/actions/google-forms/get-form.md): Retrieve metadata and settings for a Google Form. - [List Boards](https://learn.workflow.dog/reference/actions/trello/list-boards.md): List Trello boards available to the connected account. - [List Board Lists](https://learn.workflow.dog/reference/actions/trello/list-board-lists.md): List the columns on a Trello board. - [List Board Members](https://learn.workflow.dog/reference/actions/trello/list-board-members.md): List members of a Trello board. - [Create Card](https://learn.workflow.dog/reference/actions/trello/create-card.md): Create a card in a Trello list. - [Get Card](https://learn.workflow.dog/reference/actions/trello/get-card.md): Get a Trello card by ID, short link, or URL. - [Get List Cards](https://learn.workflow.dog/reference/actions/trello/get-list-cards.md): Get cards from a Trello list. - [Search Cards](https://learn.workflow.dog/reference/actions/trello/search-cards.md): Search Trello cards by text. - [Update Card](https://learn.workflow.dog/reference/actions/trello/update-card.md): Edit, move, complete, archive, or reopen a Trello card. - [Add Labels](https://learn.workflow.dog/reference/actions/trello/add-labels.md): Add existing labels to a Trello card. - [Remove Labels](https://learn.workflow.dog/reference/actions/trello/remove-labels.md): Remove selected labels from a Trello card. - [Add Members](https://learn.workflow.dog/reference/actions/trello/add-members.md): Assign board members to a Trello card. - [Remove Members](https://learn.workflow.dog/reference/actions/trello/remove-members.md): Unassign selected members from a Trello card. - [Add Comment](https://learn.workflow.dog/reference/actions/trello/add-comment.md): Add a comment to a Trello card. - [List Comments](https://learn.workflow.dog/reference/actions/trello/list-comments.md): List comments on a Trello card. - [Add Attachment](https://learn.workflow.dog/reference/actions/trello/add-attachment.md): Attach a public URL to a Trello card. - [List Attachments](https://learn.workflow.dog/reference/actions/trello/list-attachments.md): List attachments on a Trello card. - [Delete Attachment](https://learn.workflow.dog/reference/actions/trello/delete-attachment.md): Permanently remove an attachment from a Trello card. - [Create Checklist](https://learn.workflow.dog/reference/actions/trello/create-checklist.md): Create a checklist on a Trello card. - [List Card Checklists](https://learn.workflow.dog/reference/actions/trello/list-card-checklists.md): List checklists and their items on a Trello card. - [Delete Checklist](https://learn.workflow.dog/reference/actions/trello/delete-checklist.md): Permanently delete a Trello checklist. - [Add Checklist Item](https://learn.workflow.dog/reference/actions/trello/add-checklist-item.md): Add an item to a Trello checklist. - [Update Checklist Item](https://learn.workflow.dog/reference/actions/trello/update-checklist-item.md): Edit a Trello checklist item. - [Delete Checklist Item](https://learn.workflow.dog/reference/actions/trello/delete-checklist-item.md): Permanently delete an item from a Trello checklist. - [Upsert Contact](https://learn.workflow.dog/reference/actions/brevo/upsert-contact.md): Create or update a Brevo contact by email. - [Get Contact Lists](https://learn.workflow.dog/reference/actions/brevo/get-contact-lists.md): List contact lists in a Brevo account. - [Add Contacts to List](https://learn.workflow.dog/reference/actions/brevo/add-contacts-to-list.md): Add existing Brevo contacts to a contact list by email. - [Remove Contacts from List](https://learn.workflow.dog/reference/actions/brevo/remove-contacts-from-list.md): Remove Brevo contacts from a contact list by email. - [Activate Email Template](https://learn.workflow.dog/reference/actions/brevo/activate-email-template.md): Make an existing Brevo email template active. - [Create Email Template](https://learn.workflow.dog/reference/actions/brevo/create-email-template.md): Create an HTML transactional email template in Brevo. - [Deactivate Email Template](https://learn.workflow.dog/reference/actions/brevo/deactivate-email-template.md): Make an existing Brevo email template inactive. - [Get Email Templates](https://learn.workflow.dog/reference/actions/brevo/get-email-templates.md): List Brevo transactional email templates. - [Get Sent Email Content](https://learn.workflow.dog/reference/actions/brevo/get-email-content.md): Retrieve a sent Brevo transactional email by message ID. - [Send Email](https://learn.workflow.dog/reference/actions/brevo/send-transactional-email.md): Send a custom transactional email through Brevo. - [Send Email from Template](https://learn.workflow.dog/reference/actions/brevo/send-email-from-template.md): Send a Brevo transactional email from an existing template. - [Send Transactional SMS](https://learn.workflow.dog/reference/actions/brevo/send-transactional-sms.md): Send a non-promotional SMS message through Brevo. - [Create Contact](https://learn.workflow.dog/reference/actions/resend/create-contact.md): Add a contact to a Resend audience. - [Delete Contact](https://learn.workflow.dog/reference/actions/resend/delete-contact.md): Permanently remove a contact from a Resend audience. - [Get Email by ID](https://learn.workflow.dog/reference/actions/resend/retrieve-email.md): Retrieve a Resend email and its latest delivery event. - [Schedule Email](https://learn.workflow.dog/reference/actions/resend/schedule-email.md): Schedule a Resend email for a future time. - [Send Email](https://learn.workflow.dog/reference/actions/resend/send-email.md): Send a transactional email immediately with Resend. - [Unsubscribe Contact](https://learn.workflow.dog/reference/actions/resend/unsubscribe-contact.md): Opt a contact out of a Resend audience. - [Cancel Booking](https://learn.workflow.dog/reference/actions/tidycal/cancel-booking.md): Cancel a TidyCal booking by ID. - [Create Booking](https://learn.workflow.dog/reference/actions/tidycal/create-booking.md): Book a TidyCal timeslot for a contact. - [Get Booking](https://learn.workflow.dog/reference/actions/tidycal/get-booking.md): Retrieve complete details for a TidyCal booking. - [List Available Timeslots](https://learn.workflow.dog/reference/actions/tidycal/list-available-timeslots.md): Find open times for a TidyCal booking type. - [List Bookings](https://learn.workflow.dog/reference/actions/tidycal/list-bookings.md): List TidyCal bookings with optional date filters. - [Verify Email](https://learn.workflow.dog/reference/actions/millionverifier/verify-email.md): Check an email address with MillionVerifier. - [Create Record](https://learn.workflow.dog/reference/actions/airtable/create-record.md): Create one Airtable record, including file attachments. - [Create Records](https://learn.workflow.dog/reference/actions/airtable/create-records.md): Create multiple Airtable records, including file attachments. - [Delete Records](https://learn.workflow.dog/reference/actions/airtable/delete-records.md): Delete multiple records from an Airtable table. - [Find Records](https://learn.workflow.dog/reference/actions/airtable/find-records.md): Find Airtable records using structured field comparisons. - [Find Records by Formula](https://learn.workflow.dog/reference/actions/airtable/find-records-by-formula.md): Find Airtable records with a native Airtable filter formula. - [Get All Records](https://learn.workflow.dog/reference/actions/airtable/list-records.md): List Airtable records with optional view, formula, and sorting. - [Get Record](https://learn.workflow.dog/reference/actions/airtable/get-record.md): Retrieve one Airtable record's fields by record ID. - [Get Table Schema](https://learn.workflow.dog/reference/actions/airtable/get-table-schema.md): Retrieve Airtable table metadata and field definitions. - [Update Record](https://learn.workflow.dog/reference/actions/airtable/update-record.md): Merge into or replace one Airtable record. - [Update Records](https://learn.workflow.dog/reference/actions/airtable/update-records.md): Merge into or replace multiple Airtable records. - [Delete Message](https://learn.workflow.dog/reference/actions/outlook/delete-message.md): Move an Outlook message to Deleted Items or permanently delete it. - [Draft Email](https://learn.workflow.dog/reference/actions/outlook/draft-email.md): Create an unsent email draft in Microsoft Outlook. - [Draft Reply](https://learn.workflow.dog/reference/actions/outlook/draft-reply.md): Create an unsent reply or reply-all draft in Outlook. - [Forward](https://learn.workflow.dog/reference/actions/outlook/forward.md): Forward an Outlook message with optional content and attachments. - [Get Conversation](https://learn.workflow.dog/reference/actions/outlook/get-conversation.md): Load every message in an Outlook conversation from oldest to newest. - [Get Message](https://learn.workflow.dog/reference/actions/outlook/get-message.md): Retrieve message content and metadata from Microsoft Outlook. - [Mark as Read](https://learn.workflow.dog/reference/actions/outlook/mark-as-read.md): Mark one Microsoft Outlook message as read. - [Mark as Unread](https://learn.workflow.dog/reference/actions/outlook/mark-as-unread.md): Mark one Microsoft Outlook message as unread. - [Send Email](https://learn.workflow.dog/reference/actions/outlook/send-email.md): Send a plain-text or HTML email from Microsoft Outlook. - [Send Reply](https://learn.workflow.dog/reference/actions/outlook/reply.md): Send a reply or reply-all to a Microsoft Outlook message. - [Triggers](https://learn.workflow.dog/reference/triggers/index.md): Reference documentation for every trigger available in WorkflowDog. - [Mail Hook](https://learn.workflow.dog/reference/triggers/core/email-hook.md): Run a workflow whenever its unique email address receives a message. - [Schedule](https://learn.workflow.dog/reference/triggers/core/schedule.md): Run a workflow on one or more recurring schedules. - [Sub-Workflow](https://learn.workflow.dog/reference/triggers/core/callable.md): Run this workflow when another workflow calls it. - [Form Submission](https://learn.workflow.dog/reference/triggers/http/form.md): Start a workflow when an HTML form is submitted. - [URL](https://learn.workflow.dog/reference/triggers/http/url.md): Start a workflow from a general-purpose HTTP endpoint. - [Webhook](https://learn.workflow.dog/reference/triggers/http/webhook.md): Start a workflow from a POST request containing JSON. - [Label Added to Email](https://learn.workflow.dog/reference/triggers/gmail/label-added.md): Start a workflow when Gmail adds a label to a message. - [New Email](https://learn.workflow.dog/reference/triggers/gmail/new-email.md): Start a workflow when a new message arrives in a Gmail inbox. - [Sent Email](https://learn.workflow.dog/reference/triggers/gmail/sent-email.md): Start a workflow when the connected Gmail account sends a message. - [Google Form Response](https://learn.workflow.dog/reference/triggers/google-forms/form-response.md): Start a workflow when a response is submitted to a Google Form. - [New Email](https://learn.workflow.dog/reference/triggers/outlook/new-email.md): Start a workflow when a message arrives in an Outlook inbox. - [Card Created](https://learn.workflow.dog/reference/triggers/trello/card-created.md): Start a workflow when a card is created on a Trello board. - [Card Moved](https://learn.workflow.dog/reference/triggers/trello/card-moved.md): Start a workflow when a Trello card moves between lists. - [Card Updated](https://learn.workflow.dog/reference/triggers/trello/card-updated.md): Start a workflow when a Trello card changes. - [Card Archived](https://learn.workflow.dog/reference/triggers/trello/card-archived.md): Start a workflow when an open Trello card is archived. - [Card Commented](https://learn.workflow.dog/reference/triggers/trello/card-commented.md): Start a workflow when a Trello card receives a comment. - [New TidyCal Booking](https://learn.workflow.dog/reference/triggers/tidycal/new-booking.md): Start a workflow when a new TidyCal booking appears. ## Optional - [Dashboard](https://workflow.dog/app) - [Documentation](https://learn.workflow.dog) - [Community](https://discord.gg/7skA3SSvjK)