Skip to content

Get a policy version

GET
/policies/{id}/versions/{versionId}
curl --request GET \
--url https://api.vendorica.com/v1/policies/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/versions/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--header 'Authorization: Bearer <token>'

One version, including bodyRichtext — the document itself, as a TipTap JSON node tree rather than HTML or Markdown. That is the stored form, and it is published as-is rather than rendered here: a server-side rendering would be a second answer to what the policy says, and the one a reader compares against the app would be whichever they happened to fetch.

id
required
string format: uuid
versionId
required
string format: uuid

Success

Media typeapplication/json
object
success
required
boolean
data
required
object
id
required
string format: uuid
policyId
required
string format: uuid
versionNumber
required
integer
locale
required
string
title
required
string
approvalStatus
required
string
publishedAt
required
string | null format: date-time
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
key
additional properties
timestamp
required
string format: date-time
requestId
string
message
string
Example
{
"success": true,
"data": {
"id": "03bdc489-6ebc-46d1-8495-dc9629ea39d6",
"policyId": "a180a5ff-3a85-4d47-83d8-a20c36071298",
"versionNumber": 1,
"locale": "string",
"title": "string",
"approvalStatus": "string",
"publishedAt": "2026-08-19T09:41:12.004Z",
"createdAt": "2026-08-19T09:41:12.004Z",
"updatedAt": "2026-08-19T09:41:12.004Z"
},
"timestamp": "2026-08-19T09:41:12.004Z",
"requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H",
"message": "string"
}

Validation error

Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{
"success": false,
"error": "Bad request",
"code": "BAD_REQUEST",
"timestamp": "2026-08-19T09:41:12.004Z",
"requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"
}

Unauthorized

Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{
"success": false,
"error": "Unauthorized",
"code": "UNAUTHORIZED",
"timestamp": "2026-08-19T09:41:12.004Z",
"requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"
}

Forbidden — missing scope

Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{
"success": false,
"error": "Forbidden",
"code": "FORBIDDEN",
"timestamp": "2026-08-19T09:41:12.004Z",
"requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"
}

Not found

Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{
"success": false,
"error": "Resource not found",
"code": "NOT_FOUND",
"timestamp": "2026-08-19T09:41:12.004Z",
"requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"
}

Rate limit exceeded

Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{
"success": false,
"error": "Too many requests",
"code": "TOO_MANY_REQUESTS",
"timestamp": "2026-08-19T09:41:12.004Z",
"requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"
}