master-zapier-plan-draft/research/zapier/raw/openapi/workflow-api-schema.json
George Lambert b4150c8250 Milestone 0: import zappier billing, Verae middleware, and Zapier research
Compose-ready workspace: packages/zappier (rate card, portal, Stripe),
packages/verae-zapier-middleware (timestamp + NATS), packages/verae-zapier
(CLI app), vendor/zapier-platform, and research/zapier vendor corpus.

Gate 0 structure checks pass. Product code and research are not yet wired.
2026-09-09 02:37:36 -04:00

7127 lines
242 KiB
JSON

openapi: 3.1.0
info:
title: Partner API
version: 2026.7.0
description: |2
## Introduction
The Partner API is the best tool for complete style control over a user's Zapier experience within your app.
Essentially, it lets you customize how you present Zapier within your product without sacrificing your app's look,
feel, and flow.
Think of it as a native Zapier integration, helping you showcase your best Zapier-powered workflows where it's most
helpful to your users (within the flow of your tool). You can customize styling, streamline Zap set-up for users,
expose relevant Zap information, and more!
With the Partner API, you can:
- Get a list of all the apps available in Zapier's app directory so you can power your app directory and show your
users all the integration possibilities with your Zapier integration.
- Have complete style control over how you present Zap templates in your product. The Partner API gives you access
to the raw Zap Template data so you can give your users access to your Zap template with your product's style, look
and feel.
- Get access to all your Zap templates and give your users the ability to search to quickly find the one they need.
- Streamline Zap setup by pre-filling fields on behalf of your users.
- Show users the Zaps they have set up from right within your product keeping them on your site longer and giving them
complete confidence in their Zapier integration.
- Embed our Zapier Editor to allow your users to create new Zaps and modify existing ones, without needing to leave
your product.
## Authentication
There are two ways to authenticate with the Partner API.
1. Your application's `client_id` which you will receive once you are approved for access to the API
(Client ID Authentication)
2. A user's access token (Access Token Authentication).
Which authentication method you should use depends on which endpoint(s) you are using.
Review each endpoint's documentation to understand which parameters are required.
> Note: while we do generate a `client_secret`, the type of grant we use (implicit) doesn't
need it so it's not something we provide.'
## Learn more
See the [Workflow API documentation](https://docs.zapier.com/partner-solutions/workflow-api/intro) for more information.
contact:
name: Zapier
url: https://developer.zapier.com/contact
paths:
/v1/apps:
get:
operationId: v1_apps_list
description: This endpoint returns a list of apps sorted popularity. See the
List Apps guide to get started.
summary: Get Apps v1
parameters:
- in: query
name: category
schema:
type: string
description: Categories that apps must have in order to be returned in the
response
example: google
- in: query
name: is_in_zap_template_with
schema: {}
description: If set, only return apps that are in a Zap Template with your
app
example: ''
- in: query
name: page
schema:
type: number
description: Which page to return
- in: query
name: per_page
schema:
type: number
description: Number of results to return per page
- in: query
name: title_search
schema:
type: string
description: Case-insensitive parameter to limit the results to apps whose
titles match
example: google+calendar
- in: query
name: title_starts_with
schema:
type: string
description: Case-insensitive parameter to only return apps whose titles start
with the parameter value in the response
example: google
tags:
- Apps
security:
- ClientIDAuthentication: []
responses:
'403':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 403 Response
'401':
description: Missing client_id in query parameters
'409':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 503 Response
'504':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 504 Response
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AppsResponse'
examples:
/v1/apps:
value:
- total: 3649
page: 2
pages: 1825
per_page: 2
objects:
- uuid: ca83afc5-ee9a-470d-b577-e7f8fd555b67
title: Slack
slug: slack
description: 'Slack is a platform for team communication: everything
in one place, instantly searchable, available wherever you
go. Offering instant messaging, document sharing and knowledge
search for modern teams.'
image: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&ixlib=python-3.0.0&q=50
url: https://api.zapier.com/v1/embed/apps/google-ads/integrations/slack
links:
mutual:zap_templates: https://api.zapier.com/v1/zap-templates?apps=slack&utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
categories:
- slug: team-chat
images:
url_16x16: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&fit=crop&h=16&ixlib=python-3.0.0&q=50&w=16
url_32x32: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&fit=crop&h=32&ixlib=python-3.0.0&q=50&w=32
url_64x64: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&fit=crop&h=64&ixlib=python-3.0.0&q=50&w=64
url_128x128: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&fit=crop&h=128&ixlib=python-3.0.0&q=50&w=128
app_latest: SlackCLIAPI@latest
- uuid: d74234df-0045-436e-bd5b-ee577e74e6b8
title: Google Calendar
slug: google-calendar
description: Google Calendar lets you organize your schedule
and share events with co-workers and friends. With Google's
free online calendar, it's easy to keep track of your daily
schedule.
image: https://zapier-images.imgix.net/storage/services/62c82a7958c6c29736f17d0495b6635c.png?auto=format%2Ccompress&ixlib=python-3.0.0&q=50
url: https://api.zapier.com/v1/embed/apps/google-ads/integrations/google-calendar
links:
mutual:zap_templates: https://api.zapier.com/v1/zap-templates?apps=google-calendar&utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
categories:
- slug: calendar
- slug: google
images:
url_16x16: https://zapier-images.imgix.net/storage/services/62c82a7958c6c29736f17d0495b6635c.png?auto=format%2Ccompress&fit=crop&h=16&ixlib=python-3.0.0&q=50&w=16
url_32x32: https://zapier-images.imgix.net/storage/services/62c82a7958c6c29736f17d0495b6635c.png?auto=format%2Ccompress&fit=crop&h=32&ixlib=python-3.0.0&q=50&w=32
url_64x64: https://zapier-images.imgix.net/storage/services/62c82a7958c6c29736f17d0495b6635c.png?auto=format%2Ccompress&fit=crop&h=64&ixlib=python-3.0.0&q=50&w=64
url_128x128: https://zapier-images.imgix.net/storage/services/62c82a7958c6c29736f17d0495b6635c.png?auto=format%2Ccompress&fit=crop&h=128&ixlib=python-3.0.0&q=50&w=128
app_latest: GoogleCalendarCLIAPI@latest
prev_url: https://api.zapier.com/v1/apps?per_page=2&page=1
next_url: https://api.zapier.com/v1/apps?per_page=2&page=3
description: |2
- Your own app will not be returned.
- Zapier built-in apps will not be returned.
- Order of the result is by app popularity.
description: ''
/v1/categories:
get:
operationId: v1_categories_list
description: List of Zap categories
summary: Get Categories
parameters:
- in: query
name: limit
schema:
type: number
default: 10
description: Limit the number of Zap categories returned.
- in: query
name: offset
schema:
type: number
default: 0
description: The number of Zap categories to skip over. The default value
is 0, which is the offset of the first item.
tags:
- Categories
responses:
'403':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 403 Response
'401':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 401 Response
'409':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 503 Response
'504':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 504 Response
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CategoriesResponse'
examples:
/v1/categories:
value:
- next: https://api.zapier.com/v1/categories?offset=10&limit=10
previous: null
count: 90
objects:
- id: 78
title: Ads & Conversion
slug: ads-conversion
description: Tools to track and reach an audience online.
url: https://zapier.com/api/v4/app-directory/categories/ads-conversion/
type_of: curated
featured_entry_slug: boost-google-ads-ROI-with-zapier
role: child
- id: 1
title: Accounting
slug: accounting
description: Tools for accounting and finance.
url: https://zapier.com/api/v4/app-directory/categories/accounting/
type_of: curated
featured_entry_slug: favorite-zaps-accounting
role: child
- id: 14
title: AI Tools
slug: ai-tools
description: Unlock the potential of artificial intelligence
in your workflow with these AI integrations. These apps use
AI to tackle everything from natural language processing to
image classification, providing you with unparalleled automation
power.
url: https://zapier.com/api/v4/app-directory/categories/ai-tools/
type_of: curated
featured_entry_slug: null
role: parent
- id: 97
title: All
slug: all
description: Contains all the services.
url: https://zapier.com/api/v4/app-directory/categories/all/
type_of: auto
featured_entry_slug: null
role: parent
- id: 37
title: Amazon
slug: aws
description: Tools from Amazon to host and manage sites and
applications on the Amazon cloud.
url: https://zapier.com/api/v4/app-directory/categories/aws/
type_of: curated
featured_entry_slug: what-you-should-automate
role: child
- id: 84
title: Analytics
slug: analytics
description: Tools to measure and report on success
url: https://zapier.com/api/v4/app-directory/categories/analytics/
type_of: curated
featured_entry_slug: automate-analytics-tools
role: child
- id: 21
title: App Builder
slug: app-builder
description: Tools to build a custom app with forms and databases.
url: https://zapier.com/api/v4/app-directory/categories/app-builder/
type_of: curated
featured_entry_slug: null
role: child
- id: 35
title: App Families
slug: app-families
description: ''
url: https://zapier.com/api/v4/app-directory/categories/app-families/
type_of: curated
featured_entry_slug: null
role: parent
- id: 155
title: Artificial Intelligence
slug: artificial-intelligence
description: Unlock the potential of artificial intelligence
in your workflow with these AI integrations. These apps use
AI to tackle everything from natural language processing to
image classification, providing you with unparalleled automation
power.
url: https://zapier.com/api/v4/app-directory/categories/artificial-intelligence/
type_of: curated
featured_entry_slug: null
role: parent
- id: 46
title: Beta
slug: beta
description: Beta services.
url: https://zapier.com/api/v4/app-directory/categories/beta/
type_of: auto
featured_entry_slug: null
role: child
description: ''
/v1/profiles/me:
get:
operationId: v1_profiles_me_list
description: |-
This endpoint returns the authenticated user information
#### When using OAuth
This endpoint requires the `profile` OAuth scope.
summary: User Profile
tags:
- Accounts
security:
- OAuth:
- profile
responses:
'403':
description: Invalid authentication
'401':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 401 Response
'409':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 503 Response
'504':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 504 Response
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Profile'
examples:
Profile:
value:
- id: 88998899
first_name: Jacob
last_name: Corwin
full_name: Jacob Corwin
email: jacob.corwin@zapier.example
email_confirmed: true
timezone: America/Toronto
summary: profile
description: ''
/v1/zap-templates:
get:
operationId: v1_zap_templates_list
description: List popular Zap Templates using your app. See our List Zap Templates
guide to get started.
summary: Get Zap Templates
parameters:
- in: query
name: apps
schema:
type: string
description: |-
A comma separated list of Zapier Apps to match Zap templates against. Note:
- Your app will always be one of the apps in the template
- The list will return Zap Templates with all the provided apps, not a subset
example: mailchimp
- in: query
name: limit
schema:
type: number
default: 5
description: '(Max: 100) Limit the number of Zap templates returned.'
- in: query
name: offset
schema:
type: number
default: 0
description: The number of Zap templates to skip before beginning to return
the Zap templates. The default value is 0, which is the offset of the first
item.
tags:
- Zap Templates
security:
- ClientIDAuthentication: []
responses:
'403':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 403 Response
'401':
description: Missing client_id in query parameters
'409':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 503 Response
'504':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 504 Response
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ZapTemplate'
examples:
/v1/zap-templates:
value:
- id: 51652
steps:
- id: 1
uuid: b9df4eff-f311-44f9-ac54-2901f952c6ac
title: Google Ads
slug: google-ads
description: Google Ads (formerly Google AdWords) is an online
advertising platform developed by Google, where advertisers
pay to display brief advertisements, service offerings, product
listings, video content, and generate mobile application installs
within the Google ad network to web users.
image: https://zapier-images.imgix.net/storage/services/4058ec8b47ad751cbd39bd686cf4eab7.png?auto=format%2Ccompress&ixlib=python-3.0.0&q=50
hex_color: 4285F4
images:
url_16x16: https://zapier-images.imgix.net/storage/services/4058ec8b47ad751cbd39bd686cf4eab7.png?auto=format%2Ccompress&fit=crop&h=16&ixlib=python-3.0.0&q=50&w=16
url_32x32: https://zapier-images.imgix.net/storage/services/4058ec8b47ad751cbd39bd686cf4eab7.png?auto=format%2Ccompress&fit=crop&h=32&ixlib=python-3.0.0&q=50&w=32
url_64x64: https://zapier-images.imgix.net/storage/services/4058ec8b47ad751cbd39bd686cf4eab7.png?auto=format%2Ccompress&fit=crop&h=64&ixlib=python-3.0.0&q=50&w=64
url_128x128: https://zapier-images.imgix.net/storage/services/4058ec8b47ad751cbd39bd686cf4eab7.png?auto=format%2Ccompress&fit=crop&h=128&ixlib=python-3.0.0&q=50&w=128
api: GoogleAdsCLIAPI@3.0.0
url: https://zapier.com/apps/google-ads/integrations?utm_medium=partner_api
label: New Campaign
- id: 2
uuid: ca83afc5-ee9a-470d-b577-e7f8fd555b67
title: Slack
slug: slack
description: 'Slack is a platform for team communication: everything
in one place, instantly searchable, available wherever you
go. Offering instant messaging, document sharing and knowledge
search for modern teams.'
image: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&ixlib=python-3.0.0&q=50
hex_color: 510f4d
images:
url_16x16: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&fit=crop&h=16&ixlib=python-3.0.0&q=50&w=16
url_32x32: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&fit=crop&h=32&ixlib=python-3.0.0&q=50&w=32
url_64x64: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&fit=crop&h=64&ixlib=python-3.0.0&q=50&w=64
url_128x128: https://zapier-images.imgix.net/storage/services/6cf3f5a461feadfba7abc93c4c395b33_2.png?auto=format%2Ccompress&fit=crop&h=128&ixlib=python-3.0.0&q=50&w=128
api: SlackAPI
url: https://zapier.com/apps/slack/integrations?utm_medium=partner_api
label: Send Channel Message
title: Send messages to Slack channels whenever new Google Ads
campaigns launch
slug: send-messages-to-slack-channels-whenever-new-google-ads-campaigns-launch
status: published
description_plain: |
A new Google Ads campaign can mean the start of your next marketing push, but it can also mean the start of a ton of new sales and service workflows. Zapier gives you a head start on those projects by automatically posting a new message in Slack to a specific channel you choose. Give your teams the heads up they need before your new clients come rolling in!
description_raw: A new Google Ads campaign can mean the start
of your next marketing push, but it can also mean the start
of a ton of new sales and service workflows. Zapier gives you
a head start on those projects by automatically posting a new
message in Slack to a specific channel you choose. Give your
teams the heads up they need before your new clients come rolling
in!
url: https://zapier.com/apps/google-ads/integrations/slack/51652/send-messages-to-slack-channels-whenever-new-google-ads-campaigns-launch?utm_medium=partner_api
description: |
<p>A new Google Ads campaign can mean the start of your next marketing push, but it can also mean the start of a ton of new sales and service workflows. Zapier gives you a head start on those projects by automatically posting a new message in Slack to a specific channel you choose. Give your teams the heads up they need before your new clients come rolling in!</p>
create_url: https://api.zapier.com/v1/embed/google-ads/create/51652
type: guided_zap
description: ''
/v1/zaps:
get:
operationId: v1_zaps_list
description: |-
This endpoint returns a list of Zaps for the authenticated Zapier user.
#### When using OAuth
This endpoint requires the `zap` OAuth scope.
summary: Get Zaps v1
parameters:
- in: query
name: get_params
schema: {}
description: If set, guarantees that the 'params' of any node belonging to
your app will be present in the response
example: ''
- in: query
name: limit
schema:
type: number
default: 5
description: '(Max: 100) Limit the number of Zap templates returned.'
- in: query
name: offset
schema:
type: number
default: 0
description: The number of Zap templates to skip before beginning to return
the Zap templates. The default value is 0, which is the offset of the first
item.
- in: query
name: params__{{KEY}}
schema:
type: string
description: Filter for Zaps that contain the given parameter's {{KEY}} and
the value of the query parameter. Keys are defined by your app on the [developer
platform](https://zapier.com/platform/login).
example: ex@mp1e47c4e6ff1a44e7800
tags:
- Zaps
security:
- OAuth:
- zap
responses:
'403':
description: Invalid authentication
'401':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 401 Response
'409':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 503 Response
'504':
content:
application/json:
schema:
type: object
additionalProperties: {}
description: 504 Response
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ZapsResponse'
examples:
/v1/zaps:
value:
- next: https://api.zapier.com/v1/zaps?limit=2&offset=2
previous: null
count: 2
objects:
- id: 125
title: Create Trello cards from new Typeform entries
state: 'on'
steps:
- type_of: read
app:
id: 4259
uuid: 5e2ba0e469b0-4754-bf69-d46221122aa2
title: Typeform
slug: typeform
description: Typeform helps you ask awesomely online! If
you ever need to run a survey, questionnaire, form, contest
etc... Typeform will help you achieve it beautifully across
all devices, every time, using its next generation platform.
hex_color: 8bcbca
image: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.png
images:
url_16x16: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.16x16.png
url_32x32: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.32x32.png
url_64x64: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.64x64.png
url_128x128: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.128x128.png
api: TypeformDevAPI
url: https://zapier.com/apps/typeform/integrations?utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
params: null
- type_of: write
app:
id: 4192
uuid: ee7e5c50a7d2-4bb4-b5b8-a7e55aa00521
title: Trello
slug: trello
description: Trello is team collaboration tool that lets
you organize anything and everything to keep your projects
on task.
hex_color: 0079bf
image: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.png
images:
url_16x16: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.16x16.png
url_32x32: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.32x32.png
url_64x64: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.64x64.png
url_128x128: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.128x128.png
api: TrelloAPI
url: https://zapier.com/apps/trello/integrations?utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
params: null
url: https://zapier.com/editor/125?utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
modified_at: '2017-03-22T09:38:11-05:00'
- id: 123
title: Create Trello cards from new Typeform entries
state: 'off'
steps:
- type_of: read
app:
id: 4259
uuid: 5e2ba0e469b0-4754-bf69-d46221122aa2
title: Typeform
slug: typeform
description: Typeform helps you ask awesomely online! If
you ever need to run a survey, questionnaire, form, contest
etc... Typeform will help you achieve it beautifully across
all devices, every time, using its next generation platform.
hex_color: 8bcbca
image: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.png
images:
url_16x16: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.16x16.png
url_32x32: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.32x32.png
url_64x64: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.64x64.png
url_128x128: https://cdn.zapier.com/storage/developer/5e21b4c1e0a2a3346a801dbc0a2a5a6d_2.128x128.png
api: TypeformDevAPI
url: https://zapier.com/apps/typeform/integrations?utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
params: null
- type_of: write
app:
id: 4192
uuid: ee7e5c50a7d2-4bb4-b5b8-a7e55aa00521
title: Trello
slug: trello
description: Trello is team collaboration tool that lets
you organize anything and everything to keep your projects
on task.
hex_color: 0079bf
image: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.png
images:
url_16x16: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.16x16.png
url_32x32: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.32x32.png
url_64x64: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.64x64.png
url_128x128: https://cdn.zapier.com/storage/services/da3ff465abd3a3e1b687c52ff803af74.128x128.png
api: TrelloAPI
url: https://zapier.com/apps/trello/integrations?utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
params: null
url: https://zapier.com/editor/123?utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
modified_at: '2017-03-21T22:04:05-05:00'
description: ''
/v2/action-runs:
post:
operationId: create-action-run
description: |-
Runs an action (step) in the third party API, using the provided authentication and inputs.
This endpoint is asynchronous, and the response will contain an Action Run ID. You can use the `/v2/action-runs/:id` endpoint to check the status of the run and retrieve the results.
Optionally, include a `callback_url` in the request body to receive the result via a POST callback instead of polling.
#### When using OAuth
This endpoint requires the `action:run` OAuth scope.
summary: Create an Action Run
tags:
- Experimental
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RunActionRequest'
examples:
CreatingAnActionRun(runningAnAction):
value:
data:
action: example_core:Vn7xbE60
authentication: example_QVaAreV1
inputs:
email: me@example.com
callback_url: https://example.com/post_callback
summary: Creating an Action Run (running an action)
required: true
security:
- OAuth:
- action:run
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/RunActionResponse'
examples:
CreateActionRunResponse:
value:
data:
type: run
id: 123e4567-e89b-12d3-a456-426614174000
summary: Create Action Run Response
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
callbacks:
actionRunCompleted:
'{$request.body#/data/callback_url}':
post:
description: When the action run reaches a terminal state (success or
error), Zapier POSTs the result to the `callback_url` supplied in
the request. The callback includes a `Zapier-Callback-Signature` header
containing an RS256-signed JWT verifiable via Zapier's JWKS endpoint
at `https://zapier.com/.well-known/jwks.json`. Zapier retries on 5xx
responses and network errors (up to 3 attempts). 4xx responses are
not retried.
summary: Action run completion callback
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CallbackPayload'
required: true
responses:
2XX:
description: Callback acknowledged
/v2/action-runs/{id}:
get:
operationId: retrieve-action-run
description: |-
Retrieves an Action Run.
#### When using OAuth
This endpoint requires the `action:run` OAuth scope.
summary: Retrieve Action Run
parameters:
- in: path
name: id
schema:
type: string
description: An Action Run ID.
required: true
tags:
- Experimental
security:
- OAuth:
- action:run
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ActionRunResponse'
examples:
RetrievingARun:
value:
data:
type: run
status: success
results:
- id: 123
errors: []
summary: Retrieving a run
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/actions:
get:
operationId: get-actions
description: |-
Fetch the available actions for the provided App. It's typical to filter by type so that only actions that make sense for a particular step are shown. Action IDs may not be reused, see our documentation for how to hardcode a particular action.
#### When using Client ID
Simply providing a client ID query parameter is sufficient. If an Authorization header is present, it will be used instead.
#### When using OAuth
This endpoint requires the `zap` OAuth scope.
summary: Get Actions
parameters:
- in: query
name: action_type
schema:
type: string
enum:
- READ
- READ_BULK
- SEARCH
- SEARCH_AND_WRITE
- SEARCH_OR_WRITE
- WRITE
description: The type of Action to filter for. Defaults to returning all actions
regardless of type.
example: READ
- in: query
name: app
schema:
type: string
description: 'An App identifier: a canonical App ID (UUID) or an app key'
required: true
example: 868f9d3c-2ea0-4f19-a32d-a61b276ab8de
tags:
- Actions
- Apps
security:
- OAuth:
- zap
- ClientIDAuthentication: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ActionsResponse'
examples:
ActionsExample:
value:
- links:
next: null
prev: null
meta:
count: 1
limit: 10
offset: 0
data:
- id: uag:1f188536-6dd0-4172-8414-2b90914ddee9
key: new_lead
app: 83b47c0e-adda-44da-a45d-42565fe521ef
type: action
action_type: action
is_instant: true
title: New Lead
description: Triggers when a new lead is added to SuperExampleCRM
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/actions/{action_id}/inputs:
post:
operationId: get-fields-inputs
description: |-
Get the Input Fields for a particular Action, using the provided authentication and inputs. See the fields and fieldsets guide for more information.
By default the Input Fields are resolved against the App's current version. Pass a versioned `selected_api` (e.g. `SplitwiseCLIAPI@1.0.0`) to pin them to a specific version instead, which is useful when editing an Action that was created against an earlier version of the App.
See [our docs](https://docs.zapier.com/powered-by-zapier/zap-creation/fields-and-fieldsets#input-fields) for more information.
#### When using OAuth
This endpoint requires the `zap:write` OAuth scope.
summary: Get Input Fields
parameters:
- in: path
name: action_id
schema:
type: string
description: An Action ID, as provided by the `/actions` endpoint.
required: true
example: uag:87b1c14e-ef30-43d5-9395-6c6514dbb123
tags:
- Actions
- Inputs
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListInputFieldsRequest'
examples:
FetchInputFields:
value:
data:
authentication: '928117'
inputs:
spreadsheet: my_sheet
summary: Fetch input fields
FetchInputFieldsForASpecificAppVersion:
value:
data:
authentication: '928117'
inputs:
spreadsheet: my_sheet
selected_api: GoogleSheetsCLIAPI@1.0.0
summary: Fetch input fields for a specific App version
required: true
security:
- OAuth:
- zap:write
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/InputFieldsResponse'
examples:
InputFieldsForSomeApp:
value:
links:
next: null
prev: null
meta:
count: 2
limit: null
offset: 0
data:
- type: input_field
id: input
default_value: ''
depends_on: []
description: Use the Input Data fields above to assign key names
(left) and map values (right) from previous steps. Use notation
`inputData.keyName` or `inputData['keyName']` to access the
values within your code. The data will be provided **as strings**.
Learn more [here](https://zapier.com/help/create/code-webhooks/use-javascript-code-in-zaps#input-data-for-code-steps).
invalidates_input_fields: false
is_required: false
placeholder: ''
title: Input Data
value_type: OBJECT
- type: input_field
id: code
default_value: |-
// this is wrapped in an `async` function
// you can use await throughout the function
output = [{id: 123, hello: "world"}];
depends_on: []
description: '**Warning! This is an advanced action!** Uses
Node 10.x.x. Please read the [Code documentation for more
information](/help/create/code-webhooks/use-javascript-code-in-zaps).'
format: CODE
invalidates_input_fields: false
is_required: true
placeholder: ''
title: Code
value_type: STRING
summary: Input fields for some app
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/actions/{action_id}/inputs/{input_id}/choices:
post:
operationId: get-choices
description: |-
Get the possible values for a `SELECT` Input Field.
#### When using OAuth
This endpoint requires the `zap` OAuth scope.
summary: Get Choices
parameters:
- in: path
name: action_id
schema:
type: string
description: An Action ID, as provided by the `/actions` endpoint.
required: true
example: uag:87b1c14e-ef30-43d5-9395-6c6514dbb123
- in: path
name: input_id
schema:
type: string
description: An Input Field ID, as provided by the `/inputs` endpoint.
required: true
example: lead_id
- in: query
name: page
schema:
type: string
default: '1'
description: The page of choices to return, defaults to the first
example: '1'
tags:
- Actions
- Inputs
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ChoiceRequest'
required: true
security:
- OAuth:
- zap
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ChoiceResponse'
examples:
ChoicesForSomeAction:
value:
- data:
- id: 55c
type: choice
label: First
value: example
- id: a73
type: choice
label: Second
value: example
links:
next: null
prev: null
meta:
page: 1
summary: Choices for Some Action
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/actions/{action_id}/outputs:
post:
operationId: get-fields-outputs
description: |-
Get the Output Fields for a particular Action, using the provided authentication and inputs.
#### When using OAuth
This endpoint requires the `zap:write` OAuth scope.
summary: Get Output Fields
parameters:
- in: path
name: action_id
schema:
type: string
description: An Action ID, as provided by the `/actions` endpoint.
required: true
example: uag:87b1c14e-ef30-43d5-9395-6c6514dbb123
tags:
- Actions
- Outputs
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListOutputFieldsRequest'
examples:
FetchingOutputsForSomeApp:
value:
data:
authentication: example_QVaAreV1
inputs:
someparam: somevalue
summary: Fetching outputs for some app
required: true
security:
- OAuth:
- zap:write
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/OutputFieldsResponse'
examples:
OutputFieldsForSomeApp:
value:
links:
next: null
prev: null
meta:
count: 3
limit: null
offset: 0
data:
- type: output_fields
id: commit__message
title: Commit Message
sample: Git 2.0
type_value: string
list: false
- type: output_field
id: parents[]sha
title: Parents Sha
sample: 4a28f169ad29ba452e0e7bea2583914c10c58322
type_value: string
list: false
- type: output_field
id: parents[]url
title: Parents Url
sample: https://github.com/git/git/commit/4a28f169ad29ba452e0e7bea2583914c10c58322
type_value: string
list: false
summary: Output fields for some app
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/actions/{action_id}/test:
post:
operationId: test-action
description: |-
Tests the action (step) in the third party api, using the provided authentication and inputs.
#### When using OAuth
This endpoint requires the `zap:write` OAuth scope.
summary: Step Test
parameters:
- in: path
name: action_id
schema:
type: string
description: An Action ID, as provided by the `/actions` endpoint.
required: true
tags:
- Actions
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ActionTestRequest'
examples:
TestingAnAction:
value:
data:
limit: 10
offset: 0
authentication: example_QVaAreV1
inputs:
email: me@example.com
summary: Testing an action
required: true
security:
- OAuth:
- zap:write
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ActionTestResponse'
examples:
ActionTestResponse:
value:
links:
next: null
prev: null
meta:
count: 1
limit: null
offset: 0
data:
- Description: A response from some example third party API related
to the action
Source: RFC 8259
Image:
Width: 800
Height: 600
Title: View from 15th Floor
Thumbnail:
Url: https://www.example.com/image/481989943
Height: 125
Width: 100
Animated: false
IDs:
- 116
- 943
- 234
- 38793
summary: Action Test Response
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/apps:
get:
operationId: get-v2-apps
description: |-
This endpoint returns a list of apps sorted by popularity.
#### When using Client ID
Simply providing a client ID query parameter is sufficient. If an Authorization header is present, it will be used instead.
#### When using OAuth
This endpoint requires the `zap` OAuth scope.
summary: Get Apps v2
parameters:
- in: query
name: category
schema:
type: string
description: "Categories that apps must have in order to be returned in the
response. \nThe full list of valid categories can be retrieved using the
`category` endpoint, detailed [here](https://platform.zapier.com/embed/partner-api#get-v1categories)."
example: ai-tools
- in: query
name: ids
schema:
type: string
description: Parameter to restrict the results to apps whose ID matches those
in the provided comma-separated value. Cannot be combined with `category`.
- in: query
name: limit
schema:
type: integer
description: Used for paginating results. Specifies the maximum number of
items to return per page. If this value is not set, it defaults to 10.
example: 10
- in: query
name: offset
schema:
type: integer
description: Used for paginating results. Specifies the offset to use.
- in: query
name: query
schema:
type: string
description: Parameter to limit the results to apps whose titles match the
provided query.
tags:
- Apps
security:
- OAuth:
- zap
- ClientIDAuthentication: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ExpandedAppsResponse'
examples:
/v2/apps:
value:
- data:
- id: 1e4fcbf4-d80b-4ec3-b33b-c085f1ecbbaa
key: HubSpotCLIAPI
selected_api: HubSpotCLIAPI@1.7.1
type: app
image: https://zapier-images.imgix.net/storage/developer/cde9764aa8d19fdd6d591455dbe5a78d.png?auto=format%2Ccompress&ixlib=python-3.0.0&q=50
links:
connect_new_authentication: https://zapier.com/engine/auth/start/HubSpotCLIAPI@1.7.1?redirect=https%3A%2F%2Fapi.zapier.com%2Fv2%2Fauthentications%2Fredirect
action_types:
- READ
title: HubSpot
images:
url_16x16: https://zapier-images.imgix.net/storage/developer/cde9764aa8d19fdd6d591455dbe5a78d.png?auto=format%2Ccompress&fit=crop&h=16&ixlib=python-3.0.0&q=50&w=16
url_32x32: https://zapier-images.imgix.net/storage/developer/cde9764aa8d19fdd6d591455dbe5a78d.png?auto=format%2Ccompress&fit=crop&h=32&ixlib=python-3.0.0&q=50&w=32
url_64x64: https://zapier-images.imgix.net/storage/developer/cde9764aa8d19fdd6d591455dbe5a78d.png?auto=format%2Ccompress&fit=crop&h=64&ixlib=python-3.0.0&q=50&w=64
url_128x128: https://zapier-images.imgix.net/storage/developer/cde9764aa8d19fdd6d591455dbe5a78d.png?auto=format%2Ccompress&fit=crop&h=128&ixlib=python-3.0.0&q=50&w=128
hex_color: 8bcbca
categories:
- slug: partners
description: HubSpot is your all-in-one stop for all of your
marketing software needs.
meta:
count: 1
offset: 10
limit: 10
links:
next: https://api.zapier.com/v2/apps?offset=20&limit=10
previous: https://api.zapier.com/v2/apps?offset=0&limit=10
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/authentications:
get:
operationId: get-authentications
description: |-
Fetch the available Authentications for the provided App. This will only return Authentications that are owned by the user and not those that are shared with them, since it's not possible to create Zaps with Authentications you don't own.
#### When using OAuth
This endpoint requires the `connection:read` OAuth scope.
summary: Get Authentications
parameters:
- in: query
name: app
schema:
type: string
description: 'An App identifier: a canonical App ID (UUID) or an app key'
required: true
example: 868f9d3c-2ea0-4f19-a32d-a61b276ab8de
- in: query
name: limit
schema:
type: integer
description: Used for paginating results. Specifies the maximum number of
items to return per page. If this value is not set, it defaults to 10.
example: 10
- in: query
name: offset
schema:
type: integer
description: Used for paginating results. Specifies the offset to use.
tags:
- Authentications
security:
- OAuth:
- connection:read
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationResponse'
examples:
AuthenticationsForGoogleSheets:
value:
links:
next: null
prev: null
meta:
count: 1
limit: 10
offset: 0
data:
- type: authentication
id: 019487c8-6b2a-7c1e-9f3d-2a1b0c4d5e6f
app: 81f613aa-c98a-4383-a5fc-195e68647217
is_expired: false
title: Google Sheets some.user@mycompany.example
summary: Authentications for Google Sheets
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
post:
operationId: create-authentication
description: |-
Creates a new Authentication for the provided App. See our Adding an Authentication guide to get started.
#### When using OAuth
This endpoint requires the `connection:write` OAuth scope.
summary: Create Authentication
tags:
- Authentications
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationCreateRequest'
examples:
NewAuthentication:
value:
data:
title: My new auth
app: 8cdbc496-c95c-4f19-b3a3-fee03ed5f924
authentication_fields:
secret: example_E4CrHVvRuxTXrPFLyyZFeRJwJcx2ELQZ
summary: New Authentication
required: true
security:
- OAuth:
- connection:write
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationResponse'
examples:
CreatedAuth:
value:
links:
next: null
prev: null
meta:
count: 1
limit: 1
offset: 0
data:
- type: authentication
id: 019487c8-7d3b-7e2f-a04e-3b2c1d5e6f70
app: a8aaed31-e257-4479-aaa9-ca02fe2fab04
is_expired: false
title: 'Example zapier@example.com #5'
summary: Created Auth
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/authentications/{authentication_id}:
delete:
operationId: delete-authentication
description: |-
Deletes the Authentication with the provided ID. Once deleted, the Authentication can no longer be used and will no longer be returned by the `/authentications` endpoint. Returns a `404` if the Authentication does not exist or is not owned by the user.
#### When using OAuth
This endpoint requires the `connection:delete` OAuth scope.
summary: Delete Authentication
parameters:
- in: path
name: authentication_id
schema:
type: string
description: An Authentication ID, as provided by the `/authentications` endpoint.
required: true
example: 019487c8-0001-7000-8000-000000000001
tags:
- Authentications
security:
- OAuth:
- connection:delete
responses:
'204':
description: No Content
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/authorize:
get:
operationId: v2_authorize_list
description: Create a new user and obtain an access token. See our Quick Account
Creation guide to get started.
summary: Create Account
parameters:
- in: query
name: client_id
schema:
type: string
minLength: 1
description: Your application Client ID.
required: true
- in: query
name: redirect_uri
schema:
type: string
minLength: 1
description: The page the user will be redirect to after OAuth flow.
required: true
- in: query
name: referer
schema:
type: string
minLength: 1
- in: query
name: response_type
schema:
type: string
minLength: 1
description: Only OAuth response type `code` is supported
required: true
- in: query
name: scope
schema:
type: string
minLength: 1
description: Space (`%20`) separated values
required: true
- in: query
name: sign_up_email
schema:
type: string
format: email
minLength: 1
description: Email of the user signing up.
- in: query
name: sign_up_first_name
schema:
type: string
minLength: 1
description: First name of the user signing up.
- in: query
name: sign_up_last_name
schema:
type: string
minLength: 1
description: Last name of the user signing up.
- in: query
name: utm_campaign
schema:
type: string
default: workflow_api
minLength: 1
- in: query
name: utm_content
schema:
type: string
minLength: 1
- in: query
name: utm_medium
schema:
type: string
default: embed
minLength: 1
- in: query
name: utm_source
schema:
type: string
default: partner
minLength: 1
tags:
- Accounts
security:
- ClientIDAuthentication: []
responses:
'302':
description: Redirect to authorization URL
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/guess:
post:
operationId: create-zap-guess
description: This endpoint returns a suggested Zap and pre-filled URL to Zapier
from a given prompt.
summary: Guess a Zap Beta
parameters:
- in: query
name: client_id
schema:
type: string
description: See our authentication documentation for how to find your client
ID
required: true
tags:
- Zaps
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ZapGuesserRequest'
examples:
ZapGuessRequest:
value:
description: Save new leads from Facebook Lead Ads to Google Sheets,
and email me the lead in Gmail
summary: Zap Guess Request
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ZapGuesserResponse'
examples:
ZapGuessResponse:
value:
title: Save Facebook Lead Ads leads to Google Sheets and send
an email
steps:
- step:
title: Trigger when a new lead is created in Facebook Lead
Ads
app: Facebook Lead Ads
api: FacebookLeadsAPI
alternatives:
- title: null
app: LinkedIn Ads
api: LinkedInLeadGenFormsCLIAPI@2.7.1
- step:
title: Save the lead information to a Google Sheet
app: Google Sheets
api: GoogleSheetsV2API
alternatives: []
prefilled_url: https://api.zapier.com/v1/embed/my-app/create?steps%5B0%5D%5Bapp%5D=FacebookLeadsAPI&steps%5B0%5D%5Baction%5D=lead&steps%5B0%5D%5Btype%5D=read&steps%5B1%5D%5Bapp%5D=GoogleSheetsV2API&steps%5B1%5D%5Baction%5D=add_row&steps%5B1%5D%5Btype%5D=write&utm_campaign=partner_zap_guesser&copilot_prompt=Save+new+leads+from+Facebook+Lead+Ads+to+Google+Sheets%2C+and+email+me+the+lead+in+Gmail&partner_zap_guesser_attempt_id=22f44602-db8f-4a2a-8b09-420b0d277b5f
summary: Zap Guess Response
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/InvalidZapGuesserResponse'
examples:
InvalidGuessAZapPrompt:
value:
messages:
- detail: This doesn't seem to be a workflow. You could try something
like, 'When a new NFL...
summary: Invalid Guess a Zap Prompt
description: This schema can be expected for 400 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/whitelabel/apps:
get:
operationId: v2-whitelabel-apps-list
description: This endpoint returns a list of apps available for whitelabel connection.
It is only for customers enrolled in the Zapier Whitelabel program. All others
likely want the `Get Apps` endpoint instead.
summary: Get Whitelabel Apps v2
parameters:
- in: query
name: category
schema:
type: string
description: Filter apps by category slug.
- in: query
name: limit
schema:
type: number
description: Limit the number of apps returned.
- in: query
name: offset
schema:
type: number
default: 0
description: The number of apps to skip before beginning to return results.
- in: query
name: search
schema:
type: string
description: Case-insensitive search to filter apps by title.
tags:
- Apps
- Experimental
responses:
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/WhitelabelAppsResponse'
description: ''
/v2/zap-runs:
get:
operationId: get-zap-runs
description: |-
This endpoint returns runs for the specified Zaps and provides basic yet essential details about their execution. As the initial version, it serves foundational information, with plans for continuous enhancement to expand its capabilities and improve data output over time.
#### When using OAuth
This endpoint requires the `zap:runs` OAuth scope.
summary: Get Zap Runs
parameters:
- in: query
name: from_date
schema:
type: string
description: Filter Zap runs that occurred on or after this date. If not provided,
the results default to Zap runs from the last 30 days.
example: '2024-10-16T06:29:10.360000Z'
- in: query
name: limit
schema:
type: integer
description: Used for paginating results. Specifies the maximum number of
items to return per page. If this value is not set, it defaults to 10.
example: 10
- in: query
name: offset
schema:
type: integer
description: Used for paginating results. Specifies the offset to use.
- in: query
name: search
schema:
type: string
description: Performs a text search against the zap_title, data_in, and data_out
fields, returning only zap runs that match the specified keywords.
x-maxLength: 150
example: My Zap Title
- in: query
name: statuses
schema:
type: array
items:
type: string
enum:
- delayed
- scheduled
- pending
- error
- error_handled
- halted
- throttled
- held
- filtered
- skipped
- success
description: Accepts one or more status values separated by comma, enabling
the filtering of zap runs based on the specified status or statuses provided.
explode: false
style: form
example:
- error
- success
- in: query
name: to_date
schema:
type: string
description: Filter Zap runs that occurred before this date.
example: '2024-10-16T06:29:10.360000Z'
- in: query
name: zap_id
schema:
type: integer
description: Find Zap runs for the specified Zap ID.
example: 104445735
tags:
- Experimental
- Zaps
security:
- OAuth:
- zap:runs
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ZapRunsResponse'
examples:
/v2/zap-runs:
value:
- links:
next: https://api.zapier.com/v2/zap-runs?offset=10&limit=10
prev: https://api.zapier.com/v2/zap-runs?offset=0&limit=10
meta:
count: 30
limit: 10
offset: 10
data:
- id: 123e4567-e89b-12d3-a456-426614174000
zap_id: 104445735
start_time: '2024-10-16T06:29:10.360000Z'
end_time: '2024-10-16T06:29:10.360000Z'
status: success
zap_title: My Awesome Zap
steps:
- status: success
start_time: '2024-10-16T06:29:10.360000Z'
data_in: ''
data_out: ''
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/zaps:
get:
operationId: get-v2-zaps
description: |-
This endpoint returns a list of Zaps for the authenticated Zapier user.
The `expand` array can be used to expand selected fields into full objects in the response. Inputs with keys can
also be passed to filter Zaps by certain criteria.
**Scope Selection:**
- Use `zap` if you have a Zapier integration and wish to get only Zaps using your integration.
- Use `zap:all` to get all of the user's Zaps.
- Use `zap:account:all` to get all of the Zaps the user has access to in their account.
#### When using OAuth
This endpoint requires the `zap`, `zap:all`, or `zap:account:all` OAuth scopes.
summary: Get Zaps v2
parameters:
- in: query
name: expand
schema:
type: string
description: A comma separated list of Zap fields that should be expanded
from ids to full objects in the response. Fields that may not be expanded
will remain as ids.
example: steps.action
- in: query
name: include_shared
schema:
type: boolean
description: If true, all Zaps that are shared with the user, rather than
only those owned by them, are returned. If the zap:account:all scope is
not present this has no effect.
- in: query
name: inputs
schema:
type: string
description: You may pass inputs[KEY]=VALUE1,VALUE2 to filter for Zaps that
contain those settings. Keys are defined by your app on the developer platform.
example: inputs[board]=BOARD_ID
- in: query
name: limit
schema:
type: integer
description: Used for paginating results. Specifies the maximum number of
items to return per page. If this value is not set, it defaults to 10.
example: 10
- in: query
name: offset
schema:
type: integer
description: Used for paginating results. Specifies the offset to use.
tags:
- Zaps
security:
- OAuth:
- zap
- zap:all
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ExpandedZapsResponse'
examples:
/v2/zaps:
value:
- links:
next: null
prev: null
meta:
count: 1
offset: 0
limit: null
data:
- type: zap
id: 00000000-0000-c000-8000-000000012345
is_enabled: false
last_successful_run_date: '2019-08-24T14:15:22Z'
updated_at: '2019-08-24T14:15:22Z'
title: My Zap
links:
html_editor: https://zapier.com/editor/7481?utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
steps:
- action: uag:1f188536-6dd0-4172-8414-2b90914ddee9
authentication: 025256a5-1cd0-8ce2-9e55-ad520b3472bb
inputs:
deal_stage: CLOSED_WON
title: Pacific Railway Golden spike hammered
- action: uag:1f188536-6dd0-4172-8414-2b90914ddaa7
authentication: 02b2ab37-dcfc-8462-845f-9e49cb1b3a43
inputs:
full_name: '{{customer__full_name}}'
title: Record who dunnit
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
post:
operationId: post-zaps
description: |-
This URL creates a Zap based on the given steps and title.
#### When using OAuth
This endpoint requires the `zap:write`, or `zap:all` OAuth scopes.
summary: Create a Zap
parameters:
- in: query
name: expand
schema:
type: string
description: A comma separated list of Zap fields that should be expanded
from ids to full objects in the response. Fields that may not be expanded
will remain as ids.
example: steps.action
tags:
- Zaps
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ZapRequest'
examples:
ToBeCreatedZap:
value:
data:
steps:
- action: example_core:5m2y9p7J
inputs:
code: 'output = [{id: Math.round(Date.now()/1000), n: Math.random()}];'
authentication: null
alias: null
- action: example_core:VBz2NGB5
inputs:
code: 'output = [{ id: inputData.id, n: inputData.n * 2}];'
inputs:
n: '{{n}}'
id: '{{id}}'
authentication: null
alias: null
title: My Critically Important Program
summary: To be created Zap
ManyStepZap:
value:
data:
steps:
- action: core:9QKqnTZ54VnrL2opYbkJJKveKEr2GJ
inputs: {}
authentication: Vx4PEEeV
alias: slack_new_saved_message
- action: core:2oY5MSxlgML1jb43A0nroedgjdnVM
inputs:
to:
- chang.hsiao@irohalen.example
subject: 3 step zap - new message saved in slack
body: |-
Saved new message from:
{{slack_new_saved_message.user__real_name}}
Message Content:
{{text}}
authentication: k0QBMMDK
alias: null
- action: core:vDakLS1PLO4J29eodDRLa5okErEn0
inputs:
channel: U036ZHWNHU2
text: |-
Saved new message from:
{{slack_new_saved_message.user__real_name}}
Email thread id:
{{threadId}}
Message Content:
{{slack_new_saved_message.text}}
authentication: Vx4PEEeV
alias: slack_send_direct_message
title: My 3 step zap
summary: Many Step Zap
required: true
security:
- OAuth:
- zap:write
- zap:all
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/ExpandedZap'
examples:
CustomCreatedZap:
value:
type: zap
id: 033cc069f2d3-4d63-8666-10c07ab38dac
is_enabled: true
last_successful_run_date: '2019-08-24T14:15:22Z'
updated_at: '2024-03-14T22:02:36+00:00'
title: My Critically Important Program
links:
html_editor: https://zapier.com/editor/104826178?utm_source=partner&utm_medium=embed&utm_campaign=partner_api&referer=zapier
steps:
- action: example_core:Vn7xbE60
authentication: 02ad1e61-17a9-87fa-971f-8619fb788562
inputs: {}
title: null
- action: example_core:V7GpzX40
authentication: null
inputs: null
title: null
summary: Custom created zap
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/zaps/{id}:
patch:
operationId: patch-zaps
description: |-
Edits a Zap on behalf of an end user. Accepts `title` and/or `steps`; any provided `steps` fully replace the Zap's existing step list. Editing `steps` publishes a new version and enables the Zap, even if it was previously paused. A `title`-only edit does not change whether the Zap is paused or enabled.
#### When using OAuth
This endpoint requires the `zap:update` OAuth scope.
summary: Edit a Zap
parameters:
- in: path
name: id
schema:
type: string
format: uuid
description: The Zap ID as returned by GET /v2/zaps or POST /v2/zaps.
required: true
example: 00000000-0000-c000-8000-000000123456
tags:
- Zaps
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedZapPatchRequest'
security:
- OAuth:
- zap:update
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ExpandedZap'
description: ''
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
delete:
operationId: delete-zaps
description: |-
Permanently deletes a Zap on behalf of an end user. The Zap is stopped and removed from the end user's account. This action cannot be undone.
#### When using OAuth
This endpoint requires the `zap:delete` OAuth scope.
summary: Delete a Zap
parameters:
- in: path
name: id
schema:
type: string
format: uuid
description: The Zap ID as returned by GET /v2/zaps or POST /v2/zaps.
required: true
example: 00000000-0000-c000-8000-000000123456
tags:
- Zaps
security:
- OAuth:
- zap:delete
responses:
'204':
description: No response body
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/zaps/{id}/disable:
post:
operationId: disable-zaps
description: |-
Disables (pauses) a Zap on behalf of an end user without deleting it. Disabling a Zap that is already paused succeeds without making changes.
#### When using OAuth
This endpoint requires the `zap:pause` OAuth scope.
summary: Disable a Zap
parameters:
- in: path
name: id
schema:
type: string
format: uuid
description: The Zap ID as returned by GET /v2/zaps or POST /v2/zaps.
required: true
example: 00000000-0000-c000-8000-000000123456
tags:
- Zaps
security:
- OAuth:
- zap:pause
responses:
'204':
description: No response body
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
/v2/zaps/{id}/enable:
post:
operationId: enable-zaps
description: |-
Enables (unpauses) a Zap on behalf of an end user by re-enabling its current published version. Enabling a Zap that is already running succeeds without making changes.
#### When using OAuth
This endpoint requires the `zap:pause` OAuth scope.
summary: Enable a Zap
parameters:
- in: path
name: id
schema:
type: string
format: uuid
description: The Zap ID as returned by GET /v2/zaps or POST /v2/zaps.
required: true
example: 00000000-0000-c000-8000-000000123456
tags:
- Zaps
security:
- OAuth:
- zap:pause
responses:
'204':
description: No response body
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 403 Response
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 401 Response
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 409 Response
'429':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 429 Response
'503':
headers:
Retry-After:
schema:
type: string
format: uri
description: Indicates when to retry the request
X-RateLimit-Limit:
schema:
type: string
format: uri
description: The maximum number of requests you're permitted to make
per hour.
X-RateLimit-Remaining:
schema:
type: string
format: uri
description: The number of requests remaining in the current rate limit
window.
X-RateLimit-Reset:
schema:
type: string
format: uri
description: The time at which the current rate limit window resets
in UTC epoch seconds.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 503 Response
'504':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
description: 504 Response
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
MalformedRequest.:
value:
errors:
- status: 400
code: parse_error
title: ParseError
detail: Malformed request.
source: null
meta:
source: ZAPIER
full_details:
message: Malformed request.
code: parse_error
summary: Malformed request.
description: This schema can be expected for 4xx 'Malformed request.' errors
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
AServerErrorOccurred.:
value:
errors:
- status: 500
code: error
title: APIException
detail: A server error occurred.
source: null
meta:
source: ZAPIER
full_details:
message: A server error occurred.
code: error
summary: A server error occurred.
description: This schema can be expected for 5xx 'A server error occurred.'
errors
components:
schemas:
Action:
type: object
description: An Action is an operation that can be performed against a third-party
API; either a read or a write. A Zap is composed of a read, followed by one
or more writes.
properties:
id:
type: string
description: The ID to refer to this action (unstable, may change when referenced
app changes)
key:
type: string
description: The developer provided identifier for this Action (stable)
app:
description: Apps
oneOf:
- $ref: '#/components/schemas/Apps'
- type: string
type:
allOf:
- $ref: '#/components/schemas/ActionTypeEnum'
description: |-
The type of this object
* `action` - action
action_type:
allOf:
- $ref: '#/components/schemas/ActionTypeEnum'
description: |-
The type of this Action
* `READ` - READ
* `READ_BULK` - READ_BULK
* `WRITE` - WRITE
* `SEARCH` - SEARCH
* `SEARCH_OR_WRITE` - SEARCH_OR_WRITE
* `SEARCH_AND_WRITE` - SEARCH_AND_WRITE
* `FILTER` - FILTER
is_instant:
type: boolean
description: Will be set to `true` if this Action triggers instantly. May
only be `true` when `type` is `READ`.
title:
type: string
description: The title of this Action.
description:
type: string
description: A longer description of this Action, usually describing what
it does in more detail.
required:
- action_type
- app
- description
- id
- is_instant
- key
- title
- type
ActionRunResponse:
type: object
description: The response of a given Action Run
properties:
data:
allOf:
- $ref: '#/components/schemas/_ActionRunResponse'
description: The resulting data after a given Action was run
required:
- data
ActionTestRequest:
type: object
properties:
data:
$ref: '#/components/schemas/_ActionTestRequest'
required:
- data
ActionTestResponse:
type: object
description: |-
Base Response definition to be used in other Response Serializers.
Be sure to include the `data` field after using this class
properties:
links:
allOf:
- $ref: '#/components/schemas/Links'
description: The links object returned in paginated response bodies.
meta:
allOf:
- $ref: '#/components/schemas/BaseMeta'
description: The meta object returned in paginated response bodies.
data:
type: array
items:
type: object
additionalProperties: {}
description: The result of executing said Action on the third-party API
required:
- data
- links
- meta
ActionTypeEnum:
enum:
- action
type: string
description: '* `action` - action'
ActionsResponse:
type: object
description: A valid response for fetching available actions for the App
properties:
links:
allOf:
- $ref: '#/components/schemas/Links'
description: The links object returned in paginated response bodies.
meta:
allOf:
- $ref: '#/components/schemas/BaseMeta'
description: The meta object returned in paginated response bodies.
data:
type: array
items:
$ref: '#/components/schemas/Action'
description: List of Actions for the provided App
required:
- links
- meta
App:
type: object
description: App (Service).
properties:
uuid:
type: string
format: uuid
description: The UUID identifier of this App
title:
type: string
description: The title of this App
slug:
type: string
description: The shortened slug identified of this App
pattern: ^[-a-zA-Z0-9_]+$
description:
type: string
description: The description of this App
image:
type: string
format: uri
description: A URL to an image representing this App
url:
type: string
readOnly: true
description: A URL to an embed with your App and this one
links:
type: object
additionalProperties:
type: string
readOnly: true
description: An object whose 'mutual:zap_templates' key is a URL to shared
Zap Templates between your App and this one
categories:
type: array
items:
$ref: '#/components/schemas/Category'
description: A list of Categories associated with this App
images:
type: object
additionalProperties: {}
description: An object containing images representing this App of various
sizes
app_latest:
type: string
readOnly: true
description: Shorthand for referencing the latest version of this App
required:
- app_latest
- categories
- description
- image
- images
- links
- slug
- title
- url
- uuid
AppCategory:
type: object
description: Category an app belongs to.
properties:
id:
type: integer
description: The unique ID for this Category
title:
type: string
description: The title of this Category
slug:
type: string
description: The shortened slug for this Category
description:
type: string
description: The description of this Categeory
url:
type: string
description: The URL for this Category
type_of:
type: string
description: The type of this Category
featured_entry_slug:
type:
- string
- 'null'
description: The featured entry for this Category (if present)
role:
type: string
description: This Category's role
required:
- description
- featured_entry_slug
- id
- role
- slug
- title
- type_of
- url
Apps:
type: object
description: An app that integrates with Zapier
properties:
id:
type: string
description: Unique id of the app
key:
type:
- string
- 'null'
description: A stable, versionless key that identifies the app's current
implementation (e.g. `HubSpotCLIAPI`).
selected_api:
type:
- string
- 'null'
description: The latest versioned identifier for the app's current implementation
(e.g. `HubSpotCLIAPI@1.4.18`). For versionless implementations this matches
`key` (e.g. `GoogleSheetsV2API`). This is the latest promoted version,
not a pinned or historical version.
type:
type: string
default: app
description: The type of this object.
image:
type: string
description: Default image/icon to represent the app.
links:
type: object
additionalProperties: {}
description: |-
A url that, when visited, will direct the user to authenticate with the app and allow Zapier access to the app, thus creating a new Authentication.
If value is `null`, then no authentication is required to use the app. Client ID-authenticated requests will never have this object's fields populated.
action_types:
type: array
items: {}
description: A list of action types for this specific App
title:
type: string
description: Human readable name of the app
images:
allOf:
- $ref: '#/components/schemas/AppsImages'
description: The URL of images (of various sizes) for this specific App
hex_color:
type: string
description: A branded color that can be used to represent the app.
categories:
type: array
items:
$ref: '#/components/schemas/Category'
description: A list of categories to which this app belongs. Helpful in
identifying apps by type and functionality.
description:
type: string
description: Human readable description of the app.
required:
- action_types
- categories
- description
- hex_color
- id
- image
- images
- links
- title
AppsImages:
type: object
description: Images/icons of various resolutions to represent the app.
properties:
url_16x16:
type: string
description: 16x16 resolution image URL
url_32x32:
type: string
description: 32x32 resolution image URL
url_64x64:
type: string
description: 64x64 resolution image URL
url_128x128:
type: string
description: 128x128 resolution image URL
required:
- url_128x128
- url_16x16
- url_32x32
- url_64x64
AppsResponse:
type: object
description: A page of returned apps.
properties:
total:
type: integer
description: The total number of Apps that matched
page:
type: integer
readOnly: true
description: The current page returned
pages:
type: integer
readOnly: true
description: The total number of pages
per_page:
type: integer
readOnly: true
description: How many Apps are returned per-page
objects:
type: array
items:
$ref: '#/components/schemas/App'
description: A list containing all matching Apps'
prev_url:
type: string
format: uri
readOnly: true
description: The URL to call to get the previous matching Apps
next_url:
type: string
format: uri
readOnly: true
description: The URL to call to get the next matching Apps
required:
- next_url
- objects
- page
- pages
- per_page
- prev_url
- total
Authentication:
type: object
description: |-
An Authentication contains various fields, often credentials such as API tokens, used to access Partner APIs on
behalf of a user. The actual fields are held securely by Zapier
properties:
type:
allOf:
- $ref: '#/components/schemas/AuthenticationTypeEnum'
readOnly: true
default: authentication
description: |-
The type of this object.
* `authentication` - authentication
id:
type: string
description: The unique UUID identifier for this specific Authentication.
Legacy hashids are still accepted on input for backwards compatibility.
app:
description: An app that integrates with Zapier.
oneOf:
- $ref: '#/components/schemas/Apps'
- type: string
is_expired:
type: boolean
description: If `true`, this Authentication has expired. It will not be
usable, and the user needs to be directed to reconnect it.
title:
type: string
description: The title of this specific Authentication
required:
- app
- id
- is_expired
- title
- type
AuthenticationCreateRequest:
type: object
description: Inputs to create a new Authentication
properties:
data:
$ref: '#/components/schemas/_AuthenticationCreateRequest'
required:
- data
AuthenticationResponse:
type: object
description: |-
Base Response definition to be used in other Response Serializers.
Be sure to include the `data` field after using this class
properties:
links:
allOf:
- $ref: '#/components/schemas/Links'
description: The links object returned in paginated response bodies.
meta:
allOf:
- $ref: '#/components/schemas/BaseMeta'
description: The meta object returned in paginated response bodies.
data:
type: array
items:
$ref: '#/components/schemas/Authentication'
description: The Authentications present, provided they exist
required:
- links
- meta
AuthenticationTypeEnum:
enum:
- authentication
type: string
description: '* `authentication` - authentication'
BaseMeta:
type: object
description: The meta object returned in paginated response bodies.
properties:
count:
type: integer
minimum: 0
description: The total number of objects in the collection represented by
the endpoint.
limit:
type:
- integer
- 'null'
minimum: 1
description: The limit value used in the request.
offset:
type: integer
minimum: 0
default: 0
description: The offset value used in the request.
required:
- count
- limit
CallbackPayload:
type: object
description: |-
Shape of the POST body Zapier sends to the partner's callback_url on run completion.
Matches the polling response shape with the addition of id.
properties:
data:
allOf:
- $ref: '#/components/schemas/_CallbackPayloadData'
description: The status of the Action Run.
required:
- data
CategoriesResponse:
type: object
description: A page of returned Categories.
properties:
next:
type:
- string
- 'null'
format: uri
readOnly: true
description: The URL to call to get the next set of Categories
previous:
type:
- string
- 'null'
format: uri
readOnly: true
description: The URL to call to get the prior set of Categories
count:
type: integer
description: How many Categories exist for the given query
objects:
type: array
items:
$ref: '#/components/schemas/AppCategory'
description: The list of matching Category data
required:
- count
- next
- objects
- previous
Category:
type: object
description: Category an app belongs to.
properties:
slug:
type: string
description: The shortened slug name for this category
required:
- slug
Choice:
type: object
description: A single element from a set of Choices, variants in an enumeration.
properties:
id:
type: string
description: The ID of this variant
type:
type: string
description: The type of this object
label:
type:
- string
- 'null'
description: An optional human-readable label for this variant. Useful if
the actual value is not a human-readable value, such as an identifier.
value:
type: string
description: The value of this variant.
required:
- id
- type
- value
ChoiceParams:
type: object
description: A Choice as to be provided to the /choices endpoint
properties:
authentication:
type:
- string
- 'null'
description: The Authentication ID for this Choice, if present/required
inputs:
type:
- object
- 'null'
additionalProperties: {}
description: The Inputs for this Choice, if present/required
required:
- authentication
- inputs
ChoiceRequest:
type: object
properties:
data:
$ref: '#/components/schemas/ChoiceParams'
required:
- data
ChoiceResponse:
type: object
description: A successful response for getting the requested Input Fields.
properties:
data:
type: array
items:
$ref: '#/components/schemas/Choice'
description: A list of Choices matching the given request
links:
allOf:
- $ref: '#/components/schemas/Links'
description: The links object returned in paginated response bodies.
meta:
allOf:
- $ref: '#/components/schemas/Meta'
description: The meta object returned in paginated response bodies.
required:
- links
- meta
CodeEnum:
enum:
- user
- authentication
- partner
- system
- throttled
- system_throttled
- hydration
type: string
description: |-
* `user` - user
* `authentication` - authentication
* `partner` - partner
* `system` - system
* `throttled` - throttled
* `system_throttled` - system_throttled
* `hydration` - hydration
CreateZapRequest:
type: object
description: See our Building a Zap guide to get started.
properties:
steps:
type: array
items:
$ref: '#/components/schemas/CreateZapRequestStep'
description: The list of steps that the Zap should consist of
title:
type: string
description: The title to be set for this Zap
required:
- steps
- title
CreateZapRequestStep:
type: object
properties:
action:
type: string
description: The ID of the Action to be associated with this step
inputs:
type: object
additionalProperties: {}
description: The inputs for the Action associated with this step
authentication:
type:
- string
- 'null'
description: The authentication, if required, for this Action to run
alias:
type:
- string
- 'null'
description: Optional alias for this step to be referenced by later steps
(snake_case, max 64 chars)
maxLength: 64
pattern: ^[a-z][a-z0-9_]*$
required:
- action
- authentication
- inputs
EditZapRequest:
type: object
description: |-
Fields to update on an existing Zap. At least one of `title` or `steps`
must be provided. `steps`, when present, fully replaces the Zap's step list.
properties:
steps:
type: array
items:
$ref: '#/components/schemas/CreateZapRequestStep'
description: The full replacement list of steps that the Zap should consist
of
minItems: 2
title:
type: string
description: The new title to set for this Zap
Error:
type: object
description: Base Error definition
properties:
status:
type: integer
description: The HTTP status code applicable to this problem.
code:
type: string
description: A unique identifier for this particular occurrence of the problem.
title:
type: string
description: A short summary of the problem.
detail:
type: string
description: A human-readable explanation specific to this occurrence of
the problem.
source:
oneOf:
- $ref: '#/components/schemas/ErrorSource'
- type: 'null'
description: An object containing references to the primary source of the
error.
meta:
type:
- object
- 'null'
additionalProperties: {}
description: Freeform metadata about the error
ErrorResponse:
type: object
properties:
errors:
type: array
items:
$ref: '#/components/schemas/Error'
description: An array of error objects.
required:
- errors
ErrorSource:
type: object
description: Populates the `source` object inside our error responses.
properties:
pointer:
type: string
description: Pointer to the value in the request document that caused the
error e.g. `/actions`.
parameter:
type: string
description: A string indicating which URI query parameter caused the error.
header:
type: string
description: A string indicating the name of a single request header which
caused the error.
ExpandedAppsResponse:
type: object
description: An app that integrates with Zapier.
properties:
data:
type: array
items:
$ref: '#/components/schemas/Apps'
description: A list of the Apps matching the request
meta:
type:
- object
- 'null'
additionalProperties: {}
readOnly: true
description: Used for paginating results. Specifies the maximum number of
items to return per page.
links:
type:
- object
- 'null'
additionalProperties: {}
readOnly: true
description: Used for paginating results. Specifies the offset to use. Defaults
to 0
required:
- data
- links
- meta
ExpandedZap:
type: object
description: A Zap is an automated workflow that connects your apps and services
together.
properties:
type:
type: string
readOnly: true
description: The type of this object.
id:
type: string
readOnly: true
description: A unique identifier of the Zap.
is_enabled:
type: boolean
default: true
description: Whether the Zap is enabled (running) or not.
last_successful_run_date:
type:
- string
- 'null'
readOnly: true
description: The date/time at which this Zap last ran successfully. A null
value indicates that a Zap has never run successfully.
updated_at:
type: string
readOnly: true
description: The last time this Zap was updated
title:
type: string
description: The human readable name of the Zap.
links:
type: object
additionalProperties: {}
readOnly: true
description: Link to open this Zap in the Zapier Editor
steps:
description: A list of the steps this Zap consists of
type: array
items:
oneOf:
- $ref: '#/components/schemas/ExpandedZapStep'
- type: string
required:
- id
- last_successful_run_date
- links
- steps
- title
- type
- updated_at
ExpandedZapStep:
type: object
description: An ordered list of steps that define the logic of the Zap.
properties:
action:
description: Action
oneOf:
- $ref: '#/components/schemas/Action'
- type: string
authentication:
description: Authentication
oneOf:
- $ref: '#/components/schemas/Authentication'
- type:
- string
- 'null'
inputs:
readOnly: true
description: The inputs for this specific Zap's step
title:
type:
- string
- 'null'
readOnly: true
description: The custom title of a Zap Step. If a step has not been given
a custom title by the user, then the value will be null.
required:
- action
- authentication
- inputs
- title
ExpandedZapsResponse:
type: object
description: A page of returned Zaps.
properties:
links:
type: object
additionalProperties:
type: string
nullable: true
readOnly: true
description: Links related to the response data
meta:
type: object
additionalProperties: {}
readOnly: true
description: Metadata about the response
data:
type: array
items:
$ref: '#/components/schemas/ExpandedZap'
description: The (potentially) expanded data for Zaps that matched the request
required:
- data
- links
- meta
Fieldset:
type: object
description: Represents a Fieldset
properties:
type:
type: string
readOnly: true
description: The type of this Fieldset
id:
type: string
description: The unique identifier for this Fieldset
fields:
allOf:
- $ref: '#/components/schemas/FieldsetFieldsField'
description: The fields this Fieldset consists of
title:
type: string
description: The title of this Fieldset
required:
- fields
- id
- title
- type
FieldsetFieldsField:
anyOf:
- $ref: '#/components/schemas/InputField'
- $ref: '#/components/schemas/InfoField'
description: Somewhat confusingly named, a field that is a list of either input
fields or info fields.
FormatEnum:
enum:
- DATETIME
- MULTILINE
- PASSWORD
- CODE
- READONLY
- FILE
- SELECT
type: string
description: |-
* `DATETIME` - DATETIME
* `MULTILINE` - MULTILINE
* `PASSWORD` - PASSWORD
* `CODE` - CODE
* `READONLY` - READONLY
* `FILE` - FILE
* `SELECT` - SELECT
InfoField:
type: object
description: Represents an Info-type Fieldset
properties:
type:
type: string
readOnly: true
description: The type of this Info Field
id:
type: string
description: The identifier of this Info Field
description:
type: string
description: The description for this Info Field
required:
- description
- id
- type
InputField:
type: object
description: Represents Input Field data as accepted by the API
properties:
type:
type: string
readOnly: true
description: The type of Input Field
id:
type: string
description: The identifier for this Input Field
default_value:
type: string
description: The default value for this Input Field if not otherwise specified
depends_on:
type: array
items:
type: string
description: A list of dependencies for this Input Field
description:
type: string
description: The description of this Input Field
format:
allOf:
- $ref: '#/components/schemas/FormatEnum'
description: |-
The format of this Input Field from one of options provided
* `DATETIME` - DATETIME
* `MULTILINE` - MULTILINE
* `PASSWORD` - PASSWORD
* `CODE` - CODE
* `READONLY` - READONLY
* `FILE` - FILE
* `SELECT` - SELECT
invalidates_input_fields:
type: boolean
description: Whether this Input Field invalidates
is_required:
type: boolean
description: Whether this Input Field is required
items:
type: object
additionalProperties:
type: string
description: A freeform object of items for this Input Field
placeholder:
type: string
description: The placeholder for this Input Field when shown
title:
type: string
description: The title of this Input Field
value_type:
allOf:
- $ref: '#/components/schemas/ValueTypeEnum'
description: |-
The type of the *value* of this Input Field
* `STRING` - STRING
* `NUMBER` - NUMBER
* `INTEGER` - INTEGER
* `BOOLEAN` - BOOLEAN
* `ARRAY` - ARRAY
* `OBJECT` - OBJECT
required:
- default_value
- depends_on
- description
- format
- id
- invalidates_input_fields
- is_required
- items
- placeholder
- title
- type
- value_type
InputFieldsResponse:
type: object
description: A successful response for getting the input fields for a particular
Action.
properties:
links:
allOf:
- $ref: '#/components/schemas/Links'
description: The links object returned in paginated response bodies.
meta:
allOf:
- $ref: '#/components/schemas/BaseMeta'
description: The meta object returned in paginated response bodies.
data:
$ref: '#/components/schemas/RootFieldset'
required:
- data
- links
- meta
InvalidZapGuesserResponse:
type: object
properties:
messages:
type: array
items:
type: object
additionalProperties: {}
description: Contains informational messages about the prompt.
Links:
type: object
description: The links object returned in paginated response bodies.
properties:
next:
type:
- string
- 'null'
description: The URL of the next page of paginated results.
prev:
type:
- string
- 'null'
description: The URL of the previous page of paginated results.
ListInputFieldsRequest:
type: object
description: Common inputs with inputs and an authentication id.
properties:
data:
$ref: '#/components/schemas/_ListInputFieldsRequest'
required:
- data
ListOutputFieldsRequest:
type: object
properties:
data:
$ref: '#/components/schemas/_ListOutputFieldsRequest'
required:
- data
Meta:
type: object
description: Metadata about a certain response
properties:
page:
type: integer
description: The current page
required:
- page
OutputField:
type: object
properties:
type:
type: string
readOnly: true
description: The type of this specific Output Field
id:
type: string
description: The identifier for this specific Output Field
title:
type: string
description: The title of this specific Output Field
sample:
type: string
description: An (optional) sample of what an Output Field's value may look
like
type_value:
type: string
description: 'The output field''s underlying data type. One of: string,
integer, text, datetime, boolean, file, decimal, copy, password, dict,
code, filter, json. Defaults to "string".'
list:
type: boolean
description: Indicates if the output field's value is an array of values
required:
- id
- list
- title
- type
- type_value
OutputFieldsResponse:
type: object
description: A successful response containing Output Field data
properties:
links:
allOf:
- $ref: '#/components/schemas/Links'
description: The links object returned in paginated response bodies.
meta:
allOf:
- $ref: '#/components/schemas/BaseMeta'
description: The meta object returned in paginated response bodies.
data:
type: array
items:
$ref: '#/components/schemas/OutputField'
description: A list of the Output Fields matching the given request
required:
- data
- links
- meta
PatchedZapPatchRequest:
type: object
properties:
data:
$ref: '#/components/schemas/EditZapRequest'
Profile:
type: object
description: An authenticated user profile.
properties:
id:
type: integer
description: The numeric identifier of this user
first_name:
type: string
description: The first name of this user
last_name:
type: string
description: The last name of this user
full_name:
type: string
description: The combined full name of this user
email:
type: string
format: email
description: The email this user's account is associated with
email_confirmed:
type: boolean
description: Whether said email is confirmed yet or not
timezone:
type: string
description: The timezone set for this user
required:
- email
- email_confirmed
- first_name
- full_name
- id
- last_name
- timezone
RootFieldset:
type: array
items:
anyOf:
- $ref: '#/components/schemas/InputField'
- $ref: '#/components/schemas/InfoField'
- $ref: '#/components/schemas/Fieldset'
description: The base concept of a Fieldset, from which others extend
RunActionRequest:
type: object
properties:
data:
allOf:
- $ref: '#/components/schemas/_RunActionRequest'
description: Data for the Action Run
required:
- data
RunActionResponse:
type: object
properties:
data:
$ref: '#/components/schemas/_RunActionResponse'
required:
- data
RunTypeEnum:
enum:
- run
type: string
description: '* `run` - Run'
TypeOfEnum:
enum:
- read
- write
- filter
- search
- search_or_write
type: string
description: |-
* `read` - read
* `write` - write
* `filter` - filter
* `search` - search
* `search_or_write` - search_or_write
ValueTypeEnum:
enum:
- STRING
- NUMBER
- INTEGER
- BOOLEAN
- ARRAY
- OBJECT
type: string
description: |-
* `STRING` - STRING
* `NUMBER` - NUMBER
* `INTEGER` - INTEGER
* `BOOLEAN` - BOOLEAN
* `ARRAY` - ARRAY
* `OBJECT` - OBJECT
WhitelabelApp:
type: object
description: An app available for whitelabel connection.
properties:
type:
type: string
readOnly: true
default: app
description: The resource type.
id:
type: string
readOnly: true
description: The app's unique identifier.
title:
type: string
description: The app's display name.
image:
type: string
format: uri
description: URL of the app's icon.
is_oauth:
type: boolean
readOnly: true
description: Whether the app uses OAuth for authentication.
has_fields:
type: boolean
readOnly: true
description: Whether the app has input fields a user must fill in when connecting.
has_byoc:
type: boolean
readOnly: true
description: Whether the app requires the user to supply their own OAuth
client credentials (client ID and/or client secret) when connecting. This
is a best-effort heuristic based on the app's auth field names and labels.
links:
allOf:
- $ref: '#/components/schemas/WhitelabelAppLinks'
readOnly: true
description: Related URLs for this app.
required:
- has_byoc
- has_fields
- id
- image
- is_oauth
- links
- title
- type
WhitelabelAppLinks:
type: object
properties:
mcp_authorize_url:
type: string
format: uri
description: URL to authorize the user for MCP. Requires a session token
to be set in the query parameters. Returns an OAuth exchange code.
mcp_server_url:
type: string
format: uri
description: URL of the MCP server for this app. Requires an access token
bound to a connection.
required:
- mcp_authorize_url
- mcp_server_url
WhitelabelAppsResponse:
type: object
description: A JSON:API-style response of apps available for whitelabel connection.
properties:
data:
type: array
items:
$ref: '#/components/schemas/WhitelabelApp'
description: The list of apps.
links:
type: object
additionalProperties: {}
readOnly: true
description: Pagination links.
meta:
type: object
additionalProperties: {}
readOnly: true
description: Pagination metadata.
required:
- data
- links
- meta
Zap:
type: object
description: User Zaps.
properties:
id:
type: integer
description: The numeric identifier of this Zap
title:
type: string
description: The title of this Zap
state:
type: string
description: The current state of this Zap
steps:
type: array
items:
$ref: '#/components/schemas/ZapStep'
readOnly: true
description: The steps this Zap consists of
url:
type: string
format: uri
readOnly: true
description: The URL to this Zap
modified_at:
type: string
description: The last time this Zap was modified
required:
- id
- modified_at
- state
- steps
- title
- url
ZapGuesserRawStep:
type: object
properties:
title:
type:
- string
- 'null'
description: The title of this step
app:
type: string
description: This step's human-readable name
api:
type: string
description: The Zapier API integration this step uses
required:
- api
- app
- title
ZapGuesserRequest:
type: object
properties:
description:
type: string
description: The description of the Zap you wish to create
required:
- description
ZapGuesserResponse:
type: object
properties:
title:
type: string
description: The generated title for this suggested Zap.
steps:
type: array
items:
$ref: '#/components/schemas/ZapGuesserStep'
description: The steps this suggested Zap consists of.
prefilled_url:
type: string
readOnly: true
description: A generated prefilled URL to take you to the Zapier editor
(selects the highest confidence steps).
messages:
type: array
items:
type: object
additionalProperties: {}
description: Contains informational messages about the prompt.
required:
- prefilled_url
- steps
- title
ZapGuesserStep:
type: object
properties:
step:
allOf:
- $ref: '#/components/schemas/ZapGuesserRawStep'
readOnly: true
description: The highest scoring (most relevant) step for this Zap
alternatives:
type: array
items:
$ref: '#/components/schemas/ZapGuesserRawStep'
readOnly: true
description: Alternative steps that we are less confident are relevant,
but may have been intended
required:
- alternatives
- step
ZapRequest:
type: object
properties:
data:
$ref: '#/components/schemas/CreateZapRequest'
required:
- data
ZapRun:
type: object
description: A single Zap Run response.
properties:
id:
type: string
format: uuid
description: Zap Run ID
zap_id:
type: integer
description: Associated Zap ID
start_time:
type:
- string
- 'null'
format: date-time
description: Datetime when the Zap Run started
end_time:
type:
- string
- 'null'
format: date-time
description: Datetime when the Zap Run ended
status:
type: string
description: Execution status of the Zap Run
zap_title:
type:
- string
- 'null'
description: The title of the Zap at the time it ran
steps:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ZapRunStep'
description: Contains the execution details of each step
data_in:
oneOf:
- {}
- type: 'null'
description: The input data for the Zap Run
data_out:
oneOf:
- {}
- type: 'null'
description: The output data for the Zap Run
required:
- id
- status
- steps
- zap_id
- zap_title
ZapRunStep:
type: object
description: A single step in a Zap Run.
properties:
status:
type:
- string
- 'null'
description: Execution status of the step
start_time:
type:
- string
- 'null'
format: date-time
description: Datetime when the step was executed
required:
- status
ZapRunsResponse:
type: object
description: A list of Zap Runs.
properties:
links:
allOf:
- $ref: '#/components/schemas/Links'
description: The links object returned in paginated response bodies.
meta:
allOf:
- $ref: '#/components/schemas/BaseMeta'
description: The meta object returned in paginated response bodies.
data:
type: array
items:
$ref: '#/components/schemas/ZapRun'
description: The returned data after a successful Zap run
required:
- links
- meta
ZapStep:
type: object
description: One step in a Zap
properties:
type_of:
allOf:
- $ref: '#/components/schemas/TypeOfEnum'
description: |-
The type of this Step
* `read` - read
* `write` - write
* `filter` - filter
* `search` - search
* `search_or_write` - search_or_write
app:
allOf:
- $ref: '#/components/schemas/ZapStepApp'
description: The App used in this Step
params:
type:
- object
- 'null'
additionalProperties: {}
readOnly: true
description: The parameters used by this Step
required:
- app
- params
- type_of
ZapStepApp:
type: object
description: Data for the App used in a given Zap's step
properties:
id:
type: integer
description: The numerical identifier of this Zap step's App
uuid:
type: string
description: UUID identifier for this Zap step's App
title:
type: string
description: The name of this App
slug:
type: string
description: The shortened slug for this App
description:
type: string
description: The description of this App
hex_color:
type: string
description: The primary (hex) color for this App
image:
type: string
description: The image for this App
images:
allOf:
- $ref: '#/components/schemas/ZapTemplateStepImages'
description: A set of images of various sizes for this App
api:
type: string
description: The name of the API this App references
url:
type: string
format: uri
readOnly: true
description: The URL for this App
required:
- api
- description
- hex_color
- id
- image
- images
- slug
- title
- url
- uuid
ZapTemplate:
type: object
description: A Zap Template.
properties:
id:
type: integer
description: The numeric identifier of this Zap Template
steps:
type: array
items:
$ref: '#/components/schemas/ZapTemplateStep'
readOnly: true
description: The steps this Zap Template are composed of
title:
type: string
description: The title of this Zap Template
slug:
type: string
description: The shortened slug for this Zap Template
pattern: ^[-a-zA-Z0-9_]+$
status:
allOf:
- $ref: '#/components/schemas/ZapTemplateStatusEnum'
description: |-
The status of this Zap Template
* `draft` - draft
* `published` - published
description_plain:
type: string
readOnly: true
description: The plain (rendered) description for this Zap Template
description_raw:
type: string
description: The raw description for this Zap Template. May include styling
syntax intended to be rendered
url:
type: string
format: uri
readOnly: true
description: The URL for this Zap Template
description:
type: string
description: The HTML description for this Zap Template. Intended to be
rendered in a browser
create_url:
type: string
format: uri
readOnly: true
description: The URL to access to create a Zap from this Zap Template
type:
type: string
readOnly: true
default: guided_zap
description: The type of this Zap Template
required:
- create_url
- description
- description_plain
- description_raw
- id
- slug
- status
- steps
- title
- type
- url
ZapTemplateStatusEnum:
enum:
- draft
- published
type: string
description: |-
* `draft` - draft
* `published` - published
ZapTemplateStep:
type: object
description: One step in a Zap Template.
properties:
id:
type:
- integer
- 'null'
readOnly: true
description: The numeric identifier of this step, if specified
uuid:
type: string
format: uuid
description: UUID identifier of this step
title:
type: string
description: The name of this step
slug:
type: string
description: The shortened slug for this step
pattern: ^[-a-zA-Z0-9_]+$
description:
type: string
description: The description of this step
image:
type: string
description: The image URL for this step
hex_color:
type: string
description: The primary (hex) color for this step
images:
allOf:
- $ref: '#/components/schemas/ZapTemplateStepImages'
description: The images (at various sizes) for this step
api:
type: string
readOnly: true
description: The API used in this step
url:
type: string
format: uri
readOnly: true
description: The URL for this step
label:
type:
- string
- 'null'
readOnly: true
description: The label for this step
required:
- api
- description
- hex_color
- id
- image
- images
- label
- slug
- title
- url
- uuid
ZapTemplateStepImages:
type: object
description: Images for a Zap Template at various sizes
properties:
url_16x16:
type: string
description: URL to 16x16 image for Zap Template
url_32x32:
type: string
description: URL to 32x32 image for Zap Template
url_64x64:
type: string
description: URL to 64x64 image for Zap Template
url_128x128:
type: string
description: URL to 128x128 image for Zap Template
required:
- url_128x128
- url_16x16
- url_32x32
- url_64x64
ZapsResponse:
type: object
description: A page of returned Zaps.
properties:
next:
type:
- string
- 'null'
format: uri
readOnly: true
description: The URL to get the next set of records
previous:
type:
- string
- 'null'
format: uri
readOnly: true
description: The URL to get the previous set of records
count:
type: integer
readOnly: true
description: The total number of records matching the request
objects:
type: array
items:
$ref: '#/components/schemas/Zap'
description: The returned Zap data
required:
- count
- next
- objects
- previous
_ActionRunResponse:
type: object
properties:
type:
allOf:
- $ref: '#/components/schemas/RunTypeEnum'
description: |-
The type of this object
* `run` - Run
status:
$ref: '#/components/schemas/_ActionRunResponseStatusEnum'
results:
type: array
items:
type: object
additionalProperties: {}
description: Could be empty, even if the action was successfully run.
errors:
type: array
items:
$ref: '#/components/schemas/_ActionRunResponseError'
description: Any errors returned by the partner when running this action.
required:
- errors
- status
- type
_ActionRunResponseError:
type: object
description: The error information returned from a third party when running
an action.
properties:
code:
allOf:
- $ref: '#/components/schemas/CodeEnum'
description: |-
Error type of the result object.
* `user` - user
* `authentication` - authentication
* `partner` - partner
* `system` - system
* `throttled` - throttled
* `system_throttled` - system_throttled
* `hydration` - hydration
title:
type: string
description: A short summary of the problem.
detail:
type: string
description: A human-readable explanation specific to this occurrence of
the problem.
delay:
type: integer
description: When a partner throttled the execution call (error_type = throttled),
this value will hold the number of seconds to wait before retrying.
meta:
type:
- object
- 'null'
additionalProperties: {}
description: Any additional error information returned from the partner.
_ActionRunResponseStatusEnum:
enum:
- success
- error
- waiting
type: string
description: |-
* `success` - success
* `error` - error
* `waiting` - waiting
_ActionTestRequest:
type: object
description: The request structure to test a particular Action
properties:
limit:
type:
- integer
- 'null'
minimum: 1
default: 10
description: Used for paginating results. Specifies the maximum number of
items to return per page.
offset:
type:
- integer
- 'null'
minimum: 0
default: 0
description: Used for paginating results. Specifies the offset to use. Defaults
to 0
authentication:
type:
- string
- 'null'
description: Authentication, if required, to be able to run the given Action
inputs:
type: object
additionalProperties: {}
description: Inputs to be provided to the given 'read' Action's test run
required:
- authentication
- inputs
_AuthenticationCreateRequest:
type: object
description: The object used to create a new Authentication
properties:
title:
type: string
description: The title of the authentication.
maxLength: 255
app:
type: string
description: 'An App identifier: a canonical App ID (UUID) or an app key'
pattern: ^[A-Za-z0-9@._-]+$
maxLength: 255
authentication_fields:
type: object
additionalProperties: {}
description: Required values to create an authentication. These values will
be used by the target integration to successfully create the Authentication.
See our Adding an Authentication guide for more information.
required:
- app
- authentication_fields
- title
_CallbackPayloadData:
type: object
properties:
type:
allOf:
- $ref: '#/components/schemas/RunTypeEnum'
description: |-
The type of this object
* `run` - Run
id:
type: string
format: uuid
description: The UUID of the Action Run, matching the id from the POST /v2/action-runs
response
status:
allOf:
- $ref: '#/components/schemas/_CallbackPayloadDataStatusEnum'
description: |-
The status of the action run.
* `success` - success
* `error` - error
results:
type: array
items:
type: object
additionalProperties: {}
description: Could be empty, even if the action was successfully run.
errors:
type: array
items:
$ref: '#/components/schemas/_ActionRunResponseError'
description: Any errors returned by the partner when running this action.
required:
- errors
- id
- status
- type
_CallbackPayloadDataStatusEnum:
enum:
- success
- error
type: string
description: |-
* `success` - success
* `error` - error
_ListInputFieldsRequest:
type: object
description: The common data object that includes inputs and an authentication
id.
properties:
authentication:
type:
- string
- 'null'
description: An Authentication ID provided by the `/authentications` endpoint.
inputs:
type: object
additionalProperties: {}
description: The current set of input fields in a JSON object, where each
key is the `id` of an Input Field, and the corresponding value the current
value of the field.
selected_api:
type:
- string
- 'null'
description: Optionally pin the version of the App used to resolve the Input
Fields, e.g. `SplitwiseCLIAPI@1.0.0`. Use this when editing an existing
Action to keep receiving the Input Fields of the version the Action was
originally created against, rather than those of the App's current version.
It must refer to the same App as the Action. When omitted - or given without
a version, or as `@latest` - the App's current version is used.
pattern: ^\w+(?:@(?:latest|[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}(?:-[A-Za-z0-9-]+)?))?$
maxLength: 255
required:
- authentication
- inputs
_ListOutputFieldsRequest:
type: object
description: The common data object that includes inputs and an authentication
id.
properties:
authentication:
type:
- string
- 'null'
description: An Authentication ID, as provided by the `/authentications`
endpoint.
inputs:
type: object
additionalProperties: {}
description: The current set of input fields in a JSON object, where each
key is the `id` of an Input Field, and the corresponding value the current
value of the field.
fetch_live_samples:
type: boolean
default: false
description: Whether to retrieve live samples for the field. While this
can be helpful in supporting the identification of an output, note that
this has latency implications as it may require an additional request
to 3rd party services. This is not supported for `WRITE` actions, please
use step testing instead.
selected_api:
type:
- string
- 'null'
description: An optional app version to pin schema resolution to, overriding
the action's current app version. Useful when a stored action's schema
should not drift as the app is updated.
pattern: ^\w+(?:@(?:latest|[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}(?:-[A-Za-z0-9-]+)?))?$
maxLength: 255
required:
- authentication
- inputs
_RunActionRequest:
type: object
properties:
action:
type: string
description: The ID for the Action to be run
authentication:
type:
- string
- 'null'
description: The ID for Authentication (if required)
inputs:
type: object
additionalProperties: {}
description: Inputs to be provided to the Action referenced by the ID field,
when run
callback_url:
type: string
description: HTTPS URL to receive a POST when the action run reaches a terminal
state. Must be HTTPS, resolve to a public IP, and be at most 2048 characters.
If omitted, poll GET /v2/action-runs/{id} for the result instead.
required:
- action
- authentication
- inputs
_RunActionResponse:
type: object
description: The response after an Action Run
properties:
type:
allOf:
- $ref: '#/components/schemas/RunTypeEnum'
description: |-
The type of this object
* `run` - Run
id:
type: string
format: uuid
description: The UUID of this Action Run
required:
- id
- type
securitySchemes:
ClientIDAuthentication:
type: apiKey
in: query
name: client_id
description: See our authentication documentation for how to find your Client
ID
x-zapier-auth-scheme-exempt: true
OAuth:
type: oauth2
description: 'See our OAuth2 authentication documentation here: https://docs.zapier.com/powered-by-zapier/api-reference/authentication'
flows:
authorizationCode:
authorizationUrl: https://zapier.com/oauth/authorize/
tokenUrl: https://zapier.com/oauth/token/
refreshUrl: https://zapier.com/oauth/token/
scopes:
profile: Read profile information about the currently-authenticated user
zap: Read Zaps
zap:write: Write Zaps
authentication: Read Authentications
authentication:write: Write Authentications
zap:runs: Read Zap Runs
action:run: Run an Action
zap:all: Read Zaps accessible to the account
connection:read: Read Connections (Authentications)
connection:write: Write Connections (Authentications)
connection:delete: Delete Connections (Authentications)
implicit:
authorizationUrl: https://zapier.com/oauth/authorize/
scopes:
profile: Read profile information about the currently-authenticated user
zap: Read Zaps
zap:write: Write Zaps
authentication: Read Authentications
authentication:write: Write Authentications
zap:runs: Read Zap Runs
action:run: Run an Action
zap:all: Read Zaps accessible to the account
connection:read: Read Connections (Authentications)
connection:write: Write Connections (Authentications)
connection:delete: Delete Connections (Authentications)
servers:
- url: https://api.zapier.com
tags:
- name: Accounts
description: Refers to resources interacting with 'Accounts' associated resources
- name: Actions
description: Refers to resources interacting with 'Actions' associated resources
- name: Apps
description: Refers to resources interacting with 'Apps' associated resources
- name: Authentications
description: Refers to resources interacting with 'Authentications' associated resources
- name: Categories
description: Refers to resources interacting with 'Categories' associated resources
- name: Experimental
description: Refers to resources interacting with 'Experimental' associated resources
- name: Inputs
description: Refers to resources interacting with 'Inputs' associated resources
- name: Outputs
description: Refers to resources interacting with 'Outputs' associated resources
- name: Zaps
description: Refers to resources interacting with 'Zaps' associated resources
- name: Zap Templates
description: Refers to resources interacting with 'Zap Templates' associated resources