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

# Validate a flow config

> Check a (possibly unsaved) `config` without persisting anything. Runs the same checks a save runs, including the normalisation a save applies first. Always 200: an invalid config is a valid answer to "would this be accepted?".

<Info>
  Runs the same checks a save runs, including the normalisation a save applies first. Always `200`: an invalid config is a valid answer to "would this be accepted?". Nothing is persisted.
</Info>


## OpenAPI

````yaml POST /v1/flows/validate-config
openapi: 3.1.0
info:
  title: Databar.ai API
  description: >-

    # Authentication


    Databar uses API keys to allow access to the API. You can find your API key
    in your workspace home page, but to use the REST API you’ll first need to
    schedule a call with us.

    Our API expects the API key to be included in all API requests to the server
    in the Header of your request with the key `x-apikey`.

    To find your API key, head over to your Databar workspace and click
    Integrations.


    **Example:**


    `bash

    curl https://api.databar.ai/v1/user/me -H x-apikey: {YOUR_API_KEY}`
  contact:
    email: info@databar.ai
  version: 0.1.2
servers:
  - url: https://api.databar.ai
    description: Production
security: []
paths:
  /v1/flows/validate-config:
    post:
      tags:
        - Flows
      summary: Check a flow config without saving
      description: >-
        Check a (possibly unsaved) `config` without persisting anything. Runs
        the same checks a save runs, including the normalisation a save applies
        first. Always 200: an invalid config is a valid answer to "would this be
        accepted?".
      operationId: validate_flow_config_v1_flows_validate_config_post
      parameters:
        - name: x-apikey
          in: header
          required: true
          schema:
            type: string
            title: API Key
            description: API Key for authentication
          description: API Key for authentication
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FlowConfigIn'
      responses:
        '200':
          description: Whether the config would be accepted on save
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlowValidateOut'
        '403':
          description: Forbidden
components:
  schemas:
    FlowConfigIn:
      properties:
        config:
          type: object
          title: Config
          description: >-
            Flow definition, possibly unsaved: `{inputs: [...], nodes: [...],
            output: {...}}`. Same shape `POST /v1/flows` and `GET
            /v1/flows/{flow_id}` use.
      type: object
      required:
        - config
      title: FlowConfigIn
    FlowValidateOut:
      properties:
        valid:
          type: boolean
          title: Valid
        errors:
          type: array
          items:
            $ref: '#/components/schemas/FlowConfigError'
          title: Errors
          description: >-
            Why the config would be rejected on save. Empty when `valid` is
            true.
      type: object
      required:
        - valid
      title: FlowValidateOut
    FlowConfigError:
      properties:
        node_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Id
        message:
          type: string
          title: Message
      type: object
      required:
        - message
      title: FlowConfigError

````