Zapier Apps API

Refers to resources interacting with 'Apps' associated resources

OpenAPI Specification

zapier-apps-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Partner Accounts Apps 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: Apps
  description: Refers to resources interacting with 'Apps' associated resources
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: Zapier 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
        example: 42.5
      - in: query
        name: per_page
        schema:
          type: number
        description: Number of results to return per page
        example: 42.5
      - 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: {}
              examples:
                V1_apps_list403Example:
                  summary: Default v1_apps_list 403 response
                  x-microcks-default: true
                  value: {}
          description: 403 Response
        '401':
          description: Missing client_id in query parameters
        '409':
          content:
            application/json:
              schema:
                type: object
                additionalProperties: {}
              examples:
                V1_apps_list409Example:
                  summary: Default v1_apps_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_apps_list429Example:
                  summary: Default v1_apps_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_apps_list503Example:
                  summary: Default v1_apps_list 503 response
                  x-microcks-default: true
                  value: {}
          description: 503 Response
        '504':
          content:
            application/json:
              schema:
                type: object
                additionalProperties: {}
              examples:
                V1_apps_list504Example:
                  summary: Default v1_apps_list 504 response
                  x-microcks-default: true
                  value: {}
          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: '

                    - Your own app will not be returned.

                    - Zapier built-in apps will not be returned.

                    - Order of the result is by app popularity.

                    '
          description: ''
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /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: Zapier 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
          format: uuid
        description: A canonical App ID, as provided by the `/apps` endpoint.
        required: true
        example: 868f9d3c-2ea0-4f19-a32d-a61b276ab8de
      tags:
      - 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'
              examples:
                Get-actions403Example:
                  summary: Default get-actions 403 response
                  x-microcks-default: true
                  value:
                    errors: &id001
                    - {}
          description: 403 Response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Get-actions401Example:
                  summary: Default get-actions 401 response
                  x-microcks-default: true
                  value:
                    errors: *id001
          description: 401 Response
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Get-actions409Example:
                  summary: Default get-actions 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:
                Get-actions429Example:
                  summary: Default get-actions 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:
                Get-actions503Example:
                  summary: Default get-actions 503 response
                  x-microcks-default: true
                  value:
                    errors: *id001
          description: 503 Response
        '504':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Get-actions504Example:
                  summary: Default get-actions 504 response
                  x-microcks-default: true
                  value:
                    errors: *id001
          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/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: Zapier 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`.
        example: example-value
      - 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: query
        schema:
          type: string
        description: Parameter to limit the results to apps whose titles match the provided query.
        example: example-value
      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
                      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'
              examples:
                Get-v2-apps403Example:
                  summary: Default get-v2-apps 403 response
                  x-microcks-default: true
                  value:
                    errors: &id002
                    - {}
          description: 403 Response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Get-v2-apps401Example:
                  summary: Default get-v2-apps 401 response
                  x-microcks-default: true
                  value:
                    errors: *id002
          description: 401 Response
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Get-v2-apps409Example:
                  summary: Default get-v2-apps 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-v2-apps429Example:
                  summary: Default get-v2-apps 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-v2-apps503Example:
                  summary: Default get-v2-apps 503 response
                  x-microcks-default: true
                  value:
                    errors: *id002
          description: 503 Response
        '504':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Get-v2-apps504Example:
                  summary: Default get-v2-apps 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/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: Zapier Get Whitelabel Apps [v2]
      parameters:
      - in: query
        name: category
        schema:
          type: string
        description: Filter apps by category slug.
        example: standard
      - in: query
        name: limit
        schema:
          type: number
        description: Limit the number of apps returned.
        example: 42.5
      - in: query
        name: offset
        schema:
          type: number
          default: 0
        description: The number of apps to skip before beginning to return results.
        example: 0
      - in: query
        name: search
        schema:
          type: string
        description: Case-insensitive search to filter apps by title.
        example: example-value
      tags:
      - Apps
      responses:
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                V2-whitelabel-apps-list403Example:
                  summary: Default v2-whitelabel-apps-list 403 response
                  x-microcks-default: true
                  value:
                    errors: &id003
                    - {}
          description: 403 Response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                V2-whitelabel-apps-list401Example:
                  summary: Default v2-whitelabel-apps-list 401 response
                  x-microcks-default: true
                  value:
                    errors: *id003
          description: 401 Response
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                V2-whitelabel-apps-list409Example:
                  summary: Default v2-whitelabel-apps-list 409 response
                  x-microcks-default: true
                  value:
                    errors: *id003
          description: 409 Response
        '429':
          headers:
            Retry-After:
              schema:
                type: string
                format: uri
              description: Indicates when to retry the request
            X-RateLimit-Limit:

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