Skip to main content

Method

GET /v1/contract-templates

Query Parameters

locale
string
Return translations for the specified locale (alias: lang).
activeOnly
boolean
Filter to active templates only (defaults to false).
type
string
Filter by template type (customer, supplier, or partner).
limit
integer
Max items to return (1–100).
offset
integer
Number of records to skip for pagination (defaults to 0).

Headers

Authorization
string
Bearer token (requires contract-templates:read).

Request Example

curl "https://api.voyantcloud.com/v1/contract-templates?locale=fr&activeOnly=true" \
  -H "Authorization: Bearer $VOYANT_API_KEY"

Response

{
  "items": [
    {
      "id": "ct_01J0BE7Z3S494F9D4T3E2QJ0XR",
      "workspaceId": "ws_01HZYPM2QF2R8X9SZQ0J9SYBCN",
      "name": "Customer Master Agreement",
      "type": "customer",
      "description": "Standard customer contract",
      "templateJson": {
        "sections": [
          {
            "type": "paragraph",
            "text": "This Agreement is made between {{seller.name}} and {{buyer.name}}."
          }
        ]
      },
      "active": true,
      "createdBy": "usr_01GZK9NY7HRT3PYZ7X6XZD87JM",
      "createdAt": "2025-01-10T11:08:44.000Z",
      "updatedAt": "2025-03-05T16:32:18.000Z",
      "locale": "fr",
      "bodyHtml": "<p>Ce contrat lie {{seller.name}} à {{buyer.name}}.</p>",
      "variables": {
        "seller.name": "Seller legal entity",
        "buyer.name": "Buyer legal entity"
      }
    }
  ],
  "total": 1
}
When locale (or lang) is provided, the API merges the matching translation onto each template, adding locale, bodyHtml, and variables fields.