---
title: "Report peer-to-peer connection outcomes"
method: POST
path: "/voice/p2p/connection-reports"
tags: ["Voice"]
---

# Report peer-to-peer connection outcomes

`POST /voice/p2p/connection-reports`

## Request

- Base URL: `https://web.fluxer.app/api/v1`
- URL: `https://web.fluxer.app/api/v1/voice/p2p/connection-reports`
- Auth: API key in header `Authorization`

Records how peer connections of a peer-to-peer voice call settled, one report for each remote peer. Fluxer adds the request address, its country and the client platform of the session.

## Request body

- VoiceP2pConnectionReportsRequest
  - `reports` object[], required: One report for each remote peer that settled
    - `channel_id` union, required
      - string, snowflake
      - integer
    - `guild_id` union, required
      - string, snowflake
      - integer
    - `participant_count` integer, required: Participants in the call when the peer connection settled
    - `outcome` 'connected' | 'failed', required: How the peer connection settled
    - `local_candidate_type` 'host' | 'srflx' | 'prflx' | 'relay', nullable, required: ICE candidate type of one end of the selected candidate pair
    - `remote_candidate_type` 'host' | 'srflx' | 'prflx' | 'relay', nullable, required: ICE candidate type of one end of the selected candidate pair
    - `ip_family` 'ipv4' | 'ipv6', nullable, required: Address family of the selected pair
    - `protocol` 'udp' | 'tcp', nullable, required: Transport protocol of the selected pair
    - `setup_ms` integer, required
    - `ice_restarted` boolean, required: Whether the peer connection ran an ICE restart

## Response `204`

No Content

## Other responses

- `400`: Bad Request - The request was malformed or contained invalid data
- `401`: Unauthorized - Authentication is required or the token is invalid
- `403`: Forbidden - You do not have permission to perform this action
- `429`: Too Many Requests - You are being rate limited
- `500`: Internal Server Error - An unexpected error occurred

## Changes

> 39 revisions in range; 2 not diffed.

- **2026-10-10** `b620d9da76aa`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/fluxer/apis/fluxer-api/changes/voice/p2p/connection-reports/post.md)

---

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