---
title: "Vocabulary · API v1"
description: "The enumerations other responses use, keyed by category: verification states, severities, grades, policies and reputation."
---
# Vocabulary

The enumerations other responses use, keyed by category: verification states, severities, grades, policies and reputation.

## List enumerations

`GET /enums`

Every enumeration the documented responses use, keyed by category. Read it once at start-up instead of hardcoding a code list, and fall back to the raw code when a category grows a value your copy does not know. Which field reads which category: dmarc_state, tlsrpt_state and forensic_state are verification_state; events[].type is alert_type and events[].severity is alert_severity; action_items[].severity is action_item_severity, a different scale; abuse_status is reputation_status; policy fields are dmarc_policy; health_state and grade are the categories of the same name.

- Permission: `analytics:read`
- Key scope: `read`, `full`

### Example request

```bash
curl "https://api.dmarcguard.io/api/v1/enums" \
  -H "Authorization: Bearer dg_your_key"
```

### Response

An object keyed by name; each value is an array of these entries.

| Field | Type | Notes |
| --- | --- | --- |
| `code` | `string` | The value that appears on the wire in this category's fields. Match on this, never on the label. |
| `label` | `string` | How DMARCguard writes the code for a reader. Safe to display; it may be reworded between releases. |
| `severity` | `string` (optional) | Suggested tone for the entry, where the category defines one: neutral, success, info, warning or critical. |
| `deliverable` | `boolean` (optional) | True on an alert type that can be pushed to email, a webhook or a chat channel; the rest surface in the app only. |

### Errors

| Status | When |
| --- | --- |
| `401` | Missing, malformed, revoked, expired or not-entitled API key. |
| `403` | The key's scope or its owner's role does not allow this operation. |
| `429` | Hourly quota or an abuse limit exceeded; the body's code says which. Honour Retry-After. |
| `500` | Unexpected server error; retry with backoff. |
| `503` | A transient failure resolving the organization or reading storage; retry after a short pause. |

Plus the errors every request can return: https://dmarcguard.io/docs/api/v1/#errors