Your app can’t do everything. It shouldn’t. Despite every new feature request, the best thing is a clear focus on what makes your app unique.
For everything else, there are integrations. Integrations are the most popular way to automate tasks through customized workflows. Using what we call automated workflows, Integration watches for new or updated data in connected apps, then uses that data to do tasks in that or other connected apps. These integrations let your app rely on other best-in-class tools to do the extra things your users want, freeing your app to focus on its core features.
Build integration, and you’ll clear dozens of your app’s top feature requests at once. You don’t need to build custom integrations with every app. Once integration connects your app to every other integrated app, with more added every day.
And it’s not much harder than building a survey form.
Repeat that for every trigger and action your Zapier integration needs. Then test your integration—and get 10 or more others to help you test it—and you can release your Zapier integration to the world.
Here’s a diagram example of how this works with a trigger step; search and create steps work similarly with their differing final steps as outlined above:
Integrations require three core things: Authentication, curated API features, and forms. Below mentioned are all the APIs -
Method - POST
Url - /zapier/account/add
Header - { authorization: Bearer <location_api–key> }
body - {
snapshot_id,
first_name,
last_name,
email,
phone,
password,
auto_generate_password,
type,
role,
name,
timezone,
address,
city,
country,
state,
postal_code,
phone_number,
purchase_phone,
website
}
Method - POST
Url - /zapier/contact/add_update
Header - { authorization: Bearer <location_api–key> }
Body - {
first_name,
last_name,
name,
email,
phone,
address1,
city,
state,
country,
tags,
postalCode,
source,
lead,
notes,
companyName
}
Method - POST
Url - /zapier/add_update_opportunity
Header - { authorization: Bearer <location_api–key> }
Body - {
first_name,
last_name,
name,
email,
phone,
address1,
city,
state,
country,
tags,
postalCode,
source,
lead,
notes,
opportunity.pipelineId,
stage_id,
assignedTo
}
Method - POST
Url - /campaign/stop/all
Header - { authorization: Bearer <location_api–key> }
Body - {
first_name,
last_name,
name,
email,
phone
}
Method - POST
Url - /campaign/start
Header - { authorization: Bearer <location_api–key> }
Body - {
campaign_id,
first_name,
last_name,
name,
email,
phone,
address1,
city,
state,
postalCode,
source,
tags,
lead_source,
notes,
event_time
}
Method - POST
Url - /zapier/add_task
Header - { authorization: Bearer <location_api–key> }
Body - {
assigned_to: 'User',
title: 'title',
body: 'body',
due_date: 'today',
first_name: 'first name',
last_name: 'last name',
email: 'email',
phone: 'phone'
}