> ## Documentation Index
> Fetch the complete documentation index at: https://developers.hubspot.jp/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Create workflow

> Create a new automation flow in your HubSpot account using the AutomationFlowApiService. This endpoint allows you to define the flow's properties and actions, enabling automated processes tailored to your business needs. Ensure that the request body is correctly structured as per the ApiFlowCreateRequest schema.

export const ScopesList = ({scopes = [], description = "この API には、次のいずれかのスコープが必要です。"}) => {
  if (!scopes || scopes.length === 0) {
    return null;
  }
  const sortedScopes = scopes.sort((a, b) => a.localeCompare(b));
  return <div>
      <div className="text-sm mb-2">{description}</div>
      <div>
        {sortedScopes.map((scope, index) => <div key={index}>
            <code>
              <span className="text-xs">{scope}</span>
            </code>
          </div>)}
      </div>
    </div>;
};

export const SupportedProducts = ({marketing, sales, service, cms, marketingLevel, salesLevel, serviceLevel, cmsLevel}) => {
  const translations = {
    header: "サポートされる製品",
    description: "次のいずれかの製品またはそれ以上が必要です。",
    productNames: {
      marketing: "Marketing Hub",
      sales: "Sales Hub",
      service: "Service Hub",
      cms: "Content Hub"
    },
    tiers: {
      free: "無料ツール",
      starter: "Starter",
      professional: "Professional",
      enterprise: "Enterprise"
    }
  };
  const translateTier = tier => {
    if (!tier) return '';
    const lowerTier = tier.toLowerCase();
    return translations.tiers[lowerTier] || tier;
  };
  const products = [{
    name: marketing ? translations.productNames.marketing : '',
    level: translateTier(marketingLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/marketing-bolt.svg",
    alt: "Marketing Hub"
  }, {
    name: sales ? translations.productNames.sales : '',
    level: translateTier(salesLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/sales-star.svg",
    alt: "Sales Hub"
  }, {
    name: service ? translations.productNames.service : '',
    level: translateTier(serviceLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/service-heart.svg",
    alt: "Service Hub"
  }, {
    name: cms ? translations.productNames.cms : '',
    level: translateTier(cmsLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/content-play.svg",
    alt: "Content Hub"
  }].filter(product => product.name && product.level);
  if (products.length === 0) return null;
  return <div>
      <div className="text-sm mb-2">{translations.description}</div>
      <div className={`grid ${products.length === 1 ? 'grid-cols-1' : 'grid-cols-2'} gap-1.5`}>
        {products.map((product, index) => <div key={index} style={{
    display: 'flex',
    alignItems: 'center'
  }}>
            <img src={product.icon} alt={product.alt} className="w-3.5 h-3.5 mr-1.5 mt-2.5 mb-2.5 flex-shrink-0 align-middle" />
            <span className="font-medium mr-1 text-sm">{product.name} -</span>
            <span className="text-sm">{product.level}</span>
          </div>)}
      </div>
    </div>;
};

<AccordionGroup>
  <Accordion title="Supported products" defaultOpen="true" icon="cubes">
    <SupportedProducts marketing={true} sales={true} service={true} cms={true} marketingLevel="PROFESSIONAL" salesLevel="PROFESSIONAL" serviceLevel="PROFESSIONAL" cmsLevel="PROFESSIONAL" />
  </Accordion>

  <Accordion title="Required Scopes" icon="key">
    <ScopesList
      scopes={[
  'automation'
]}
    />
  </Accordion>
</AccordionGroup>


## OpenAPI

````yaml specs/2026-09-beta/automation-automation-v4-v2026-09-beta-flows.json POST /automation/2026-09-beta/flows
openapi: 3.0.1
info:
  title: Automation Automation V4
  description: Basepom for all HubSpot Projects
  version: 2026-09-beta
  x-hubspot-product-tier-requirements:
    marketing: PROFESSIONAL
    sales: PROFESSIONAL
    service: PROFESSIONAL
    cms: PROFESSIONAL
    commerce: PROFESSIONAL
    crmHub: PROFESSIONAL
    dataHub: PROFESSIONAL
servers:
  - url: https://api.hubapi.com
security: []
tags:
  - name: Action types
  - name: Basic
  - name: Emails
  - name: Revisions
  - name: Workflow ID mappings
paths:
  /automation/2026-09-beta/flows:
    post:
      tags:
        - Basic
      summary: Create workflow
      description: >-
        Create a new automation flow in your HubSpot account using the
        AutomationFlowApiService. This endpoint allows you to define the flow's
        properties and actions, enabling automated processes tailored to your
        business needs. Ensure that the request body is correctly structured as
        per the ApiFlowCreateRequest schema.
      operationId: post-/automation/2026-09-beta/flows_/automation/2026-09-beta/flows
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApiFlowCreateRequest'
        required: true
      responses:
        '201':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiFlow'
        default:
          $ref: '#/components/responses/Error'
          description: ''
      security:
        - oauth2:
            - automation
        - private_apps:
            - automation
components:
  schemas:
    ApiFlowCreateRequest:
      properties: {}
      oneOf:
        - $ref: '#/components/schemas/ApiContactFlowCreateRequest'
        - $ref: '#/components/schemas/ApiPlatformFlowCreateRequest'
    ApiFlow:
      properties: {}
      oneOf:
        - $ref: '#/components/schemas/ApiContactFlow'
        - $ref: '#/components/schemas/ApiPlatformFlow'
    ApiContactFlowCreateRequest:
      properties: {}
      allOf:
        - $ref: '#/components/schemas/ApiFlowCreateRequest'
        - required:
            - actions
            - blockedDates
            - canEnrollFromSalesforce
            - customProperties
            - dataSources
            - flowType
            - isEnabled
            - objectTypeId
            - suppressionListIds
            - timeWindows
            - type
          type: object
          properties:
            type:
              type: string
              enum:
                - CONTACT_FLOW
                - PLATFORM_FLOW
              default: CONTACT_FLOW
            objectTypeId:
              type: string
            canEnrollFromSalesforce:
              type: boolean
            isEnabled:
              type: boolean
            flowType:
              type: string
              enum:
                - WORKFLOW
                - ACTION_SET
                - UNKNOWN
            name:
              type: string
            description:
              type: string
            uuid:
              type: string
            startActionId:
              type: string
            actions:
              type: array
              items:
                oneOf:
                  - $ref: '#/components/schemas/ApiStaticBranchAction'
                  - $ref: '#/components/schemas/ApiListBranchAction'
                  - $ref: '#/components/schemas/ApiABTestBranchAction'
                  - $ref: '#/components/schemas/ApiCustomCodeAction'
                  - $ref: '#/components/schemas/ApiWebhookAction'
                  - $ref: '#/components/schemas/ApiSingleConnectionAction'
            enrollmentCriteria:
              oneOf:
                - $ref: '#/components/schemas/ApiListBasedEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiEventBasedEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiManualEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiDatasetBasedEnrollmentCriteria'
            enrollmentSchedule:
              oneOf:
                - $ref: '#/components/schemas/ApiDailyEnrollmentSchedule'
                - $ref: '#/components/schemas/ApiWeeklyEnrollmentSchedule'
                - $ref: >-
                    #/components/schemas/ApiMonthlySpecificDaysEnrollmentSchedule
                - $ref: >-
                    #/components/schemas/ApiMonthlyRelativeDaysEnrollmentSchedule
                - $ref: '#/components/schemas/ApiYearlyEnrollmentSchedule'
                - $ref: '#/components/schemas/ApiPropertyBasedEnrollmentSchedule'
            timeWindows:
              type: array
              items:
                $ref: '#/components/schemas/ApiTimeWindow'
            blockedDates:
              type: array
              items:
                $ref: '#/components/schemas/ApiBlockedDate'
            customProperties:
              type: object
              additionalProperties:
                type: string
            dataSources:
              type: array
              items:
                oneOf:
                  - $ref: '#/components/schemas/ApiAssociationDataSource'
                  - $ref: '#/components/schemas/ApiAssociationTimestampDataSource'
                  - $ref: '#/components/schemas/ApiStaticPropertyFilterDataSource'
                  - $ref: >-
                      #/components/schemas/ApiEnrolledRecordPropertyFilterDataSource
                  - $ref: >-
                      #/components/schemas/ApiDatasetFieldPropertyFilterDataSource
                  - $ref: >-
                      #/components/schemas/ApiEnrolledArgumentPropertyFilterDataSource
            suppressionListIds:
              type: array
              items:
                type: integer
                format: int32
            goalFilterBranch:
              oneOf:
                - $ref: '#/components/schemas/PublicOrFilterBranch'
                - $ref: '#/components/schemas/PublicAndFilterBranch'
                - $ref: '#/components/schemas/PublicNotAllFilterBranch'
                - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
                - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
                - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
                - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
                - $ref: '#/components/schemas/PublicAssociationFilterBranch'
            eventAnchor:
              oneOf:
                - $ref: '#/components/schemas/ApiContactPropertyAnchor'
                - $ref: '#/components/schemas/ApiStaticDateAnchor'
            unEnrollmentSetting:
              $ref: '#/components/schemas/ApiUnEnrollmentSetting'
          x-hubspot-sub-type-impl: true
    ApiPlatformFlowCreateRequest:
      properties: {}
      allOf:
        - $ref: '#/components/schemas/ApiFlowCreateRequest'
        - required:
            - actions
            - blockedDates
            - customProperties
            - dataSources
            - flowType
            - isEnabled
            - objectTypeId
            - timeWindows
            - type
          type: object
          properties:
            type:
              type: string
              enum:
                - CONTACT_FLOW
                - PLATFORM_FLOW
              default: PLATFORM_FLOW
            isEnabled:
              type: boolean
            objectTypeId:
              type: string
            flowType:
              type: string
              enum:
                - WORKFLOW
                - ACTION_SET
                - UNKNOWN
            name:
              type: string
            description:
              type: string
            uuid:
              type: string
            startActionId:
              type: string
            actions:
              type: array
              items:
                oneOf:
                  - $ref: '#/components/schemas/ApiStaticBranchAction'
                  - $ref: '#/components/schemas/ApiListBranchAction'
                  - $ref: '#/components/schemas/ApiABTestBranchAction'
                  - $ref: '#/components/schemas/ApiCustomCodeAction'
                  - $ref: '#/components/schemas/ApiWebhookAction'
                  - $ref: '#/components/schemas/ApiSingleConnectionAction'
            enrollmentCriteria:
              oneOf:
                - $ref: '#/components/schemas/ApiListBasedEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiEventBasedEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiManualEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiDatasetBasedEnrollmentCriteria'
            enrollmentSchedule:
              oneOf:
                - $ref: '#/components/schemas/ApiDailyEnrollmentSchedule'
                - $ref: '#/components/schemas/ApiWeeklyEnrollmentSchedule'
                - $ref: >-
                    #/components/schemas/ApiMonthlySpecificDaysEnrollmentSchedule
                - $ref: >-
                    #/components/schemas/ApiMonthlyRelativeDaysEnrollmentSchedule
                - $ref: '#/components/schemas/ApiYearlyEnrollmentSchedule'
                - $ref: '#/components/schemas/ApiPropertyBasedEnrollmentSchedule'
            timeWindows:
              type: array
              items:
                $ref: '#/components/schemas/ApiTimeWindow'
            blockedDates:
              type: array
              items:
                $ref: '#/components/schemas/ApiBlockedDate'
            customProperties:
              type: object
              additionalProperties:
                type: string
            dataSources:
              type: array
              items:
                oneOf:
                  - $ref: '#/components/schemas/ApiAssociationDataSource'
                  - $ref: '#/components/schemas/ApiAssociationTimestampDataSource'
                  - $ref: '#/components/schemas/ApiStaticPropertyFilterDataSource'
                  - $ref: >-
                      #/components/schemas/ApiEnrolledRecordPropertyFilterDataSource
                  - $ref: >-
                      #/components/schemas/ApiDatasetFieldPropertyFilterDataSource
                  - $ref: >-
                      #/components/schemas/ApiEnrolledArgumentPropertyFilterDataSource
            suppressionFilterBranch:
              oneOf:
                - $ref: '#/components/schemas/PublicOrFilterBranch'
                - $ref: '#/components/schemas/PublicAndFilterBranch'
                - $ref: '#/components/schemas/PublicNotAllFilterBranch'
                - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
                - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
                - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
                - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
                - $ref: '#/components/schemas/PublicAssociationFilterBranch'
          x-hubspot-sub-type-impl: true
    ApiContactFlow:
      properties: {}
      allOf:
        - $ref: '#/components/schemas/ApiFlow'
        - required:
            - actions
            - blockedDates
            - canEnrollFromSalesforce
            - createdAt
            - crmObjectCreationStatus
            - customProperties
            - dataSources
            - flowType
            - id
            - isEnabled
            - nextAvailableActionId
            - objectTypeId
            - revisionId
            - suppressionListIds
            - timeWindows
            - type
            - updatedAt
          type: object
          properties:
            type:
              type: string
              enum:
                - CONTACT_FLOW
                - PLATFORM_FLOW
              default: CONTACT_FLOW
            id:
              type: string
            isEnabled:
              type: boolean
            flowType:
              type: string
              enum:
                - WORKFLOW
                - ACTION_SET
                - UNKNOWN
            revisionId:
              type: string
            name:
              type: string
            description:
              type: string
            uuid:
              type: string
            createdAt:
              type: string
              format: date-time
            updatedAt:
              type: string
              format: date-time
            startActionId:
              type: string
            nextAvailableActionId:
              type: string
            actions:
              type: array
              items:
                oneOf:
                  - $ref: '#/components/schemas/ApiStaticBranchAction'
                  - $ref: '#/components/schemas/ApiListBranchAction'
                  - $ref: '#/components/schemas/ApiABTestBranchAction'
                  - $ref: '#/components/schemas/ApiCustomCodeAction'
                  - $ref: '#/components/schemas/ApiWebhookAction'
                  - $ref: '#/components/schemas/ApiSingleConnectionAction'
            enrollmentCriteria:
              oneOf:
                - $ref: '#/components/schemas/ApiListBasedEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiEventBasedEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiManualEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiDatasetBasedEnrollmentCriteria'
            enrollmentSchedule:
              oneOf:
                - $ref: '#/components/schemas/ApiDailyEnrollmentSchedule'
                - $ref: '#/components/schemas/ApiWeeklyEnrollmentSchedule'
                - $ref: >-
                    #/components/schemas/ApiMonthlySpecificDaysEnrollmentSchedule
                - $ref: >-
                    #/components/schemas/ApiMonthlyRelativeDaysEnrollmentSchedule
                - $ref: '#/components/schemas/ApiYearlyEnrollmentSchedule'
                - $ref: '#/components/schemas/ApiPropertyBasedEnrollmentSchedule'
            timeWindows:
              type: array
              items:
                $ref: '#/components/schemas/ApiTimeWindow'
            blockedDates:
              type: array
              items:
                $ref: '#/components/schemas/ApiBlockedDate'
            customProperties:
              type: object
              additionalProperties:
                type: string
            dataSources:
              type: array
              items:
                oneOf:
                  - $ref: '#/components/schemas/ApiAssociationDataSource'
                  - $ref: '#/components/schemas/ApiAssociationTimestampDataSource'
                  - $ref: '#/components/schemas/ApiStaticPropertyFilterDataSource'
                  - $ref: >-
                      #/components/schemas/ApiEnrolledRecordPropertyFilterDataSource
                  - $ref: >-
                      #/components/schemas/ApiDatasetFieldPropertyFilterDataSource
                  - $ref: >-
                      #/components/schemas/ApiEnrolledArgumentPropertyFilterDataSource
            crmObjectCreationStatus:
              type: string
              enum:
                - PENDING
                - COMPLETE
            suppressionListIds:
              type: array
              items:
                type: integer
                format: int32
            goalFilterBranch:
              oneOf:
                - $ref: '#/components/schemas/PublicOrFilterBranch'
                - $ref: '#/components/schemas/PublicAndFilterBranch'
                - $ref: '#/components/schemas/PublicNotAllFilterBranch'
                - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
                - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
                - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
                - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
                - $ref: '#/components/schemas/PublicAssociationFilterBranch'
            canEnrollFromSalesforce:
              type: boolean
            eventAnchor:
              oneOf:
                - $ref: '#/components/schemas/ApiContactPropertyAnchor'
                - $ref: '#/components/schemas/ApiStaticDateAnchor'
            unEnrollmentSetting:
              $ref: '#/components/schemas/ApiUnEnrollmentSetting'
            objectTypeId:
              type: string
          x-hubspot-sub-type-impl: true
    ApiPlatformFlow:
      properties: {}
      allOf:
        - $ref: '#/components/schemas/ApiFlow'
        - required:
            - actions
            - blockedDates
            - createdAt
            - crmObjectCreationStatus
            - customProperties
            - dataSources
            - flowType
            - id
            - isEnabled
            - nextAvailableActionId
            - objectTypeId
            - revisionId
            - timeWindows
            - type
            - updatedAt
          type: object
          properties:
            type:
              type: string
              enum:
                - CONTACT_FLOW
                - PLATFORM_FLOW
              default: PLATFORM_FLOW
            id:
              type: string
            isEnabled:
              type: boolean
            objectTypeId:
              type: string
            flowType:
              type: string
              enum:
                - WORKFLOW
                - ACTION_SET
                - UNKNOWN
            revisionId:
              type: string
            name:
              type: string
            description:
              type: string
            uuid:
              type: string
            createdAt:
              type: string
              format: date-time
            updatedAt:
              type: string
              format: date-time
            startActionId:
              type: string
            nextAvailableActionId:
              type: string
            actions:
              type: array
              items:
                oneOf:
                  - $ref: '#/components/schemas/ApiStaticBranchAction'
                  - $ref: '#/components/schemas/ApiListBranchAction'
                  - $ref: '#/components/schemas/ApiABTestBranchAction'
                  - $ref: '#/components/schemas/ApiCustomCodeAction'
                  - $ref: '#/components/schemas/ApiWebhookAction'
                  - $ref: '#/components/schemas/ApiSingleConnectionAction'
            enrollmentCriteria:
              oneOf:
                - $ref: '#/components/schemas/ApiListBasedEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiEventBasedEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiManualEnrollmentCriteria'
                - $ref: '#/components/schemas/ApiDatasetBasedEnrollmentCriteria'
            enrollmentSchedule:
              oneOf:
                - $ref: '#/components/schemas/ApiDailyEnrollmentSchedule'
                - $ref: '#/components/schemas/ApiWeeklyEnrollmentSchedule'
                - $ref: >-
                    #/components/schemas/ApiMonthlySpecificDaysEnrollmentSchedule
                - $ref: >-
                    #/components/schemas/ApiMonthlyRelativeDaysEnrollmentSchedule
                - $ref: '#/components/schemas/ApiYearlyEnrollmentSchedule'
                - $ref: '#/components/schemas/ApiPropertyBasedEnrollmentSchedule'
            timeWindows:
              type: array
              items:
                $ref: '#/components/schemas/ApiTimeWindow'
            blockedDates:
              type: array
              items:
                $ref: '#/components/schemas/ApiBlockedDate'
            customProperties:
              type: object
              additionalProperties:
                type: string
            dataSources:
              type: array
              items:
                oneOf:
                  - $ref: '#/components/schemas/ApiAssociationDataSource'
                  - $ref: '#/components/schemas/ApiAssociationTimestampDataSource'
                  - $ref: '#/components/schemas/ApiStaticPropertyFilterDataSource'
                  - $ref: >-
                      #/components/schemas/ApiEnrolledRecordPropertyFilterDataSource
                  - $ref: >-
                      #/components/schemas/ApiDatasetFieldPropertyFilterDataSource
                  - $ref: >-
                      #/components/schemas/ApiEnrolledArgumentPropertyFilterDataSource
            crmObjectCreationStatus:
              type: string
              enum:
                - PENDING
                - COMPLETE
            suppressionFilterBranch:
              oneOf:
                - $ref: '#/components/schemas/PublicOrFilterBranch'
                - $ref: '#/components/schemas/PublicAndFilterBranch'
                - $ref: '#/components/schemas/PublicNotAllFilterBranch'
                - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
                - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
                - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
                - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
                - $ref: '#/components/schemas/PublicAssociationFilterBranch'
          x-hubspot-sub-type-impl: true
    Error:
      required:
        - category
        - correlationId
        - message
      type: object
      properties:
        category:
          type: string
          description: The error category
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Context about the error condition
          example: >-
            {invalidPropertyName=[propertyValue], missingScopes=[scope1,
            scope2]}
        correlationId:
          type: string
          description: >-
            A unique identifier for the request. Include this value with any
            error reports or support tickets
          format: uuid
          example: aeb5f871-7f07-4993-9211-075dc63e7cbf
        errors:
          type: array
          description: further information about the error
          items:
            $ref: '#/components/schemas/ErrorDetail'
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            A map of link names to associated URIs containing documentation
            about the error or recommended remediation steps
        message:
          type: string
          description: >-
            A human readable message describing the error along with remediation
            steps where appropriate
          example: An error occurred
        subCategory:
          type: string
          description: >-
            A specific category that contains more specific detail about the
            error
      example:
        message: Invalid input (details will vary based on the error)
        correlationId: aeb5f871-7f07-4993-9211-075dc63e7cbf
        category: VALIDATION_ERROR
        links:
          knowledge-base: https://www.hubspot.com/products/service/knowledge-base
    ApiStaticBranchAction:
      title: STATIC_BRANCH
      required:
        - actionId
        - inputValue
        - staticBranches
        - type
      type: object
      properties:
        actionId:
          type: string
          description: The unique identifier for this static branch action.
        defaultBranch:
          $ref: '#/components/schemas/ApiConnection'
        defaultBranchName:
          type: string
          description: The name of the default branch in the static branch action.
        inputValue:
          description: >-
            Represents the input value for the static branch action, which can
            be of various types such as action data, object property, or static
            value.
          oneOf:
            - $ref: '#/components/schemas/ApiActionDataValue'
            - $ref: '#/components/schemas/ApiObjectPropertyValue'
            - $ref: '#/components/schemas/ApiStaticValue'
            - $ref: '#/components/schemas/ApiRelativeDateTimeValue'
            - $ref: '#/components/schemas/ApiTimestampValue'
            - $ref: '#/components/schemas/ApiIncrementValue'
            - $ref: '#/components/schemas/ApiFetchedObjectPropertyValue'
            - $ref: '#/components/schemas/ApiAppendObjectPropertyValue'
            - $ref: '#/components/schemas/ApiStaticAppendValue'
            - $ref: '#/components/schemas/ApiEnrollmentEventPropertyValue'
        staticBranches:
          type: array
          items:
            $ref: '#/components/schemas/ApiStaticBranch'
        type:
          type: string
          description: Indicates the type of the action, which defaults to STATIC_BRANCH.
          enum:
            - STATIC_BRANCH
          default: STATIC_BRANCH
    ApiListBranchAction:
      title: LIST_BRANCH
      required:
        - actionId
        - listBranches
        - type
      type: object
      properties:
        actionId:
          type: string
          description: The unique identifier for the list branch action.
        defaultBranch:
          $ref: '#/components/schemas/ApiConnection'
        defaultBranchName:
          type: string
          description: The name of the default branch in the list action.
        listBranches:
          type: array
          items:
            $ref: '#/components/schemas/ApiListBranch'
        type:
          type: string
          description: Indicates the type of action, which defaults to LIST_BRANCH.
          enum:
            - LIST_BRANCH
          default: LIST_BRANCH
    ApiABTestBranchAction:
      title: AB_TEST_BRANCH
      required:
        - actionId
        - testBranches
        - type
      type: object
      properties:
        actionId:
          type: string
          description: The unique identifier for the A/B test branch action.
        testBranches:
          type: array
          items:
            $ref: '#/components/schemas/ApiABTestBranch'
        type:
          type: string
          description: Indicates the type of action, which defaults to AB_TEST_BRANCH.
          enum:
            - AB_TEST_BRANCH
          default: AB_TEST_BRANCH
    ApiCustomCodeAction:
      title: CUSTOM_CODE
      required:
        - actionId
        - inputFields
        - outputFields
        - runtime
        - secretNames
        - sourceCode
        - type
      type: object
      properties:
        actionId:
          type: string
          description: The unique identifier for the custom code action.
        connection:
          $ref: '#/components/schemas/ApiConnection'
        inputFields:
          type: array
          items:
            $ref: '#/components/schemas/ApiInputVariable'
        outputFields:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/ApiEnumerationOutputField'
        runtime:
          type: string
          description: Specifies the runtime environment for the custom code action.
        secretNames:
          type: array
          items:
            type: string
        sourceCode:
          type: string
          description: Contains the source code for the custom code action.
        type:
          type: string
          description: Indicates the type of the action, which defaults to CUSTOM_CODE.
          enum:
            - CUSTOM_CODE
          default: CUSTOM_CODE
    ApiWebhookAction:
      title: WEBHOOK
      required:
        - actionId
        - method
        - queryParams
        - type
        - webhookUrl
      type: object
      properties:
        actionId:
          type: string
          description: The unique identifier for the webhook action.
        authSettings:
          description: >-
            Defines the authentication settings for the webhook, which can
            include an authentication key or a signature.
          oneOf:
            - $ref: '#/components/schemas/ApiAuthKeyWebhookAuthSettings'
            - $ref: '#/components/schemas/ApiSignatureWebhookAuthSettings'
        connection:
          $ref: '#/components/schemas/ApiConnection'
        method:
          type: string
          description: >-
            Specifies the HTTP method to be used for the webhook request, with
            accepted values including CONNECT, DELETE, GET, HEAD, OPTIONS,
            PATCH, POST, PUT, TRACE.
          enum:
            - CONNECT
            - DELETE
            - GET
            - HEAD
            - OPTIONS
            - PATCH
            - POST
            - PUT
            - TRACE
        queryParams:
          type: array
          items:
            $ref: '#/components/schemas/ApiInputVariable'
        type:
          type: string
          description: Indicates the type of action, which defaults to WEBHOOK.
          enum:
            - WEBHOOK
          default: WEBHOOK
        webhookUrl:
          type: string
          description: The URL to which the webhook request will be sent.
    ApiSingleConnectionAction:
      title: SINGLE_CONNECTION
      required:
        - actionId
        - actionTypeId
        - actionTypeVersion
        - fields
        - type
      type: object
      properties:
        actionId:
          type: string
          description: The unique identifier for the single connection action.
        actionTypeId:
          type: string
          description: The identifier for the type of action being performed.
        actionTypeVersion:
          type: integer
          description: Specifies the version of the action type.
          format: int32
        connection:
          $ref: '#/components/schemas/ApiConnection'
        fields:
          type: object
          additionalProperties:
            type: object
            properties: {}
          description: Contains the fields associated with the single connection action.
        type:
          type: string
          description: >-
            Indicates the type of the action, which defaults to
            SINGLE_CONNECTION.
          enum:
            - SINGLE_CONNECTION
          default: SINGLE_CONNECTION
    ApiListBasedEnrollmentCriteria:
      title: LIST_BASED
      required:
        - listFilterBranch
        - reEnrollmentTriggersFilterBranches
        - shouldReEnroll
        - type
        - unEnrollObjectsNotMeetingCriteria
      type: object
      properties:
        listFilterBranch:
          description: >-
            Defines the filter branch used to determine list-based enrollment
            criteria.
          oneOf:
            - $ref: '#/components/schemas/PublicOrFilterBranch'
            - $ref: '#/components/schemas/PublicAndFilterBranch'
            - $ref: '#/components/schemas/PublicNotAllFilterBranch'
            - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
            - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
            - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
            - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
            - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        reEnrollmentTriggersFilterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        shouldReEnroll:
          type: boolean
          description: >-
            Determines if objects should be re-enrolled when they meet the
            criteria again.
        type:
          type: string
          description: >-
            Specifies the type of enrollment criteria, which defaults to
            'LIST_BASED'.
          enum:
            - LIST_BASED
          default: LIST_BASED
        unEnrollObjectsNotMeetingCriteria:
          type: boolean
          description: >-
            Indicates whether objects not meeting the criteria should be
            unenrolled.
    ApiEventBasedEnrollmentCriteria:
      title: EVENT_BASED
      required:
        - eventFilterBranches
        - listMembershipFilterBranches
        - shouldReEnroll
        - type
      type: object
      properties:
        eventFilterBranches:
          type: array
          items:
            $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
        listMembershipFilterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        refinementCriteria:
          description: Specifies additional criteria for refining the enrollment process.
          oneOf:
            - $ref: '#/components/schemas/PublicOrFilterBranch'
            - $ref: '#/components/schemas/PublicAndFilterBranch'
            - $ref: '#/components/schemas/PublicNotAllFilterBranch'
            - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
            - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
            - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
            - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
            - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        shouldReEnroll:
          type: boolean
          description: >-
            Determines if objects should be re-enrolled when they meet the
            criteria again.
        type:
          type: string
          description: >-
            Specifies the type of enrollment criteria, which defaults to
            'EVENT_BASED'.
          enum:
            - EVENT_BASED
          default: EVENT_BASED
    ApiManualEnrollmentCriteria:
      title: MANUAL
      required:
        - shouldReEnroll
        - type
      type: object
      properties:
        shouldReEnroll:
          type: boolean
          description: Indicates whether the enrollment should be repeated.
        type:
          type: string
          description: Specifies the type of enrollment criteria, which is 'MANUAL'.
          enum:
            - MANUAL
          default: MANUAL
    ApiDatasetBasedEnrollmentCriteria:
      title: DATASET
      required:
        - datasetId
        - shouldReEnroll
        - type
      type: object
      properties:
        datasetId:
          type: integer
          format: int32
        shouldReEnroll:
          type: boolean
        subviewId:
          type: string
        type:
          type: string
          enum:
            - DATASET
          default: DATASET
    ApiDailyEnrollmentSchedule:
      title: DAILY
      required:
        - timeOfDay
        - type
      type: object
      properties:
        timeOfDay:
          $ref: '#/components/schemas/ApiTimeOfDay'
        type:
          type: string
          description: Specifies the type of enrollment schedule, which is 'DAILY'.
          enum:
            - DAILY
          default: DAILY
    ApiWeeklyEnrollmentSchedule:
      title: WEEKLY
      required:
        - daysOfWeek
        - timeOfDay
        - type
      type: object
      properties:
        daysOfWeek:
          type: array
          items:
            type: string
            enum:
              - MONDAY
              - TUESDAY
              - WEDNESDAY
              - THURSDAY
              - FRIDAY
              - SATURDAY
              - SUNDAY
        timeOfDay:
          $ref: '#/components/schemas/ApiTimeOfDay'
        type:
          type: string
          description: Indicates the type of enrollment schedule, which is 'WEEKLY'.
          enum:
            - WEEKLY
          default: WEEKLY
    ApiMonthlySpecificDaysEnrollmentSchedule:
      title: MONTHLY_SPECIFIC_DAYS
      required:
        - daysOfMonth
        - timeOfDay
        - type
      type: object
      properties:
        daysOfMonth:
          type: array
          items:
            type: integer
            format: int32
        timeOfDay:
          $ref: '#/components/schemas/ApiTimeOfDay'
        type:
          type: string
          description: >-
            Specifies the type of enrollment schedule, which is
            'MONTHLY_SPECIFIC_DAYS'.
          enum:
            - MONTHLY_SPECIFIC_DAYS
          default: MONTHLY_SPECIFIC_DAYS
    ApiMonthlyRelativeDaysEnrollmentSchedule:
      title: MONTHLY_RELATIVE_DAYS
      required:
        - monthlyRelativeDays
        - timeOfDay
        - type
      type: object
      properties:
        monthlyRelativeDays:
          type: string
          description: >-
            One of the possible relative days to enroll can be:
            LAST_DAY_OF_MONTH, or FIRST_MONDAY_OF_MONTH
          enum:
            - FIRST_MONDAY_OF_MONTH
            - LAST_DAY_OF_MONTH
        timeOfDay:
          $ref: '#/components/schemas/ApiTimeOfDay'
        type:
          type: string
          description: 'The type of schedule, always: MONTHLY_RELATIVE_DAYS'
          enum:
            - MONTHLY_RELATIVE_DAYS
          default: MONTHLY_RELATIVE_DAYS
    ApiYearlyEnrollmentSchedule:
      title: YEARLY
      required:
        - dayOfMonth
        - month
        - timeOfDay
        - type
      type: object
      properties:
        dayOfMonth:
          type: integer
          description: The day of the month for the yearly enrollment schedule.
          format: int32
        month:
          type: string
          description: >-
            The month for the yearly enrollment schedule, with accepted values
            including: APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE,
            MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER.
          enum:
            - APRIL
            - AUGUST
            - DECEMBER
            - FEBRUARY
            - JANUARY
            - JULY
            - JUNE
            - MARCH
            - MAY
            - NOVEMBER
            - OCTOBER
            - SEPTEMBER
        timeOfDay:
          $ref: '#/components/schemas/ApiTimeOfDay'
        type:
          type: string
          description: >-
            Indicates the type of enrollment schedule, which defaults to
            'YEARLY'.
          enum:
            - YEARLY
          default: YEARLY
    ApiPropertyBasedEnrollmentSchedule:
      title: PROPERTY_BASED
      required:
        - dateProperty
        - daysDelta
        - timeOfDay
        - type
        - yearly
      type: object
      properties:
        dateProperty:
          type: string
          description: The property used to determine the date for enrollment scheduling.
        daysDelta:
          type: integer
          description: >-
            The number of days to adjust the enrollment date relative to the
            dateProperty.
          format: int32
        timeOfDay:
          $ref: '#/components/schemas/ApiTimeOfDay'
        type:
          type: string
          description: >-
            Specifies the type of enrollment schedule, which is
            'PROPERTY_BASED'.
          enum:
            - PROPERTY_BASED
          default: PROPERTY_BASED
        yearly:
          type: boolean
          description: Indicates whether the enrollment schedule is set to repeat annually.
    ApiTimeWindow:
      required:
        - day
      type: object
      properties:
        day:
          type: string
          description: >-
            Specifies the day of the week for the time window, with accepted
            values being: FRIDAY, MONDAY, SATURDAY, SUNDAY, THURSDAY, TUESDAY,
            WEDNESDAY.
          enum:
            - FRIDAY
            - MONDAY
            - SATURDAY
            - SUNDAY
            - THURSDAY
            - TUESDAY
            - WEDNESDAY
        endTime:
          $ref: '#/components/schemas/ApiTimeOfDay'
        startTime:
          $ref: '#/components/schemas/ApiTimeOfDay'
    ApiBlockedDate:
      required:
        - dayOfMonth
        - month
      type: object
      properties:
        dayOfMonth:
          type: integer
          description: The day of the month for the blocked date.
          format: int32
        month:
          type: string
          description: >-
            The month of the blocked date, with accepted values including:
            APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE, MARCH, MAY,
            NOVEMBER, OCTOBER, SEPTEMBER.
          enum:
            - APRIL
            - AUGUST
            - DECEMBER
            - FEBRUARY
            - JANUARY
            - JULY
            - JUNE
            - MARCH
            - MAY
            - NOVEMBER
            - OCTOBER
            - SEPTEMBER
        year:
          type: integer
          description: The year of the blocked date.
          format: int32
    ApiAssociationDataSource:
      title: ASSOCIATION
      required:
        - associationCategory
        - associationTypeId
        - name
        - objectTypeId
        - type
      type: object
      properties:
        associationCategory:
          type: string
          description: >-
            Defines the category of the association, with possible values being
            HUBSPOT_DEFINED, INTEGRATOR_DEFINED, or USER_DEFINED.
          enum:
            - HUBSPOT_DEFINED
            - INTEGRATOR_DEFINED
            - USER_DEFINED
            - WORK
        associationTypeId:
          type: integer
          description: The ID representing the type of association.
          format: int32
        name:
          type: string
          description: The name of the data source.
        objectTypeId:
          type: string
          description: >-
            Represents the ID of the object type associated with the data
            source.
        sortBy:
          $ref: '#/components/schemas/ApiSort'
        type:
          type: string
          description: Indicates the type of data source, which defaults to ASSOCIATION.
          enum:
            - ASSOCIATION
          default: ASSOCIATION
    ApiAssociationTimestampDataSource:
      title: ASSOCIATION_TIMESTAMP
      required:
        - associationCategory
        - associationTypeId
        - name
        - objectTypeId
        - type
      type: object
      properties:
        associationCategory:
          type: string
          description: >-
            Defines the category of the association, with possible values being
            HUBSPOT_DEFINED, INTEGRATOR_DEFINED, or USER_DEFINED.
          enum:
            - HUBSPOT_DEFINED
            - INTEGRATOR_DEFINED
            - USER_DEFINED
            - WORK
        associationTypeId:
          type: integer
          description: The ID representing the type of association.
          format: int32
        name:
          type: string
          description: Specifies the name of the data source.
        objectTypeId:
          type: string
          description: >-
            Represents the ID of the object type associated with the data
            source.
        type:
          type: string
          description: >-
            Indicates the type of the data source, which defaults to
            ASSOCIATION_TIMESTAMP.
          enum:
            - ASSOCIATION_TIMESTAMP
          default: ASSOCIATION_TIMESTAMP
    ApiStaticPropertyFilterDataSource:
      title: STATIC_PROPERTY_FILTER
      required:
        - name
        - propertyName
        - staticValue
        - type
      type: object
      properties:
        name:
          type: string
          description: Defines the name of the data source.
        propertyName:
          type: string
          description: >-
            Specifies the name of the property used in the static property
            filter.
        sortBy:
          $ref: '#/components/schemas/ApiSort'
        staticValue:
          type: string
          description: Represents the static value used in the property filter.
        type:
          type: string
          description: >-
            Indicates the type of data source, which defaults to
            STATIC_PROPERTY_FILTER.
          enum:
            - STATIC_PROPERTY_FILTER
          default: STATIC_PROPERTY_FILTER
    ApiEnrolledRecordPropertyFilterDataSource:
      title: ENROLLED_RECORD_PROPERTY_FILTER
      required:
        - name
        - propertyName
        - recordFieldName
        - type
      type: object
      properties:
        name:
          type: string
          description: Defines the name of the data source.
        propertyName:
          type: string
          description: >-
            Specifies the name of the property used in the enrolled record
            property filter.
        recordFieldName:
          type: string
          description: The name of the field in the record that is being filtered.
        sortBy:
          $ref: '#/components/schemas/ApiSort'
        type:
          type: string
          description: >-
            Indicates the type of data source, which defaults to
            ENROLLED_RECORD_PROPERTY_FILTER.
          enum:
            - ENROLLED_RECORD_PROPERTY_FILTER
          default: ENROLLED_RECORD_PROPERTY_FILTER
    ApiDatasetFieldPropertyFilterDataSource:
      title: DATASET_FIELD_PROPERTY_FILTER
      required:
        - datasetFieldName
        - name
        - propertyName
        - type
      type: object
      properties:
        datasetFieldName:
          type: string
          description: Specifies the name of the dataset field used in the property filter.
        name:
          type: string
          description: Defines the name of the data source.
        propertyName:
          type: string
          description: >-
            Specifies the name of the property used in the dataset field
            property filter.
        sortBy:
          $ref: '#/components/schemas/ApiSort'
        type:
          type: string
          description: >-
            Indicates the type of data source, which defaults to
            DATASET_FIELD_PROPERTY_FILTER.
          enum:
            - DATASET_FIELD_PROPERTY_FILTER
          default: DATASET_FIELD_PROPERTY_FILTER
    ApiEnrolledArgumentPropertyFilterDataSource:
      title: ENROLLED_ARGUMENT_PROPERTY_FILTER
      required:
        - argumentName
        - name
        - propertyName
        - type
      type: object
      properties:
        argumentName:
          type: string
          description: >-
            The name of the argument used in the enrolled argument property
            filter.
        name:
          type: string
          description: Defines the name of the data source.
        propertyName:
          type: string
          description: >-
            Specifies the name of the property used in the enrolled argument
            property filter.
        sortBy:
          $ref: '#/components/schemas/ApiSort'
        type:
          type: string
          description: >-
            Indicates the type of data source, which defaults to
            ENROLLED_ARGUMENT_PROPERTY_FILTER.
          enum:
            - ENROLLED_ARGUMENT_PROPERTY_FILTER
          default: ENROLLED_ARGUMENT_PROPERTY_FILTER
    PublicOrFilterBranch:
      title: OR
      required:
        - filterBranchOperator
        - filterBranchType
        - filterBranches
        - filters
      type: object
      properties:
        filterBranchOperator:
          type: string
          description: >-
            Defines the logical operator used to combine multiple filter
            branches.
        filterBranchType:
          type: string
          description: Indicates the type of filter branch, defaulting to OR.
          enum:
            - OR
          default: OR
        filterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        filters:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicPropertyFilter'
              - $ref: '#/components/schemas/PublicAssociationInListFilter'
              - $ref: '#/components/schemas/PublicPageViewAnalyticsFilter'
              - $ref: '#/components/schemas/PublicCtaAnalyticsFilter'
              - $ref: '#/components/schemas/PublicEventAnalyticsFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionOnPageFilter'
              - $ref: '#/components/schemas/PublicIntegrationEventFilter'
              - $ref: '#/components/schemas/PublicEmailSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCommunicationSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCampaignInfluencedFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyValueFilter'
              - $ref: '#/components/schemas/PublicWebinarFilter'
              - $ref: '#/components/schemas/PublicEmailEventFilter'
              - $ref: '#/components/schemas/PublicPrivacyAnalyticsFilter'
              - $ref: '#/components/schemas/PublicAdsSearchFilter'
              - $ref: '#/components/schemas/PublicAdsTimeFilter'
              - $ref: '#/components/schemas/PublicInListFilter'
              - $ref: '#/components/schemas/PublicNumAssociationsFilter'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilter'
              - $ref: '#/components/schemas/PublicPropertyAssociationInListFilter'
              - $ref: '#/components/schemas/PublicConstantFilter'
    PublicAndFilterBranch:
      title: AND
      required:
        - filterBranchOperator
        - filterBranchType
        - filterBranches
        - filters
      type: object
      properties:
        filterBranchOperator:
          type: string
          description: >-
            Defines the logical operator used to combine multiple filter
            branches.
        filterBranchType:
          type: string
          description: Indicates the type of filter branch, defaulting to AND.
          enum:
            - AND
          default: AND
        filterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        filters:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicPropertyFilter'
              - $ref: '#/components/schemas/PublicAssociationInListFilter'
              - $ref: '#/components/schemas/PublicPageViewAnalyticsFilter'
              - $ref: '#/components/schemas/PublicCtaAnalyticsFilter'
              - $ref: '#/components/schemas/PublicEventAnalyticsFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionOnPageFilter'
              - $ref: '#/components/schemas/PublicIntegrationEventFilter'
              - $ref: '#/components/schemas/PublicEmailSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCommunicationSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCampaignInfluencedFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyValueFilter'
              - $ref: '#/components/schemas/PublicWebinarFilter'
              - $ref: '#/components/schemas/PublicEmailEventFilter'
              - $ref: '#/components/schemas/PublicPrivacyAnalyticsFilter'
              - $ref: '#/components/schemas/PublicAdsSearchFilter'
              - $ref: '#/components/schemas/PublicAdsTimeFilter'
              - $ref: '#/components/schemas/PublicInListFilter'
              - $ref: '#/components/schemas/PublicNumAssociationsFilter'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilter'
              - $ref: '#/components/schemas/PublicPropertyAssociationInListFilter'
              - $ref: '#/components/schemas/PublicConstantFilter'
    PublicNotAllFilterBranch:
      title: NOT_ALL
      required:
        - filterBranchOperator
        - filterBranchType
        - filterBranches
        - filters
      type: object
      properties:
        filterBranchOperator:
          type: string
          description: >-
            Defines the logical operator used to combine multiple filter
            branches.
        filterBranchType:
          type: string
          description: Indicates the type of filter branch, defaulting to NOT_ALL.
          enum:
            - NOT_ALL
          default: NOT_ALL
        filterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        filters:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicPropertyFilter'
              - $ref: '#/components/schemas/PublicAssociationInListFilter'
              - $ref: '#/components/schemas/PublicPageViewAnalyticsFilter'
              - $ref: '#/components/schemas/PublicCtaAnalyticsFilter'
              - $ref: '#/components/schemas/PublicEventAnalyticsFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionOnPageFilter'
              - $ref: '#/components/schemas/PublicIntegrationEventFilter'
              - $ref: '#/components/schemas/PublicEmailSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCommunicationSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCampaignInfluencedFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyValueFilter'
              - $ref: '#/components/schemas/PublicWebinarFilter'
              - $ref: '#/components/schemas/PublicEmailEventFilter'
              - $ref: '#/components/schemas/PublicPrivacyAnalyticsFilter'
              - $ref: '#/components/schemas/PublicAdsSearchFilter'
              - $ref: '#/components/schemas/PublicAdsTimeFilter'
              - $ref: '#/components/schemas/PublicInListFilter'
              - $ref: '#/components/schemas/PublicNumAssociationsFilter'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilter'
              - $ref: '#/components/schemas/PublicPropertyAssociationInListFilter'
              - $ref: '#/components/schemas/PublicConstantFilter'
    PublicNotAnyFilterBranch:
      title: NOT_ANY
      required:
        - filterBranchOperator
        - filterBranchType
        - filterBranches
        - filters
      type: object
      properties:
        filterBranchOperator:
          type: string
          description: >-
            Defines the logical operator used to combine multiple filter
            branches.
        filterBranchType:
          type: string
          description: Indicates the type of filter branch, defaulting to NOT_ANY.
          enum:
            - NOT_ANY
          default: NOT_ANY
        filterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        filters:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicPropertyFilter'
              - $ref: '#/components/schemas/PublicAssociationInListFilter'
              - $ref: '#/components/schemas/PublicPageViewAnalyticsFilter'
              - $ref: '#/components/schemas/PublicCtaAnalyticsFilter'
              - $ref: '#/components/schemas/PublicEventAnalyticsFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionOnPageFilter'
              - $ref: '#/components/schemas/PublicIntegrationEventFilter'
              - $ref: '#/components/schemas/PublicEmailSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCommunicationSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCampaignInfluencedFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyValueFilter'
              - $ref: '#/components/schemas/PublicWebinarFilter'
              - $ref: '#/components/schemas/PublicEmailEventFilter'
              - $ref: '#/components/schemas/PublicPrivacyAnalyticsFilter'
              - $ref: '#/components/schemas/PublicAdsSearchFilter'
              - $ref: '#/components/schemas/PublicAdsTimeFilter'
              - $ref: '#/components/schemas/PublicInListFilter'
              - $ref: '#/components/schemas/PublicNumAssociationsFilter'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilter'
              - $ref: '#/components/schemas/PublicPropertyAssociationInListFilter'
              - $ref: '#/components/schemas/PublicConstantFilter'
    PublicRestrictedFilterBranch:
      title: RESTRICTED
      required:
        - filterBranchOperator
        - filterBranchType
        - filterBranches
        - filters
      type: object
      properties:
        filterBranchOperator:
          type: string
          description: >-
            Defines the logical operator used to combine multiple filter
            branches.
        filterBranchType:
          type: string
          description: Indicates the type of filter branch, defaulting to RESTRICTED.
          enum:
            - RESTRICTED
          default: RESTRICTED
        filterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        filters:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicPropertyFilter'
              - $ref: '#/components/schemas/PublicAssociationInListFilter'
              - $ref: '#/components/schemas/PublicPageViewAnalyticsFilter'
              - $ref: '#/components/schemas/PublicCtaAnalyticsFilter'
              - $ref: '#/components/schemas/PublicEventAnalyticsFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionOnPageFilter'
              - $ref: '#/components/schemas/PublicIntegrationEventFilter'
              - $ref: '#/components/schemas/PublicEmailSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCommunicationSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCampaignInfluencedFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyValueFilter'
              - $ref: '#/components/schemas/PublicWebinarFilter'
              - $ref: '#/components/schemas/PublicEmailEventFilter'
              - $ref: '#/components/schemas/PublicPrivacyAnalyticsFilter'
              - $ref: '#/components/schemas/PublicAdsSearchFilter'
              - $ref: '#/components/schemas/PublicAdsTimeFilter'
              - $ref: '#/components/schemas/PublicInListFilter'
              - $ref: '#/components/schemas/PublicNumAssociationsFilter'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilter'
              - $ref: '#/components/schemas/PublicPropertyAssociationInListFilter'
              - $ref: '#/components/schemas/PublicConstantFilter'
    PublicUnifiedEventsFilterBranch:
      title: UNIFIED_EVENTS
      required:
        - eventTypeId
        - filterBranchOperator
        - filterBranchType
        - filterBranches
        - filters
        - operator
      type: object
      properties:
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining events, using one of several
            possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        eventTypeId:
          type: string
          description: >-
            The identifier for the type of event associated with the unified
            events filter branch.
        filterBranchOperator:
          type: string
          description: >-
            Defines the logical operator used to combine multiple filter
            branches.
        filterBranchType:
          type: string
          description: Indicates the type of filter branch, defaulting to UNIFIED_EVENTS.
          enum:
            - UNIFIED_EVENTS
          default: UNIFIED_EVENTS
        filterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        filters:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicPropertyFilter'
              - $ref: '#/components/schemas/PublicAssociationInListFilter'
              - $ref: '#/components/schemas/PublicPageViewAnalyticsFilter'
              - $ref: '#/components/schemas/PublicCtaAnalyticsFilter'
              - $ref: '#/components/schemas/PublicEventAnalyticsFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionOnPageFilter'
              - $ref: '#/components/schemas/PublicIntegrationEventFilter'
              - $ref: '#/components/schemas/PublicEmailSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCommunicationSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCampaignInfluencedFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyValueFilter'
              - $ref: '#/components/schemas/PublicWebinarFilter'
              - $ref: '#/components/schemas/PublicEmailEventFilter'
              - $ref: '#/components/schemas/PublicPrivacyAnalyticsFilter'
              - $ref: '#/components/schemas/PublicAdsSearchFilter'
              - $ref: '#/components/schemas/PublicAdsTimeFilter'
              - $ref: '#/components/schemas/PublicInListFilter'
              - $ref: '#/components/schemas/PublicNumAssociationsFilter'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilter'
              - $ref: '#/components/schemas/PublicPropertyAssociationInListFilter'
              - $ref: '#/components/schemas/PublicConstantFilter'
        operator:
          type: string
          description: >-
            Specifies the operator used in the unified events filter branch,
            with accepted values being HAS_COMPLETED or HAS_NOT_COMPLETED.
          enum:
            - HAS_COMPLETED
            - HAS_NOT_COMPLETED
        pruningRefineBy:
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicPropertyAssociationFilterBranch:
      title: PROPERTY_ASSOCIATION
      required:
        - filterBranchOperator
        - filterBranchType
        - filterBranches
        - filters
        - objectTypeId
        - operator
        - propertyWithObjectId
      type: object
      properties:
        filterBranchOperator:
          type: string
          description: >-
            Defines the logical operator used to combine multiple filter
            branches.
        filterBranchType:
          type: string
          description: >-
            Indicates the type of filter branch, defaulting to
            PROPERTY_ASSOCIATION.
          enum:
            - PROPERTY_ASSOCIATION
          default: PROPERTY_ASSOCIATION
        filterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        filters:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicPropertyFilter'
              - $ref: '#/components/schemas/PublicAssociationInListFilter'
              - $ref: '#/components/schemas/PublicPageViewAnalyticsFilter'
              - $ref: '#/components/schemas/PublicCtaAnalyticsFilter'
              - $ref: '#/components/schemas/PublicEventAnalyticsFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionOnPageFilter'
              - $ref: '#/components/schemas/PublicIntegrationEventFilter'
              - $ref: '#/components/schemas/PublicEmailSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCommunicationSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCampaignInfluencedFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyValueFilter'
              - $ref: '#/components/schemas/PublicWebinarFilter'
              - $ref: '#/components/schemas/PublicEmailEventFilter'
              - $ref: '#/components/schemas/PublicPrivacyAnalyticsFilter'
              - $ref: '#/components/schemas/PublicAdsSearchFilter'
              - $ref: '#/components/schemas/PublicAdsTimeFilter'
              - $ref: '#/components/schemas/PublicInListFilter'
              - $ref: '#/components/schemas/PublicNumAssociationsFilter'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilter'
              - $ref: '#/components/schemas/PublicPropertyAssociationInListFilter'
              - $ref: '#/components/schemas/PublicConstantFilter'
        objectTypeId:
          type: string
          description: Identifies the type of object associated with the filter branch.
        operator:
          type: string
          description: Specifies the operator applied to the property association filter.
        propertyWithObjectId:
          type: string
          description: Specifies the property that includes the object ID for the filter.
    PublicAssociationFilterBranch:
      title: ASSOCIATION
      required:
        - associationCategory
        - associationTypeId
        - filterBranchOperator
        - filterBranchType
        - filterBranches
        - filters
        - objectTypeId
        - operator
      type: object
      properties:
        associationCategory:
          type: string
          description: Defines the category of the association.
        associationTypeId:
          type: integer
          description: The ID representing the type of association.
          format: int32
        filterBranchOperator:
          type: string
          description: >-
            Defines the logical operator used to combine multiple filter
            branches.
        filterBranchType:
          type: string
          description: Indicates the type of filter branch, defaulting to ASSOCIATION.
          enum:
            - ASSOCIATION
          default: ASSOCIATION
        filterBranches:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicOrFilterBranch'
              - $ref: '#/components/schemas/PublicAndFilterBranch'
              - $ref: '#/components/schemas/PublicNotAllFilterBranch'
              - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
              - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
              - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
              - $ref: '#/components/schemas/PublicAssociationFilterBranch'
        filters:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicPropertyFilter'
              - $ref: '#/components/schemas/PublicAssociationInListFilter'
              - $ref: '#/components/schemas/PublicPageViewAnalyticsFilter'
              - $ref: '#/components/schemas/PublicCtaAnalyticsFilter'
              - $ref: '#/components/schemas/PublicEventAnalyticsFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionFilter'
              - $ref: '#/components/schemas/PublicFormSubmissionOnPageFilter'
              - $ref: '#/components/schemas/PublicIntegrationEventFilter'
              - $ref: '#/components/schemas/PublicEmailSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCommunicationSubscriptionFilter'
              - $ref: '#/components/schemas/PublicCampaignInfluencedFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyFilter'
              - $ref: '#/components/schemas/PublicSurveyMonkeyValueFilter'
              - $ref: '#/components/schemas/PublicWebinarFilter'
              - $ref: '#/components/schemas/PublicEmailEventFilter'
              - $ref: '#/components/schemas/PublicPrivacyAnalyticsFilter'
              - $ref: '#/components/schemas/PublicAdsSearchFilter'
              - $ref: '#/components/schemas/PublicAdsTimeFilter'
              - $ref: '#/components/schemas/PublicInListFilter'
              - $ref: '#/components/schemas/PublicNumAssociationsFilter'
              - $ref: '#/components/schemas/PublicUnifiedEventsFilter'
              - $ref: '#/components/schemas/PublicPropertyAssociationInListFilter'
              - $ref: '#/components/schemas/PublicConstantFilter'
        objectTypeId:
          type: string
          description: >-
            Represents the ID of the object type associated with the filter
            branch.
        operator:
          type: string
          description: Specifies the operator applied to the association filter.
    ApiContactPropertyAnchor:
      title: CONTACT_PROPERTY_ANCHOR
      required:
        - contactProperty
        - type
      type: object
      properties:
        contactProperty:
          type: string
          description: Specifies the contact property associated with the anchor.
        type:
          type: string
          description: >-
            Indicates the type of the contact property anchor, which defaults to
            CONTACT_PROPERTY_ANCHOR.
          enum:
            - CONTACT_PROPERTY_ANCHOR
          default: CONTACT_PROPERTY_ANCHOR
    ApiStaticDateAnchor:
      title: STATIC_DATE_ANCHOR
      required:
        - dayOfMonth
        - month
        - type
      type: object
      properties:
        dayOfMonth:
          type: integer
          description: The day of the month for the static date anchor.
          format: int32
        month:
          type: string
          description: >-
            The month component of the static date anchor, with accepted values
            including: APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE,
            MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER.
          enum:
            - APRIL
            - AUGUST
            - DECEMBER
            - FEBRUARY
            - JANUARY
            - JULY
            - JUNE
            - MARCH
            - MAY
            - NOVEMBER
            - OCTOBER
            - SEPTEMBER
        type:
          type: string
          description: >-
            Indicates the type of the date anchor, which defaults to
            STATIC_DATE_ANCHOR.
          enum:
            - STATIC_DATE_ANCHOR
          default: STATIC_DATE_ANCHOR
        year:
          type: integer
          description: The year component of the static date anchor.
          format: int32
    ApiUnEnrollmentSetting:
      required:
        - flowIds
        - type
      type: object
      properties:
        flowIds:
          type: array
          items:
            type: string
        type:
          type: string
          description: >-
            Specifies the type of unenrollment setting, with possible values
            being ALL or SELECTIVE.
          enum:
            - ALL
            - SELECTIVE
    ErrorDetail:
      required:
        - message
      type: object
      properties:
        code:
          type: string
          description: The status code associated with the error detail
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Context about the error condition
          example: '{missingScopes=[scope1, scope2]}'
        in:
          type: string
          description: The name of the field or parameter in which the error was found.
        message:
          type: string
          description: >-
            A human readable message describing the error along with remediation
            steps where appropriate
        subCategory:
          type: string
          description: >-
            A specific category that contains more specific detail about the
            error
    ApiConnection:
      required:
        - edgeType
        - nextActionId
      type: object
      properties:
        edgeType:
          type: string
          description: >-
            Specifies the type of connection between actions in the automation
            flow.
          enum:
            - GOTO
            - STANDARD
        nextActionId:
          type: string
          description: The identifier for the subsequent action in the automation sequence.
    ApiActionDataValue:
      title: FIELD_DATA
      required:
        - actionId
        - dataKey
        - type
      type: object
      properties:
        actionId:
          type: string
          description: The unique identifier for the action associated with the data value.
        dataKey:
          type: string
          description: The key used to identify the specific data value within the action.
        type:
          type: string
          description: Indicates the type of data value, which defaults to FIELD_DATA.
          enum:
            - FIELD_DATA
          default: FIELD_DATA
    ApiObjectPropertyValue:
      title: OBJECT_PROPERTY
      required:
        - propertyName
        - type
      type: object
      properties:
        propertyName:
          type: string
          description: Specifies the name of the property used in the object.
        type:
          type: string
          description: >-
            Indicates the type of the object property, which defaults to
            OBJECT_PROPERTY.
          enum:
            - OBJECT_PROPERTY
          default: OBJECT_PROPERTY
    ApiStaticValue:
      title: STATIC_VALUE
      required:
        - staticValue
        - type
      type: object
      properties:
        staticValue:
          type: string
          description: >-
            The specific static value that is used within the context of the
            API.
        type:
          type: string
          description: Indicates the type of the value, which defaults to STATIC_VALUE.
          enum:
            - STATIC_VALUE
          default: STATIC_VALUE
    ApiRelativeDateTimeValue:
      title: RELATIVE_DATETIME
      required:
        - timeDelay
        - type
      type: object
      properties:
        timeDelay:
          $ref: '#/components/schemas/ApiTimeDelay'
        type:
          type: string
          description: >-
            Indicates the type of the value, which defaults to
            RELATIVE_DATETIME.
          enum:
            - RELATIVE_DATETIME
          default: RELATIVE_DATETIME
    ApiTimestampValue:
      title: TIMESTAMP
      required:
        - timestampType
        - type
      type: object
      properties:
        timestampType:
          type: string
          description: >-
            Specifies the type of timestamp, with the accepted value being
            EXECUTION_TIME.
          enum:
            - EXECUTION_TIME
        type:
          type: string
          description: >-
            Indicates the type of the timestamp value, which defaults to
            TIMESTAMP.
          enum:
            - TIMESTAMP
          default: TIMESTAMP
    ApiIncrementValue:
      title: INCREMENT
      required:
        - incrementAmount
        - type
      type: object
      properties:
        incrementAmount:
          type: number
          description: Specifies the amount to increment.
        type:
          type: string
          description: >-
            Indicates the type of the increment value, which defaults to
            INCREMENT.
          enum:
            - INCREMENT
          default: INCREMENT
    ApiFetchedObjectPropertyValue:
      title: FETCHED_OBJECT_PROPERTY
      required:
        - propertyToken
        - type
      type: object
      properties:
        propertyToken:
          type: string
          description: >-
            The token used to identify the specific property of the fetched
            object.
        type:
          type: string
          description: >-
            Indicates the type of the fetched object property, which defaults to
            FETCHED_OBJECT_PROPERTY.
          enum:
            - FETCHED_OBJECT_PROPERTY
          default: FETCHED_OBJECT_PROPERTY
    ApiAppendObjectPropertyValue:
      title: APPEND_OBJECT_PROPERTY
      required:
        - appendPropertyName
        - type
      type: object
      properties:
        appendPropertyName:
          type: string
          description: The name of the property to which a value will be appended.
        type:
          type: string
          description: >-
            Indicates the type of the action, which defaults to
            APPEND_OBJECT_PROPERTY.
          enum:
            - APPEND_OBJECT_PROPERTY
          default: APPEND_OBJECT_PROPERTY
    ApiStaticAppendValue:
      title: STATIC_APPEND_VALUE
      required:
        - staticAppendValue
        - type
      type: object
      properties:
        staticAppendValue:
          type: string
          description: The value that will be appended to a specified property.
        type:
          type: string
          description: >-
            Indicates the type of the append action, which defaults to
            STATIC_APPEND_VALUE.
          enum:
            - STATIC_APPEND_VALUE
          default: STATIC_APPEND_VALUE
    ApiEnrollmentEventPropertyValue:
      title: ENROLLMENT_EVENT_PROPERTY
      required:
        - enrollmentEventPropertyToken
        - type
      type: object
      properties:
        enrollmentEventPropertyToken:
          type: string
          description: The token used to identify the specific enrollment event property.
        type:
          type: string
          description: >-
            Indicates the type of the enrollment event property, which defaults
            to ENROLLMENT_EVENT_PROPERTY.
          enum:
            - ENROLLMENT_EVENT_PROPERTY
          default: ENROLLMENT_EVENT_PROPERTY
    ApiStaticBranch:
      required:
        - branchValue
      type: object
      properties:
        branchValue:
          type: string
          description: Specifies the value associated with the static branch.
        connection:
          $ref: '#/components/schemas/ApiConnection'
    ApiListBranch:
      type: object
      properties:
        branchName:
          type: string
          description: Specifies the name of the branch.
        connection:
          $ref: '#/components/schemas/ApiConnection'
        filterBranch:
          description: >-
            Defines the filter criteria for the branch, using logical operators
            and conditions.
          oneOf:
            - $ref: '#/components/schemas/PublicOrFilterBranch'
            - $ref: '#/components/schemas/PublicAndFilterBranch'
            - $ref: '#/components/schemas/PublicNotAllFilterBranch'
            - $ref: '#/components/schemas/PublicNotAnyFilterBranch'
            - $ref: '#/components/schemas/PublicRestrictedFilterBranch'
            - $ref: '#/components/schemas/PublicUnifiedEventsFilterBranch'
            - $ref: '#/components/schemas/PublicPropertyAssociationFilterBranch'
            - $ref: '#/components/schemas/PublicAssociationFilterBranch'
    ApiABTestBranch:
      required:
        - connection
      type: object
      properties:
        connection:
          $ref: '#/components/schemas/ApiConnection'
        percentage:
          type: integer
          format: int32
    ApiInputVariable:
      required:
        - name
        - value
      type: object
      properties:
        name:
          type: string
          description: The name of the input variable.
        value:
          description: >-
            The value associated with the input variable, which can be of
            various types such as action data, object property, static value,
            relative date-time, timestamp, increment value, fetched object
            property, appended object property, static appended value, or
            enrollment event property.
          oneOf:
            - $ref: '#/components/schemas/ApiActionDataValue'
            - $ref: '#/components/schemas/ApiObjectPropertyValue'
            - $ref: '#/components/schemas/ApiStaticValue'
            - $ref: '#/components/schemas/ApiRelativeDateTimeValue'
            - $ref: '#/components/schemas/ApiTimestampValue'
            - $ref: '#/components/schemas/ApiIncrementValue'
            - $ref: '#/components/schemas/ApiFetchedObjectPropertyValue'
            - $ref: '#/components/schemas/ApiAppendObjectPropertyValue'
            - $ref: '#/components/schemas/ApiStaticAppendValue'
            - $ref: '#/components/schemas/ApiEnrollmentEventPropertyValue'
    ApiEnumerationOutputField:
      title: ENUMERATION
      required:
        - name
        - options
        - type
      type: object
      properties:
        name:
          type: string
          description: The name of the enumeration output field.
        options:
          type: array
          items:
            type: string
        type:
          type: string
          description: Specifies that the type of the field is 'ENUMERATION'.
          enum:
            - ENUMERATION
          default: ENUMERATION
    ApiAuthKeyWebhookAuthSettings:
      title: AUTH_KEY
      required:
        - location
        - name
        - secretName
        - type
      type: object
      properties:
        location:
          type: string
          description: >-
            Specifies where the authentication key is located, with possible
            values being HEADER or QUERY_PARAM.
          enum:
            - HEADER
            - QUERY_PARAM
        name:
          type: string
          description: The name associated with the authentication key.
        secretName:
          type: string
          description: The name of the secret used for authentication.
        type:
          type: string
          description: Indicates the type of authentication, which defaults to AUTH_KEY.
          enum:
            - AUTH_KEY
          default: AUTH_KEY
    ApiSignatureWebhookAuthSettings:
      title: SIGNATURE
      required:
        - appId
        - type
      type: object
      properties:
        appId:
          type: integer
          description: The HubSpot appId that is being used to auth this webhook call
          format: int32
        type:
          type: string
          description: 'The type of auth: SIGNATURE'
          enum:
            - SIGNATURE
          default: SIGNATURE
    ApiTimeOfDay:
      required:
        - hour
        - minute
      type: object
      properties:
        hour:
          type: integer
          description: The hour component of the time, represented as an integer.
          format: int32
        minute:
          type: integer
          description: The minute component of the time, represented as an integer.
          format: int32
    ApiSort:
      required:
        - order
        - property
      type: object
      properties:
        missing:
          type: string
          description: Specifies how to handle sorting when the property is missing.
        order:
          type: string
          description: >-
            The order of sorting, with accepted values being ASC for ascending
            and DESC for descending.
          enum:
            - ASC
            - DESC
        property:
          type: string
          description: The name of the property to sort by.
    PublicPropertyFilter:
      title: PROPERTY
      required:
        - filterType
        - operation
        - property
      type: object
      properties:
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to PROPERTY.
          enum:
            - PROPERTY
          default: PROPERTY
        operation:
          description: >-
            Defines the operation to be performed on the property, which can
            include various types such as boolean, number, string, date-time,
            and others.
          oneOf:
            - $ref: '#/components/schemas/PublicBoolPropertyOperation'
            - $ref: '#/components/schemas/PublicNumberPropertyOperation'
            - $ref: '#/components/schemas/PublicStringPropertyOperation'
            - $ref: '#/components/schemas/PublicDateTimePropertyOperation'
            - $ref: '#/components/schemas/PublicRangedDatePropertyOperation'
            - $ref: '#/components/schemas/PublicComparativePropertyUpdatedOperation'
            - $ref: '#/components/schemas/PublicComparativeDatePropertyOperation'
            - $ref: '#/components/schemas/PublicRollingDateRangePropertyOperation'
            - $ref: '#/components/schemas/PublicRollingPropertyUpdatedOperation'
            - $ref: '#/components/schemas/PublicEnumerationPropertyOperation'
            - $ref: '#/components/schemas/PublicAllPropertyTypesOperation'
            - $ref: '#/components/schemas/PublicRangedNumberPropertyOperation'
            - $ref: '#/components/schemas/PublicMultiStringPropertyOperation'
            - $ref: '#/components/schemas/PublicDatePropertyOperation'
            - $ref: '#/components/schemas/PublicCalendarDatePropertyOperation'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        property:
          type: string
          description: Specifies the name of the property to be filtered.
    PublicAssociationInListFilter:
      title: ASSOCIATION
      required:
        - associationCategory
        - associationTypeId
        - coalescingRefineBy
        - filterType
        - listId
        - operator
      type: object
      properties:
        associationCategory:
          type: string
          description: Defines the category of the association.
        associationTypeId:
          type: integer
          description: The ID representing the type of association.
          format: int32
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining associations using one of several
            possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to ASSOCIATION.
          enum:
            - ASSOCIATION
          default: ASSOCIATION
        listId:
          type: string
          description: The identifier of the list used in the association filter.
        operator:
          type: string
          description: Specifies the operator used in the association filter.
        toObjectType:
          type: string
          description: Specifies the type of object to which the association is made.
        toObjectTypeId:
          type: string
          description: Represents the ID of the object type associated with the filter.
    PublicPageViewAnalyticsFilter:
      title: PAGE_VIEW
      required:
        - filterType
        - operator
        - pageUrl
      type: object
      properties:
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining page view analytics, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        enableTracking:
          type: boolean
          description: >-
            Determines whether tracking is enabled for the page view analytics
            filter.
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to PAGE_VIEW.
          enum:
            - PAGE_VIEW
          default: PAGE_VIEW
        operator:
          type: string
          description: Specifies the operator used in the page view analytics filter.
        pageUrl:
          type: string
          description: The URL of the page used in the page view analytics filter.
        pruningRefineBy:
          description: >-
            Specifies the criteria for pruning page view analytics, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeRangedTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicCtaAnalyticsFilter:
      title: CTA
      required:
        - ctaName
        - filterType
        - operator
      type: object
      properties:
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining CTA analytics, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        ctaName:
          type: string
          description: The name of the call-to-action (CTA) used in the analytics filter.
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to CTA.
          enum:
            - CTA
          default: CTA
        operator:
          type: string
          description: Specifies the operator used in the CTA analytics filter.
        pruningRefineBy:
          description: >-
            Specifies the criteria for pruning CTA analytics, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeRangedTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicEventAnalyticsFilter:
      title: EVENT
      required:
        - eventId
        - filterType
        - operator
      type: object
      properties:
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining events, using one of several
            possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        eventId:
          type: string
          description: The identifier for the event used in the event analytics filter.
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to EVENT.
          enum:
            - EVENT
          default: EVENT
        operator:
          type: string
          description: Specifies the operator used in the event analytics filter.
        pruningRefineBy:
          description: >-
            Specifies the criteria for pruning events, using one of several
            possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeRangedTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicFormSubmissionFilter:
      title: FORM_SUBMISSION
      required:
        - filterType
        - operator
      type: object
      properties:
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining form submissions, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to FORM_SUBMISSION.
          enum:
            - FORM_SUBMISSION
          default: FORM_SUBMISSION
        formId:
          type: string
          description: >-
            The unique identifier of the form used in the form submission
            filter.
        operator:
          type: string
          description: >-
            Specifies the operator used in the form submission filter, with
            accepted values being FILLED_OUT or NOT_FILLED_OUT.
          enum:
            - FILLED_OUT
            - NOT_FILLED_OUT
        pruningRefineBy:
          description: >-
            Specifies the criteria for pruning form submissions, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeRangedTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicFormSubmissionOnPageFilter:
      title: FORM_SUBMISSION_ON_PAGE
      required:
        - filterType
        - operator
        - pageId
      type: object
      properties:
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining form submissions, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        filterType:
          type: string
          description: >-
            Indicates the type of filter, which defaults to
            FORM_SUBMISSION_ON_PAGE.
          enum:
            - FORM_SUBMISSION_ON_PAGE
          default: FORM_SUBMISSION_ON_PAGE
        formId:
          type: string
          description: >-
            The unique identifier of the form used in the form submission on
            page filter.
        operator:
          type: string
          description: >-
            Specifies the operator used in the form submission on page filter,
            with accepted values being FILLED_OUT or NOT_FILLED_OUT.
          enum:
            - FILLED_OUT
            - NOT_FILLED_OUT
        pageId:
          type: string
          description: >-
            The identifier for the page used in the form submission on page
            filter.
        pruningRefineBy:
          description: >-
            Specifies the criteria for pruning form submissions, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeRangedTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicIntegrationEventFilter:
      title: INTEGRATION_EVENT
      required:
        - eventTypeId
        - filterLines
        - filterType
      type: object
      properties:
        eventTypeId:
          type: integer
          description: >-
            The identifier for the type of event associated with the integration
            event filter.
          format: int32
        filterLines:
          type: array
          items:
            $ref: '#/components/schemas/PublicEventFilterMetadata'
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to INTEGRATION_EVENT.
          enum:
            - INTEGRATION_EVENT
          default: INTEGRATION_EVENT
    PublicEmailSubscriptionFilter:
      title: EMAIL_SUBSCRIPTION
      required:
        - acceptedStatuses
        - filterType
        - subscriptionIds
      type: object
      properties:
        acceptedStatuses:
          type: array
          items:
            type: string
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to EMAIL_SUBSCRIPTION.
          enum:
            - EMAIL_SUBSCRIPTION
          default: EMAIL_SUBSCRIPTION
        subscriptionIds:
          type: array
          items:
            type: string
        subscriptionType:
          type: string
          description: >-
            Specifies the type of subscription associated with the email
            subscription filter.
    PublicCommunicationSubscriptionFilter:
      title: COMMUNICATION_SUBSCRIPTION
      required:
        - acceptedOptStates
        - channel
        - filterType
        - subscriptionIds
        - subscriptionType
      type: object
      properties:
        acceptedOptStates:
          type: array
          items:
            type: string
        businessUnitId:
          type: string
          description: >-
            Identifies the business unit associated with the subscription
            filter.
        channel:
          type: string
          description: >-
            Specifies the communication channel associated with the subscription
            filter.
        filterType:
          type: string
          description: >-
            Indicates the type of filter, which defaults to
            COMMUNICATION_SUBSCRIPTION.
          enum:
            - COMMUNICATION_SUBSCRIPTION
          default: COMMUNICATION_SUBSCRIPTION
        subscriptionIds:
          type: array
          items:
            type: string
        subscriptionType:
          type: string
          description: Defines the type of subscription related to the filter.
    PublicCampaignInfluencedFilter:
      title: CAMPAIGN_INFLUENCED
      required:
        - campaignId
        - filterType
      type: object
      properties:
        campaignId:
          type: string
          description: >-
            The identifier for the campaign used in the campaign influenced
            filter.
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to CAMPAIGN_INFLUENCED.
          enum:
            - CAMPAIGN_INFLUENCED
          default: CAMPAIGN_INFLUENCED
    PublicSurveyMonkeyFilter:
      title: SURVEY_MONKEY
      required:
        - filterType
        - operator
        - surveyId
      type: object
      properties:
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to SURVEY_MONKEY.
          enum:
            - SURVEY_MONKEY
          default: SURVEY_MONKEY
        operator:
          type: string
          description: Specifies the operator used in the filter.
        surveyId:
          type: string
          description: The identifier for the survey.
    PublicSurveyMonkeyValueFilter:
      title: SURVEY_MONKEY_VALUE
      required:
        - filterType
        - operator
        - surveyId
        - surveyQuestion
        - valueComparison
      type: object
      properties:
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to SURVEY_MONKEY_VALUE.
          enum:
            - SURVEY_MONKEY_VALUE
          default: SURVEY_MONKEY_VALUE
        operator:
          type: string
          description: Specifies the operator used in the filter.
        surveyAnswerColId:
          type: string
          description: The identifier for the column of the survey answer.
        surveyAnswerRowId:
          type: string
          description: The identifier for the row of the survey answer.
        surveyId:
          type: string
          description: The identifier for the survey.
        surveyQuestion:
          type: string
          description: The text of the survey question.
        valueComparison:
          description: Defines the criteria for comparing the survey answer value.
          oneOf:
            - $ref: '#/components/schemas/PublicBoolPropertyOperation'
            - $ref: '#/components/schemas/PublicNumberPropertyOperation'
            - $ref: '#/components/schemas/PublicStringPropertyOperation'
            - $ref: '#/components/schemas/PublicDateTimePropertyOperation'
            - $ref: '#/components/schemas/PublicRangedDatePropertyOperation'
            - $ref: '#/components/schemas/PublicComparativePropertyUpdatedOperation'
            - $ref: '#/components/schemas/PublicComparativeDatePropertyOperation'
            - $ref: '#/components/schemas/PublicRollingDateRangePropertyOperation'
            - $ref: '#/components/schemas/PublicRollingPropertyUpdatedOperation'
            - $ref: '#/components/schemas/PublicEnumerationPropertyOperation'
            - $ref: '#/components/schemas/PublicAllPropertyTypesOperation'
            - $ref: '#/components/schemas/PublicRangedNumberPropertyOperation'
            - $ref: '#/components/schemas/PublicMultiStringPropertyOperation'
            - $ref: '#/components/schemas/PublicDatePropertyOperation'
            - $ref: '#/components/schemas/PublicCalendarDatePropertyOperation'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicWebinarFilter:
      title: WEBINAR
      required:
        - filterType
        - operator
      type: object
      properties:
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to WEBINAR.
          enum:
            - WEBINAR
          default: WEBINAR
        operator:
          type: string
          description: Specifies the operator used in the webinar filter.
        webinarId:
          type: string
          description: The identifier for the webinar used in the filter.
    PublicEmailEventFilter:
      title: EMAIL_EVENT
      required:
        - appId
        - emailId
        - filterType
        - level
        - operator
      type: object
      properties:
        appId:
          type: string
          description: The identifier for the application associated with the email event.
        clickUrl:
          type: string
          description: The URL that was clicked in the email event.
        emailId:
          type: string
          description: The identifier for the email associated with the event.
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to EMAIL_EVENT.
          enum:
            - EMAIL_EVENT
          default: EMAIL_EVENT
        level:
          type: string
          description: Specifies the level of the email event filter.
        operator:
          type: string
          description: >-
            Specifies the operator used in the email event filter, with accepted
            values being BOUNCED, LINK_CLICKED, MARKED_SPAM, OPENED,
            OPENED_BUT_LINK_NOT_CLICKED, OPENED_BUT_NOT_REPLIED, RECEIVED,
            RECEIVED_BUT_NOT_OPENED, REPLIED, SENT, SENT_BUT_LINK_NOT_CLICKED,
            SENT_BUT_NOT_RECEIVED, UNSUBSCRIBED.
          enum:
            - BOUNCED
            - LINK_CLICKED
            - MARKED_SPAM
            - OPENED
            - OPENED_BUT_LINK_NOT_CLICKED
            - OPENED_BUT_NOT_REPLIED
            - RECEIVED
            - RECEIVED_BUT_NOT_OPENED
            - REPLIED
            - SENT
            - SENT_BUT_LINK_NOT_CLICKED
            - SENT_BUT_NOT_RECEIVED
            - UNSUBSCRIBED
        pruningRefineBy:
          description: >-
            Specifies the criteria for refining email events, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeRangedTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicPrivacyAnalyticsFilter:
      title: PRIVACY
      required:
        - filterType
        - operator
        - privacyName
      type: object
      properties:
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to PRIVACY.
          enum:
            - PRIVACY
          default: PRIVACY
        operator:
          type: string
          description: Specifies the operator used in the privacy analytics filter.
        privacyName:
          type: string
          description: The name associated with the privacy analytics filter.
    PublicAdsSearchFilter:
      title: ADS_SEARCH
      required:
        - adNetwork
        - entityType
        - filterType
        - operator
        - searchTermType
        - searchTerms
      type: object
      properties:
        adNetwork:
          type: string
          description: Specifies the ad network associated with the ads search filter.
        entityType:
          type: string
          description: Specifies the type of entity involved in the ads search filter.
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to ADS_SEARCH.
          enum:
            - ADS_SEARCH
          default: ADS_SEARCH
        operator:
          type: string
          description: Defines the operator used in the ads search filter.
        searchTermType:
          type: string
          description: Indicates the type of search terms used in the ads search filter.
        searchTerms:
          type: array
          items:
            type: string
    PublicAdsTimeFilter:
      title: ADS_TIME
      required:
        - filterType
        - pruningRefineBy
      type: object
      properties:
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to ADS_TIME.
          enum:
            - ADS_TIME
          default: ADS_TIME
        pruningRefineBy:
          description: >-
            Specifies the criteria for pruning ads time data, using one of
            several possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeRangedTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicInListFilter:
      title: IN_LIST
      required:
        - filterType
        - listId
        - operator
      type: object
      properties:
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to IN_LIST.
          enum:
            - IN_LIST
          default: IN_LIST
        listId:
          type: string
          description: The identifier of the list used in the in-list filter.
        metadata:
          $ref: '#/components/schemas/PublicInListFilterMetadata'
        operator:
          type: string
          description: Specifies the operator used in the in-list filter.
    PublicNumAssociationsFilter:
      title: NUM_ASSOCIATIONS
      required:
        - associationCategory
        - associationTypeId
        - coalescingRefineBy
        - filterType
      type: object
      properties:
        associationCategory:
          type: string
          description: Defines the category of the association.
        associationTypeId:
          type: integer
          description: The ID representing the type of association.
          format: int32
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining associations, using one of several
            possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to NUM_ASSOCIATIONS.
          enum:
            - NUM_ASSOCIATIONS
          default: NUM_ASSOCIATIONS
    PublicUnifiedEventsFilter:
      title: UNIFIED_EVENTS
      required:
        - filterLines
        - filterType
      type: object
      properties:
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining events, using one of several
            possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        eventTypeId:
          type: string
          description: >-
            The identifier for the type of event associated with the unified
            events filter.
        filterLines:
          type: array
          items:
            $ref: '#/components/schemas/PublicEventFilterMetadata'
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to UNIFIED_EVENTS.
          enum:
            - UNIFIED_EVENTS
          default: UNIFIED_EVENTS
        pruningRefineBy:
          description: >-
            Specifies the criteria for pruning events, using one of several
            possible schemas such as PublicNumOccurrencesRefineBy or
            PublicRelativeRangedTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
    PublicPropertyAssociationInListFilter:
      title: PROPERTY_ASSOCIATION
      required:
        - coalescingRefineBy
        - filterType
        - listId
        - operator
        - propertyWithObjectId
      type: object
      properties:
        coalescingRefineBy:
          description: >-
            Defines the criteria for refining the property association, using
            one of several possible schemas such as PublicNumOccurrencesRefineBy
            or PublicRelativeComparativeTimestampRefineBy.
          oneOf:
            - $ref: '#/components/schemas/PublicNumOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicSetOccurrencesRefineBy'
            - $ref: '#/components/schemas/PublicRelativeComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicRelativeRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteComparativeTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAbsoluteRangedTimestampRefineBy'
            - $ref: '#/components/schemas/PublicAllHistoryRefineBy'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        filterType:
          type: string
          description: >-
            Indicates the type of filter, which defaults to
            PROPERTY_ASSOCIATION.
          enum:
            - PROPERTY_ASSOCIATION
          default: PROPERTY_ASSOCIATION
        listId:
          type: string
          description: The identifier of the list used in the property association filter.
        operator:
          type: string
          description: Specifies the operator used in the property association filter.
        propertyWithObjectId:
          type: string
          description: Specifies the property that includes the object ID for the filter.
        toObjectTypeId:
          type: string
          description: >-
            Represents the ID of the object type associated with the property
            association filter.
    PublicConstantFilter:
      title: CONSTANT
      required:
        - filterType
        - shouldAccept
      type: object
      properties:
        filterType:
          type: string
          description: Indicates the type of filter, which defaults to CONSTANT.
          enum:
            - CONSTANT
          default: CONSTANT
        shouldAccept:
          type: boolean
          description: Determines whether the filter should accept the specified condition.
        source:
          type: string
          description: Specifies the source of the filter.
    PublicNumOccurrencesRefineBy:
      title: NUM_OCCURRENCES
      required:
        - type
      type: object
      properties:
        maxOccurrences:
          type: integer
          description: Specifies the maximum number of occurrences allowed.
          format: int32
        minOccurrences:
          type: integer
          description: Specifies the minimum number of occurrences required.
          format: int32
        type:
          type: string
          description: Indicates the type of refinement, which defaults to NUM_OCCURRENCES.
          enum:
            - NUM_OCCURRENCES
          default: NUM_OCCURRENCES
    PublicSetOccurrencesRefineBy:
      title: SET_OCCURRENCES
      required:
        - setType
        - type
      type: object
      properties:
        setType:
          type: string
          description: Defines the set type used for occurrences refinement.
        type:
          type: string
          description: Specifies the type of refinement, which defaults to SET_OCCURRENCES.
          enum:
            - SET_OCCURRENCES
          default: SET_OCCURRENCES
    PublicRelativeComparativeTimestampRefineBy:
      title: RELATIVE_COMPARATIVE
      required:
        - comparison
        - timeOffset
        - type
      type: object
      properties:
        comparison:
          type: string
          description: >-
            Defines the comparison operation used in the relative comparative
            timestamp refinement.
        timeOffset:
          $ref: '#/components/schemas/PublicTimeOffset'
        type:
          type: string
          description: >-
            Specifies the type of refinement, which defaults to
            RELATIVE_COMPARATIVE.
          enum:
            - RELATIVE_COMPARATIVE
          default: RELATIVE_COMPARATIVE
    PublicRelativeRangedTimestampRefineBy:
      title: RELATIVE_RANGED
      required:
        - lowerBoundOffset
        - rangeType
        - type
        - upperBoundOffset
      type: object
      properties:
        lowerBoundOffset:
          $ref: '#/components/schemas/PublicTimeOffset'
        rangeType:
          type: string
          description: Specifies the type of range used for the timestamp refinement.
        type:
          type: string
          description: >-
            Indicates the type of timestamp refinement, which defaults to
            RELATIVE_RANGED.
          enum:
            - RELATIVE_RANGED
          default: RELATIVE_RANGED
        upperBoundOffset:
          $ref: '#/components/schemas/PublicTimeOffset'
    PublicAbsoluteComparativeTimestampRefineBy:
      title: ABSOLUTE_COMPARATIVE
      required:
        - comparison
        - timestamp
        - type
      type: object
      properties:
        comparison:
          type: string
          description: >-
            Defines the comparison operation used in the absolute comparative
            timestamp refinement.
        timestamp:
          type: integer
          description: >-
            Specifies the timestamp used for the absolute comparative
            refinement, represented as an integer.
          format: int64
        type:
          type: string
          description: >-
            Indicates the type of refinement, which defaults to
            ABSOLUTE_COMPARATIVE.
          enum:
            - ABSOLUTE_COMPARATIVE
          default: ABSOLUTE_COMPARATIVE
    PublicAbsoluteRangedTimestampRefineBy:
      title: ABSOLUTE_RANGED
      required:
        - lowerTimestamp
        - rangeType
        - type
        - upperTimestamp
      type: object
      properties:
        lowerTimestamp:
          type: integer
          description: Specifies the lower limit of the timestamp range.
          format: int64
        rangeType:
          type: string
          description: Specifies the type of range used for the timestamp refinement.
        type:
          type: string
          description: >-
            Indicates the type of timestamp refinement, which defaults to
            ABSOLUTE_RANGED.
          enum:
            - ABSOLUTE_RANGED
          default: ABSOLUTE_RANGED
        upperTimestamp:
          type: integer
          description: Specifies the upper limit of the timestamp range.
          format: int64
    PublicAllHistoryRefineBy:
      title: ALL_HISTORY
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: Specifies the type of refinement, which defaults to ALL_HISTORY.
          enum:
            - ALL_HISTORY
          default: ALL_HISTORY
    PublicTimePointOperation:
      title: TIME_POINT
      required:
        - includeObjectsWithNoValueSet
        - operationType
        - operator
        - timePoint
        - type
      type: object
      properties:
        endpointBehavior:
          type: string
          description: Describes the behavior of the endpoint in relation to the operation.
        includeObjectsWithNoValueSet:
          type: boolean
          description: >-
            Indicates whether objects without a set value should be included in
            the operation.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'TIME_POINT'.
          enum:
            - TIME_POINT
          default: TIME_POINT
        operator:
          type: string
          description: Defines the operator used in the time point operation.
        propertyParser:
          type: string
          description: >-
            Defines the parser used to interpret the property value in the
            operation.
        timePoint:
          description: >-
            Specifies the point in time used for the operation, which can be a
            date, indexed time, or property-referenced time.
          oneOf:
            - $ref: '#/components/schemas/PublicDatePoint'
            - $ref: '#/components/schemas/PublicIndexedTimePoint'
            - $ref: '#/components/schemas/PublicPropertyReferencedTime'
        type:
          type: string
          description: Indicates the specific type of the operation.
    PublicRangedTimeOperation:
      title: TIME_RANGED
      required:
        - includeObjectsWithNoValueSet
        - lowerBoundTimePoint
        - operationType
        - operator
        - type
        - upperBoundTimePoint
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: >-
            Determines if objects without a set value should be included in the
            operation.
        lowerBoundEndpointBehavior:
          type: string
          description: >-
            Indicates the behavior at the lower bound endpoint of the time
            range.
        lowerBoundTimePoint:
          description: Defines the lower limit for the time range.
          oneOf:
            - $ref: '#/components/schemas/PublicDatePoint'
            - $ref: '#/components/schemas/PublicIndexedTimePoint'
            - $ref: '#/components/schemas/PublicPropertyReferencedTime'
        operationType:
          type: string
          description: Specifies the type of operation, which is 'TIME_RANGED'.
        operator:
          type: string
          description: Defines the operator used in the time range operation.
        propertyParser:
          type: string
          description: Specifies the parser used for the property in the operation.
        type:
          type: string
          description: Specifies the type of operation, which defaults to 'TIME_RANGED'.
          enum:
            - TIME_RANGED
          default: TIME_RANGED
        upperBoundEndpointBehavior:
          type: string
          description: >-
            Indicates the behavior at the upper bound endpoint of the time
            range.
        upperBoundTimePoint:
          description: Defines the upper limit for the time range.
          oneOf:
            - $ref: '#/components/schemas/PublicDatePoint'
            - $ref: '#/components/schemas/PublicIndexedTimePoint'
            - $ref: '#/components/schemas/PublicPropertyReferencedTime'
    ApiTimeDelay:
      required:
        - daysOfWeek
        - delta
        - timeUnit
      type: object
      properties:
        daysOfWeek:
          type: array
          items:
            type: string
            enum:
              - MONDAY
              - TUESDAY
              - WEDNESDAY
              - THURSDAY
              - FRIDAY
              - SATURDAY
              - SUNDAY
        delta:
          type: integer
          description: The amount of time to delay, specified as an integer.
          format: int32
        timeOfDay:
          $ref: '#/components/schemas/ApiTimeOfDay'
        timeUnit:
          type: string
          description: >-
            Defines the unit of time for the delay, with accepted values
            including: CENTURIES, DAYS, DECADES, ERAS, FOREVER, HALF_DAYS,
            HOURS, MICROS, MILLENNIA, MILLIS, MINUTES, MONTHS, NANOS, SECONDS,
            WEEKS, YEARS.
          enum:
            - CENTURIES
            - DAYS
            - DECADES
            - ERAS
            - FOREVER
            - HALF_DAYS
            - HOURS
            - MICROS
            - MILLENNIA
            - MILLIS
            - MINUTES
            - MONTHS
            - NANOS
            - SECONDS
            - WEEKS
            - YEARS
        timeZoneStrategy:
          description: Specifies the strategy for determining the time zone for the delay.
          oneOf:
            - $ref: '#/components/schemas/ApiStaticTimeZoneStrategy'
    PublicBoolPropertyOperation:
      title: BOOL
      required:
        - includeObjectsWithNoValueSet
        - operationType
        - operator
        - value
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'BOOL'.
          enum:
            - BOOL
          default: BOOL
        operator:
          type: string
          description: Defines the operator used in the boolean property operation.
        value:
          type: boolean
          description: The boolean value involved in the operation.
    PublicNumberPropertyOperation:
      title: NUMBER
      required:
        - includeObjectsWithNoValueSet
        - operationType
        - operator
        - value
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'NUMBER'.
          enum:
            - NUMBER
          default: NUMBER
        operator:
          type: string
          description: Defines the operator used in the number property operation.
        value:
          type: number
          description: The numeric value involved in the operation.
    PublicStringPropertyOperation:
      title: STRING
      required:
        - includeObjectsWithNoValueSet
        - operationType
        - operator
        - value
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'STRING'.
          enum:
            - STRING
          default: STRING
        operator:
          type: string
          description: Defines the operator used in the string property operation.
        value:
          type: string
          description: The string value involved in the operation.
    PublicDateTimePropertyOperation:
      title: DATETIME
      required:
        - includeObjectsWithNoValueSet
        - operationType
        - operator
        - requiresTimeZoneConversion
        - timestamp
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: >-
            Determines if objects without a set value should be included in the
            operation.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'DATETIME'.
          enum:
            - DATETIME
          default: DATETIME
        operator:
          type: string
          description: Defines the operator used in the date-time property operation.
        requiresTimeZoneConversion:
          type: boolean
          description: Indicates whether time zone conversion is needed for the operation.
        timestamp:
          type: integer
          description: >-
            Specifies the timestamp involved in the date-time property
            operation.
          format: int32
    PublicRangedDatePropertyOperation:
      title: RANGED_DATE
      required:
        - includeObjectsWithNoValueSet
        - lowerBound
        - operationType
        - operator
        - requiresTimeZoneConversion
        - upperBound
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: Determines if objects without a set value should be included.
        lowerBound:
          type: integer
          description: Specifies the lower limit for the date range.
          format: int32
        operationType:
          type: string
          description: Specifies the type of operation, which is 'RANGED_DATE'.
          enum:
            - RANGED_DATE
          default: RANGED_DATE
        operator:
          type: string
          description: Defines the operator used in the date range operation.
        requiresTimeZoneConversion:
          type: boolean
          description: Indicates whether time zone conversion is needed.
        upperBound:
          type: integer
          description: Specifies the upper limit for the date range.
          format: int32
    PublicComparativePropertyUpdatedOperation:
      title: COMPARATIVE_PROPERTY_UPDATED
      required:
        - comparisonPropertyName
        - includeObjectsWithNoValueSet
        - operationType
        - operator
      type: object
      properties:
        comparisonPropertyName:
          type: string
          description: The name of the property used for comparison in the operation.
        defaultComparisonValue:
          type: string
          description: >-
            Specifies the default value used for comparison if the property
            value is not set.
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        operationType:
          type: string
          description: >-
            Specifies the type of operation, which defaults to
            'COMPARATIVE_PROPERTY_UPDATED'.
          enum:
            - COMPARATIVE_PROPERTY_UPDATED
          default: COMPARATIVE_PROPERTY_UPDATED
        operator:
          type: string
          description: >-
            Defines the operator used in the comparative property updated
            operation.
    PublicComparativeDatePropertyOperation:
      title: COMPARATIVE_DATE
      required:
        - comparisonPropertyName
        - includeObjectsWithNoValueSet
        - operationType
        - operator
      type: object
      properties:
        comparisonPropertyName:
          type: string
          description: The name of the property used for comparison in the operation.
        defaultComparisonValue:
          type: string
          description: The default value used for comparison in the operation.
        includeObjectsWithNoValueSet:
          type: boolean
          description: >-
            Indicates whether objects without a value set should be included in
            the operation.
        operationType:
          type: string
          description: >-
            Specifies the type of operation, which defaults to
            'COMPARATIVE_DATE'.
          enum:
            - COMPARATIVE_DATE
          default: COMPARATIVE_DATE
        operator:
          type: string
          description: >-
            Defines the operator used in the comparative date property
            operation.
    PublicRollingDateRangePropertyOperation:
      title: ROLLING_DATE_RANGE
      required:
        - includeObjectsWithNoValueSet
        - numberOfDays
        - operationType
        - operator
        - requiresTimeZoneConversion
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: Determines if objects without a set value should be included.
        numberOfDays:
          type: integer
          description: Indicates the number of days for the rolling date range.
          format: int32
        operationType:
          type: string
          description: >-
            Specifies the type of operation, which defaults to
            'ROLLING_DATE_RANGE'.
          enum:
            - ROLLING_DATE_RANGE
          default: ROLLING_DATE_RANGE
        operator:
          type: string
          description: Defines the operator used in the rolling date range operation.
        requiresTimeZoneConversion:
          type: boolean
          description: Indicates whether time zone conversion is needed.
    PublicRollingPropertyUpdatedOperation:
      title: ROLLING_PROPERTY_UPDATED
      required:
        - includeObjectsWithNoValueSet
        - numberOfDays
        - operationType
        - operator
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
        numberOfDays:
          type: integer
          format: int32
        operationType:
          type: string
          enum:
            - ROLLING_PROPERTY_UPDATED
          default: ROLLING_PROPERTY_UPDATED
        operator:
          type: string
    PublicEnumerationPropertyOperation:
      title: ENUMERATION
      required:
        - includeObjectsWithNoValueSet
        - operationType
        - operator
        - values
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'ENUMERATION'.
          enum:
            - ENUMERATION
          default: ENUMERATION
        operator:
          type: string
          description: Defines the operator used in the enumeration property operation.
        values:
          type: array
          items:
            type: string
    PublicAllPropertyTypesOperation:
      title: ALL_PROPERTY
      required:
        - includeObjectsWithNoValueSet
        - operationType
        - operator
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'ALL_PROPERTY'.
          enum:
            - ALL_PROPERTY
          default: ALL_PROPERTY
        operator:
          type: string
          description: Defines the operator used in the all property types operation.
    PublicRangedNumberPropertyOperation:
      title: NUMBER_RANGED
      required:
        - includeObjectsWithNoValueSet
        - lowerBound
        - operationType
        - operator
        - upperBound
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        lowerBound:
          type: integer
          description: Specifies the lower limit for the number range.
          format: int32
        operationType:
          type: string
          description: Specifies the type of operation, which is 'NUMBER_RANGED'.
          enum:
            - NUMBER_RANGED
          default: NUMBER_RANGED
        operator:
          type: string
          description: Defines the operator used in the ranged number property operation.
        upperBound:
          type: integer
          description: Specifies the upper limit for the number range.
          format: int32
    PublicMultiStringPropertyOperation:
      title: MULTISTRING
      required:
        - includeObjectsWithNoValueSet
        - operationType
        - operator
        - values
      type: object
      properties:
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'MULTISTRING'.
          enum:
            - MULTISTRING
          default: MULTISTRING
        operator:
          type: string
          description: Defines the operator used in the multi-string property operation.
        values:
          type: array
          items:
            type: string
    PublicDatePropertyOperation:
      title: DATE
      required:
        - day
        - includeObjectsWithNoValueSet
        - month
        - operationType
        - operator
        - year
      type: object
      properties:
        day:
          type: integer
          description: The day component of the date operation.
          format: int32
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        month:
          type: string
          description: The month component of the date operation.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'DATE'.
          enum:
            - DATE
          default: DATE
        operator:
          type: string
          description: Defines the operator used in the date property operation.
        year:
          type: integer
          description: The year component of the date operation.
          format: int32
    PublicCalendarDatePropertyOperation:
      title: CALENDAR_DATE
      required:
        - includeObjectsWithNoValueSet
        - operationType
        - operator
        - timeUnit
      type: object
      properties:
        fiscalYearStart:
          type: string
          description: >-
            Defines the starting month of the fiscal year, with accepted values
            including: APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE,
            MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER.
          enum:
            - APRIL
            - AUGUST
            - DECEMBER
            - FEBRUARY
            - JANUARY
            - JULY
            - JUNE
            - MARCH
            - MAY
            - NOVEMBER
            - OCTOBER
            - SEPTEMBER
        includeObjectsWithNoValueSet:
          type: boolean
          description: Indicates whether objects without a value set should be included.
        operationType:
          type: string
          description: Specifies the type of operation, which defaults to 'CALENDAR_DATE'.
          enum:
            - CALENDAR_DATE
          default: CALENDAR_DATE
        operator:
          type: string
          description: Defines the operator used in the calendar date property operation.
        timeUnit:
          type: string
          description: Specifies the unit of time used in the operation.
        timeUnitCount:
          type: integer
          description: Indicates the number of time units involved in the operation.
          format: int32
        useFiscalYear:
          type: boolean
          description: Determines if the fiscal year should be used in the operation.
    PublicEventFilterMetadata:
      required:
        - operation
        - property
      type: object
      properties:
        operation:
          oneOf:
            - $ref: '#/components/schemas/PublicBoolPropertyOperation'
            - $ref: '#/components/schemas/PublicNumberPropertyOperation'
            - $ref: '#/components/schemas/PublicStringPropertyOperation'
            - $ref: '#/components/schemas/PublicDateTimePropertyOperation'
            - $ref: '#/components/schemas/PublicRangedDatePropertyOperation'
            - $ref: '#/components/schemas/PublicComparativePropertyUpdatedOperation'
            - $ref: '#/components/schemas/PublicComparativeDatePropertyOperation'
            - $ref: '#/components/schemas/PublicRollingDateRangePropertyOperation'
            - $ref: '#/components/schemas/PublicRollingPropertyUpdatedOperation'
            - $ref: '#/components/schemas/PublicEnumerationPropertyOperation'
            - $ref: '#/components/schemas/PublicAllPropertyTypesOperation'
            - $ref: '#/components/schemas/PublicRangedNumberPropertyOperation'
            - $ref: '#/components/schemas/PublicMultiStringPropertyOperation'
            - $ref: '#/components/schemas/PublicDatePropertyOperation'
            - $ref: '#/components/schemas/PublicCalendarDatePropertyOperation'
            - $ref: '#/components/schemas/PublicTimePointOperation'
            - $ref: '#/components/schemas/PublicRangedTimeOperation'
        property:
          type: string
    PublicInListFilterMetadata:
      required:
        - id
        - inListType
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for the filter metadata.
        inListType:
          type: string
          description: Specifies the type of list associated with the filter.
    PublicTimeOffset:
      required:
        - amount
        - offsetDirection
        - timeUnit
      type: object
      properties:
        amount:
          type: integer
          format: int64
        offsetDirection:
          type: string
        timeUnit:
          type: string
    PublicDatePoint:
      title: DATE
      required:
        - day
        - month
        - timeType
        - year
        - zoneId
      type: object
      properties:
        day:
          type: integer
          format: int32
        hour:
          type: integer
          format: int32
        millisecond:
          type: integer
          format: int32
        minute:
          type: integer
          format: int32
        month:
          type: integer
          format: int32
        second:
          type: integer
          format: int32
        timeType:
          type: string
          enum:
            - DATE
          default: DATE
        timezoneSource:
          type: string
        year:
          type: integer
          format: int32
        zoneId:
          type: string
    PublicIndexedTimePoint:
      title: INDEXED
      required:
        - indexReference
        - timeType
        - zoneId
      type: object
      properties:
        indexReference:
          description: >-
            Specifies the reference point for the index, which can be one of
            several predefined time references such as NOW, TODAY, or specific
            fiscal periods.
          oneOf:
            - $ref: '#/components/schemas/PublicNowReference'
            - $ref: '#/components/schemas/PublicTodayReference'
            - $ref: '#/components/schemas/PublicWeekReference'
            - $ref: '#/components/schemas/PublicFiscalQuarterReference'
            - $ref: '#/components/schemas/PublicFiscalYearReference'
            - $ref: '#/components/schemas/PublicYearReference'
            - $ref: '#/components/schemas/PublicQuarterReference'
            - $ref: '#/components/schemas/PublicMonthReference'
        offset:
          $ref: '#/components/schemas/PublicIndexOffset'
        timeType:
          type: string
          description: Indicates the type of time point, which defaults to INDEXED.
          enum:
            - INDEXED
          default: INDEXED
        timezoneSource:
          type: string
          description: >-
            Specifies the source of the time zone information for the indexed
            time point.
        zoneId:
          type: string
          description: Defines the time zone identifier used for the indexed time point.
    PublicPropertyReferencedTime:
      title: PROPERTY_REFERENCED
      required:
        - property
        - referenceType
        - timeType
        - zoneId
      type: object
      properties:
        property:
          type: string
          description: Specifies the name of the property being referenced.
        referenceType:
          type: string
          description: Indicates the type of reference used for the property.
        timeType:
          type: string
          description: >-
            Indicates the type of time reference, defaulting to
            'PROPERTY_REFERENCED'.
          enum:
            - PROPERTY_REFERENCED
          default: PROPERTY_REFERENCED
        timezoneSource:
          type: string
          description: >-
            Specifies the source of the time zone information for the
            property-referenced time.
        zoneId:
          type: string
          description: Defines the time zone identifier for the property-referenced time.
    ApiStaticTimeZoneStrategy:
      title: STATIC_TIME_ZONE
      required:
        - timeZoneId
        - type
      type: object
      properties:
        timeZoneId:
          type: string
          description: The identifier for the time zone.
        type:
          type: string
          description: >-
            Specifies the type of time zone strategy, which defaults to
            STATIC_TIME_ZONE.
          enum:
            - STATIC_TIME_ZONE
          default: STATIC_TIME_ZONE
    PublicNowReference:
      title: NOW
      required:
        - referenceType
      type: object
      properties:
        hour:
          type: integer
          description: The hour component of the current time reference.
          format: int32
        millisecond:
          type: integer
          description: The millisecond component of the current time reference.
          format: int32
        minute:
          type: integer
          description: The minute component of the current time reference.
          format: int32
        referenceType:
          type: string
          description: Indicates the type of reference, defaulting to 'NOW'.
          enum:
            - NOW
          default: NOW
        second:
          type: integer
          description: The second component of the current time reference.
          format: int32
    PublicTodayReference:
      title: TODAY
      required:
        - referenceType
      type: object
      properties:
        hour:
          type: integer
          description: The hour component of the time in the today reference.
          format: int32
        millisecond:
          type: integer
          description: The millisecond component of the time in the today reference.
          format: int32
        minute:
          type: integer
          description: The minute component of the time in the today reference.
          format: int32
        referenceType:
          type: string
          description: Indicates the type of reference, defaulting to 'TODAY'.
          enum:
            - TODAY
          default: TODAY
        second:
          type: integer
          description: The second component of the time in the today reference.
          format: int32
    PublicWeekReference:
      title: WEEK
      required:
        - dayOfWeek
        - referenceType
      type: object
      properties:
        dayOfWeek:
          type: string
          description: >-
            The day of the week in the week reference, with accepted values
            including: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY,
            SUNDAY.
          enum:
            - FRIDAY
            - MONDAY
            - SATURDAY
            - SUNDAY
            - THURSDAY
            - TUESDAY
            - WEDNESDAY
        hour:
          type: integer
          description: The hour component of the time in the week reference.
          format: int32
        millisecond:
          type: integer
          description: The millisecond component of the time in the week reference.
          format: int32
        minute:
          type: integer
          description: The minute component of the time in the week reference.
          format: int32
        referenceType:
          type: string
          description: Indicates the type of reference, defaulting to 'WEEK'.
          enum:
            - WEEK
          default: WEEK
        second:
          type: integer
          description: The second component of the time in the week reference.
          format: int32
    PublicFiscalQuarterReference:
      title: FISCAL_QUARTER
      required:
        - day
        - month
        - referenceType
      type: object
      properties:
        day:
          type: integer
          description: >-
            The day component of the fiscal quarter reference, represented as an
            integer.
          format: int32
        hour:
          type: integer
          description: The hour component of the time in the fiscal quarter reference.
          format: int32
        millisecond:
          type: integer
          description: >-
            The millisecond component of the time in the fiscal quarter
            reference.
          format: int32
        minute:
          type: integer
          description: The minute component of the time in the fiscal quarter reference.
          format: int32
        month:
          type: integer
          description: >-
            The month component of the fiscal quarter reference, represented as
            an integer.
          format: int32
        referenceType:
          type: string
          description: Indicates the type of reference, defaulting to 'FISCAL_QUARTER'.
          enum:
            - FISCAL_QUARTER
          default: FISCAL_QUARTER
        second:
          type: integer
          description: The second component of the time in the fiscal quarter reference.
          format: int32
    PublicFiscalYearReference:
      title: FISCAL_YEAR
      required:
        - day
        - month
        - referenceType
      type: object
      properties:
        day:
          type: integer
          description: >-
            The day component of the fiscal year reference, represented as an
            integer.
          format: int32
        hour:
          type: integer
          description: The hour component of the time in the fiscal year reference.
          format: int32
        millisecond:
          type: integer
          description: The millisecond component of the time in the fiscal year reference.
          format: int32
        minute:
          type: integer
          description: The minute component of the time in the fiscal year reference.
          format: int32
        month:
          type: integer
          description: >-
            The month component of the fiscal year reference, represented as an
            integer.
          format: int32
        referenceType:
          type: string
          description: Indicates the type of reference, defaulting to 'FISCAL_YEAR'.
          enum:
            - FISCAL_YEAR
          default: FISCAL_YEAR
        second:
          type: integer
          description: The second component of the time in the fiscal year reference.
          format: int32
    PublicYearReference:
      title: YEAR
      required:
        - day
        - month
        - referenceType
      type: object
      properties:
        day:
          type: integer
          description: The day component of the year reference, represented as an integer.
          format: int32
        hour:
          type: integer
          description: The hour component of the time in the year reference.
          format: int32
        millisecond:
          type: integer
          description: The millisecond component of the time in the year reference.
          format: int32
        minute:
          type: integer
          description: The minute component of the time in the year reference.
          format: int32
        month:
          type: integer
          description: >-
            The month component of the year reference, represented as an
            integer.
          format: int32
        referenceType:
          type: string
          description: Indicates the type of reference, defaulting to 'YEAR'.
          enum:
            - YEAR
          default: YEAR
        second:
          type: integer
          description: The second component of the time in the year reference.
          format: int32
    PublicQuarterReference:
      title: QUARTER
      required:
        - day
        - month
        - referenceType
      type: object
      properties:
        day:
          type: integer
          description: The day component of the quarter reference.
          format: int32
        hour:
          type: integer
          description: The hour component of the time in the quarter reference.
          format: int32
        millisecond:
          type: integer
          description: The millisecond component of the time in the quarter reference.
          format: int32
        minute:
          type: integer
          description: The minute component of the time in the quarter reference.
          format: int32
        month:
          type: integer
          description: The month component of the quarter reference.
          format: int32
        referenceType:
          type: string
          description: Indicates the type of reference, defaulting to 'QUARTER'.
          enum:
            - QUARTER
          default: QUARTER
        second:
          type: integer
          description: The second component of the time in the quarter reference.
          format: int32
    PublicMonthReference:
      title: MONTH
      required:
        - day
        - referenceType
      type: object
      properties:
        day:
          type: integer
          description: The day component of the month reference, represented as an integer.
          format: int32
        hour:
          type: integer
          description: The hour component of the time in the month reference.
          format: int32
        millisecond:
          type: integer
          description: The millisecond component of the time in the month reference.
          format: int32
        minute:
          type: integer
          description: The minute component of the time in the month reference.
          format: int32
        referenceType:
          type: string
          description: Indicates the type of reference, defaulting to 'MONTH'.
          enum:
            - MONTH
          default: MONTH
        second:
          type: integer
          description: The second component of the time in the month reference.
          format: int32
    PublicIndexOffset:
      type: object
      properties:
        days:
          type: integer
          description: The number of days to offset in the index.
          format: int32
        hours:
          type: integer
          description: The number of hours to offset in the index.
          format: int32
        milliseconds:
          type: integer
          description: The number of milliseconds to offset in the index.
          format: int32
        minutes:
          type: integer
          description: The number of minutes to offset in the index.
          format: int32
        months:
          type: integer
          description: The number of months to offset in the index.
          format: int32
        quarters:
          type: integer
          description: The number of quarters to offset in the index.
          format: int32
        seconds:
          type: integer
          description: The number of seconds to offset in the index.
          format: int32
        weeks:
          type: integer
          description: The number of weeks to offset in the index.
          format: int32
        years:
          type: integer
          description: The number of years to offset in the index.
          format: int32
  responses:
    Error:
      description: An error occurred.
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://app.hubspot.com/oauth/authorize
          tokenUrl: https://api.hubapi.com/oauth/v1/token
          scopes:
            automation: Workflows
    private_apps:
      type: apiKey
      name: private-app
      in: header

````