This repository serves as the central source of truth for our Zapier automations. It is organized into subfolders representing different business domains (such as Orders, Fulfillment, or Invoicing), with each JSON file containing the configuration and metadata for a single Zap.
Use this guide to understand how the repository is structured, how to trace data mutations across an order's lifecycle, and how to read the documentation for individual Zaps.
Repository Organization
The repository is divided into subfolders based on the core monday.com board or business process the Zaps operate on.
Each JSON file represents a complete Zap export. When you need to understand a workflow, locate the corresponding JSON file and its accompanying documentation.
Tracing Data Modifications
To answer the question, "What changes column X across the lifecycle of an order?", refer to the data mapping tables maintained in each subfolder. Because Zaps operate linearly, identifying the modifying Zap is the first step in troubleshooting.
Here is an example of how data points on the Orders board map to their modifying Zaps:
| Column / Data Point | Lifecycle Stage | Modifying Zap | Action Performed |
|---|---|---|---|
Address (Raw) | Order Creation | Webform / Manual Entry | Initial data capture. |
Location (Lat/Long) | Processing | NOE Address Fixer | Geocodes raw text and writes coordinates. |
City / State / ZIP | Processing | NOE Address Fixer | Parses raw address and updates individual columns. |
Status | Fulfillment | Order Status Sync | Updates status based on external shipping webhooks. |
If a column contains unexpected data, find the column name in the mapping table above to identify which Zap has write-access to that field.
Anatomy of a Zap Document
Every Zap in this repository is documented using a standardized format to help you quickly understand its purpose, its pipeline, and the specific fields it reads or writes.
Using the NOE Address Fixer as an example, here is how to read a Zap's documentation:
1. Executive Summary
This section defines the core objective. For example, the NOE Address Fixer takes messy address text from the Orders board, runs it through a Python parser to normalize the formatting, geocodes it via Google Maps, and pushes the corrected values (and coordinates) back to the monday.com item.
2. Workflow Pipeline
A visual breakdown of the Zap's execution order. Zaps are linear; understanding the sequence of operations helps pinpoint where data might be failing.
flowchart TD
A["1: Catch Hook (monday.com ID)"] --> B["2: Get Column Values (monday.com)"]
B --> C["3: Format Address (Python)"]
C --> D["4: Get Lat/Long (Google Geocoding)"]
D --> E["5: Change Multiple Columns (monday.com)"]3. Step-by-Step Breakdown
This section details exactly what happens at each node in the pipeline, including API calls, code execution, and data transformations.
- 1
Trigger: Catch Hook
Expects a raw webhook payload containing a monday.com item/pulse ID (
event.pulseId). - 2
Read: Get Column Values
Looks up the Orders board item matching the
pulseIdand reads the raw address text stored in columntext_mky5xz73. - 3
Process: Format Address (Python)
Strips control characters, splits the string into components, expands abbreviations (e.g., Ave → Avenue), applies smart title-casing, and extracts unit numbers. Returns a structured JSON object.
- 4
Enrich: Google Geocoding API
Sends the cleaned address to
maps.googleapis.com(restricted to US/NC) to retrieve resolved latitude and longitude coordinates. - 5
Write: Change Multiple Column Values
Overwrites the original monday.com item. Updates the Location column with coordinates, populates individual text columns (City, State, ZIP), and clears temporary status columns.
4. Practical Notes
Look here for caveats, hardcoded credentials, or deployment statuses. For instance, if a Zap relies on a hardcoded API key instead of a stored environment variable, it will be noted here.
Troubleshooting Common Issues
When you encounter an issue with order data, use the symptoms to trace back to the responsible Zap.
Symptom: Address fields are blank or contain junk data
Likely Cause: The Python parsing step in the NOE Address Fixer failed to recognize the format of the raw address.
Resolution: Check the Zapier run history for the specific pulseId. Verify if the raw input contained unusual characters or lacked delimiters (like commas) that the Python script requires to split the string.
Symptom: The Location column is missing a Map pin (Lat/Long)
Likely Cause: The Google Geocoding API step failed.
Resolution: This usually happens if the address is a P.O. Box (which cannot be geocoded) or if the hardcoded Google API key has expired or hit its rate limit. Check Step 4 of the NOE Address Fixer execution logs.
Symptom: A Zap is not triggering at all
Likely Cause: The upstream webhook was not fired.
Resolution: For webhook-triggered Zaps (like NOE Address Fixer), the trigger relies on a monday.com automation (e.g., "When Status changes to X, send a webhook"). Verify that the native monday.com automation is active and configured with the correct Zapier webhook URL.
Always confirm a Zap's on/off state directly in the Zapier dashboard. The JSON exports in this repository capture the Zap's state at the time of export, which may reflect a paused or testing state.