Actions

Zapier Action Visual Builder

All Zaps start with a trigger that watches for new or updated data. They get the ball rolling. Everything a Zap does with that data, though, is done by actions.

Zapier actions push or put new data into apps through API calls that pass data from user customized input fields.

Action steps in Zaps can create new items in an app or update existing items with a create action, or find existing items in an app with search actions (which can optionally be paired with create actions to add a new item if the search does not return a result). Every action additionally returns output fields detailing what was created—and that data can be used in subsequent steps to build detailed workflows.

Zapier does not allow action steps to delete or remove data, to prevent data loss. Action steps may only add or update data.

Note: Actions are displayed in the order they are added to Zapier integrations, so be sure to add your app’s most important actions first.

How to Add a New Action to a Zapier Integration

1. Configure Action Settings

Zapier visual builder action settings

To add a new action step to a Zapier integration, open the Actions page in Zapier visual builder from the sidebar on the left, and select Add Action. Start by selecting your action type. New actions are Create type by default, and will add new data to your app. If your action should lookup existing items instead, select Search—then jump to the Search section below for details on setting up a search action.

Check our Searches and Creates guide for more detail on the difference between create and search actions.

Note: You cannot change an action type once you click Save and Continue on a new action. If you need to change the action type, delete the action and recreate it.

Then add the core details to your action, including:

  • Key: A unique identifier for this action, used to reference the action inside Zapier. Does not need to be the same identifier as used in your API. Not shown to users.
  • Name: A human friendly plain text name for this action, typically with a verb such as Add or Create followed by the name of the item this action will create in your app. Shown inside the Zap editor and on Zapier’s app directory marketing pages.
  • Noun: A single noun that describes what this action creates, used by Zapier to auto-generate text in Zaps about your action.
  • Description: A plain text sentence that describes what your action does to help users understand why they should use this action. Shown inside the Zap editor and on Zapier’s app directory marketing pages.
  • Visibility Options: An option to select when this action will be shown. Important is chosen by default, and will show this action inside Zap action steps by default. Choose None if you want this action hidden by default, useful for rarely used actions. Or, choose Hidden if this action should not be shown to users, helpful if you build a create action solely to pair with a search action but do not want it used otherwise.

Once the action settings are added, click Save and Continue to add the new action and save your settings. You can edit the settings any time later with the exception of the create or search option.

2. Build Action Input Form

Zapier input designer

Then, the Input Designer will open to build the input form field for your action. All action steps must include an input form for Zapier to gather the data needed to create or find items in your app. Add at least one input field to your action before switching to the final API Configuration tab.

Before building your action’s input form, list each data item your app needs to create a new item. For example, if building an action to send an email, fields for the email address, subject, and email body would be needed at a minimum. Your action will likely have several required fields, along with others that are optional such as for tags or other additional details.

Add action fields for each item your app needs to create or find this item in your app. Add the fields in the order they’re listed in your app, if possible, to make the Zapier integration easier for your users to use.

Tip: Check our detailed Zapier input designer guide for details on each option in the input designer, along with each field type you can add to your action’s form.

3. Enter API Configuration

Zapier action API configuration

The last part of building a Zapier action is the most crucial: tell Zapier how to send the data to your API.

Zapier uses a POST call for create actions by default, sending a single item to your API endpoint. Zapier then expects a response with an object containing a single item, to be evaluated by isPlainObject then parsed into individual fields for use in subsequent Zap steps.

Zapier uses a GET call for search actions by default, and sends the data from the input form to your API endpoint. Zapier expects an array response with 0 or more items—and if more than 1 item is returned, Zapier shows the best match first, and parses it into individual fields for use in subsequent Zap steps.

For most actions, select the correct API call if your app expects something other than the default, then paste the URL for your API call in the box under API Endpoint. Zapier will include each of your input form fields in the Request Body automatically.

If your API call expects input data in the core URL, you can reference any input field’s key with the following text, replacing key with your field key:

{{bundle.inputData.key}}

The defaults on all other settings work for most basic API calls. If you need to configure more options, though, click Show options to add URL Params, HTTP Headers, set your action to omit empty parameters, or customize the request body. Alternately, switch to code mode to write custom JavaScript code for your action.

Test Zapier API Call

Once your API call is added, test it inside Zapier visual builder with testing data. Authenticate with your app if you haven’t already, then fill in each input field under the Configure Test Data section with data that will work in your app. Click Test Your Result to have Zapier run the action as it would inside a Zap—and see the results instantly.

If your app returns an error, be sure to check:

  • Authentication: Did your app’s authentication work correctly in the authentication step? You can only test an integration once you’ve connected an app account to Zapier.
  • Test Data: Did your test data include the details your app expects, such as actual dates in date fields or complete email addresses in email address fields?
  • Input Field Keys: Did you use the same field keys in your input field as your API expects? Double-check that in the Input Designer, and change if needed.
  • API Call Customization: Does your API expect something different than the standard API call details Zapier sets by default? You may need to use custom coding if the options you need aren’t available.

Zapier Define Output Fields

Every time your action step runs, your API will return data to Zapier—ideally detailing the item that was added to your app or found via a search. Each item includes multiple details, including each item users would add via the Zap input form along with extra details, often with items users may not care about as much.

Zapier lets you define the most important fields with friendly field names. Each field you define will show up first in the output field list after the Zap runs, and will be usable in subsequent Zap steps.

In the Sample box, add a JSON formatted example of the output data from your API with the most commonly used output fields. Include the field key on the left, and sample data for that field on the right, using sample, demo data that can be used publicly.

Then click Generate Output Field Definitions and Zapier will list a table of the fields with the keys on the left and the field type on the right. Select the correct field type (including the default String field or Text, integer, number, boolean, datetime, file, and password field options), and add a human-friendly field name in the center column.

Learn more about how Zapier uses sample data and output fields.

How to Use Custom Code in Zapier Actions

Zapier visual builder code mode

The default API settings form is the best option for most actions with default settings. If your action needs customized API calls, scripting to manipulate input field data, or other unique features, you can add custom JavaScript code for your API request.

To use custom code, click the Switch to Code Mode button. Zapier will translate your default API call settings into JavaScript code the first time you switch to code mode for an easy way to start. If you switch back to form mode, though, Zapier will not transfer your code settings back to the form.

How to Add a Search Action

Zapier Search action settings

Building a search action is much the same as building a create action, only with a couple extra steps. Select Search as your action type, then fill in the core action settings as normal.

At the bottom of the settings page, you’ll see an option to pair your search with a create action. That lets your action also create an item if the search does not return any results.

If you wish to do so, first add a relevant create action to your Zap. If your action is looking for contacts, say, you would need a Add New Contact action to pair with the search, say. You can open your integration’s Actions page in a new tab and add a new create action if your integration does not have an appropriate one already.

Then, in your new search action’s settings, check the Pair an existing create action box, and select the relevant action from the Create Action menu. Additionally, add a new label that Zapier will show on this step if users choose to have the action create new items as well.

The remainder of your action setup is much like building a Zapier trigger. You will need to add an Input Form to gather data for the search. Most search actions only include a single input field, sometimes along with a drop-down menu to select filter data.

Finally, in the API configuration, add your API endpoint where Zapier will by default pass the search query in a GET call, then test the request and define output fields as with other actions.

Example Search action in Zapier

When users use the search action in a Zap, Zapier will show your core search action settings that you set in the input designer by default. Then, if users check to create an item if nothing is found, Zapier will load the create action’s input fields inside the search action so users can fill both out.

How to Reorder Actions in a Zapier Integration

Actions inside Zapier

Whenever a user selects your app’s integration in a Zapier action step, they’ll see every create and search action in your integration. Zapier shows create actions that are marked as Important first, followed by search actions marked as Important. If users click the show less common options link, they’ll then see the remaining actions that weren’t marked as important, if any.

Actions are originally listed in the order you add them to your integration. As people use your integration, Zapier will show your integration’s most popular actions first, automatically reordering them based on popularity.

You change actions’ visibility at any time, if you don’t want an action to show first. Edit the action, then in the last option on the Settings page, choose Important to have the action show by default, None to hide it behind the show less common options toggle, or Hidden to make this action not usable inside Zapier.

How to Remove an Existing Action

Remove Zapier action

You can remove an action at any time from Zapier visual builder’s Actions page. Click Actions in the left sidebar, then click the gear beside any action you wish to remove. Select Delete, then confirm to remove the action fully.

If you remove an action from a live Zapier integration, this will break existing Zaps. As such, before removing an action, always create a new major version of your integration, remove the action from the new version, then migrate users to the new version as when adding any other breaking changes to an integration.


Have any feedback or questions? Let us know.