GET
/
v1
/
policies
Get all policies
curl --request GET \
  --url https://api.trycomp.ai/v1/policies \
  --header 'X-API-Key: <api-key>'
[
  {
    "id": "pol_abc123def456",
    "name": "Data Privacy Policy",
    "status": "draft",
    "content": [
      {
        "type": "paragraph",
        "content": [
          {
            "type": "text",
            "text": "..."
          }
        ]
      }
    ],
    "isRequiredToSign": true,
    "signedBy": [],
    "createdAt": "2024-01-01T00:00:00.000Z",
    "updatedAt": "2024-01-15T00:00:00.000Z",
    "organizationId": "org_abc123def456"
  }
]

Authorizations

X-API-Key
string
header
required

API key for authentication

Headers

X-Organization-Id
string

Organization ID (required for session auth, optional for API key auth)

Response

Policies retrieved successfully

id
string
required

The policy ID

Example:

"pol_abc123def456"

name
string
required

Name of the policy

Example:

"Data Privacy Policy"

description
string | null
required

Description of the policy

Example:

"This policy outlines how we handle and protect personal data"

status
enum<string>
required

Status of the policy

Available options:
draft,
published,
needs_review
Example:

"draft"

content
object[]
required

Content of the policy as TipTap JSON (array of nodes)

Example:
[
{
"type": "heading",
"attrs": { "level": 2, "textAlign": null },
"content": [{ "type": "text", "text": "Purpose" }]
},
{
"type": "paragraph",
"attrs": { "textAlign": null },
"content": [
{
"type": "text",
"text": "Verify workforce integrity and grant the right access at start, revoke at end."
}
]
}
]
frequency
enum<string> | null
required

Review frequency of the policy

Available options:
monthly,
quarterly,
yearly
Example:

"yearly"

department
enum<string> | null
required

Department this policy applies to

Available options:
none,
admin,
gov,
hr,
it,
itsm,
qms
Example:

"it"

isRequiredToSign
boolean
required

Whether this policy requires a signature

Example:

true

signedBy
string[]
required

List of user IDs who have signed this policy

Example:
["usr_123", "usr_456"]
reviewDate
string<date-time> | null
required

Review date for the policy

Example:

"2024-12-31T00:00:00.000Z"

isArchived
boolean
required

Whether this policy is archived

Example:

false

createdAt
string<date-time>
required

When the policy was created

Example:

"2024-01-01T00:00:00.000Z"

updatedAt
string<date-time>
required

When the policy was last updated

Example:

"2024-01-15T00:00:00.000Z"

lastArchivedAt
string<date-time> | null
required

When the policy was last archived

Example:

"2024-02-01T00:00:00.000Z"

lastPublishedAt
string<date-time> | null
required

When the policy was last published

Example:

"2024-01-10T00:00:00.000Z"

organizationId
string
required

Organization ID this policy belongs to

Example:

"org_abc123def456"

assigneeId
string | null
required

ID of the user assigned to this policy

Example:

"usr_abc123def456"

approverId
string | null
required

ID of the user who approved this policy

Example:

"usr_xyz789abc123"

policyTemplateId
string | null
required

ID of the policy template this policy is based on

Example:

"plt_template123"