Task Session includes a powerful Forms / Lead Capture module that can receive leads from external systems via a simple webhook / API endpoint. This guide explains, step by step, how to connect Zapier to your Task Session installation at https://yourdomain.com/ using the built?in Forms webhook endpoint.
Table of Contents
- Prerequisites
- Step 1: Understand the Task Session webhook endpoint
- Step 2: Create a Zapier Integration in Task Session
- Step 3: Configure Field Mappings
- Step 4: Create a Zap in Zapier
- Step 5: Configure the Webhooks by Zapier POST action
- Step 6: Test the connection and debug failures
- Example JSON payload
- FAQ and tips
Prerequisites
Before you start, make sure you have:
- Task Session installed at
https://yourdomain.com/ - Admin access to
https://yourdomain.com/admin/ - A Zapier account (free or paid)
- At least one Zap trigger that has lead/contact fields (name, email, phone, etc.), for example:
- Webhooks by Zapier (Catch Hook)
- Typeform
- Google Forms
- HubSpot, Pipedrive, Facebook Lead Ads, etc.
Step 1: Understand the Task Session webhook endpoint
1. Base endpoint URL
- Task Session exposes a single Forms webhook / API endpoint:
https://yourdomain.com/includes/forms/api/submit.php
2. Integration key (source key)
- You always call the endpoint with a query parameter that identifies the integration, for example:
https://yourdomain.com/includes/forms/api/submit.php?integration=zapier- The value after
integration=must match the Source key configured in the Integration settings.
3. Authentication
- Each integration has its own Auth token.
- When sending requests from Zapier, you should include this token as a Bearer token header:
Authorization: Bearer YOUR_AUTH_TOKEN- Alternatively, you can send a
tokenfield in the body, but the Authorization header is recommended.
4. Payload format
- The endpoint accepts:
- JSON (
Content-Type: application/json) - or form-urlencoded POST bodies
- JSON (
- Zapier’s Webhooks by Zapier action can easily send JSON payloads that match your field mappings.
Step 2: Create a Zapier Integration in Task Session
1. Open the Integrations page
- Log in to your Task Session admin panel at
https://yourdomain.com/admin/ - Go to Form settings > Integrations (
https://yourdomain.com/admin/forms_integrations.php) - Click Add Integration
2. Fill the Integration details
- Name: for example
ZapierorZapier Leads - Source key: for example
zapierorzapier-leads
This value will be used in the API URL as?integration=zapier. - Auth token: create a secret token, for example
zap_9834$XYZ(you will use this in the Zapier headers) - Status: set to Active
- Allowed method: usually
POST - Notes: optional, for internal description such as “Used by Zapier webhooks”
3. Save the Integration
- Click Save
- Write down:
- The Source key you used (e.g.
zapier) - The Auth token (e.g.
zap_9834$XYZ)
- The Source key you used (e.g.
Step 3: Configure Field Mappings
1. Open Field Mappings
- Go to Form settings > Field Mappings (
https://yourdomain.com/admin/forms_mappings.php) - Select your Zapier integration (e.g. Zapier Leads) from the Integration dropdown
2. Add mappings for each incoming field
For each field you plan to send from Zapier, add one mapping:
- Source field: the key name that will come from your Zapier JSON payload (for example
name,email,phone,message,company,source) - Destination type:
- Lead column for built?in CRM fields like name, email, phone, source, status
- Custom field for extra fields like Company, Budget, Service type, etc.
- Destination: pick the exact lead field or custom field where the value should be stored
- Mark Required for important fields such as name and email (if your UI offers this option)
Save each mapping. The names you configure here must match the keys you send from Zapier in the JSON body.
Step 4: Create a Zap in Zapier
1. Create a new Zap
- Log in to your Zapier account.
- Click Create Zap.
2. Choose a Trigger app
- Select the app that will start the workflow, for example:
- Webhooks by Zapier (Catch Hook)
- Typeform
- Google Forms (via a connector)
- HubSpot, Pipedrive, Facebook Lead Ads, etc.
- Configure the trigger so that Zapier can receive or read the lead data (name, email, phone, message, etc.).
- Run a Test trigger so Zapier has a sample payload ready for mapping.
3. Add the Webhooks by Zapier action
- Click + Add action.
- Search for and select Webhooks by Zapier.
- Choose the event POST.
Step 5: Configure the Webhooks by Zapier POST action
1. Set the URL
- In the URL field, enter your Task Session submit endpoint including the integration key, for example:
https://yourdomain.com/includes/forms/api/submit.php?integration=zapier
2. Set the Payload Type
- Set Payload Type to json.
3. Configure the Data (JSON body)
In the Data section, you define which fields Zapier will send to Task Session. Each item becomes one JSON key/value pair:
- Key: should match a Source field you configured in Field Mappings (for example
name,email,phone,message) - Value: choose the corresponding field from your Zap trigger sample data
Example configuration:
name> Trigger data: Full Nameemail> Trigger data: Emailphone> Trigger data: Phonemessage> Trigger data: Messagesource> Static text: “Zapier”
Zapier will send a JSON body like this to your Task Session endpoint:
{
"name": "John Smith",
"email": "[email protected]",
"phone": "+1 555 123 4567",
"message": "I am interested in your services.",
"source": "Zapier"
}
4. Configure Headers (authentication)
- In the Headers section, add one header:
Authorization: Bearer YOUR_AUTH_TOKEN- Replace
YOUR_AUTH_TOKENwith the token you set in the Zapier Integration in Task Session (for examplezap_9834$XYZ).
5. Optional advanced settings
- You can usually leave advanced options at their defaults:
- Send as JSON: enabled automatically when Payload Type is
json - Unflatten: either value is fine for simple flat fields
- Send as JSON: enabled automatically when Payload Type is
Step 6: Test the connection and debug failures
1. Send a test from Zapier
- In your Zap, click Test step (or Test action) on the Webhooks by Zapier POST action.
- Zapier will send a sample payload to
https://yourdomain.com/includes/forms/api/submit.php?integration=zapierwith the JSON body and Authorization header.
2. Verify the submission in Task Session
- Log in to
https://yourdomain.com/admin/ - Go to Form settings > Submission Logs (
https://yourdomain.com/admin/forms_submissions.php) - Check that a new submission appears for your Zapier integration, and review the status.
3. Use Debug to inspect raw payloads and errors
- Go to Form settings > Debug (
https://yourdomain.com/admin/forms_debug.php) - Here you can see:
- The raw payload received from Zapier
- Validation errors (for example “Name is required”, “Invalid email format”)
- Lead creation results and any mapping issues
- If something fails:
- Make sure the
integrationquery parameter matches your Source key (e.g.zapier) - Make sure the Authorization header token matches the Integration’s Auth token
- Check that JSON keys in the body match the Field Mappings Source field names
- Make sure the
Example JSON payload
This is a simple example of the JSON body your Zapier Webhooks POST action can send to Task Session:
{
"name": "John Smith",
"email": "[email protected]",
"phone": "+1 555-123-4567",
"message": "I would like more information about your services.",
"source": "Zapier"
}
In your real integration you can add more keys (for example company, budget, campaign, etc.) and map them in the Field Mappings page.
FAQ and Tips
What is the exact submit URL for my Zapier integration?
For the example Source key zapier, the submit URL is:
https://yourdomain.com/includes/forms/api/submit.php?integration=zapier
Can I have multiple Zapier integrations?
Yes. You can create multiple Integrations in Task Session with different Source keys, for example zapier-website, zapier-partners, zapier-ads. Each integration can have its own Auth token and Field Mappings. In Zapier, just point each Zap to the corresponding URL:
https://yourdomain.com/includes/forms/api/submit.php?integration=zapier-website
https://yourdomain.com/includes/forms/api/submit.php?integration=zapier-partners
https://yourdomain.com/includes/forms/api/submit.php?integration=zapier-ads
Which app do I use in Zapier to send requests to Task Session?
You use the built?in Webhooks by Zapier app as the Action step, with the POST event. Your trigger app can be anything that provides the lead data.
Where can I see errors if a lead is not created?
- In Task Session, open Submission Logs at
https://yourdomain.com/admin/forms_submissions.php - Open Debug at
https://yourdomain.com/admin/forms_debug.phpto see the raw payload and validation messages
Do I need to use yourdomain.com anywhere?
No. For this setup you always use your real Task Session domain. In this guide we use https://yourdomain.com/ as a placeholder. Replace it with the actual URL where your Task Session is installed (for example https://crm.example.com/).

