---
title: "Retrieve revision"
method: GET
path: "/automation/v4/2027-03-beta/flows/{flowId}/revisions/{revisionId}"
tags: ["Advanced"]
---

# Retrieve revision

`GET /automation/v4/2027-03-beta/flows/{flowId}/revisions/{revisionId}`

## Request

- Base URL: `https://api.hubapi.com`
- URL: `https://api.hubapi.com/automation/v4/2027-03-beta/flows/{flowId}/revisions/{revisionId}`
- Auth: OAuth 2
  - Authorization code: `https://app.hubspot.com/oauth/authorize`
  - Token URL: `https://api.hubapi.com/oauth/v1/token` scopes: `automation`

Retrieve a specific revision of an automation flow using its flow ID and revision ID. This endpoint is useful for accessing historical versions of a flow to review changes or restore previous configurations.

## Path parameters

- `flowId` string, required
- `revisionId` string, required

## Response `200`

successful operation

- ApiFlowRevision
  - `flow` union, required: The flow at this revision level
    - ApiContactFlow
      - `actions` union[], required
        - union
          - ApiStaticBranchAction
            - `actionId` string, required: The unique identifier for this static branch action.
            - `defaultBranch` ApiConnection
              - …
            - `defaultBranchName` string: The name of the default branch in the static branch action.
            - `inputValue` union, required: Represents the input value for the static branch action, which can be of various types such as action data, object property, or static value.
              - …
            - `staticBranches` ApiStaticBranch[], required
              - …
            - `type` 'STATIC_BRANCH', required: Indicates the type of the action, which defaults to STATIC_BRANCH.
          - ApiListBranchAction
            - `actionId` string, required: The unique identifier for the list branch action.
            - `defaultBranch` ApiConnection
              - …
            - `defaultBranchName` string: The name of the default branch in the list action.
            - `listBranches` ApiListBranch[], required
              - …
            - `type` 'LIST_BRANCH', required: Indicates the type of action, which defaults to LIST_BRANCH.
          - ApiABTestBranchAction
            - `actionId` string, required: The unique identifier for the A/B test branch action.
            - `testBranches` ApiABTestBranch[], required
              - …
            - `type` 'AB_TEST_BRANCH', required: Indicates the type of action, which defaults to AB_TEST_BRANCH.
          - ApiCustomCodeAction
            - `actionId` string, required: The unique identifier for the custom code action.
            - `connection` ApiConnection
              - …
            - `inputFields` ApiInputVariable[], required
              - …
            - `outputFields` ApiEnumerationOutputField[], required
              - …
            - `runtime` string, required: Specifies the runtime environment for the custom code action.
            - `secretNames` string[], required
            - `sourceCode` string, required: Contains the source code for the custom code action.
            - `type` 'CUSTOM_CODE', required: Indicates the type of the action, which defaults to CUSTOM_CODE.
          - ApiWebhookAction
            - `actionId` string, required: The unique identifier for the webhook action.
            - `authSettings` union: Defines the authentication settings for the webhook, which can include an authentication key or a signature.
              - …
            - `connection` ApiConnection
              - …
            - `method` 'CONNECT' | 'DELETE' | 'GET' | 'HEAD' | 'OPTIONS' | 'PATCH' | 'POST' | 'PUT' | 'TRACE', required: Specifies the HTTP method to be used for the webhook request, with accepted values including CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT, TRACE.
            - `queryParams` ApiInputVariable[], required
              - …
            - `type` 'WEBHOOK', required: Indicates the type of action, which defaults to WEBHOOK.
            - `webhookUrl` string, required: The URL to which the webhook request will be sent.
          - ApiSingleConnectionAction
            - `actionId` string, required: The unique identifier for the single connection action.
            - `actionTypeId` string, required: The identifier for the type of action being performed.
            - `actionTypeVersion` integer, required: Specifies the version of the action type.
            - `connection` ApiConnection
              - …
            - `fields` object, required: Contains the fields associated with the single connection action.
            - `type` 'SINGLE_CONNECTION', required: Indicates the type of the action, which defaults to SINGLE_CONNECTION.
          - ApiCriteriaBranchAction
            - `actionId` string, required
            - `branches` ApiCriteriaBranch[], required
              - …
            - `defaultBranch` ApiConnection
              - …
            - `defaultBranchName` string
            - `type` 'CRITERIA_BRANCH', required
      - `blockedDates` ApiBlockedDate[], required
        - `dayOfMonth` integer, required: The day of the month for the blocked date.
        - `month` 'APRIL' | 'AUGUST' | 'DECEMBER' | 'FEBRUARY' | 'JANUARY' | 'JULY' | 'JUNE' | 'MARCH' | 'MAY' | 'NOVEMBER' | 'OCTOBER' | 'SEPTEMBER', required: The month of the blocked date, with accepted values including: APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE, MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER.
        - `year` integer: The year of the blocked date.
      - `canEnrollFromSalesforce` boolean, required
      - `createdAt` string, date-time, required
      - `crmObjectCreationStatus` 'COMPLETE' | 'PENDING', required
      - `customProperties` object, required
      - `dataSources` union[], required
        - union
          - ApiAssociationDataSource
            - `associationCategory` 'HUBSPOT_DEFINED' | 'INTEGRATOR_DEFINED' | 'USER_DEFINED' | 'WORK', required: Defines the category of the association, with possible values being HUBSPOT_DEFINED, INTEGRATOR_DEFINED, or USER_DEFINED.
            - `associationTypeId` integer, required: The ID representing the type of association.
            - `name` string, required: The name of the data source.
            - `objectTypeId` string, required: Represents the ID of the object type associated with the data source.
            - `sortBy` ApiSort
              - …
            - `type` 'ASSOCIATION', required: Indicates the type of data source, which defaults to ASSOCIATION.
          - ApiAssociationTimestampDataSource
            - `associationCategory` 'HUBSPOT_DEFINED' | 'INTEGRATOR_DEFINED' | 'USER_DEFINED' | 'WORK', required: Defines the category of the association, with possible values being HUBSPOT_DEFINED, INTEGRATOR_DEFINED, or USER_DEFINED.
            - `associationTypeId` integer, required: The ID representing the type of association.
            - `name` string, required: Specifies the name of the data source.
            - `objectTypeId` string, required: Represents the ID of the object type associated with the data source.
            - `type` 'ASSOCIATION_TIMESTAMP', required: Indicates the type of the data source, which defaults to ASSOCIATION_TIMESTAMP.
          - ApiStaticPropertyFilterDataSource
            - `name` string, required: Defines the name of the data source.
            - `propertyName` string, required: Specifies the name of the property used in the static property filter.
            - `sortBy` ApiSort
              - …
            - `staticValue` string, required: Represents the static value used in the property filter.
            - `type` 'STATIC_PROPERTY_FILTER', required: Indicates the type of data source, which defaults to STATIC_PROPERTY_FILTER.
          - ApiEnrolledRecordPropertyFilterDataSource
            - `name` string, required: Defines the name of the data source.
            - `propertyName` string, required: Specifies the name of the property used in the enrolled record property filter.
            - `recordFieldName` string, required: The name of the field in the record that is being filtered.
            - `sortBy` ApiSort
              - …
            - `type` 'ENROLLED_RECORD_PROPERTY_FILTER', required: Indicates the type of data source, which defaults to ENROLLED_RECORD_PROPERTY_FILTER.
          - ApiDatasetFieldPropertyFilterDataSource
            - `datasetFieldName` string, required: Specifies the name of the dataset field used in the property filter.
            - `name` string, required: Defines the name of the data source.
            - `propertyName` string, required: Specifies the name of the property used in the dataset field property filter.
            - `sortBy` ApiSort
              - …
            - `type` 'DATASET_FIELD_PROPERTY_FILTER', required: Indicates the type of data source, which defaults to DATASET_FIELD_PROPERTY_FILTER.
          - ApiEnrolledArgumentPropertyFilterDataSource
            - `argumentName` string, required: The name of the argument used in the enrolled argument property filter.
            - `name` string, required: Defines the name of the data source.
            - `propertyName` string, required: Specifies the name of the property used in the enrolled argument property filter.
            - `sortBy` ApiSort
              - …
            - `type` 'ENROLLED_ARGUMENT_PROPERTY_FILTER', required: Indicates the type of data source, which defaults to ENROLLED_ARGUMENT_PROPERTY_FILTER.
      - `description` string
      - `enrollmentCriteria` union
        - ApiListBasedEnrollmentCriteria
          - `listFilterBranch` union, required: Defines the filter branch used to determine list-based enrollment criteria.
            - PublicOrFilterBranch
              - …
            - PublicAndFilterBranch
              - …
            - PublicNotAllFilterBranch
              - …
            - PublicNotAnyFilterBranch
              - …
            - PublicRestrictedFilterBranch
              - …
            - PublicUnifiedEventsFilterBranch
              - …
            - PublicAssociationFilterBranch
              - …
          - `reEnrollmentTriggersFilterBranches` union[], required
            - union
              - …
          - `shouldReEnroll` boolean, required: Determines if objects should be re-enrolled when they meet the criteria again.
          - `type` 'LIST_BASED', required: Specifies the type of enrollment criteria, which defaults to 'LIST_BASED'.
          - `unEnrollObjectsNotMeetingCriteria` boolean, required: Indicates whether objects not meeting the criteria should be unenrolled.
        - ApiEventBasedEnrollmentCriteria
          - `eventFilterBranches` PublicUnifiedEventsFilterBranch[], required
            - `coalescingRefineBy` union: Defines the criteria for refining events, using one of several possible schemas such as PublicNumOccurrencesRefineBy or PublicRelativeComparativeTimestampRefineBy.
              - …
            - `eventTypeId` string, required: The identifier for the type of event associated with the unified events filter branch.
            - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
            - `filterBranchType` 'UNIFIED_EVENTS', required: Indicates the type of filter branch, defaulting to UNIFIED_EVENTS.
            - `filterBranches` union[], required
              - …
            - `filters` union[], required
              - …
            - `operator` 'HAS_COMPLETED' | 'HAS_NOT_COMPLETED', required: Specifies the operator used in the unified events filter branch, with accepted values being HAS_COMPLETED or HAS_NOT_COMPLETED.
            - `pruningRefineBy` union
              - …
          - `listMembershipFilterBranches` union[], required
            - union
              - …
          - `refinementCriteria` union: Specifies additional criteria for refining the enrollment process.
            - PublicOrFilterBranch
              - …
            - PublicAndFilterBranch
              - …
            - PublicNotAllFilterBranch
              - …
            - PublicNotAnyFilterBranch
              - …
            - PublicRestrictedFilterBranch
              - …
            - PublicUnifiedEventsFilterBranch
              - …
            - PublicAssociationFilterBranch
              - …
          - `shouldReEnroll` boolean, required: Determines if objects should be re-enrolled when they meet the criteria again.
          - `type` 'EVENT_BASED', required: Specifies the type of enrollment criteria, which defaults to 'EVENT_BASED'.
        - ApiManualEnrollmentCriteria
          - `shouldReEnroll` boolean, required: Indicates whether the enrollment should be repeated.
          - `type` 'MANUAL', required: Specifies the type of enrollment criteria, which is 'MANUAL'.
        - ApiDatasetBasedEnrollmentCriteria
          - `datasetId` integer, required
          - `shouldReEnroll` boolean, required
          - `subviewId` string
          - `type` 'DATASET', required
      - `enrollmentSchedule` union
        - ApiDailyEnrollmentSchedule
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'DAILY', required: Specifies the type of enrollment schedule, which is 'DAILY'.
        - ApiWeeklyEnrollmentSchedule
          - `daysOfWeek` string[], required
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'WEEKLY', required: Indicates the type of enrollment schedule, which is 'WEEKLY'.
        - ApiMonthlySpecificDaysEnrollmentSchedule
          - `daysOfMonth` integer[], required
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'MONTHLY_SPECIFIC_DAYS', required: Specifies the type of enrollment schedule, which is 'MONTHLY_SPECIFIC_DAYS'.
        - ApiMonthlyRelativeDaysEnrollmentSchedule
          - `monthlyRelativeDays` 'FIRST_MONDAY_OF_MONTH' | 'LAST_DAY_OF_MONTH', required: One of the possible relative days to enroll can be: LAST_DAY_OF_MONTH, or FIRST_MONDAY_OF_MONTH
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'MONTHLY_RELATIVE_DAYS', required: The type of schedule, always: MONTHLY_RELATIVE_DAYS
        - ApiYearlyEnrollmentSchedule
          - `dayOfMonth` integer, required: The day of the month for the yearly enrollment schedule.
          - `month` 'APRIL' | 'AUGUST' | 'DECEMBER' | 'FEBRUARY' | 'JANUARY' | 'JULY' | 'JUNE' | 'MARCH' | 'MAY' | 'NOVEMBER' | 'OCTOBER' | 'SEPTEMBER', required: The month for the yearly enrollment schedule, with accepted values including: APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE, MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER.
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'YEARLY', required: Indicates the type of enrollment schedule, which defaults to 'YEARLY'.
        - ApiPropertyBasedEnrollmentSchedule
          - `dateProperty` string, required: The property used to determine the date for enrollment scheduling.
          - `daysDelta` integer, required: The number of days to adjust the enrollment date relative to the dateProperty.
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'PROPERTY_BASED', required: Specifies the type of enrollment schedule, which is 'PROPERTY_BASED'.
          - `yearly` boolean, required: Indicates whether the enrollment schedule is set to repeat annually.
      - `eventAnchor` union
        - ApiContactPropertyAnchor
          - `contactProperty` string, required: Specifies the contact property associated with the anchor.
          - `type` 'CONTACT_PROPERTY_ANCHOR', required: Indicates the type of the contact property anchor, which defaults to CONTACT_PROPERTY_ANCHOR.
        - ApiStaticDateAnchor
          - `dayOfMonth` integer, required: The day of the month for the static date anchor.
          - `month` 'APRIL' | 'AUGUST' | 'DECEMBER' | 'FEBRUARY' | 'JANUARY' | 'JULY' | 'JUNE' | 'MARCH' | 'MAY' | 'NOVEMBER' | 'OCTOBER' | 'SEPTEMBER', required: The month component of the static date anchor, with accepted values including: APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE, MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER.
          - `type` 'STATIC_DATE_ANCHOR', required: Indicates the type of the date anchor, which defaults to STATIC_DATE_ANCHOR.
          - `year` integer: The year component of the static date anchor.
      - `flowType` 'ACTION_SET' | 'UNKNOWN' | 'WORKFLOW', required
      - `goalFilterBranch` union
        - PublicOrFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'OR', required: Indicates the type of filter branch, defaulting to OR.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicAndFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'AND', required: Indicates the type of filter branch, defaulting to AND.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicNotAllFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'NOT_ALL', required: Indicates the type of filter branch, defaulting to NOT_ALL.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicNotAnyFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'NOT_ANY', required: Indicates the type of filter branch, defaulting to NOT_ANY.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicRestrictedFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'RESTRICTED', required: Indicates the type of filter branch, defaulting to RESTRICTED.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicUnifiedEventsFilterBranch
          - `coalescingRefineBy` union: Defines the criteria for refining events, using one of several possible schemas such as PublicNumOccurrencesRefineBy or PublicRelativeComparativeTimestampRefineBy.
            - PublicNumOccurrencesRefineBy
              - …
            - PublicSetOccurrencesRefineBy
              - …
            - PublicRelativeComparativeTimestampRefineBy
              - …
            - PublicRelativeRangedTimestampRefineBy
              - …
            - PublicAbsoluteComparativeTimestampRefineBy
              - …
            - PublicAbsoluteRangedTimestampRefineBy
              - …
            - PublicAllHistoryRefineBy
              - …
            - PublicTimePointOperation
              - …
            - PublicRangedTimeOperation
              - …
          - `eventTypeId` string, required: The identifier for the type of event associated with the unified events filter branch.
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'UNIFIED_EVENTS', required: Indicates the type of filter branch, defaulting to UNIFIED_EVENTS.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
          - `operator` 'HAS_COMPLETED' | 'HAS_NOT_COMPLETED', required: Specifies the operator used in the unified events filter branch, with accepted values being HAS_COMPLETED or HAS_NOT_COMPLETED.
          - `pruningRefineBy` union
            - PublicNumOccurrencesRefineBy
              - …
            - PublicSetOccurrencesRefineBy
              - …
            - PublicRelativeComparativeTimestampRefineBy
              - …
            - PublicRelativeRangedTimestampRefineBy
              - …
            - PublicAbsoluteComparativeTimestampRefineBy
              - …
            - PublicAbsoluteRangedTimestampRefineBy
              - …
            - PublicAllHistoryRefineBy
              - …
            - PublicTimePointOperation
              - …
            - PublicRangedTimeOperation
              - …
        - PublicAssociationFilterBranch
          - `associationCategory` string, required: Defines the category of the association.
          - `associationTypeId` integer, required: The ID representing the type of association.
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'ASSOCIATION', required: Indicates the type of filter branch, defaulting to ASSOCIATION.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
          - `objectTypeId` string, required: Represents the ID of the object type associated with the filter branch.
          - `operator` string, required: Specifies the operator applied to the association filter.
      - `id` string, required
      - `isEnabled` boolean, required
      - `name` string
      - `nextAvailableActionId` string, required
      - `objectTypeId` string, required
      - `revisionId` string, required
      - `startActionId` string
      - `suppressionListIds` integer[], required
      - `timeWindows` ApiTimeWindow[], required
        - `day` 'FRIDAY' | 'MONDAY' | 'SATURDAY' | 'SUNDAY' | 'THURSDAY' | 'TUESDAY' | 'WEDNESDAY', required: Specifies the day of the week for the time window, with accepted values being: FRIDAY, MONDAY, SATURDAY, SUNDAY, THURSDAY, TUESDAY, WEDNESDAY.
        - `endTime` ApiTimeOfDay
          - `hour` integer, required: The hour component of the time, represented as an integer.
          - `minute` integer, required: The minute component of the time, represented as an integer.
        - `startTime` ApiTimeOfDay
          - `hour` integer, required: The hour component of the time, represented as an integer.
          - `minute` integer, required: The minute component of the time, represented as an integer.
      - `type` 'CONTACT_FLOW', required
      - `unEnrollmentSetting` ApiUnEnrollmentSetting
        - `flowIds` string[], required
        - `type` 'ALL' | 'SELECTIVE', required: Specifies the type of unenrollment setting, with possible values being ALL or SELECTIVE.
      - `updatedAt` string, date-time, required
      - `uuid` string
    - ApiPlatformFlow
      - `actions` union[], required
        - union
          - ApiStaticBranchAction
            - `actionId` string, required: The unique identifier for this static branch action.
            - `defaultBranch` ApiConnection
              - …
            - `defaultBranchName` string: The name of the default branch in the static branch action.
            - `inputValue` union, required: Represents the input value for the static branch action, which can be of various types such as action data, object property, or static value.
              - …
            - `staticBranches` ApiStaticBranch[], required
              - …
            - `type` 'STATIC_BRANCH', required: Indicates the type of the action, which defaults to STATIC_BRANCH.
          - ApiListBranchAction
            - `actionId` string, required: The unique identifier for the list branch action.
            - `defaultBranch` ApiConnection
              - …
            - `defaultBranchName` string: The name of the default branch in the list action.
            - `listBranches` ApiListBranch[], required
              - …
            - `type` 'LIST_BRANCH', required: Indicates the type of action, which defaults to LIST_BRANCH.
          - ApiABTestBranchAction
            - `actionId` string, required: The unique identifier for the A/B test branch action.
            - `testBranches` ApiABTestBranch[], required
              - …
            - `type` 'AB_TEST_BRANCH', required: Indicates the type of action, which defaults to AB_TEST_BRANCH.
          - ApiCustomCodeAction
            - `actionId` string, required: The unique identifier for the custom code action.
            - `connection` ApiConnection
              - …
            - `inputFields` ApiInputVariable[], required
              - …
            - `outputFields` ApiEnumerationOutputField[], required
              - …
            - `runtime` string, required: Specifies the runtime environment for the custom code action.
            - `secretNames` string[], required
            - `sourceCode` string, required: Contains the source code for the custom code action.
            - `type` 'CUSTOM_CODE', required: Indicates the type of the action, which defaults to CUSTOM_CODE.
          - ApiWebhookAction
            - `actionId` string, required: The unique identifier for the webhook action.
            - `authSettings` union: Defines the authentication settings for the webhook, which can include an authentication key or a signature.
              - …
            - `connection` ApiConnection
              - …
            - `method` 'CONNECT' | 'DELETE' | 'GET' | 'HEAD' | 'OPTIONS' | 'PATCH' | 'POST' | 'PUT' | 'TRACE', required: Specifies the HTTP method to be used for the webhook request, with accepted values including CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT, TRACE.
            - `queryParams` ApiInputVariable[], required
              - …
            - `type` 'WEBHOOK', required: Indicates the type of action, which defaults to WEBHOOK.
            - `webhookUrl` string, required: The URL to which the webhook request will be sent.
          - ApiSingleConnectionAction
            - `actionId` string, required: The unique identifier for the single connection action.
            - `actionTypeId` string, required: The identifier for the type of action being performed.
            - `actionTypeVersion` integer, required: Specifies the version of the action type.
            - `connection` ApiConnection
              - …
            - `fields` object, required: Contains the fields associated with the single connection action.
            - `type` 'SINGLE_CONNECTION', required: Indicates the type of the action, which defaults to SINGLE_CONNECTION.
          - ApiCriteriaBranchAction
            - `actionId` string, required
            - `branches` ApiCriteriaBranch[], required
              - …
            - `defaultBranch` ApiConnection
              - …
            - `defaultBranchName` string
            - `type` 'CRITERIA_BRANCH', required
      - `blockedDates` ApiBlockedDate[], required
        - `dayOfMonth` integer, required: The day of the month for the blocked date.
        - `month` 'APRIL' | 'AUGUST' | 'DECEMBER' | 'FEBRUARY' | 'JANUARY' | 'JULY' | 'JUNE' | 'MARCH' | 'MAY' | 'NOVEMBER' | 'OCTOBER' | 'SEPTEMBER', required: The month of the blocked date, with accepted values including: APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE, MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER.
        - `year` integer: The year of the blocked date.
      - `createdAt` string, date-time, required
      - `crmObjectCreationStatus` 'COMPLETE' | 'PENDING', required
      - `customProperties` object, required
      - `dataSources` union[], required
        - union
          - ApiAssociationDataSource
            - `associationCategory` 'HUBSPOT_DEFINED' | 'INTEGRATOR_DEFINED' | 'USER_DEFINED' | 'WORK', required: Defines the category of the association, with possible values being HUBSPOT_DEFINED, INTEGRATOR_DEFINED, or USER_DEFINED.
            - `associationTypeId` integer, required: The ID representing the type of association.
            - `name` string, required: The name of the data source.
            - `objectTypeId` string, required: Represents the ID of the object type associated with the data source.
            - `sortBy` ApiSort
              - …
            - `type` 'ASSOCIATION', required: Indicates the type of data source, which defaults to ASSOCIATION.
          - ApiAssociationTimestampDataSource
            - `associationCategory` 'HUBSPOT_DEFINED' | 'INTEGRATOR_DEFINED' | 'USER_DEFINED' | 'WORK', required: Defines the category of the association, with possible values being HUBSPOT_DEFINED, INTEGRATOR_DEFINED, or USER_DEFINED.
            - `associationTypeId` integer, required: The ID representing the type of association.
            - `name` string, required: Specifies the name of the data source.
            - `objectTypeId` string, required: Represents the ID of the object type associated with the data source.
            - `type` 'ASSOCIATION_TIMESTAMP', required: Indicates the type of the data source, which defaults to ASSOCIATION_TIMESTAMP.
          - ApiStaticPropertyFilterDataSource
            - `name` string, required: Defines the name of the data source.
            - `propertyName` string, required: Specifies the name of the property used in the static property filter.
            - `sortBy` ApiSort
              - …
            - `staticValue` string, required: Represents the static value used in the property filter.
            - `type` 'STATIC_PROPERTY_FILTER', required: Indicates the type of data source, which defaults to STATIC_PROPERTY_FILTER.
          - ApiEnrolledRecordPropertyFilterDataSource
            - `name` string, required: Defines the name of the data source.
            - `propertyName` string, required: Specifies the name of the property used in the enrolled record property filter.
            - `recordFieldName` string, required: The name of the field in the record that is being filtered.
            - `sortBy` ApiSort
              - …
            - `type` 'ENROLLED_RECORD_PROPERTY_FILTER', required: Indicates the type of data source, which defaults to ENROLLED_RECORD_PROPERTY_FILTER.
          - ApiDatasetFieldPropertyFilterDataSource
            - `datasetFieldName` string, required: Specifies the name of the dataset field used in the property filter.
            - `name` string, required: Defines the name of the data source.
            - `propertyName` string, required: Specifies the name of the property used in the dataset field property filter.
            - `sortBy` ApiSort
              - …
            - `type` 'DATASET_FIELD_PROPERTY_FILTER', required: Indicates the type of data source, which defaults to DATASET_FIELD_PROPERTY_FILTER.
          - ApiEnrolledArgumentPropertyFilterDataSource
            - `argumentName` string, required: The name of the argument used in the enrolled argument property filter.
            - `name` string, required: Defines the name of the data source.
            - `propertyName` string, required: Specifies the name of the property used in the enrolled argument property filter.
            - `sortBy` ApiSort
              - …
            - `type` 'ENROLLED_ARGUMENT_PROPERTY_FILTER', required: Indicates the type of data source, which defaults to ENROLLED_ARGUMENT_PROPERTY_FILTER.
      - `description` string
      - `enrollmentCriteria` union
        - ApiListBasedEnrollmentCriteria
          - `listFilterBranch` union, required: Defines the filter branch used to determine list-based enrollment criteria.
            - PublicOrFilterBranch
              - …
            - PublicAndFilterBranch
              - …
            - PublicNotAllFilterBranch
              - …
            - PublicNotAnyFilterBranch
              - …
            - PublicRestrictedFilterBranch
              - …
            - PublicUnifiedEventsFilterBranch
              - …
            - PublicAssociationFilterBranch
              - …
          - `reEnrollmentTriggersFilterBranches` union[], required
            - union
              - …
          - `shouldReEnroll` boolean, required: Determines if objects should be re-enrolled when they meet the criteria again.
          - `type` 'LIST_BASED', required: Specifies the type of enrollment criteria, which defaults to 'LIST_BASED'.
          - `unEnrollObjectsNotMeetingCriteria` boolean, required: Indicates whether objects not meeting the criteria should be unenrolled.
        - ApiEventBasedEnrollmentCriteria
          - `eventFilterBranches` PublicUnifiedEventsFilterBranch[], required
            - `coalescingRefineBy` union: Defines the criteria for refining events, using one of several possible schemas such as PublicNumOccurrencesRefineBy or PublicRelativeComparativeTimestampRefineBy.
              - …
            - `eventTypeId` string, required: The identifier for the type of event associated with the unified events filter branch.
            - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
            - `filterBranchType` 'UNIFIED_EVENTS', required: Indicates the type of filter branch, defaulting to UNIFIED_EVENTS.
            - `filterBranches` union[], required
              - …
            - `filters` union[], required
              - …
            - `operator` 'HAS_COMPLETED' | 'HAS_NOT_COMPLETED', required: Specifies the operator used in the unified events filter branch, with accepted values being HAS_COMPLETED or HAS_NOT_COMPLETED.
            - `pruningRefineBy` union
              - …
          - `listMembershipFilterBranches` union[], required
            - union
              - …
          - `refinementCriteria` union: Specifies additional criteria for refining the enrollment process.
            - PublicOrFilterBranch
              - …
            - PublicAndFilterBranch
              - …
            - PublicNotAllFilterBranch
              - …
            - PublicNotAnyFilterBranch
              - …
            - PublicRestrictedFilterBranch
              - …
            - PublicUnifiedEventsFilterBranch
              - …
            - PublicAssociationFilterBranch
              - …
          - `shouldReEnroll` boolean, required: Determines if objects should be re-enrolled when they meet the criteria again.
          - `type` 'EVENT_BASED', required: Specifies the type of enrollment criteria, which defaults to 'EVENT_BASED'.
        - ApiManualEnrollmentCriteria
          - `shouldReEnroll` boolean, required: Indicates whether the enrollment should be repeated.
          - `type` 'MANUAL', required: Specifies the type of enrollment criteria, which is 'MANUAL'.
        - ApiDatasetBasedEnrollmentCriteria
          - `datasetId` integer, required
          - `shouldReEnroll` boolean, required
          - `subviewId` string
          - `type` 'DATASET', required
      - `enrollmentSchedule` union
        - ApiDailyEnrollmentSchedule
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'DAILY', required: Specifies the type of enrollment schedule, which is 'DAILY'.
        - ApiWeeklyEnrollmentSchedule
          - `daysOfWeek` string[], required
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'WEEKLY', required: Indicates the type of enrollment schedule, which is 'WEEKLY'.
        - ApiMonthlySpecificDaysEnrollmentSchedule
          - `daysOfMonth` integer[], required
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'MONTHLY_SPECIFIC_DAYS', required: Specifies the type of enrollment schedule, which is 'MONTHLY_SPECIFIC_DAYS'.
        - ApiMonthlyRelativeDaysEnrollmentSchedule
          - `monthlyRelativeDays` 'FIRST_MONDAY_OF_MONTH' | 'LAST_DAY_OF_MONTH', required: One of the possible relative days to enroll can be: LAST_DAY_OF_MONTH, or FIRST_MONDAY_OF_MONTH
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'MONTHLY_RELATIVE_DAYS', required: The type of schedule, always: MONTHLY_RELATIVE_DAYS
        - ApiYearlyEnrollmentSchedule
          - `dayOfMonth` integer, required: The day of the month for the yearly enrollment schedule.
          - `month` 'APRIL' | 'AUGUST' | 'DECEMBER' | 'FEBRUARY' | 'JANUARY' | 'JULY' | 'JUNE' | 'MARCH' | 'MAY' | 'NOVEMBER' | 'OCTOBER' | 'SEPTEMBER', required: The month for the yearly enrollment schedule, with accepted values including: APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE, MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER.
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'YEARLY', required: Indicates the type of enrollment schedule, which defaults to 'YEARLY'.
        - ApiPropertyBasedEnrollmentSchedule
          - `dateProperty` string, required: The property used to determine the date for enrollment scheduling.
          - `daysDelta` integer, required: The number of days to adjust the enrollment date relative to the dateProperty.
          - `timeOfDay` ApiTimeOfDay, required
            - `hour` integer, required: The hour component of the time, represented as an integer.
            - `minute` integer, required: The minute component of the time, represented as an integer.
          - `type` 'PROPERTY_BASED', required: Specifies the type of enrollment schedule, which is 'PROPERTY_BASED'.
          - `yearly` boolean, required: Indicates whether the enrollment schedule is set to repeat annually.
      - `flowType` 'ACTION_SET' | 'UNKNOWN' | 'WORKFLOW', required
      - `id` string, required
      - `isEnabled` boolean, required
      - `name` string
      - `nextAvailableActionId` string, required
      - `objectTypeId` string, required
      - `revisionId` string, required
      - `startActionId` string
      - `suppressionFilterBranch` union
        - PublicOrFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'OR', required: Indicates the type of filter branch, defaulting to OR.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicAndFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'AND', required: Indicates the type of filter branch, defaulting to AND.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicNotAllFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'NOT_ALL', required: Indicates the type of filter branch, defaulting to NOT_ALL.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicNotAnyFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'NOT_ANY', required: Indicates the type of filter branch, defaulting to NOT_ANY.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicRestrictedFilterBranch
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'RESTRICTED', required: Indicates the type of filter branch, defaulting to RESTRICTED.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
        - PublicUnifiedEventsFilterBranch
          - `coalescingRefineBy` union: Defines the criteria for refining events, using one of several possible schemas such as PublicNumOccurrencesRefineBy or PublicRelativeComparativeTimestampRefineBy.
            - PublicNumOccurrencesRefineBy
              - …
            - PublicSetOccurrencesRefineBy
              - …
            - PublicRelativeComparativeTimestampRefineBy
              - …
            - PublicRelativeRangedTimestampRefineBy
              - …
            - PublicAbsoluteComparativeTimestampRefineBy
              - …
            - PublicAbsoluteRangedTimestampRefineBy
              - …
            - PublicAllHistoryRefineBy
              - …
            - PublicTimePointOperation
              - …
            - PublicRangedTimeOperation
              - …
          - `eventTypeId` string, required: The identifier for the type of event associated with the unified events filter branch.
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'UNIFIED_EVENTS', required: Indicates the type of filter branch, defaulting to UNIFIED_EVENTS.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
          - `operator` 'HAS_COMPLETED' | 'HAS_NOT_COMPLETED', required: Specifies the operator used in the unified events filter branch, with accepted values being HAS_COMPLETED or HAS_NOT_COMPLETED.
          - `pruningRefineBy` union
            - PublicNumOccurrencesRefineBy
              - …
            - PublicSetOccurrencesRefineBy
              - …
            - PublicRelativeComparativeTimestampRefineBy
              - …
            - PublicRelativeRangedTimestampRefineBy
              - …
            - PublicAbsoluteComparativeTimestampRefineBy
              - …
            - PublicAbsoluteRangedTimestampRefineBy
              - …
            - PublicAllHistoryRefineBy
              - …
            - PublicTimePointOperation
              - …
            - PublicRangedTimeOperation
              - …
        - PublicAssociationFilterBranch
          - `associationCategory` string, required: Defines the category of the association.
          - `associationTypeId` integer, required: The ID representing the type of association.
          - `filterBranchOperator` string, required: Defines the logical operator used to combine multiple filter branches.
          - `filterBranchType` 'ASSOCIATION', required: Indicates the type of filter branch, defaulting to ASSOCIATION.
          - `filterBranches` union[], required
            - union
              - …
          - `filters` union[], required
            - union
              - …
          - `objectTypeId` string, required: Represents the ID of the object type associated with the filter branch.
          - `operator` string, required: Specifies the operator applied to the association filter.
      - `timeWindows` ApiTimeWindow[], required
        - `day` 'FRIDAY' | 'MONDAY' | 'SATURDAY' | 'SUNDAY' | 'THURSDAY' | 'TUESDAY' | 'WEDNESDAY', required: Specifies the day of the week for the time window, with accepted values being: FRIDAY, MONDAY, SATURDAY, SUNDAY, THURSDAY, TUESDAY, WEDNESDAY.
        - `endTime` ApiTimeOfDay
          - `hour` integer, required: The hour component of the time, represented as an integer.
          - `minute` integer, required: The minute component of the time, represented as an integer.
        - `startTime` ApiTimeOfDay
          - `hour` integer, required: The hour component of the time, represented as an integer.
          - `minute` integer, required: The minute component of the time, represented as an integer.
      - `type` 'PLATFORM_FLOW', required
      - `updatedAt` string, date-time, required
      - `uuid` string
  - `id` string, required: The flow's ID
  - `revisionCreatedAt` string, date-time, required: The timestamp this revision was created.
  - `revisionId` string, required: The revision of this flow

## Other responses

- `default`: An error occurred.

## Changes

- **2026-10-27** (2027-03-beta) `f041eccef172`: 14 breaking
  - added `#/components/schemas/ApiCriteriaBranchAction` to the `flow/oneOf[#/components/schemas/ApiContactFlow]/actions/items/` response property `oneOf` list for the response status `200`
  - added `#/components/schemas/ApiCriteriaBranchAction` to the `flow/oneOf[#/components/schemas/ApiPlatformFlow]/actions/items/` response property `oneOf` list for the response status `200`
  - added `#/components/schemas/ApiMultiValue` to the `flow/oneOf[#/components/schemas/ApiContactFlow]/actions/items/oneOf[subschema #1: STATIC_BRANCH]/inputValue` response property `oneOf` list for the response status `200`
  - added `#/components/schemas/ApiMultiValue` to the `flow/oneOf[#/components/schemas/ApiContactFlow]/actions/items/oneOf[subschema #1: STATIC_BRANCH]/inputValue/oneOf[subschema #14: LIST]/values/items/` response property `oneOf` list for the response status `200`
  - …10 more
- **2026-09-21** (2027-03-beta) `a8b693066f9e`: 2 info
  - added the optional property `flow/oneOf[#/components/schemas/ApiContactFlow]/actions/items/oneOf[subschema #1: STATIC_BRANCH]/staticBranches/items/operator` to the response with the `200` status
  - added the optional property `flow/oneOf[#/components/schemas/ApiPlatformFlow]/actions/items/oneOf[subschema #1: STATIC_BRANCH]/staticBranches/items/operator` to the response with the `200` status

[Operation history](https://skmtc.dev/hubspot/apis/automation-automation-v4/changes/automation/v4/2027-03-beta/flows/:flowId/revisions/:revisionId/get.md)

---

[API](https://skmtc.dev/hubspot/apis/automation-automation-v4.md) - [All operations](https://skmtc.dev/hubspot/apis/automation-automation-v4/llms.txt) - [OpenAPI document](https://skmtc.dev/hubspot/apis/automation-automation-v4/revisions/f041eccef172?raw)
