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

# chat (sync)

> send a message to a chat thread and receive the complete response as JSON (non-streaming)



## OpenAPI

````yaml /api-reference/graph.json post /graph/chats/{chat_id}/sync
openapi: 3.1.2
info:
  title: Bevor Graph API
  version: 1.0.0
servers: []
security: []
tags:
  - name: code
    description: Code versions and their files.
  - name: graph
    description: 'Graph structure of a code version: nodes, edges, and call chains.'
  - name: chat
    description: Chat threads and messages scoped to code versions.
paths:
  /graph/chats/{chat_id}/sync:
    post:
      tags:
        - chat
      summary: chat (sync)
      description: >-
        send a message to a chat thread and receive the complete response as
        JSON (non-streaming)
      parameters:
        - name: chat_id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                message:
                  title: Message
                  type: string
                is_retry:
                  title: Is Retry
                  type: boolean
                approval_id:
                  type: string
                  nullable: true
                is_approved:
                  type: boolean
                  nullable: true
              required:
                - message
              title: ChatBody
              type: object
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                properties:
                  message:
                    title: Message
                    type: string
                  has_pending_approval:
                    title: Has Pending Approval
                    type: boolean
                required:
                  - message
                  - has_pending_approval
                title: ChatResponseSchema
                type: object
        '400':
          description: Error Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
      security:
        - BearerAuth: []
components:
  schemas:
    ApiError:
      properties:
        code:
          enum:
            - auth.session_expired
            - auth.session_revoked
            - auth.session_invalid
            - auth.user_does_not_exist
            - auth.invalid_team_membership
            - auth.unauthorized
            - auth.key_revoked
            - auth.key_invalid
            - auth.payment_required
            - auth.team_required
            - auth.invalid_permissions
            - error.not_found
            - error.invalid_scope
            - error.limit
            - error.entity_deleted
            - error.invalid_state
            - error.conflict
            - error.integrity
            - error.database
            - error.validation
            - error.server
            - analysis.entrypoint_failure
            - code.unsupported
            - code.node_invalid
            - code.conflict
            - app.rate_limit
            - payment.error
            - payment.failed
          title: Code
          type: string
        message:
          title: Message
          type: string
      required:
        - code
        - message
      title: ApiError
      type: object
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: API key in Bearer token format

````