---
title: "Retrieve workflows"
method: POST
path: "/automation/v4/flows/batch/read"
tags: ["Batch"]
---

# Retrieve workflows

`POST /automation/v4/flows/batch/read`

Retrieve details of multiple automation flows by providing a batch of flow IDs in the request body. This endpoint allows for efficient retrieval of multiple flows at once, returning their details in a single response.

## Request body

- ApiFlowBatchInput
  - `inputs` ApiFlowBatchFetchFlowIdCoordinate[], required
    - `flowId` string, required — The unique identifier for the automation flow.
    - `type` 'FLOW_ID', required — Specifies the type of coordinate:FLOW_ID.

## Response `200`

successful operation

- BatchResponseApiFlow
  - `completedAt` string, date-time, required — The date and time when the batch process was completed, formatted as a date-time string.
  - `links` object — A collection of URLs related to the batch process, empty for this operation.
  - `requestedAt` string, date-time — The date and time when the batch request was initiated, formatted as a date-time string.
  - `results` ApiFlow[], required
    - union
      - object
        - `actions` union[], required
          - union
            - ApiStaticBranchAction
              - …
            - ApiListBranchAction
              - …
            - ApiABTestBranchAction
              - …
            - ApiCustomCodeAction
              - …
            - ApiWebhookAction
              - …
            - ApiSingleConnectionAction
              - …
        - `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
              - …
            - ApiAssociationTimestampDataSource
              - …
            - ApiStaticPropertyFilterDataSource
              - …
            - ApiEnrolledRecordPropertyFilterDataSource
              - …
            - ApiDatasetFieldPropertyFilterDataSource
              - …
            - ApiEnrolledArgumentPropertyFilterDataSource
              - …
        - `description` string
        - `enrollmentCriteria` union
          - ApiListBasedEnrollmentCriteria
            - `listFilterBranch` union, required — Defines the filter branch used to determine list-based enrollment criteria.
              - …
            - `reEnrollmentTriggersFilterBranches` union[], required
              - …
            - `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
              - …
            - `listMembershipFilterBranches` union[], required
              - …
            - `refinementCriteria` union — Specifies additional criteria for refining the enrollment process.
              - …
            - `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
              - …
            - `type` 'DAILY', required — Specifies the type of enrollment schedule, which is 'DAILY'.
          - ApiWeeklyEnrollmentSchedule
            - `daysOfWeek` string[], required
            - `timeOfDay` ApiTimeOfDay, required
              - …
            - `type` 'WEEKLY', required — Indicates the type of enrollment schedule, which is 'WEEKLY'.
          - ApiMonthlySpecificDaysEnrollmentSchedule
            - `daysOfMonth` integer[], required
            - `timeOfDay` ApiTimeOfDay, required
              - …
            - `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
              - …
            - `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
              - …
            - `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
              - …
            - `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
              - …
            - `filters` union[], required
              - …
          - 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
              - …
            - `filters` union[], required
              - …
          - 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
              - …
            - `filters` union[], required
              - …
          - 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
              - …
            - `filters` union[], required
              - …
          - 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
              - …
            - `filters` union[], required
              - …
          - PublicUnifiedEventsFilterBranch
            - `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
              - …
          - 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
              - …
            - `filters` union[], required
              - …
            - `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
      - object
        - `actions` union[], required
          - union
            - ApiStaticBranchAction
              - …
            - ApiListBranchAction
              - …
            - ApiABTestBranchAction
              - …
            - ApiCustomCodeAction
              - …
            - ApiWebhookAction
              - …
            - ApiSingleConnectionAction
              - …
        - `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
              - …
            - ApiAssociationTimestampDataSource
              - …
            - ApiStaticPropertyFilterDataSource
              - …
            - ApiEnrolledRecordPropertyFilterDataSource
              - …
            - ApiDatasetFieldPropertyFilterDataSource
              - …
            - ApiEnrolledArgumentPropertyFilterDataSource
              - …
        - `description` string
        - `enrollmentCriteria` union
          - ApiListBasedEnrollmentCriteria
            - `listFilterBranch` union, required — Defines the filter branch used to determine list-based enrollment criteria.
              - …
            - `reEnrollmentTriggersFilterBranches` union[], required
              - …
            - `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
              - …
            - `listMembershipFilterBranches` union[], required
              - …
            - `refinementCriteria` union — Specifies additional criteria for refining the enrollment process.
              - …
            - `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
              - …
            - `type` 'DAILY', required — Specifies the type of enrollment schedule, which is 'DAILY'.
          - ApiWeeklyEnrollmentSchedule
            - `daysOfWeek` string[], required
            - `timeOfDay` ApiTimeOfDay, required
              - …
            - `type` 'WEEKLY', required — Indicates the type of enrollment schedule, which is 'WEEKLY'.
          - ApiMonthlySpecificDaysEnrollmentSchedule
            - `daysOfMonth` integer[], required
            - `timeOfDay` ApiTimeOfDay, required
              - …
            - `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
              - …
            - `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
              - …
            - `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
              - …
            - `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
              - …
            - `filters` union[], required
              - …
          - 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
              - …
            - `filters` union[], required
              - …
          - 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
              - …
            - `filters` union[], required
              - …
          - 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
              - …
            - `filters` union[], required
              - …
          - 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
              - …
            - `filters` union[], required
              - …
          - PublicUnifiedEventsFilterBranch
            - `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
              - …
          - 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
              - …
            - `filters` union[], required
              - …
            - `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
  - `startedAt` string, date-time, required — The date and time when the batch process began, formatted as a date-time string.
  - `status` 'CANCELED' | 'COMPLETE' | 'PENDING' | 'PROCESSING', required — The current status of the batch process, with possible values: CANCELED, COMPLETE, PENDING, PROCESSING.

## Other responses

- `207` — multiple statuses
- `default` — An error occurred.

---

[API](https://skmtc.net/hubspot/apis/automation-automation-v4.md) · [All operations](https://skmtc.net/hubspot/apis/automation-automation-v4/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hubspot/automation-automation-v4/revisions/614f5ff8daff/schema)
