Skip to main content

REST API overview

Apart from being exposed via the UI, D1 functionality is also available via REST API. This document provides an overview of the available administration and repository endpoints by using the Open API and Swagger pages from the product itself as a base.

Accessing open API/Swagger

You can access Open API and Swagger by clicking the API link on the D1 landing page. You can open a repository API or administrator API:

Depending on the link you select on the landing page, Swagger UI will display different endpoints. You can select the following endpoints:

  • D1 Administration API - /api/v1/access.adx.admin
  • Repository API - /api/v1/access.adx.content.repositoryName


The API URLs which are used for calling D1 API endpoints are the following:

  • https://host:port/tribefire-services/api/v1/access.adx.admin/API_endpoint.

  • https://host:port/tribefire-services/api/v1/access.adx.content. repositoryName/API_endpoint

API endpoints are described in tables on this page.

Using open API/Swagger

When you decide on what to display, the Swagger UI displays a list of items of your interest based on the URL that you used.

Including session ID in Open API requests

To include the SessionId parameter in Open API requests, you must enable the Session ID option. To do that, go to your repository's API page, click the arrow under the Simple View, and then check the Session-ID box.

The image below shows how to enable session IDs in Open API requests.

List of items

The list contains REST API endpoints sorted in an alphabetical order. You can see HTTP methods and descriptions of the supported calls in the list:

Check the sections below for a list of all endpoints available in Administrator and Repository APIs, along with their equivalent UI functionality (if available).

HTTP codes

D1 REST API returns the following HTTP codes:

200Request evaluated successfully.

Note that for asynchronous requests, such as conversions, this information only means that the operation has been successfully started and NOT that it has been successfully completed. Consequently, HTTP code does not correspond to the actual status of the started job.
400Invalid input was given.
401Session ID was not found. See Authenticating to D1 for more details.
404Target resource not found.
500Server error.

D1 administration API

When you enter the Administrator API (available only with d1-admin, d1-root or tf-admin role), the endpoints described in this section are exposed via Swagger. The same functionality might be available in the UI.


Endpoints described in this section start with the endpoint type: api/v1/access.adx.admin/v1.

Export and import

The following endpoints represent services related to export and import of repository configuration data.

MethodDescriptionEndpointRequest query parametersForm dataReturns
GETExport repository configuration by IDs/export/configuration/sessionId,
repositoryIds (array) file with repository configuration
GETExport repository configuration by names/export/configuration/by-namessessionId, repositoryNames (array) file with repository configuration
GETExport repository configuration by technical name/export/configuration/by-technical-namesrepositoryTechnicalNames (array) file with repository configuration
POSTImport repository configuration/import/configurationnoneautoSync, importRepositoryOption, importUsers, resource, useRuntimeValues
POSTExport metadata by ID/repository/metadata/exportnonerepositoryIdMetadata export job ID
POSTImport metadata by ID/repository/metadata/importnoneimportFolderPath, repositoryIdMetadata import job ID

The export and import process is explained in more details in Exporting and importing repository configuration via REST.

For information about importing and exporting repository configuration, see Exporting and importing repository configuration via D1 UI.

Policy administration

The following endpoints represent services related to policy administration, explained in more details in Working with Policies with D1 REST API.

Request typeService descriptionEndpointRequest query parametersForm dataReturns
DELETEDelete Policies By Ids​​/policiessessionId, policyIdsnoneJob response quoting the duration of execution
DELETEDelete Policies By Technical Names​/policies​/by-technical-namessessionId, technicalNames (deletes all custom policies if empty!)noneJob response quoting the duration of execution
DELETEDelete Policy By Id​/policysessionId, policyIdnoneJob response quoting the duration of execution
DELETEDelete Policy By Technical Name/policy​/by-technical-namesessionId, `technicalName``noneJob response quoting the duration of execution
POSTCreate Default Type Policy/policy/default-typesessionIdname, defaultTypeNameMetadata of the created policy
POSTCreate Inheritance Policy/policy/inheritancesessionIdname, inheritAcl, inheritClassification, inheritCommonProperties, inheritPolicies, inheritTagsMetadata of the created policy
POSTCreate Type Restriction Policy/policy/type-restrictionsessionIdname, description, allowedTypeNames, deniedTypeNames, includeSubTypesMetadata of the created policy

Repository administration

The following endpoints represent services related to repository administration.

MethodEndpointDescriptionUI Equivalent
DELETE/repositoryDelete Repository By IdUse the Delete option in the D1 Administrator.
POST/repository/activateActivate By IdUse the Activate option in the Administrator.
POST/repository/by-templateCreate Repository By TemplateAssign the template while creating a new repository in the D1 Administrator.
POST/repository/cmisCreate Cmis RepositorySelect New/New CMIS Repository in the D1 Administrator.
POST/repository/dctmCreate Dctm RepositorySelect New/New DCTM Repository in the D1 Administrator.
POST/repository/deactivateDeactivate By IdUse the Deactivate option in the D1 Administrator.
POST/repository/standard-db-storageCreate Standard Repository By Db StorageSelect New/New Standard Repository, then assign db as storage type in the D1 Administrator.
POST/repository/standard-fs-storageCreate Standard Repository By Fs StorageSelect New/New Standard Repository, then assign fs as storage type in the Administrator.
POST/repository/synchronizeSynchronize Configuration RequestUse the Synchronize option in the D1 Administrator.

For information about repositories management via UI, see Repositories management.

Repository health

The following endpoints represent activities related to checking repository health.

GET/repository/connection-checkCheck Repository
GET/repository/connection-check/by-nameCheck Repository By Name
GET/repository/connection-check/by-technical-nameCheck Repository By Technical Name
GET/repository/deep-checkDeep Health Check
GET/repository/deep-check/by-nameDeep Health Check By Name
GET/repository/deep-check/by-technical-nameDeep Health Check By Technical Name

For information about how to use the UI equivalent of these endpoints, see Running Conversion Service and platform health checks.

User administration

These endpoints represent activities related to user, group, and role management.

DELETE/groupDelete Group By Id
GET/groupGet Group
POST/groupCreate Group
GET/group/by-nameGet Group By Name
POST/group/pictureAssign Picture By Group
GET/group/searchSearch Groups
DELETE/roleDelete Role By Id
GET/roleGet Role
POST/roleCreate Role
GETrole/by-nameGet Role By Name
GET/searchSearch Roles
DELETE/sessionClose Session
GET/sessionGet Session
GET/session/searchSearch Sessions
DELETE/userDelete User By Id
GET/userGet User
POST/userCreate User
GET/user/by-nameGet User By Name
GET/user/effective-rolesGet Effective Roles
POST/user/generateKeysGenerate Key Pair
GET/user/getKeysGet Key Pair
POST/user/pictureAssign Picture By User
GET/user/searchSearch Users

For information about how to use UI equivalents of the described API endpoints, see User management.

Repository API

When you enter the Repository API, the following endpoints are exposed via Swagger (note that the same functionality may be available in the UI).


Endpoints described in this section start with the endpoint type: /access.D1.content.repository_name/v1.

Access control

POST/acl/denyDeny access by Id
POST/acl/grantGrant access by Id

For information about controlling access via UI, see Access control.


Important: after creating a content, its version status is set to WORKING_COPY, which means it's checked out and can be updated. Only contents with this status can be updated, you will get an error otherwise. Delete operations should work regardless of the status. Remember to check in your contents when you're done updating them.

Use the endpoints described in Versioning to check out and check in contents.

MethodEndpointDescriptionUI Equivalent
DELETE/contentDelete Content By IdDeleting content
GET/contentGet Contentn/a
PATCH/contentUpdate Content By IdModifying content
POST/contentCreate ContentAdding content
POST/content-by-uriCreate Content By Urin/a
POST/contentsCreate multiple contentsAdding content, see also Creating Contents with REST.
POST/content/copyCopy Content By Idn/a
GET/content/downloadDownload Content By IdUse the download button in D1 Repository Explorer
POST/content/move Move Content By Idn/a
POST/content/reindexReindex Content by IdSee Content reindexing
POST/content/relocateRelocate Content by IdSee Relocating individual contents
DELETE/content/representationsDelete representations by IdSee Representations
GET/content/representationsGet representations by IdSee Representations
GET/content/representations/downloadDownload representations by IdSee Representations
GET/content/searchSearch ContentsUse the search bar in Explorer. For details, see Searching for contents.
GET/content/search-by-conditionSearch Contents By ConditionUse the advanced features of the search bar in D1 Repository Explorer.
GET/content/search-by-textSearch Content By TextUse the search bar in adx Repository Explorer. For details, see Searching for contents.
POST/content/signature/signSign Content By IdSee Signing documents with digital signature
POST/content/signature/verifyVerify Content Signature By IdSee Signing documents with digital signature (step 4)
POST/content/transferTransfer Content By Idn/a
DELETE/entryDelete Entry By Idn/a
GET/entryGet Entryn/a
PATCH/entryUpdate Entry By Idn/a
PUT/entry/moveMove Entry By Idn/a
GET/entry/searchSearch Entriesn/a
GET/entry/search-by-conditionSearch Entries By Conditionn/a
DELETE/entry/tagsDelete Tagsn/a
PATCH/entry/tagsAdd Tagsn/a
POST/entry/tagsSet Tagsn/a
DELETE/folderDelete Folder By IdWorking with folders.
GET/folderGet FolderWorking with folders.
PATCH/folderUpdate Folder By IdWorking with folders.
POST/folderCreate FolderWorking with folders.
PUT/folder/moveMove Folder By Idn/a
GET/folder/searchSearch FoldersUse the search bar when in folder menu.
GET/folder/search-by-conditionSearch Folders By ConditionUse the advanced search bar when in folder menu.


These endpoints relate to the document conversion operations available from within an D1 repository. Conversion requests are asynchronous - D1 will only return the job ID with code 200 (success), but this does NOT imply that the job itself was successful.


Do not confuse these endpoints with internal conversion operations available from the Conversion API.


You can define content specification in the body of a request - see Sending Conversion requests with new content specification. This option is not exposed via Swagger form.

POST/convert/apply-templateApply template to documents
POST/convert/documentCreate Document Representation By Id
POST/convert/extractExtract Text By Id
POST/convert/imageConvert To Image By Id
POST/convert/mergeMerge By Ids
POST/convert/merge-templatesMerge Templates By Ids
POST/convert/pdfConvert To Pdf By Id
POST/convert/splitSplit By Id
GET/convert/statusGet Job Status
POST/convert/watermarkApply Watermark By Id

For information about UI equivalents, see Viewing repository cache.


These endpoints provide content versioning for D1 functionality. See Versioning for more details on content versions.

POST/content/cancel-checkoutCancel Checkout By Id
POST/content/checkinCheckin By Id - sets status to CURRENT and updates the version number
POST/content/checkoutCheckout By Id - sets status to WORKING_COPY

For information about the UI equivalent, see Versioning.

Try it out in open API/Swagger

When you click on an entry and expand its details, you can click the Try it out button to test the REST call. Clicking this button enables you to fill in all the parameters, execute the query, and inspect the outcome in the Responses section directly in your browser.

If you try out the endpoints for REST calls which require a body to be passed, the body is already pre-populated with the resource's properties and their placeholder values.

When you tried out a REST call and you're satisfied with the result, you can copy the exact URL or Curl you need for this operation from the Responses section.