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

# Resolve Approval

> Approves or rejects a pending approval and releases the waiting workflow so it can resume. Requires execute access on the underlying workflow; the approval's owner and any address in notified_emails short-circuit the access check.



## OpenAPI

````yaml openapi/superflow.yaml POST /approvals/{id}/resolve
openapi: 3.0.3
info:
  title: Lyzr SuperFlow API
  version: '1.0'
  description: >-
    SuperFlow orchestration API covering workflow CRUD, the execution lifecycle
    (run, pause, resume, terminate, rerun), scheduling, and human-in-the-loop
    approvals. Chat-completions and agent CRUD endpoints are documented
    separately and are not part of this surface.
servers:
  - url: https://inference.studio.lyzr.ai/api
security:
  - ApiKeyAuth: []
tags:
  - name: workflows
    description: Create, read, update, delete, and share workflow definitions.
  - name: workflow-execution
    description: Run workflows and control the execution lifecycle.
  - name: workflow-schedules
    description: Cron-driven recurring triggers for stored workflows.
  - name: approvals
    description: Human-in-the-loop approval requests raised by running workflows.
paths:
  /approvals/{id}/resolve:
    post:
      tags:
        - approvals
      summary: Resolve an approval
      description: >-
        Approves or rejects a pending approval and releases the waiting workflow
        so it can resume. Requires execute access on the underlying workflow;
        the approval's owner and any address in notified_emails short-circuit
        the access check.
      operationId: resolveApproval
      parameters:
        - name: id
          in: path
          required: true
          description: Approval ID
          schema:
            type: string
      requestBody:
        required: true
        description: Resolution payload
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResolveApprovalRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MessageResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '409':
          description: Approval already resolved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ResolveApprovalRequest:
      type: object
      properties:
        approved:
          type: boolean
          description: Set true to approve the request; false rejects it.
        data:
          type: object
          description: Optional extra data merged into the approval node's output.
          additionalProperties: {}
    MessageResponse:
      type: object
      properties:
        message:
          type: string
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: Tenant API key. Required on every endpoint.

````