- Prosyo Docs
- Integrations
- Zapier
On this page
- The Prosyo app for Zapier
- 1. Connect Prosyo
- 2. Build your Zap
- 3. Disconnect
- Popular Zaps
- Other ways: webhooks
- Prosyo → Zapier: trigger a Zap with a webhook
- 1. Create the trigger
- 2. Connect it in Prosyo
- 3. Test the trigger in Zapier
- 4. Filter by event (optional)
- 5. Verify the signature (optional, recommended)
- Popular webhook Zaps
- Zapier → Prosyo: add leads with an API request
- Troubleshooting
- Start campaigns automatically
Use Zapier to connect Prosyo to thousands of apps.
- Prosyo → Zapier: start a Zap when a prospect is added, changes stage or replies.
- Zapier → Prosyo: add people, move their stage, or put them on a list from forms, CRMs, spreadsheets and more.
The Prosyo app for Zapier#
1. Connect Prosyo#
- In Zapier, create a Zap and choose Prosyo as the trigger or action app.
- Click Sign in. Zapier opens Prosyo.
- Sign in. On Allow Zapier to use Prosyo?, pick the Workspace Zapier should use and click Allow.
- You're back in Zapier with Prosyo connected. The Zapier card on Prosyo's Integrations page shows Connected.
Each teammate connects their own Zapier, and a Zap sees what that teammate can see in Prosyo. Viewers can't connect Zapier.
2. Build your Zap#
| Type | Name | What it does |
|---|---|---|
| Trigger | New Prospect | Starts when a prospect is added in Prosyo |
| Trigger | Prospect Stage Changed | Starts when a prospect moves to another pipeline stage |
| Trigger | New Reply | Starts when a prospect replies on LinkedIn or email |
| Action | Create Prospect | Adds a person, optionally to a list (a new list name is created for you) |
| Action | Update Prospect Stage | Moves a prospect, found by email or ID, to another stage |
| Action | Add Prospect to List | Puts a prospect on an existing or new list |
| Search | Find Prospect | Finds a prospect by email |
Create Prospect never overwrites anyone: if the email is already in your workspace, Zapier gets that person back as they are, and you can still put them on a list.
Zapier can't send LinkedIn or email messages, connect seats, change billing or buy credits.
3. Disconnect#
In Prosyo, go to Integrations, click the Zapier card and click Disconnect Zapier. Your Zaps stop reading and changing the workspace and ask you to connect again.
Popular Zaps#
| When this happens | Do this |
|---|---|
| New Reply in Prosyo | Send an SMS with Twilio, post to Microsoft Teams, create a task in your CRM |
| Prospect Stage Changed to Meeting | Add a row to Google Sheets, notify the account executive |
| New Typeform, Calendly or Facebook Lead Ads lead | Create Prospect on an "Inbound" list |
| Deal won in your CRM | Update Prospect Stage to Customer |
Other ways: webhooks#
If Prosyo isn't listed in your Zapier account yet, or you need events the app doesn't offer (such as Prospect enriched, Campaign launched or High-intent lead), use Webhooks by Zapier. It needs a paid Zapier plan.
Prosyo → Zapier: trigger a Zap with a webhook#
1. Create the trigger#
- In Zapier, click Create → Zaps.
- For the trigger, choose Webhooks by Zapier.
- Set Trigger event to Catch Raw Hook (to verify signatures) or Catch Hook (simpler).
- Click Continue and copy the webhook URL, for example
https://hooks.zapier.com/hooks/catch/123456/abcdef/.
2. Connect it in Prosyo#
You need to be a workspace owner or admin.
- Go to Integrations and click the Custom webhook card, then Connect Custom webhook.
- Paste the Zapier URL into HTTPS endpoint and click Connect.
- Copy the Signing secret and keep it safe. It's shown once.
- Choose your Events and click Save mapping.
- Click Test connection.
3. Test the trigger in Zapier#
Back in Zapier, click Test trigger. You'll see the sample event with type, workspace_id and data fields. Its type is integration.test.
4. Filter by event (optional)#
Add a Filter by Zapier step, for example:
- Only continue if
typeexactly matchesconversation.reply_received
Or add Paths by Zapier to handle several events in one Zap.
5. Verify the signature (optional, recommended)#
With Catch Raw Hook, add a Code by Zapier → Run JavaScript step:
- Input data:
raw= Raw Body,sig= Headers →Http X Prosyo Signature - Code:
const crypto = require('crypto');
const secret = 'YOUR_SIGNING_SECRET';
const expected = crypto.createHmac('sha256', secret).update(inputData.raw).digest('hex');
if (expected !== inputData.sig) throw new Error('Invalid Prosyo signature');
return JSON.parse(inputData.raw);Popular webhook Zaps#
| When this happens in Prosyo | Do this |
|---|---|
| Reply received | Send an SMS with Twilio, post to Microsoft Teams, create a task in your CRM |
| Stage changed to Meeting | Create a deal in Pipedrive, add a row to Google Sheets, notify the account executive |
| Prospect enriched | Update the lead in a CRM that Prosyo doesn't connect to directly |
| High-intent lead | Alert the account owner |
| Account needs reconnect | Email or text the account owner |
| Campaign launched | Log it in Notion or Airtable |
Zapier → Prosyo: add leads with an API request#
Add people to a Prosyo list from Typeform, Google Sheets, Calendly, Facebook Lead Ads or any other trigger.
- In Prosyo, go to Integrations, click the Chrome extension & API card and click Generate API token. Copy it. Only owners and admins can generate one. If your workspace already has a token and you saved it, use it. Otherwise click Rotate token: it replaces every token, so paste the new one into your Chrome extension and every other tool that used the old one.
- In Zapier, add an action Webhooks by Zapier → Custom Request.
- Set:
- Method:
POST - URL:
https://app.prosyo.com/api/v1/ext/leads - Headers:
Authorization=Bearer YOUR_TOKENandContent-Type=application/json - Data:
- Method:
{
"listName": "Inbound – Typeform",
"leads": [
{
"firstName": "{{first_name}}",
"lastName": "{{last_name}}",
"email": "{{email}}",
"companyName": "{{company}}",
"title": "{{job_title}}",
"linkedinUrl": "{{linkedin_url}}"
}
]
}Replace each {{...}} with a field from your trigger using Zapier's insert-data menu.
- Click Test step. The lead appears in Prosyo on the list you named.
Lead fields: fullName, firstName, lastName, title, companyName, linkedinUrl, website, email, phone, locationName. Each lead needs a name, a LinkedIn URL or an email. If a value is empty, leave the field out or send null. An empty string in email is rejected as an invalid email. New leads count toward your monthly import limit. People already in Prosyo are matched by their LinkedIn profile and updated instead, so send linkedinUrl whenever you have it.
Troubleshooting#
| Problem | Fix |
|---|---|
| Prosyo isn't in Zapier's app list | Use the webhook method on this page. |
| Zapier says the connection expired | Reconnect Prosyo in Zapier. If you clicked Disconnect Zapier in Prosyo, every Zap needs to connect again. |
| "You are a viewer on every workspace. Ask an admin to connect Zapier." | Viewers can't connect Zapier. Ask a workspace admin to make you a member. |
| Test connection fails | Make sure the Zap's webhook URL is correct and the Zap is turned on after setup. |
| The Custom webhook card shows Needs attention | Zapier didn't accept recent deliveries. Open the card to see Last delivery error, check that the Zap is on, then click Test connection. |
| 401 from Prosyo | The token is wrong, rotated or revoked. Generate a new one. |
| 422 "No usable leads" | Each lead needs a name, email or LinkedIn URL. Check that the fields aren't empty. |
| 429 | Too many requests. Add a Delay by Zapier step or batch leads (up to 100 per request). |
Start campaigns automatically#
Go one step further: add the lead and enroll them in a campaign in the same workflow. See Custom triggers for step-by-step recipes, and the API reference for every endpoint.
