---
title: "POST /api/companies/join-requests/{id}/approve"
method: POST
path: "/api/companies/join-requests/{id}/approve"
tags: ["Companies"]
---

# POST /api/companies/join-requests/{id}/approve

`POST /api/companies/join-requests/{id}/approve`

Approves a pending join request, adding the requester to the caller's company with the chosen role.

## Path parameters

- `id` string, required

## Request body

- object
  - `role` 'company-creator' | 'company-admin', required

## Response `204`

No content

- 'null', nullable — No content

## Other responses

- `401` — Default Response
- `403` — Default Response
- `404` — Default Response
- `409` — Default Response

## Changes

> 49 revisions in range; 1 not diffed.

- **2026-09-27** `940ef021e2d5` — 2 breaking, 2 info
  - removed the enum value `COMPANY_OWNER` of the request property `role`
  - removed the enum value `EMPLOYEE` of the request property `role`
  - added the new `company-admin` enum value to the request property `role`
  - added the new `company-creator` enum value to the request property `role`
- **2026-08-31** `97e51f27dc77` — 1 info
  - added the media type `application/json` for the response with the status `204`
- **2026-08-15** `0a6ddb3264e6` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/retraced/apis/api-reference/changes/api/companies/join-requests/:id/approve/post.md)

---

[API](https://skmtc.dev/retraced/apis/api-reference.md) · [All operations](https://skmtc.dev/retraced/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc.dev/retraced/apis/api-reference/revisions/940ef021e2d5?raw)
