---
title: "Vapi provider webhook"
method: POST
path: "/api/v1/novasynth/webhooks/vapi/{endpointId}"
tags: ["NovaSynth", "Webhooks"]
---

# Vapi provider webhook

`POST /api/v1/novasynth/webhooks/vapi/{endpointId}`

## Request

- Base URL: `https://dev.noveum.ai`
- URL: `https://dev.noveum.ai/api/v1/novasynth/webhooks/vapi/{endpointId}`
- Auth: API key in cookie `apiKeyCookie` and HTTP bearer

Inbound transcript/completion webhook for a Vapi agent endpoint. Authenticated via `X-Novasynth-Signature` (or legacy query secret).

## Path parameters

- `endpointId` string, required

## Request body

- object
  - `call` object, required
    - `id` string, required
    - `messages` unknown[]
      - unknown
    - `stereoRecordingUrl` string
    - `recordingUrl` string
    - `cost` number
    - `duration` number

## Response `200`

Success

- object

## Other responses

- `201`: Created
- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not found
- `409`: Conflict
- `422`: Unprocessable entity
- `500`: Internal server error

---

[API](https://skmtc.dev/noveum/apis/noveum-api.md) · [All operations](https://skmtc.dev/noveum/apis/noveum-api/llms.txt) · [OpenAPI document](https://skmtc.dev/noveum/apis/noveum-api/revisions/1745e27f38d0?raw)
