---
title: "Approve Announcement"
method: POST
path: "/api/v1/admin/announcements/{serial_number}/approve"
tags: ["device announcements"]
---

# Approve Announcement

`POST /api/v1/admin/announcements/{serial_number}/approve`

## Request

- Base URL: `https://api.brumby.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.brumby.com/api/v1/admin/announcements/{serial_number}/approve`
- Auth: HTTP bearer

Commission this unit the next time it polls. Farm optional.

## Path parameters

- `serial_number` string, required

## Request body

- AnnouncementApprove: Staff clicked Commission on a row. The device_id is minted at delivery, not here — approval is a decision, not an identity.
  - `execution_type` 'deployment' | 'hitl' | 'sitl'
  - `physical_components` string[]
  - `farm_id` string, nullable
  - `display_name` string, nullable

## Response `200`

Successful Response

- AnnouncementSummary
  - `serial_number` string, required
  - `hardware_kind` string, required
  - `unit` string
  - `hostname` string, nullable, required
  - `public_key_fingerprint` string, required
  - `source_ip` string, nullable, required
  - `first_seen_at` string, date-time, required
  - `last_seen_at` string, date-time, required
  - `online` boolean, required
  - `conflict` boolean, required
  - `state` string, required
  - `approved_by` string, nullable, required
  - `approved_farm_id` string, nullable, required
  - `approved_display_name` string, nullable, required
  - `commissioned_device_id` string, nullable, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/brumby/apis/brumby-platform-api.md) - [All operations](https://skmtc.dev/brumby/apis/brumby-platform-api/llms.txt) - [OpenAPI document](https://skmtc.dev/brumby/apis/brumby-platform-api/revisions/fe185e20813e?raw)
