Zapier Zaps API

Refers to resources interacting with 'Zaps' associated resources

OpenAPI Specification

zapier-zaps-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Partner Accounts Zaps API
  version: 2024.11.0
  description: '

    ## 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
servers:
- url: https://api.zapier.com
tags:
- name: Zaps
  description: Refers to resources interacting with 'Zaps' associated resources
paths:
  /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: Zapier 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.'
        example: 5
      - 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.
        example: 0
      - 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: {}
              examples:
                V1_zaps_list401Example:
                  summary: Default v1_zaps_list 401 response
                  x-microcks-default: true
                  value: {}
          description: 401 Response
        '409':
          content:
            application/json:
              schema:
                type: object
                additionalProperties: {}
              examples:
                V1_zaps_list409Example:
                  summary: Default v1_zaps_list 409 response
                  x-microcks-default: true
                  value: {}
          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: {}
              examples:
                V1_zaps_list429Example:
                  summary: Default v1_zaps_list 429 response
                  x-microcks-default: true
                  value: {}
          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: {}
              examples:
                V1_zaps_list503Example:
                  summary: Default v1_zaps_list 503 response
                  x-microcks-default: true
                  value: {}
          description: 503 Response
        '504':
          content:
            application/json:
              schema:
                type: object
                additionalProperties: {}
              examples:
                V1_zaps_list504Example:
                  summary: Default v1_zaps_list 504 response
                  x-microcks-default: true
                  value: {}
          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: ''
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /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: Zapier 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
        example: '500123'
      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'
              examples:
                Create-zap-guess403Example:
                  summary: Default create-zap-guess 403 response
                  x-microcks-default: true
                  value:
                    errors: &id001
                    - {}
          description: 403 Response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Create-zap-guess401Example:
                  summary: Default create-zap-guess 401 response
                  x-microcks-default: true
                  value:
                    errors: *id001
          description: 401 Response
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Create-zap-guess409Example:
                  summary: Default create-zap-guess 409 response
                  x-microcks-default: true
                  value:
                    errors: *id001
          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'
              examples:
                Create-zap-guess429Example:
                  summary: Default create-zap-guess 429 response
                  x-microcks-default: true
                  value:
                    errors: *id001
          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'
              examples:
                Create-zap-guess503Example:
                  summary: Default create-zap-guess 503 response
                  x-microcks-default: true
                  value:
                    errors: *id001
          description: 503 Response
        '504':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Create-zap-guess504Example:
                  summary: Default create-zap-guess 504 response
                  x-microcks-default: true
                  value:
                    errors: *id001
          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
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /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: Zapier 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.
        example: 100
      - 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:
      - 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'
              examples:
                Get-zap-runs403Example:
                  summary: Default get-zap-runs 403 response
                  x-microcks-default: true
                  value:
                    errors: &id002
                    - {}
          description: 403 Response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Get-zap-runs401Example:
                  summary: Default get-zap-runs 401 response
                  x-microcks-default: true
                  value:
                    errors: *id002
          description: 401 Response
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Get-zap-runs409Example:
                  summary: Default get-zap-runs 409 response
                  x-microcks-default: true
                  value:
                    errors: *id002
          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'
              examples:
                Get-zap-runs429Example:
                  summary: Default get-zap-runs 429 response
                  x-microcks-default: true
                  value:
                    errors: *id002
          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'
              examples:
                Get-zap-runs503Example:
                  summary: Default get-zap-runs 503 response
                  x-microcks-default: true
                  value:
                    errors: *id002
          description: 503 Response
        '504':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Get-zap-runs504Example:
                  summary: Default get-zap-runs 504 response
                  x-microcks-default: true
                  value:
                    errors: *id002
          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
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /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.


        #### When using OAuth


        This endpoint requires the `zap`, `zap:all`, or `zap:account:all` OAuth scopes.'
      summary: Zapier 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
      - 

# --- truncated at 32 KB (77 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zapier/refs/heads/main/openapi/zapier-zaps-api-openapi.yml