---
title: Collaboration API
description: "Reviews, approvals, scheduled publishing, style rules, glossary, and access control endpoints."
---

# Collaboration API

The collaboration API powers the dashboard's team workflow features. All endpoints require [authentication](/api-reference/authentication) and are relative to `/v1/projects/{projectId}`. See [Collaboration Features](/platform/collaboration) for the feature-level guide.

## Reviews

| Endpoint | Description |
|----------|-------------|
| `GET /reviews` | List review requests |
| `POST /reviews` | Create a review request for changed pages |
| `PATCH /reviews/{reviewId}` | Update status (`approved`, `changes_requested`, …) |

## Approval Gates & Approvals

Require sign-off before certain pages can be published.

| Endpoint | Description |
|----------|-------------|
| `GET /approval-gates` | List configured gates (path patterns + required approvers) |
| `POST /approval-gates` | Create a gate |
| `GET /approvals` | List pending approvals |
| `POST /approvals` | Request approval |
| `POST /approvals/{id}/approve` | Approve |
| `POST /approvals/{id}/reject` | Reject with a reason |

## Scheduled Publishing

| Endpoint | Description |
|----------|-------------|
| `GET /schedules` | List scheduled publishes |
| `POST /schedules` | Schedule content to go live at a future time |
| `DELETE /schedules/{scheduleId}` | Cancel a schedule |

## Preview Links

| Endpoint | Description |
|----------|-------------|
| `GET /previews` | List shareable preview links |
| `POST /previews` | Create a preview link (optionally password-protected / expiring) |
| `PATCH /previews/{previewId}` | Update or revoke |

## Style Rules & Linter

| Endpoint | Description |
|----------|-------------|
| `GET /linter` · `PUT /linter` | Get / update linter configuration |
| `GET /style-rules` | List custom style rules |
| `POST /style-rules` | Add a rule (terminology, tone, banned phrases) |
| `PATCH /style-rules/{ruleId}` · `DELETE /style-rules/{ruleId}` | Update / remove |
| `POST /lint` | Lint content on demand |
| `GET /lint-results` | Latest lint results |
| `POST /lint/auto-fix` | Apply automatic fixes |

## Glossary

| Endpoint | Description |
|----------|-------------|
| `GET /glossary` | List terms |
| `POST /glossary` | Add a term + definition |
| `PATCH /glossary/{termId}` · `DELETE /glossary/{termId}` | Update / remove |

Glossary terms are underlined with hover definitions on the deployed doc site and enforced by the linter for consistent terminology.

## Content Ownership

| Endpoint | Description |
|----------|-------------|
| `GET /ownership` | Page → owner assignments |
| `POST /ownership` | Assign an owner to a path pattern |
| `GET /ownership/stale` | Owned pages that have gone stale |

## Access Control

| Endpoint | Description |
|----------|-------------|
| `GET /access-rules` · `POST /access-rules` | Path-based access rules |
| `PATCH /access-rules/{ruleId}` · `DELETE /access-rules/{ruleId}` | Update / remove |
| `GET /ip-allowlists` · `POST /ip-allowlists` | IP allowlists for gated docs |
| `POST /access-check` | Test whether a visitor would have access |
| `GET /access-logs` | Access audit log |

<Note>
For audience-based content gating (partner tiers, logged-in users), see [Audiences](/api-reference/audiences/list) and the [Audience Gating guide](/guides/audience-gating).
</Note>
