---
title: "Create a contact email (v2)"
method: POST
path: "/v2/contact-emails/{contactId}"
tags: ["contact-emails"]
---

# Create a contact email (v2)

`POST /v2/contact-emails/{contactId}`

Add an email address to a contact, optionally with a label (e.g. "Work"). **Requires `Idempotency-Key`.** Returns the created row: `{ data: { contact_email: {...} } }`, status 201.

## Path parameters

- `contactId` string, uuid, required

## Request body

- object
  - `email` string, email, required
  - `label` string
  - `ranking` integer

## Response `201`

Created

- object
  - `data` object, required
    - `email` object, required
      - `id` string, uuid, required
      - `contact_id` string, uuid, required
      - `user_id` string
      - `email` string, required
      - `label` string, nullable
      - `ranking` integer, required
      - `created_at` union, required
        - string, date-time
        - unknown
      - `updated_at` union, required
        - string, date-time
        - unknown

## Other responses

- `400` — Request body failed validation.
- `401` — Missing or invalid API key.
- `403` — Valid key, insufficient permission.
- `404` — Resource does not exist.
- `409` — Request conflicts with the current state of the resource.
- `429` — Rate limit exceeded.
- `500` — Unexpected server error.

## Changes

- **2026-08-28** `24fc0ab80706` — 1 warning
  - the `email` request property's maxLength was set to `320`
- **2026-08-27** `a2f71a243839` — 1 info
  - api operation id `createContactEmailV2` was added

[Change history](https://skmtc.dev/getdex/apis/dex-public-api/changes/v2/contact-emails/:contactId/post.md)

---

[API](https://skmtc.dev/getdex/apis/dex-public-api.md) · [All operations](https://skmtc.dev/getdex/apis/dex-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getdex/dex-public-api/revisions/98e8d517493f/schema)
