Skip to main content
The ClearPolicy REST API gives you programmatic access to your organization’s people, documents, and attestation requests. All endpoints communicate over HTTPS and return JSON.

Base URL

https://api.clearpolicy.app/v1
The version prefix (v1) is included in every request URL. The current and only version is v1.

Authentication

All endpoints require a valid OAuth 2.0 bearer token. Pass the token in the Authorization header:
Authorization: Bearer YOUR_ACCESS_TOKEN
See Authentication for instructions on obtaining a token.

Response format

All responses are JSON. Successful responses return the requested resource or collection directly in the response body.

IDs

All resource IDs are ULIDs — lexicographically sortable string identifiers. They are represented as lowercase strings, for example:
01kg82xqfx6fvr046d15hnfmjv

Pagination

List endpoints return paginated results. The response includes a data array alongside links and meta objects:
{
  "data": [...],
  "links": {
    "first": "https://api.clearpolicy.app/v1/people?page=1",
    "last": "https://api.clearpolicy.app/v1/people?page=5",
    "prev": null,
    "next": "https://api.clearpolicy.app/v1/people?page=2"
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 5,
    "per_page": 25,
    "to": 25,
    "total": 120
  }
}
Use the page and per_page query parameters to navigate results. per_page accepts values between 1 and 100, and defaults to 25.

Errors

Errors return JSON with an error field describing the problem:
{
  "error": "Person not found."
}
Common HTTP status codes:
StatusMeaning
200 OKRequest succeeded.
201 CreatedResource created successfully.
400 Bad RequestThe request was invalid (e.g. document not published).
401 UnauthorizedMissing or invalid access token.
403 ForbiddenToken lacks required permissions.
404 Not FoundThe requested resource does not exist in your organization.
422 Unprocessable EntityValidation failed — check request parameters.

Rate limiting

Standard rate limiting applies to all API endpoints. If you exceed the limit, the API returns a 429 Too Many Requests response. Use exponential backoff when retrying.

Endpoints

GET /v1/me

Return the authenticated user and their organization.

People

List, create, and retrieve contacts in your organization.

Documents

List documents available for attestation.

Attestation requests

Send a document to a contact for acknowledgment or signature.
Last modified on April 12, 2026