> ## Documentation Index
> Fetch the complete documentation index at: https://developer.omni.z-api.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Get flow

> Fetch a flow and its validation issues

## Concepts

Returns a specific flow, including the full `flow_json` and the `validation_errors` array with whatever Meta flagged.

With `sync=true`, the state is fetched straight from Meta before responding — slower, but up to date.

<Note>
  The `flowId` is obtained in the response of [Create flow](/en/flows/create-flow) or [List flows](/en/flows/list-flows).
</Note>


## OpenAPI

````yaml en/flows/openapi.json GET /whatsapp/businesses/{wabaId}/flows/{flowId}
openapi: 3.1.0
info:
  title: Omni Z-API - WhatsApp Flows
  description: API to create and manage WhatsApp Flows (native in-conversation forms)
  version: 1.0.0
servers:
  - url: https://api.omni.z-api.io
security:
  - bearerAuth: []
paths:
  /whatsapp/businesses/{wabaId}/flows/{flowId}:
    get:
      tags:
        - Flows
      summary: Get flow
      description: >-
        Returns a specific flow, including its `flow_json` and Meta's validation
        issues.
      operationId: getFlow
      parameters:
        - name: wabaId
          in: path
          required: true
          description: WABA ID (obtained via List WABAs)
          schema:
            type: string
            example: '428083093730937'
        - name: flowId
          in: path
          required: true
          description: Flow ID (obtained via List flows)
          schema:
            type: string
            example: '1122334455667788'
        - name: sync
          in: query
          required: false
          description: >-
            When `true`, fetches the flow state straight from Meta before
            responding
          schema:
            type: boolean
            example: true
      responses:
        '200':
          description: Operation completed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Flow'
              example:
                id: '1122334455667788'
                name: agendamento_consulta
                categories:
                  - APPOINTMENT_BOOKING
                status: PUBLISHED
                endpoint_uri: null
                validation_errors: []
                flow_json: >-
                  {"version": "7.0", "routing_model": {"WELCOME": ["DONE"],
                  "DONE": []}, "screens": [{"id": "WELCOME", "title":
                  "Agendamento", "layout": {"type": "SingleColumnLayout",
                  "children": [{"type": "TextHeading", "text": "Escolha um
                  horario"}, {"type": "Form", "name": "form", "children":
                  [{"type": "TextInput", "name": "nome", "label": "Seu nome",
                  "input-type": "text", "required": true}, {"type":
                  "DatePicker", "name": "data", "label": "Data"}, {"type":
                  "Footer", "label": "Continuar", "on-click-action": {"name":
                  "navigate", "next": {"type": "screen", "name": "DONE"},
                  "payload": {}}}]}]}}, {"id": "DONE", "title": "Pronto",
                  "terminal": true, "success": true, "layout": {"type":
                  "SingleColumnLayout", "children": [{"type": "TextBody",
                  "text": "Agendamento confirmado."}, {"type": "Footer",
                  "label": "Fechar", "on-click-action": {"name": "complete",
                  "payload": {}}}]}}]}
        '401':
          description: Invalid or missing token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Flow not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Flow:
      type: object
      properties:
        id:
          type: string
          description: Flow ID
        name:
          type: string
          description: Flow name
        categories:
          type: array
          description: Flow categories (Meta uses them during review)
          items:
            type: string
            enum:
              - SIGN_UP
              - SIGN_IN
              - APPOINTMENT_BOOKING
              - LEAD_GENERATION
              - CONTACT_US
              - CUSTOMER_SUPPORT
              - SURVEY
              - OTHER
        status:
          type: string
          enum:
            - DRAFT
            - PUBLISHED
            - DEPRECATED
            - BLOCKED
            - THROTTLED
          description: Publication status
        endpoint_uri:
          type: string
          nullable: true
          description: Your endpoint URL, required only for flows using `data_exchange`
        flow_json:
          type: string
          description: Screen definition in JSON, sent as a **string**
        validation_errors:
          type: array
          description: Validation issues returned by Meta
          items:
            type: object
            properties:
              key:
                type: string
                description: Issue key
              value:
                type: string
                description: Issue detail
    Error:
      type: object
      properties:
        error:
          type: integer
        message:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````