---
title: "Reorder Site Contacts"
method: PUT
path: "/sites/{site_id}/contacts/order"
tags: ["sites"]
---

# Reorder Site Contacts

`PUT /sites/{site_id}/contacts/order`

## Request

- Base URL: `https://api.verdun.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.verdun.ai/sites/{site_id}/contacts/order`
- Auth: HTTP bearer

## Path parameters

- `site_id` string, required

## Request body

- ReorderSiteContactsRequest: The site's whole contact list, in the order operators should call it. EXACTLY the site's current contacts, each once: a list naming a contact that is gone (or was added since the console loaded) is refused rather than half-applied, so two people reordering at once cannot silently drop each other's rows to the bottom.
  - `contact_ids` string[], required: Every contact id on the site, first-to-call first.

## Response `200`

Successful Response

- ReorderSiteContactsResponse
  - `contacts` SiteContactResponseModel[], required: The site's contacts in their new call order.
    - `first_name` string, required: The first name of the site contact.
    - `last_name` string, required: The last name of the site contact.
    - `role` string, required: The role of the site contact.
    - `primary_phone_number` string, required: The primary phone number of the site contact.
    - `afterhours_phone_number` string, required: The afterhours phone number of the site contact.
    - `email` string, required: The email of the site contact.
    - `notify_method` 'call' | 'text' | 'email', required
    - `availability` ContactAvailabilityWindow[], nullable: Weekly windows, in the site's timezone, when this contact is the one to reach. The review panel pre-selects the first contact on the list whose window covers the current site-local time. Null or empty means no schedule: the contact is eligible at any time and is the fallback when no scheduled contact is on. On edit, omitting the key keeps the stored schedule; null or [] clears it.
      - `days` integer[], required: Days the window starts on, Monday-first: 0 = Monday ... 6 = Sunday.
      - `start` string, required: Start time, HH:MM on a 24-hour clock, site-local.
      - `end` string, required: End time, HH:MM on a 24-hour clock, site-local; '24:00' means midnight. An end earlier than start wraps past midnight into the next day.
    - `id` string, uuid, required: Unique identifier of the site contact.
    - `daily_summary_opt_out` boolean: True when this contact has opted out of the daily site summary e-mail (set by the unsubscribe link, not by the console). Does not affect alerts about the property.

## Other responses

- `422`: Validation Error

---

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