Error handling in Zapier Functions
- Tables
-
Product updates
Product updates: January 2023 Product updates: March 2023 Product updates: February 2023 Product updates: April 2023 Product updates: May 2023 Product updates: June 2023 Product updates: July 2023 Product updates: August 2023 Product updates: September 2023 Product updates: October 2023 Product updates: November 2023 Product updates: December 2023 Product updates: January 2024 Product updates: February 2024 Product updates: March 2024 Product updates: April 2024 Product updates: May 2024 Product updates: June 2024 Product updates: July 2024 Product updates: August 2024 Product updates: September 2024 Product updates: October 2024 Product updates: November 2024 Product updates: December 2024 Product updates: January 2025 Product updates: February 2025 Product updates: March 2025 Product updates: April 2025 Product updates: May 2025 Product updates: June 2025 Product updates: July 2025 Product updates: August 2025
- Zaps
- Your Zapier account
- Interfaces
- Canvas
- Chatbots
- Getting started
- Agents
- MCP
- Built-in tools
- Lead Router
- Apps
Table of Contents
You can handle errors from apps and from Python in Zapier Functions by using try except blocks and two classes: Exception
and ZapierActionError
.
This product is in open beta. It’s available for use but still in active development and may change.
Error classes
There are two classes you can use to handle errors in Zapier Functions:
- Exception: a broad class that catches all errors, including Python errors.
- ZapierActionError: this class catches only errors for Zapier actions included in your code.
You can use them while writing your code to take different actions depending on the type of error.
Implement error handling
To handle errors in Zap actions:
- From the Functions home, select the function.
- Click the Explorer icon on the left to see all function files.
- Open the main.py file.
- Enclose the action code within the
try
block. - Write an exception block right after, providing alternative instructions for errors. You can add multiple
except
blocks, and also useelse
andfinally
blocks.
try: zapier.action.slack.direct_message( account_id=50715278, params={ "channel":"ABCDEFG", # To Username "text":"this is a direct message", # Message Text }, type_of="write", ) except ZapierActionError as e: zapier.action.slack.direct_message( account_id=50715278, params={ "channel":"HIJKLMN", # To Username "text":"Your action had an error!", # Message Text }, type_of="write", )
Check the logs for error messages and use the messages in if
conditions to take different actions depending on the error.
Provide feedback and get help
Submit a feature request, provide feedback on existing features, or get help from the Zapier Functions team. You can also discuss Functions with other users on Zapier's Early Access Program Slack.