# Document Resources API



<EndpointIndex
  names={[
  	'fetchDocumentResourceByName',
  	'createDocumentResource',
  	'updateDocument',
  	'fetchDocumentTemplate',
  	'createVelocityDocumentTemplate',
  	'updateVelocityDocumentTemplate',
  	'createLiquidDocumentTemplate',
  	'updateLiquidDocumentTemplate',
  	'fetchTemplate',
  	'uploadVelocity',
  	'updateVelocity',
  	'uploadLiquid',
  	'updateLiquid',
  	'addFont',
  ]}
  titles={{
  	fetchDocumentResourceByName: 'Fetch a Document Resource by Name',
  	createDocumentResource: 'Create a New Document Resource',
  	updateDocument: 'Update a Document Resource',
  	fetchDocumentTemplate: 'Fetch a Template',
  	createVelocityDocumentTemplate: 'Upload a Velocity Template',
  	updateVelocityDocumentTemplate: 'Update a Velocity Template',
  	createLiquidDocumentTemplate: 'Upload a Liquid Template',
  	updateLiquidDocumentTemplate: 'Update a Liquid Template',
  	fetchTemplate: 'Fetch a Template Snippet',
  	uploadVelocity: 'Upload a Velocity Template Snippet',
  	updateVelocity: 'Update a Velocity Template Snippet',
  	uploadLiquid: 'Upload a Liquid Template Snippet',
  	updateLiquid: 'Update a Liquid Template Snippet',
  	addFont: 'Add a custom font',
  }}
/>

Document Resources [#document-resources]

Fetch a Document Resource by Name [#fetch-a-document-resource-by-name]

<ApiEndpoint name="fetchDocumentResourceByName" title="Fetch a Document Resource by Name" />

Create a New Document Resource [#create-a-new-document-resource]

<ApiEndpoint name="createDocumentResource" title="Create a New Document Resource" />

Update a Document Resource [#update-a-document-resource]

<ApiEndpoint name="updateDocument" title="Update a Document Resource" />

<span id="document_template_creation_and_update_endpoints" />

Document Templates [#document-templates]

Fetch a Template [#fetch-a-template]

<ApiEndpoint name="fetchDocumentTemplate" title="Fetch a Template" />

Upload a Velocity Template [#upload-a-velocity-template]

<ApiEndpoint name="createVelocityDocumentTemplate" title="Upload a Velocity Template" />

Update a Velocity Template [#update-a-velocity-template]

<ApiEndpoint name="updateVelocityDocumentTemplate" title="Update a Velocity Template" />

Upload a Liquid Template [#upload-a-liquid-template]

<ApiEndpoint name="createLiquidDocumentTemplate" title="Upload a Liquid Template" />

Update a Liquid Template [#update-a-liquid-template]

<ApiEndpoint name="updateLiquidDocumentTemplate" title="Update a Liquid Template" />

<Callout>
  Document templates are limited to 5MB in size.
</Callout>

<ApiSchema name="StreamingResponseBody" />

Document Snippets [#document-snippets]

Fetch a Template Snippet [#fetch-a-template-snippet]

<ApiEndpoint name="fetchTemplate" title="Fetch a Template Snippet" />

Upload a Velocity Template Snippet [#upload-a-velocity-template-snippet]

<ApiEndpoint name="uploadVelocity" title="Upload a Velocity Template Snippet" />

Update a Velocity Template Snippet [#update-a-velocity-template-snippet]

<ApiEndpoint name="updateVelocity" title="Update a Velocity Template Snippet" />

Upload a Liquid Template Snippet [#upload-a-liquid-template-snippet]

<ApiEndpoint name="uploadLiquid" title="Upload a Liquid Template Snippet" />

Update a Liquid Template Snippet [#update-a-liquid-template-snippet]

<ApiEndpoint name="updateLiquid" title="Update a Liquid Template Snippet" />

Custom Fonts [#custom-fonts]

Add a custom font [#add-a-custom-font]

<ApiEndpoint name="addFont" title="Add a custom font" />- [Documents
API](/api/documents) - [Documents Configuration
Guide](/configuration/resources/documents)


## API Reference

GET /resource/{tenantLocator}/documents/{name} — fetchDocumentResourceByName
Tags: static-documents-controller
Permissions: read
Parameters:
  tenantLocator (uuid, path, required)
  name (string, path, required)
  byStaticName (boolean, query)
  date (datetime, query)
  jurisdiction (string, query)
Responses:
  200 — OK

POST /resource/{tenantLocator}/documents — createDocumentResource
Tags: static-documents-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  Content-Type (string, header, required)
  name (string, query, required)
  staticName (string, query, required)
  jurisdiction (string[], query)
Responses:
  200 — OK

PATCH /resource/{tenantLocator}/documents/{name} — updateDocument
Tags: static-documents-controller
Permissions: update
Parameters:
  tenantLocator (uuid, path, required)
  Content-Type (string, header, required)
  name (string, path, required)
Responses:
  200 — OK

GET /resource/{tenantLocator}/templates/{name} — fetchDocumentTemplate
Tags: templates-controller
Permissions: read
Parameters:
  tenantLocator (uuid, path, required)
  name (string, path, required)
  byStaticName (boolean, query)
  date (datetime, query)
  jurisdiction (string, query)
Responses:
  200 — OK

POST /resource/{tenantLocator}/templates/velocity — createVelocityDocumentTemplate
Tags: templates-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  name (string, query, required)
  staticName (string, query, required)
  jurisdiction (string[], query)
Responses:
  200 BasicResourceResponse — OK

PATCH /resource/{tenantLocator}/templates/velocity — updateVelocityDocumentTemplate
Tags: templates-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  name (string, query, required)
Responses:
  200 BasicResourceResponse — OK

POST /resource/{tenantLocator}/templates/liquid — createLiquidDocumentTemplate
Tags: templates-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  name (string, query, required)
  staticName (string, query, required)
  jurisdiction (string[], query)
Responses:
  200 BasicResourceResponse — OK

PATCH /resource/{tenantLocator}/templates/liquid — updateLiquidDocumentTemplate
Tags: templates-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  name (string, query, required)
Responses:
  200 BasicResourceResponse — OK

GET /resource/{tenantLocator}/templateSnippets/{name} — fetchTemplate
Tags: template-snippets-controller
Permissions: read
Parameters:
  tenantLocator (uuid, path, required)
  name (string, path, required)
  byStaticName (boolean, query)
  date (datetime, query)
  jurisdiction (string, query)
Responses:
  200 — OK

POST /resource/{tenantLocator}/templateSnippets/velocity — uploadVelocity
Tags: template-snippets-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  name (string, query, required)
  staticName (string, query, required)
  jurisdiction (string[], query)
Responses:
  200 BasicResourceResponse — OK

PATCH /resource/{tenantLocator}/templateSnippets/velocity — updateVelocity
Tags: template-snippets-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  name (string, query, required)
Responses:
  200 BasicResourceResponse — OK

POST /resource/{tenantLocator}/templateSnippets/liquid — uploadLiquid
Tags: template-snippets-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  name (string, query, required)
  staticName (string, query, required)
  jurisdiction (string[], query)
Responses:
  200 BasicResourceResponse — OK

PATCH /resource/{tenantLocator}/templateSnippets/liquid — updateLiquid
Tags: template-snippets-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  name (string, query, required)
Responses:
  200 BasicResourceResponse — OK

POST /resource/{tenantLocator}/fonts — addFont
Tags: font-controller
Permissions: upload
Parameters:
  tenantLocator (uuid, path, required)
  name (string, query, required)
  staticName (string, query, required)
  jurisdiction (string[], query)
Responses:
  200 — OK

StreamingResponseBody