External API docs

Create deny rules

Block specific emails or phone numbers from appearing in your Openmart enrichment results.

Overview

Use this endpoint to add deny rules scoped to your API key. Any contact whose email or phone number matches one of your rules will be suppressed from future enrichment output, across:

  • find decision makers (find_people)
  • enrich known people (lookup_people)
  • find company emails (lookup_business_email)

Rules are de-duplicated server-side and scoped per-user, so you can safely replay the same request.

Before you start

Make sure you have:

  • an Openmart account
  • an API key
  • a tool to send API requests, such as Postman or curl

Authentication: send your key in the X-API-Key header. Authorization: Bearer <key> is also accepted. Deny rules are scoped per-user (per-key), so rules you create only apply to your own enrichment requests.

1

Example: Block two email addresses

Endpoint
POST https://api.openmart.ai/api/v2/deny-rules

Parameters

Parameter
type
Type
string (enum)
Required
Yes
Example
"email"
Description
Identifier kind. Must be exactly "email" or "phone"; any other value returns 400 detail:"Type must be one of [email phone]".
Parameter
values
Type
array[string]
Required
Yes
Example
["blocked@example.com"]
Description
Literal identifiers to add, remove, or check. Emails are matched case-insensitively at lookup time. Phones should be E.164 formatted.

cURL request

cURL
curl --request POST \
  --url https://api.openmart.ai/api/v2/deny-rules \
  --header 'Accept: application/json' \
  --header 'X-API-Key: <your_api_key>' \
  --header 'Content-Type: application/json' \
  --data '{
    "type": "email",
    "values": ["blocked@example.com", "spam@example.com"]
  }'

Response example

JSON
{
  "status": "success"
}

Key elements of the API response

Response element
status
Description
Always "success" on HTTP 200. Failures come back with a non-2xx status and a "detail" field instead of this envelope.

All request parameters

Request body for POST /api/v2/deny-rules. Both fields are required.

Request body

All three deny-rules endpoints (create, delete, check) share the same body shape.

typestring (enum)Required: Yes
Example: "email"

Identifier kind. Allowed: "email", "phone". Validated via binding:"required,oneof=email phone" — invalid values return HTTP 400 with {"detail":"Type must be one of [email phone]"}.

cURL example
cURL
curl --request POST \
  --url https://api.openmart.ai/api/v2/deny-rules \
  --header 'Accept: application/json' \
  --header 'X-API-Key: <your_api_key>' \
  --header 'Content-Type: application/json' \
  --data '{"type":"email","values":["blocked@example.com"]}'
valuesarray[string]Required: Yes
Example: ["blocked@example.com","spam@example.com"]

One or more literal identifiers. No wildcards. Rules are scoped per-user (via your API key), so another team’s rules do not affect you.

cURL example
cURL
curl --request POST \
  --url https://api.openmart.ai/api/v2/deny-rules \
  --header 'Accept: application/json' \
  --header 'X-API-Key: <your_api_key>' \
  --header 'Content-Type: application/json' \
  --data '{"type":"email","values":["blocked@example.com","spam@example.com"]}'
# Create Deny Rules

## Endpoint

POST https://api.openmart.ai/api/v2/deny-rules

## Description

Add deny rules scoped to your API key. Any email or phone matching one
of your rules is suppressed from future enrichment output across
find_people, lookup_people, and lookup_business_email. Safe to replay.

## Authentication

- `X-API-Key: <your_api_key>` (recommended)
- `Authorization: Bearer <your_api_key>` (also accepted)

## Request body

```json
{
  "type":   "email",
  "values": ["blocked@example.com", "spam@example.com"]
}
```

- `type` — required, must be exactly `"email"` or `"phone"`. Invalid
  values return HTTP 400 with `{"detail":"Type must be one of [email phone]"}`.
- `values` — required, one or more literal identifiers. No wildcards.

## Example Request

```bash
curl -X POST "https://api.openmart.ai/api/v2/deny-rules" \
  -H "Accept: application/json" \
  -H "X-API-Key: <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"type": "email", "values": ["blocked@example.com"]}'
```

## Example Response

```json
{
  "status": "success"
}
```

## Errors

- 400 — bad JSON or bad `type` (`{"detail":"..."}`)
- 401 — missing or invalid API key
- 500 — persistence failure