---
title: "Reject a skill approval request"
method: POST
path: "/api/v1/orgs/{slug}/approvals/{approvalId}/reject"
tags: ["Org Hierarchy"]
---

# Reject a skill approval request

`POST /api/v1/orgs/{slug}/approvals/{approvalId}/reject`

## Request

- Base URL: `https://api.skills-hub.ai`
- URL: `https://api.skills-hub.ai/api/v1/orgs/{slug}/approvals/{approvalId}/reject`
- Auth: one of:
  - HTTP bearer
  - API key in header `Authorization`

Rejects a pending skill approval request, leaving the skill unpublished or unchanged and recording the resolution in the permanent audit trail. Same reviewer rules as approve: org `ADMIN`, the skill's department admin, or any member when member approvals are enabled, and never your own request. Records an audit entry.

## Path parameters

- `slug` string, required
- `approvalId` string, required

## Response `200`

Successful response. The returned fields are described in this endpoint's summary/description; typed per-field response schemas are being added incrementally.

- object
  - `id` string
  - `action` 'CREATION' | 'MODIFICATION'
  - `status` 'PENDING' | 'APPROVED' | 'REJECTED'
  - `skill` object
    - `slug` string
    - `name` string
  - `requestedBy` string
  - `reviewedBy` string, nullable
  - `summary` string, nullable
  - `note` string, nullable
  - `createdAt` string, date-time
  - `resolvedAt` string, date-time, nullable

---

[API](https://skmtc.dev/skills-hub/apis/skills-hub-ai-api.md) · [All operations](https://skmtc.dev/skills-hub/apis/skills-hub-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/skills-hub/apis/skills-hub-ai-api/revisions/cb5d46d80300?raw)
