---
title: "Submit a contact enquiry on behalf of a user"
method: POST
path: "/agent/contact"
tags: ["contact"]
---

# Submit a contact enquiry on behalf of a user

`POST /agent/contact`

## Request

- Base URL: `https://vertodigital.com`
- URL: `https://vertodigital.com/agent/contact`
- Auth: none declared

Anonymous, rate-limited (5 requests/minute and 50 requests/day per caller IP). No authentication required. Returns 200 once the enquiry has been delivered (CRM + internal notification) - the response is only sent after upstream delivery succeeds, so a 200 guarantees delivery rather than merely accepting the request for later. Supports Idempotency-Key: retrying the same request with the same key and body replays the original response (marked with an Idempotent-Replayed header) instead of submitting a second enquiry - safe to do after a timeout or dropped connection. Reusing a key with a different body returns 409.

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `fromName` string, required
  - `fromEmail` string, email, required
  - `organization` string
  - `topic` 'assessment' | 'services' | 'partnership' | 'press' | 'careers' | 'general'
  - `message` string, required
  - `agentId` string: Self-asserted identifier for the calling agent. Not verified.

## Response `200`

Enquiry delivered

- ContactAccepted
  - `status` 'accepted'
  - `reference` string
  - `receivedAt` string, date-time

## Other responses

- `400`: Validation error
- `405`: Method not allowed
- `409`: Idempotency-Key reused with a different request body
- `413`: Request body too large
- `429`: Rate limited
- `500`: Internal error
- `502`: Upstream delivery error

---

[API](https://skmtc.dev/vertodigital/apis/vertodigital-agent-api.md) · [All operations](https://skmtc.dev/vertodigital/apis/vertodigital-agent-api/llms.txt) · [OpenAPI document](https://skmtc.dev/vertodigital/apis/vertodigital-agent-api/revisions/024a4fa9ec36?raw)
