---
title: "Approve or reject a module request (super_admin; two-step)"
method: POST
path: "/api/admin/module-requests/{requestId}/decide"
tags: ["catalog"]
---

# Approve or reject a module request (super_admin; two-step)

`POST /api/admin/module-requests/{requestId}/decide`

## Request

- Base URL: `https://api.wizbi.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.wizbi.ai/api/admin/module-requests/{requestId}/decide`
- Auth: none declared

## Path parameters

- `requestId` string, required

## Request body

- object
  - `decision` 'approve' | 'reject', required
  - `note` string
  - `enableFlag` boolean
  - `confirm` boolean
  - `expectedVersion` integer

## Response `200`

Preview or result.

- union
  - object
    - `preview` true, required
    - `request` object, required
      - `id` string, required
      - `orgId` string, required
      - `ref` string, required
      - `status` 'pending' | 'approved' | 'rejected' | 'cancelled', required
      - `note` string
      - `requestedBy` string, required
      - `requestedByEmail` string
      - `requestedAt` string, date-time, required
      - `plan` 'solo' | 'team' | 'company' | 'enterprise' | 'null', nullable, required
      - `decidedBy` string
      - `decidedAt` string, date-time
      - `decisionNote` string
      - `flagEnabled` string
      - `version` integer, required
    - `decision` 'approve' | 'reject', required
    - `flagOff` string
    - `needsFlag` boolean, required
    - `expectedVersion` integer, required
  - object
    - `preview` false, required
    - `request` object, required
      - `id` string, required
      - `orgId` string, required
      - `ref` string, required
      - `status` 'pending' | 'approved' | 'rejected' | 'cancelled', required
      - `note` string
      - `requestedBy` string, required
      - `requestedByEmail` string
      - `requestedAt` string, date-time, required
      - `plan` 'solo' | 'team' | 'company' | 'enterprise' | 'null', nullable, required
      - `decidedBy` string
      - `decidedAt` string, date-time
      - `decisionNote` string
      - `flagEnabled` string
      - `version` integer, required
    - `grant` object
      - `ref` string, required
      - `orgId` string, required
      - `active` boolean, required
      - `requestId` string
      - `reason` string
      - `updatedBy` string, required
      - `updatedAt` string, date-time, required
      - `version` integer, required

## Other responses

- `400`: Invalid request.
- `403`: Not allowed, or the feature is off for the organization.
- `404`: Unknown agent or version.
- `409`: Stale version.

---

[API](https://skmtc.dev/wizbi/apis/wizbi-core-api.md) · [All operations](https://skmtc.dev/wizbi/apis/wizbi-core-api/llms.txt) · [OpenAPI document](https://skmtc.dev/wizbi/apis/wizbi-core-api/revisions/5a47416c82ec?raw)
