> ## Documentation Index
> Fetch the complete documentation index at: https://zerodrift.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# OpenAPI specification

> Machine-readable OpenAPI 3.0 spec for the public ZeroDrift API

The public ZeroDrift API is published as an OpenAPI 3.0 document. Use it to generate clients, import the API into Postman or similar tools, or give a language model a single file that describes every publicly documented endpoint.

<Card title="openapi.json" icon="file-code" href="/openapi.json" horizontal>
  Open or download the OpenAPI 3.0 spec (JSON).
</Card>

ZeroDrift serves this file at `/openapi.json` on the docs site. After deploy, that URL is:

```text theme={null}
https://zerodrift.mintlify.app/openapi.json
```

Fetch it with:

```bash theme={null}
curl https://zerodrift.mintlify.app/openapi.json
```

ZeroDrift also lists the spec in the auto-generated [`llms.txt`](https://zerodrift.mintlify.app/llms.txt) index, which AI tools use to discover pages and API files.

This spec covers Validate, Custom Policies, Activities, and Rule Packs.

## Operations

| Group           | Method  | Path                                               | Docs                                                                            |
| --------------- | ------- | -------------------------------------------------- | ------------------------------------------------------------------------------- |
| Validate        | `POST`  | `/api/v3/content/validate`                         | [Validate Content](/api-reference/validate/validate-content)                    |
| Validate        | `GET`   | `/api/v3/jobs/{job_id}`                            | [Get Validation Results](/api-reference/validate/get-results)                   |
| Custom Policies | `POST`  | `/api/policies/import`                             | [Import Policy](/api-reference/custom-policies/import-policy)                   |
| Custom Policies | `GET`   | `/api/policies/import`                             | [List Policy Imports](/api-reference/custom-policies/list-imports)              |
| Custom Policies | `POST`  | `/api/policies/import/presigned_url`               | [Get Import Presigned URL](/api-reference/custom-policies/import-presigned-url) |
| Custom Policies | `POST`  | `/api/policies/import/start`                       | [Start Import](/api-reference/custom-policies/start-import)                     |
| Custom Policies | `GET`   | `/api/policies/import/{import_id}`                 | [Get Import Details](/api-reference/custom-policies/get-import-details)         |
| Custom Policies | `PATCH` | `/api/policies/import/{import_id}/rules/{rule_id}` | [Edit Imported Rule](/api-reference/custom-policies/edit-imported-rule)         |
| Custom Policies | `POST`  | `/api/policies/import/{import_id}/activate`        | [Activate Rules](/api-reference/custom-policies/activate-rules)                 |
| Custom Policies | `GET`   | `/api/policies/rules`                              | [List Rules](/api-reference/custom-policies/list-rules)                         |
| Custom Policies | `POST`  | `/api/policies/rules`                              | [Create Custom Rule](/api-reference/custom-policies/create-rule)                |
| Custom Policies | `GET`   | `/api/policies/rules/{rule_id}`                    | [Get Custom Rule](/api-reference/custom-policies/get-rule)                      |
| Custom Policies | `PATCH` | `/api/policies/rules/{rule_id}`                    | [Edit Custom Rule](/api-reference/custom-policies/edit-rule)                    |
| Custom Policies | `POST`  | `/api/policies/rules/deactivate`                   | [Deactivate Rules](/api-reference/custom-policies/deactivate-rules)             |
| Custom Policies | `POST`  | `/api/policies/rules/activate`                     | [Reactivate Rules](/api-reference/custom-policies/reactivate-rules)             |
| Activities      | `GET`   | `/api/activities`                                  | [List Activities](/api-reference/activities/list-activities)                    |
| Activities      | `GET`   | `/api/activities/{activity_id}`                    | [Get Activity](/api-reference/activities/get-activity)                          |
| Rule Packs      | `GET`   | `/api/rulepacks/`                                  | [Rule Packs](/api-reference/rulepacks)                                          |

## Authentication

Every operation uses the `x-api-key` header. See [Introduction](/api-reference/introduction) for base URL, rate limits, and workflows.
