add setup guide to README.md

pr/2623
CarinaWolli 2022-04-27 12:13:50 +02:00
parent 010b9a4781
commit 4eb9fc74b9
1 changed files with 62 additions and 1 deletions

View File

@ -5,6 +5,67 @@
</a>
</div>
# Setting up Zapier Integration
# Setting up Zapier Integration
If you run it on localhost, check out the [additional information](https://github.com/CarinaWolli/cal.com/edit/feat/zapier-app/packages/app-store/zapierother/README.md#localhost) below.
1. Create [Zapier Account](https://zapier.com/sign-up?next=https%3A%2F%2Fdeveloper.zapier.com%2F)
2. If not redirected to developer account, go to: [Zapier Developer Account](https://developer.zapier.com)
3. Click **Start a Zapier Integration**
4. 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
1. Go to Authentication, choose Api key and click save
2. Click Add Fields
- Key: apiKey
- Check the box is this field required?
3. Configure a Test
- Test: GET ```<baseUrl>```/api/integrations/zapierother/listBookings
- URL Params
- apiKey: {{bundle.authData.apiKey}}
4. 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
### Booking created
1. Settings
- Key: booking_created
- Name: Booking created
- Noun: Booking
- Description: Triggers when a new booking is created
2. API Configuration (apiKey is set automatically, leave it like it is):
- Trigger Type: REST Hook
- Subscribe: POST ```<baseUrl>```/api/integrations/zapierother/addSubscription
- Request Body
- subscriberUrl: {{bundle.targetUrl}}
- triggerEvent: BOOKING_CREATED
- Unsubscribe: DELETE ```<baseUrl>```/api/integrations/zapierother/deleteSubscription
- URL Params (in addition to apiKey)
- id: {{bundle.subscribeData.id}}
- PerformList: GET ```<baseUrl>```/api/integrations/zapierother/listBookings
3. Test your API request
Create the other two triggers (booking rescheduled, booking cancelled) exactly like this one, just use the appropriate naming (e.g. booking_rescheduled instead of booking_created)
### Testing integration
Use the sharing link under Manage → Sharing to create your first Cal.com trigger in Zapier
## Localhost
Localhost urls can not be used as the base URL for api endpoints
Possible solution: using [https://ngrok.com/](https://ngrok.com/)
1. Create Account
2. [Download](https://ngrok.com/download) gnork and start a tunnel to your running localhost
- Use forwarding url as your baseUrl for the URL endpoints