---
title: "Check a vanity inbox name"
method: GET
path: "/managed-inbox/vanity/{name}"
tags: ["Domains"]
---

# Check a vanity inbox name

`GET /managed-inbox/vanity/{name}`

## Request

- Base URL: `https://api.primitive.dev/v1`
- URL: `https://api.primitive.dev/v1/managed-inbox/vanity/{name}`
- Auth: HTTP bearer

Whether a name can be claimed for the managed inbox (name.primitive.email): available, taken, reserved (a protected word) or invalid (5 to 30 lowercase letters and digits, starting with a letter). Any plan may check; claiming needs Power. Rate limited per organization together with claims. Needs domains:read.

## Path parameters

- `name` string, required

## Response `200`

Check a vanity inbox name

- object
  - `success` true, required
  - `data` CheckVanityInboxNameResult, required
    - `status` 'available' | 'taken' | 'reserved' | 'invalid', required
    - `name` string, nullable, required
    - `message` string, nullable, required

## Other responses

- `400`: validation_error: the name parameter is missing or too long.
- `401`: Invalid or missing API key
- `403`: Authenticated caller lacks permission for the operation
- `404`: Resource not found
- `429`: Rate limit exceeded. The `ratelimit-*` headers describe the limiter that rejected this request, with its own limit and window, not the API budget that successful responses report. A limiter that reports only a wait sends `Retry-After` alone.

---

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