89510e6af6
* add new trigger with first simple job scheduling * fix DB update * use array to save scheduled jobs in booking * cancel scheduled jobs when zap disabled or zapier disconnected * schedule jobs only for confirmed bookings * schedule jobs for already existing bookings * fix bug to create workflow reminders when confirming recurring events * delete remove all zapier webhooks when api key is deleted * schedule job for all confirmed recurring bookings * fix zapier trigger and workflow reminders when cancelling recurring events * code clean up * code clean up * add migration * add type package for node-schedule * remove nodescheduler * add updated nodescheduler * move code to app-store * add meeting ended to webhook constants * udpate zapier README.md * implement QA suggestions * add default handler and fix imports * Type fix Co-authored-by: CarinaWolli <wollencarina@gmail.com> Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com> Co-authored-by: Omar López <zomars@me.com> |
||
---|---|---|
.. | ||
api | ||
components | ||
lib | ||
pages/setup | ||
static | ||
README.md | ||
README.mdx | ||
_metadata.ts | ||
index.ts | ||
package.json |
README.md
Setting up Zapier Integration
If you run it on localhost, check out the additional information below.
- Create Zapier Account
- If not redirected to developer account, go to: Zapier Developer Account
- Click Start a Zapier Integration
- Create Integration
- Name: Cal.com
- Description: Cal.com is a scheduling infrastructure for absolutely everyone.
- Intended Audience: Private
- Role: choose whatever is appropriate
- Category: Calendar
Authentication
- Go to Authentication, choose Api key and click save
- Click Add Fields
- Key: apiKey
- Check the box ‘is this field required?’
- Configure a Test
- Test: GET
<baseUrl>
/api/integrations/zapier/listBookings - URL Params
- apiKey: {{bundle.authData.apiKey}}
- Test: GET
- Test your authentication —> First you have to install Zapier in the Cal.com App Store and generate an API key, use this API key to test your authentication (only zapier Api key works)
Triggers
Booking created, Booking rescheduled, Booking cancelled, Meeting ended
Booking created
- Settings
- Key: booking_created
- Name: Booking created
- Noun: Booking
- Description: Triggers when a new booking is created
- API Configuration (apiKey is set automatically, leave it like it is):
- Trigger Type: REST Hook
- Subscribe: POST
<baseUrl>
/api/integrations/zapier/addSubscription- Request Body
- subscriberUrl: {{bundle.targetUrl}}
- triggerEvent: BOOKING_CREATED
- Request Body
- Unsubscribe: DELETE
<baseUrl>
/api/integrations/zapier/deleteSubscription- URL Params (in addition to apiKey)
- id: {{bundle.subscribeData.id}}
- URL Params (in addition to apiKey)
- PerformList: GET
<baseUrl>
/api/integrations/zapier/listBookings
- Test your API request
Create the other triggers (booking rescheduled, booking cancelled and meeting ended) exactly like this one, just use the appropriate naming (e.g. booking_rescheduled instead of booking_created)
Set ZAPIER_INVITE_LINK
The invite link can be found under under Manage → Sharing.
Localhost
Localhost urls can not be used as the base URL for api endpoints
Possible solution: using https://ngrok.com/
- Create Account
- Download gnork and start a tunnel to your running localhost
- Use forwarding url as your baseUrl for the URL endpoints