NAV Navigation

📣 We're improving the Web API docs. Check out a preview.

Shell HTTP JavaScript Ruby Python PHP Java Go

TERMINALFOUR REST API v8.3.16-FINAL

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

The web service API for the TERMINALFOUR Content Management System.

Base URLs:

Email: TERMINALFOUR Web: TERMINALFOUR License: Apache 2.0

about

This functionality returns basic information about the system.

getDatabaseInformation

GET /about/database

Example responses

200 Response

{
  "jdbc": {
    "driverName": "string",
    "driverVersion": "string",
    "datasourceClass": "string",
    "connectionClass": "string"
  },
  "database": {
    "name": "string",
    "version": "string",
    "address": "string",
    "connectedUser": "string",
    "sqlSupport": "string",
    "transactions": true
  },
  "queryFactories": [
    "string"
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<InfoUtilsDatabaseObjectDTO>
  <jdbc>
    <driverName>string</driverName>
    <driverVersion>string</driverVersion>
    <datasourceClass>string</datasourceClass>
    <connectionClass>string</connectionClass>
  </jdbc>
  <database>
    <name>string</name>
    <version>string</version>
    <address>string</address>
    <connectedUser>string</connectedUser>
    <sqlSupport>string</sqlSupport>
    <transactions>true</transactions>
  </database>
  <queryFactories>string</queryFactories>
</InfoUtilsDatabaseObjectDTO>

Responses

Status Meaning Description Schema
200 OK successful operation InfoUtilsDatabaseObjectDTO

getEnvironmentInformation

GET /about/environment

Example responses

200 Response

{
  "environmentalVariables": {
    "property1": "string",
    "property2": "string"
  }
}
<?xml version="1.0" encoding="UTF-8" ?>
<InfoUtilsEnvironmentVariablesObjectDTO>
  <environmentalVariables>
    <property1>string</property1>
    <property2>string</property2>
  </environmentalVariables>
</InfoUtilsEnvironmentVariablesObjectDTO>

Responses

Status Meaning Description Schema
200 OK successful operation InfoUtilsEnvironmentVariablesObjectDTO

getGeneralInformation

GET /about/general

Example responses

200 Response

{
  "os": {
    "arch": "string",
    "name": "string",
    "version": "string",
    "systemTime": "string",
    "defaultEncoding": "string",
    "localHostname": "string"
  },
  "t4": {
    "version": {
      "version": null,
      "subMinor": null,
      "major": null,
      "minor": null
    },
    "dbPatchLevel": 0
  }
}
<?xml version="1.0" encoding="UTF-8" ?>
<InfoUtilsMetaDataDTO>
  <os>
    <arch>string</arch>
    <name>string</name>
    <version>string</version>
    <systemTime>string</systemTime>
    <defaultEncoding>string</defaultEncoding>
    <localHostname>string</localHostname>
  </os>
  <t4>
    <version>
      <version/>
      <subMinor/>
      <major/>
      <minor/>
    </version>
    <dbPatchLevel>0</dbPatchLevel>
  </t4>
</InfoUtilsMetaDataDTO>

Responses

Status Meaning Description Schema
200 OK successful operation InfoUtilsMetaDataDTO

getLicenceCountInformation

GET /about/licence

Example responses

200 Response

{
  "contentLimit": 0,
  "contentItemsInSystem": 0,
  "itemsCountedForLicence": 0,
  "remaining": 0
}
<?xml version="1.0" encoding="UTF-8" ?>
<InfoUtilsLicenceCountObjectDTO>
  <contentLimit>0</contentLimit>
  <contentItemsInSystem>0</contentItemsInSystem>
  <itemsCountedForLicence>0</itemsCountedForLicence>
  <remaining>0</remaining>
</InfoUtilsLicenceCountObjectDTO>

Responses

Status Meaning Description Schema
200 OK successful operation InfoUtilsLicenceCountObjectDTO

getListenerInformation

GET /about/listeners

Example responses

200 Response

{
  "siteManagerListeners": [
    {
      "property1": "string",
      "property2": "string"
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<InfoUtilsListenerObjectDTO>
  <siteManagerListeners>
    <property1>string</property1>
    <property2>string</property2>
  </siteManagerListeners>
</InfoUtilsListenerObjectDTO>

Responses

Status Meaning Description Schema
200 OK successful operation InfoUtilsListenerObjectDTO

getMetaInformation

GET /about/meta

Example responses

200 Response

{
  "os": {
    "arch": "string",
    "name": "string",
    "version": "string",
    "systemTime": "string",
    "defaultEncoding": "string",
    "localHostname": "string"
  },
  "t4": {
    "version": {
      "version": null,
      "subMinor": null,
      "major": null,
      "minor": null
    },
    "dbPatchLevel": 0
  }
}
<?xml version="1.0" encoding="UTF-8" ?>
<InfoUtilsMetaDataDTO>
  <os>
    <arch>string</arch>
    <name>string</name>
    <version>string</version>
    <systemTime>string</systemTime>
    <defaultEncoding>string</defaultEncoding>
    <localHostname>string</localHostname>
  </os>
  <t4>
    <version>
      <version/>
      <subMinor/>
      <major/>
      <minor/>
    </version>
    <dbPatchLevel>0</dbPatchLevel>
  </t4>
</InfoUtilsMetaDataDTO>

Responses

Status Meaning Description Schema
200 OK successful operation InfoUtilsMetaDataDTO

getStatisticsInformation

GET /about/totals

Example responses

200 Response

{
  "content": [
    {
      "property1": {},
      "property2": {}
    }
  ],
  "sections": {
    "property1": {},
    "property2": {}
  },
  "statistics": {
    "property1": {},
    "property2": {}
  }
}
<?xml version="1.0" encoding="UTF-8" ?>
<InfoUtilsStatisticsObjectDTO>
  <content>
    <property1/>
    <property2/>
  </content>
  <sections>
    <property1/>
    <property2/>
  </sections>
  <statistics>
    <property1/>
    <property2/>
  </statistics>
</InfoUtilsStatisticsObjectDTO>

Responses

Status Meaning Description Schema
200 OK successful operation InfoUtilsStatisticsObjectDTO

accesscontrolprofile

These endpoints provide the functionality for interacting with TERMINALFOUR's access control profiles.

list

GET /accesscontrolprofile

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [AccessControlProfileView] false none none

action

This endpoint describes returning the list of actions that can be carried out within the TERMINALFOUR system.

list

GET /action

Example responses

200 Response

[
  {
    "key": 0,
    "eventLabel": "string",
    "primaryGroup": {
      "id": 0,
      "name": "string"
    }
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<key>0</key>
<eventLabel>string</eventLabel>
<primaryGroup>
  <id>0</id>
  <name>string</name>
</primaryGroup>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [EventLogDto] false none none

analytics

Describes web service end points for the Analytics services.

getServices

GET /analytics

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "implClass": "string",
    "enabled": true,
    "default": true,
    "details": [
      {
        "id": null,
        "serviceID": null,
        "name": null,
        "value": null,
        "enabled": null
      }
    ]
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<implClass>string</implClass>
<enabled>true</enabled>
<default>true</default>
<details>
  <id/>
  <serviceID/>
  <name/>
  <value/>
  <enabled/>
</details>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [AnalyticsServiceMetaData] false none none

getAccounts

GET /analytics/{serviceID}/account

Parameters

Name In Type Required Description
serviceID path integer(int32) true none
type query integer(int32) false none
includeDisabled query boolean false none

Example responses

200 Response

[
  {
    "primaryGroup": {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    },
    "sharedGroups": [
      {
        "ownershipLevel": null,
        "group": null,
        "assetID": null,
        "groupID": null,
        "assetType": null,
        "readLevel": null,
        "groupName": null
      }
    ],
    "id": 0,
    "serviceID": 0,
    "authorized": true,
    "type": 0,
    "language": "string",
    "name": "string",
    "description": "string",
    "enabled": true,
    "sequence": 0,
    "parent": {
      "id": 0,
      "serviceID": 0,
      "type": 0,
      "language": "string",
      "name": "string",
      "description": "string",
      "enabled": true,
      "sequence": 0
    },
    "childIDs": [
      0
    ],
    "assignedChannels": [
      {
        "id": null,
        "serviceID": null,
        "language": null,
        "accountID": null,
        "channelID": null
      }
    ],
    "details": [
      {
        "id": null,
        "accountID": null,
        "name": null,
        "value": null,
        "enabled": null
      }
    ]
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<primaryGroup>
  <ownershipLevel>0</ownershipLevel>
  <group/>
  <assetID>0</assetID>
  <groupID>0</groupID>
  <assetType>0</assetType>
  <readLevel>0</readLevel>
  <groupName>string</groupName>
</primaryGroup>
<sharedGroups>
  <ownershipLevel/>
  <group/>
  <assetID/>
  <groupID/>
  <assetType/>
  <readLevel/>
  <groupName/>
</sharedGroups>
<id>0</id>
<serviceID>0</serviceID>
<authorized>true</authorized>
<type>0</type>
<language>string</language>
<name>string</name>
<description>string</description>
<enabled>true</enabled>
<sequence>0</sequence>
<parent>
  <id>0</id>
  <serviceID>0</serviceID>
  <type>0</type>
  <language>string</language>
  <name>string</name>
  <description>string</description>
  <enabled>true</enabled>
  <sequence>0</sequence>
</parent>
<childIDs>0</childIDs>
<assignedChannels>
  <id/>
  <serviceID/>
  <language/>
  <accountID/>
  <channelID/>
</assignedChannels>
<details>
  <id/>
  <accountID/>
  <name/>
  <value/>
  <enabled/>
</details>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [AnalyticsAccountDTO] false none none
» sharedGroups [AssetSharingInformation] false none none
» details [AnalyticsAccountDetail] false none none

addAccount

POST /analytics/{serviceID}/account

Parameters

Name In Type Required Description
serviceID path integer(int32) true none

Example responses

200 Response

{
  "primaryGroup": {
    "ownershipLevel": 0,
    "group": {
      "id": null,
      "name": null,
      "description": null,
      "emailAddress": null,
      "createDate": null,
      "enabled": null,
      "ldap": null,
      "defaultChannel": null,
      "deleted": null
    },
    "assetID": 0,
    "groupID": 0,
    "assetType": 0,
    "readLevel": 0,
    "groupName": "string"
  },
  "sharedGroups": [
    {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    }
  ],
  "id": 0,
  "serviceID": 0,
  "authorized": true,
  "type": 0,
  "language": "string",
  "name": "string",
  "description": "string",
  "enabled": true,
  "sequence": 0,
  "parent": {
    "id": 0,
    "serviceID": 0,
    "type": 0,
    "language": "string",
    "name": "string",
    "description": "string",
    "enabled": true,
    "sequence": 0
  },
  "childIDs": [
    0
  ],
  "assignedChannels": [
    {
      "id": {},
      "serviceID": 0,
      "language": "string",
      "accountID": 0,
      "channelID": 0
    }
  ],
  "details": [
    {
      "id": 0,
      "accountID": 0,
      "name": "string",
      "value": "string",
      "enabled": true
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<AnalyticsAccountDTO>
  <primaryGroup>
    <ownershipLevel>0</ownershipLevel>
    <group>
      <id/>
      <name/>
      <description/>
      <emailAddress/>
      <createDate/>
      <enabled/>
      <ldap/>
      <defaultChannel/>
      <deleted/>
    </group>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </primaryGroup>
  <sharedGroups>
    <ownershipLevel>0</ownershipLevel>
    <group/>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </sharedGroups>
  <id>0</id>
  <serviceID>0</serviceID>
  <authorized>true</authorized>
  <type>0</type>
  <language>string</language>
  <name>string</name>
  <description>string</description>
  <enabled>true</enabled>
  <sequence>0</sequence>
  <parent>
    <id>0</id>
    <serviceID>0</serviceID>
    <type>0</type>
    <language>string</language>
    <name>string</name>
    <description>string</description>
    <enabled>true</enabled>
    <sequence>0</sequence>
  </parent>
  <childIDs>0</childIDs>
  <assignedChannels>
    <id/>
    <serviceID>0</serviceID>
    <language>string</language>
    <accountID>0</accountID>
    <channelID>0</channelID>
  </assignedChannels>
  <details>
    <id>0</id>
    <accountID>0</accountID>
    <name>string</name>
    <value>string</value>
    <enabled>true</enabled>
  </details>
</AnalyticsAccountDTO>

Responses

Status Meaning Description Schema
200 OK successful operation AnalyticsAccountDTO

getAccount

GET /analytics/{serviceID}/account/{accountID}

Parameters

Name In Type Required Description
serviceID path integer(int32) true none
accountID path integer(int32) true none

Example responses

200 Response

{
  "primaryGroup": {
    "ownershipLevel": 0,
    "group": {
      "id": null,
      "name": null,
      "description": null,
      "emailAddress": null,
      "createDate": null,
      "enabled": null,
      "ldap": null,
      "defaultChannel": null,
      "deleted": null
    },
    "assetID": 0,
    "groupID": 0,
    "assetType": 0,
    "readLevel": 0,
    "groupName": "string"
  },
  "sharedGroups": [
    {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    }
  ],
  "id": 0,
  "serviceID": 0,
  "authorized": true,
  "type": 0,
  "language": "string",
  "name": "string",
  "description": "string",
  "enabled": true,
  "sequence": 0,
  "parent": {
    "id": 0,
    "serviceID": 0,
    "type": 0,
    "language": "string",
    "name": "string",
    "description": "string",
    "enabled": true,
    "sequence": 0
  },
  "childIDs": [
    0
  ],
  "assignedChannels": [
    {
      "id": {},
      "serviceID": 0,
      "language": "string",
      "accountID": 0,
      "channelID": 0
    }
  ],
  "details": [
    {
      "id": 0,
      "accountID": 0,
      "name": "string",
      "value": "string",
      "enabled": true
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<AnalyticsAccountDTO>
  <primaryGroup>
    <ownershipLevel>0</ownershipLevel>
    <group>
      <id/>
      <name/>
      <description/>
      <emailAddress/>
      <createDate/>
      <enabled/>
      <ldap/>
      <defaultChannel/>
      <deleted/>
    </group>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </primaryGroup>
  <sharedGroups>
    <ownershipLevel>0</ownershipLevel>
    <group/>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </sharedGroups>
  <id>0</id>
  <serviceID>0</serviceID>
  <authorized>true</authorized>
  <type>0</type>
  <language>string</language>
  <name>string</name>
  <description>string</description>
  <enabled>true</enabled>
  <sequence>0</sequence>
  <parent>
    <id>0</id>
    <serviceID>0</serviceID>
    <type>0</type>
    <language>string</language>
    <name>string</name>
    <description>string</description>
    <enabled>true</enabled>
    <sequence>0</sequence>
  </parent>
  <childIDs>0</childIDs>
  <assignedChannels>
    <id/>
    <serviceID>0</serviceID>
    <language>string</language>
    <accountID>0</accountID>
    <channelID>0</channelID>
  </assignedChannels>
  <details>
    <id>0</id>
    <accountID>0</accountID>
    <name>string</name>
    <value>string</value>
    <enabled>true</enabled>
  </details>
</AnalyticsAccountDTO>

Responses

Status Meaning Description Schema
200 OK successful operation AnalyticsAccountDTO

modifyAccount

PUT /analytics/{serviceID}/account/{accountID}

Parameters

Name In Type Required Description
serviceID path integer(int32) true none
accountID path integer(int32) true none

Example responses

200 Response

{
  "primaryGroup": {
    "ownershipLevel": 0,
    "group": {
      "id": null,
      "name": null,
      "description": null,
      "emailAddress": null,
      "createDate": null,
      "enabled": null,
      "ldap": null,
      "defaultChannel": null,
      "deleted": null
    },
    "assetID": 0,
    "groupID": 0,
    "assetType": 0,
    "readLevel": 0,
    "groupName": "string"
  },
  "sharedGroups": [
    {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    }
  ],
  "id": 0,
  "serviceID": 0,
  "authorized": true,
  "type": 0,
  "language": "string",
  "name": "string",
  "description": "string",
  "enabled": true,
  "sequence": 0,
  "parent": {
    "id": 0,
    "serviceID": 0,
    "type": 0,
    "language": "string",
    "name": "string",
    "description": "string",
    "enabled": true,
    "sequence": 0
  },
  "childIDs": [
    0
  ],
  "assignedChannels": [
    {
      "id": {},
      "serviceID": 0,
      "language": "string",
      "accountID": 0,
      "channelID": 0
    }
  ],
  "details": [
    {
      "id": 0,
      "accountID": 0,
      "name": "string",
      "value": "string",
      "enabled": true
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<AnalyticsAccountDTO>
  <primaryGroup>
    <ownershipLevel>0</ownershipLevel>
    <group>
      <id/>
      <name/>
      <description/>
      <emailAddress/>
      <createDate/>
      <enabled/>
      <ldap/>
      <defaultChannel/>
      <deleted/>
    </group>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </primaryGroup>
  <sharedGroups>
    <ownershipLevel>0</ownershipLevel>
    <group/>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </sharedGroups>
  <id>0</id>
  <serviceID>0</serviceID>
  <authorized>true</authorized>
  <type>0</type>
  <language>string</language>
  <name>string</name>
  <description>string</description>
  <enabled>true</enabled>
  <sequence>0</sequence>
  <parent>
    <id>0</id>
    <serviceID>0</serviceID>
    <type>0</type>
    <language>string</language>
    <name>string</name>
    <description>string</description>
    <enabled>true</enabled>
    <sequence>0</sequence>
  </parent>
  <childIDs>0</childIDs>
  <assignedChannels>
    <id/>
    <serviceID>0</serviceID>
    <language>string</language>
    <accountID>0</accountID>
    <channelID>0</channelID>
  </assignedChannels>
  <details>
    <id>0</id>
    <accountID>0</accountID>
    <name>string</name>
    <value>string</value>
    <enabled>true</enabled>
  </details>
</AnalyticsAccountDTO>

Responses

Status Meaning Description Schema
200 OK successful operation AnalyticsAccountDTO

deleteAccount

DELETE /analytics/{serviceID}/account/{accountID}

Parameters

Name In Type Required Description
serviceID path integer(int32) true none
accountID path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

getAuthorisationData

GET /analytics/{serviceID}/account/{accountID}/authorisation

Parameters

Name In Type Required Description
serviceID path integer(int32) true none
accountID path integer(int32) true none

Example responses

200 Response

{
  "property1": {},
  "property2": {}
}
<?xml version="1.0" encoding="UTF-8" ?>
<property1/>
<property2/>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
» additionalProperties object false none none

deleteAuthorisationData

DELETE /analytics/{serviceID}/account/{accountID}/authorisation

Parameters

Name In Type Required Description
serviceID path integer(int32) true none
accountID path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

apikey

listAPIKeys

GET /apikey

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "active": true,
    "deleted": true,
    "secret": [
      "string"
    ],
    "userId": 0,
    "lastModifiedBy": 0,
    "dateModified": "2019-08-24T14:15:22Z",
    "dateCreated": "2019-08-24T14:15:22Z",
    "invalidationDate": "2019-08-24T14:15:22Z",
    "expired": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<active>true</active>
<deleted>true</deleted>
<secret>string</secret>
<userId>0</userId>
<lastModifiedBy>0</lastModifiedBy>
<dateModified>2019-08-24T14:15:22Z</dateModified>
<dateCreated>2019-08-24T14:15:22Z</dateCreated>
<invalidationDate>2019-08-24T14:15:22Z</invalidationDate>
<expired>true</expired>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [APIKeyDTO] false none none

createAPIKey

POST /apikey

Example responses

200 Response

{
  "apiKeyMetadata": {
    "id": 0,
    "name": "string",
    "active": true,
    "deleted": true,
    "secret": [
      "string"
    ],
    "userId": 0,
    "lastModifiedBy": 0,
    "dateModified": "2019-08-24T14:15:22Z",
    "dateCreated": "2019-08-24T14:15:22Z",
    "invalidationDate": "2019-08-24T14:15:22Z",
    "expired": true
  },
  "apiKey": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<InitialAPIKeyDTO>
  <apiKeyMetadata>
    <id>0</id>
    <name>string</name>
    <active>true</active>
    <deleted>true</deleted>
    <secret>string</secret>
    <userId>0</userId>
    <lastModifiedBy>0</lastModifiedBy>
    <dateModified>2019-08-24T14:15:22Z</dateModified>
    <dateCreated>2019-08-24T14:15:22Z</dateCreated>
    <invalidationDate>2019-08-24T14:15:22Z</invalidationDate>
    <expired>true</expired>
  </apiKeyMetadata>
  <apiKey>string</apiKey>
</InitialAPIKeyDTO>

Responses

Status Meaning Description Schema
200 OK successful operation InitialAPIKeyDTO

listExistingAPIKeys

GET /apikey/existing

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "active": true,
    "deleted": true,
    "secret": [
      "string"
    ],
    "userId": 0,
    "lastModifiedBy": 0,
    "dateModified": "2019-08-24T14:15:22Z",
    "dateCreated": "2019-08-24T14:15:22Z",
    "invalidationDate": "2019-08-24T14:15:22Z",
    "expired": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<active>true</active>
<deleted>true</deleted>
<secret>string</secret>
<userId>0</userId>
<lastModifiedBy>0</lastModifiedBy>
<dateModified>2019-08-24T14:15:22Z</dateModified>
<dateCreated>2019-08-24T14:15:22Z</dateCreated>
<invalidationDate>2019-08-24T14:15:22Z</invalidationDate>
<expired>true</expired>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [APIKeyDTO] false none none

list

POST /apikey/list

Example responses

200 Response

{
  "draw": 0,
  "recordsTotal": 0,
  "recordsFiltered": 0,
  "data": [
    {
      "id": 0,
      "name": "string",
      "active": true,
      "deleted": true,
      "secret": [
        null
      ],
      "userId": 0,
      "lastModifiedBy": 0,
      "dateModified": "2019-08-24T14:15:22Z",
      "dateCreated": "2019-08-24T14:15:22Z",
      "invalidationDate": "2019-08-24T14:15:22Z",
      "expired": true
    }
  ],
  "error": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<TableDataResponseStructureAPIKeyDTO>
  <draw>0</draw>
  <recordsTotal>0</recordsTotal>
  <recordsFiltered>0</recordsFiltered>
  <data>
    <id>0</id>
    <name>string</name>
    <active>true</active>
    <deleted>true</deleted>
    <secret/>
    <userId>0</userId>
    <lastModifiedBy>0</lastModifiedBy>
    <dateModified>2019-08-24T14:15:22Z</dateModified>
    <dateCreated>2019-08-24T14:15:22Z</dateCreated>
    <invalidationDate>2019-08-24T14:15:22Z</invalidationDate>
    <expired>true</expired>
  </data>
  <error>string</error>
</TableDataResponseStructureAPIKeyDTO>

Responses

Status Meaning Description Schema
200 OK successful operation TableDataResponseStructureAPIKeyDTO

listByUser

GET /apikey/list/{user}

Parameters

Name In Type Required Description
user path integer(int32) true none
startAt query integer(int32) false none
fetch query integer(int32) false none
filterBy query string false none
sortBy query string false none
inOrder query string false none
deleted query boolean false none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "active": true,
    "deleted": true,
    "secret": [
      "string"
    ],
    "userId": 0,
    "lastModifiedBy": 0,
    "dateModified": "2019-08-24T14:15:22Z",
    "dateCreated": "2019-08-24T14:15:22Z",
    "invalidationDate": "2019-08-24T14:15:22Z",
    "expired": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<active>true</active>
<deleted>true</deleted>
<secret>string</secret>
<userId>0</userId>
<lastModifiedBy>0</lastModifiedBy>
<dateModified>2019-08-24T14:15:22Z</dateModified>
<dateCreated>2019-08-24T14:15:22Z</dateCreated>
<invalidationDate>2019-08-24T14:15:22Z</invalidationDate>
<expired>true</expired>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [APIKeyDTO] false none none

getAPIKey

GET /apikey/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "active": true,
  "deleted": true,
  "secret": [
    "string"
  ],
  "userId": 0,
  "lastModifiedBy": 0,
  "dateModified": "2019-08-24T14:15:22Z",
  "dateCreated": "2019-08-24T14:15:22Z",
  "invalidationDate": "2019-08-24T14:15:22Z",
  "expired": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<APIKeyDTO>
  <id>0</id>
  <name>string</name>
  <active>true</active>
  <deleted>true</deleted>
  <secret>string</secret>
  <userId>0</userId>
  <lastModifiedBy>0</lastModifiedBy>
  <dateModified>2019-08-24T14:15:22Z</dateModified>
  <dateCreated>2019-08-24T14:15:22Z</dateCreated>
  <invalidationDate>2019-08-24T14:15:22Z</invalidationDate>
  <expired>true</expired>
</APIKeyDTO>

Responses

Status Meaning Description Schema
200 OK successful operation APIKeyDTO

modifyAPIKey

PUT /apikey/{id}

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "active": true,
  "deleted": true,
  "secret": [
    "string"
  ],
  "userId": 0,
  "lastModifiedBy": 0,
  "dateModified": "2019-08-24T14:15:22Z",
  "dateCreated": "2019-08-24T14:15:22Z",
  "invalidationDate": "2019-08-24T14:15:22Z",
  "expired": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<APIKeyDTO>
  <id>0</id>
  <name>string</name>
  <active>true</active>
  <deleted>true</deleted>
  <secret>string</secret>
  <userId>0</userId>
  <lastModifiedBy>0</lastModifiedBy>
  <dateModified>2019-08-24T14:15:22Z</dateModified>
  <dateCreated>2019-08-24T14:15:22Z</dateCreated>
  <invalidationDate>2019-08-24T14:15:22Z</invalidationDate>
  <expired>true</expired>
</APIKeyDTO>

Responses

Status Meaning Description Schema
200 OK successful operation APIKeyDTO

deleteAPIKey

DELETE /apikey/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

patchAPIKey

PATCH /apikey/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "active": true,
  "deleted": true,
  "secret": [
    "string"
  ],
  "userId": 0,
  "lastModifiedBy": 0,
  "dateModified": "2019-08-24T14:15:22Z",
  "dateCreated": "2019-08-24T14:15:22Z",
  "invalidationDate": "2019-08-24T14:15:22Z",
  "expired": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<APIKeyDTO>
  <id>0</id>
  <name>string</name>
  <active>true</active>
  <deleted>true</deleted>
  <secret>string</secret>
  <userId>0</userId>
  <lastModifiedBy>0</lastModifiedBy>
  <dateModified>2019-08-24T14:15:22Z</dateModified>
  <dateCreated>2019-08-24T14:15:22Z</dateCreated>
  <invalidationDate>2019-08-24T14:15:22Z</invalidationDate>
  <expired>true</expired>
</APIKeyDTO>

Responses

Status Meaning Description Schema
200 OK successful operation APIKeyDTO

authmethod

These endpoints allow the viewing, listing, and modification of existing authentication methods in the TERMINALFOUR system.

list

GET /authmethod

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "javaClass": "string",
    "enabled": true,
    "updateUserRecord": true,
    "authMethodMappings": {
      "property1": "string",
      "property2": "string"
    },
    "deactivateUserRecord": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<javaClass>string</javaClass>
<enabled>true</enabled>
<updateUserRecord>true</updateUserRecord>
<authMethodMappings>
  <property1>string</property1>
  <property2>string</property2>
</authMethodMappings>
<deactivateUserRecord>true</deactivateUserRecord>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [AuthenticationMethod] false none none

get

GET /authmethod/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "javaClass": "string",
  "enabled": true,
  "updateUserRecord": true,
  "authMethodMappings": {
    "property1": "string",
    "property2": "string"
  },
  "deactivateUserRecord": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<AuthenticationMethod>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <javaClass>string</javaClass>
  <enabled>true</enabled>
  <updateUserRecord>true</updateUserRecord>
  <authMethodMappings>
    <property1>string</property1>
    <property2>string</property2>
  </authMethodMappings>
  <deactivateUserRecord>true</deactivateUserRecord>
</AuthenticationMethod>

Responses

Status Meaning Description Schema
200 OK successful operation AuthenticationMethod

modify

PUT /authmethod/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "javaClass": "string",
  "enabled": true,
  "updateUserRecord": true,
  "authMethodMappings": {
    "property1": "string",
    "property2": "string"
  },
  "deactivateUserRecord": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<AuthenticationMethod>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <javaClass>string</javaClass>
  <enabled>true</enabled>
  <updateUserRecord>true</updateUserRecord>
  <authMethodMappings>
    <property1>string</property1>
    <property2>string</property2>
  </authMethodMappings>
  <deactivateUserRecord>true</deactivateUserRecord>
</AuthenticationMethod>

Responses

Status Meaning Description Schema
200 OK successful operation AuthenticationMethod

automirrorcontentconfig

Provides web service end points for operations around auto mirroring of content.

updateAutoMirrorContentConfiguration

POST /automirrorcontentconfig/updateList/{language}

Parameters

Name In Type Required Description
language path string true none

Responses

Status Meaning Description Schema
default Default successful operation None

getListAndItems

GET /automirrorcontentconfig/{language}

Parameters

Name In Type Required Description
language path string true none

Example responses

200 Response

[
  {
    "listID": 0,
    "listName": "string",
    "language": "string",
    "items": [
      {
        "id": null,
        "name": null,
        "sectionID": null
      }
    ],
    "mirror": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<listID>0</listID>
<listName>string</listName>
<language>string</language>
<items>
  <id/>
  <name/>
  <sectionID/>
</items>
<mirror>true</mirror>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [AutoMirrorContentConfigDTO] false none none

brokenlink

Provides core web services for managing broken links configuration within the TERMINALFOUR system.

getAllExcludedUrls

GET /brokenlink

Example responses

200 Response

[
  "string"
]
<?xml version="1.0" encoding="UTF-8" ?>string

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

updateBrokenLinkConfiguration

POST /brokenlink

Responses

Status Meaning Description Schema
default Default successful operation None

getExternalLinkChecker

GET /brokenlink/externallinkchecker

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "status": 0,
  "creationDate": "2019-08-24T14:15:22Z",
  "nextDue": "2019-08-24T14:15:22Z",
  "fixedRate": true,
  "executionInterval": 0,
  "executionCount": 0,
  "alert": {
    "id": 0,
    "from": 0,
    "header": "string",
    "message": "string",
    "level": 0,
    "type": "DEFAULT",
    "userRecipients": [
      0
    ],
    "groupRecipients": [
      0
    ],
    "dispatchMedia": [
      0
    ],
    "emailRecipients": [
      "string"
    ],
    "emailSender": "string",
    "attachments": [
      "string"
    ],
    "recipients": [
      0
    ]
  },
  "parameters": {
    "property1": {
      "scheduledJob": {},
      "key": "string",
      "value": "string"
    },
    "property2": {
      "scheduledJob": {},
      "key": "string",
      "value": "string"
    }
  },
  "maximumExecutions": 0,
  "jobDescription": "string",
  "jobName": "string",
  "jobKey": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<schedule>
  <id>0</id>
  <name>string</name>
  <status>0</status>
  <creationDate>2019-08-24T14:15:22Z</creationDate>
  <nextDue>2019-08-24T14:15:22Z</nextDue>
  <fixedRate>true</fixedRate>
  <executionInterval>0</executionInterval>
  <executionCount>0</executionCount>
  <alert>
    <id>0</id>
    <from>0</from>
    <header>string</header>
    <message>string</message>
    <level>0</level>
    <type>DEFAULT</type>
    <userRecipients>0</userRecipients>
    <groupRecipients>0</groupRecipients>
    <dispatchMedia>0</dispatchMedia>
    <emailRecipients>string</emailRecipients>
    <emailSender>string</emailSender>
    <attachments>string</attachments>
    <recipients>0</recipients>
  </alert>
  <parameters>
    <property1>
      <scheduledJob/>
      <key>string</key>
      <value>string</value>
    </property1>
    <property2>
      <scheduledJob/>
      <key>string</key>
      <value>string</value>
    </property2>
  </parameters>
  <maximumExecutions>0</maximumExecutions>
  <jobDescription>string</jobDescription>
  <jobName>string</jobName>
  <jobKey>string</jobKey>
</schedule>

Responses

Status Meaning Description Schema
200 OK successful operation ScheduledJob

updateExternalLinkChecker

POST /brokenlink/externallinkchecker/{cancelJob}/{scheduleId}

Parameters

Name In Type Required Description
cancelJob path boolean true none
scheduleId path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

channel

Provides endpoints for web service operations on Channels within the TERMINALFOUR system.

list

GET /channel

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "pendingVersionOutputDir": "string",
    "rootSectionID": 0,
    "hasPendingVersion": true,
    "editable": true,
    "microSites": [
      {
        "id": null,
        "name": null,
        "description": null,
        "pendingVersionOutputDir": null,
        "rootSectionID": null,
        "hasPendingVersion": null,
        "editable": null,
        "microSites": null,
        "parentID": null
      }
    ],
    "parentID": 0
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<pendingVersionOutputDir>string</pendingVersionOutputDir>
<rootSectionID>0</rootSectionID>
<hasPendingVersion>true</hasPendingVersion>
<editable>true</editable>
<microSites>
  <id/>
  <name/>
  <description/>
  <pendingVersionOutputDir/>
  <rootSectionID/>
  <hasPendingVersion/>
  <editable/>
  <microSites/>
  <parentID/>
</microSites>
<parentID>0</parentID>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ChannelMetaData] false none none

save

POST /channel

Example responses

200 Response

{
  "id": 0,
  "description": "string",
  "name": "string",
  "parentID": 0,
  "fullName": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<ChannelDTO>
  <id>0</id>
  <description>string</description>
  <name>string</name>
  <parentID>0</parentID>
  <fullName>string</fullName>
</ChannelDTO>

Responses

Status Meaning Description Schema
200 OK successful operation ChannelDTO

getDefaultChannelPreviewIDsForCurrentUser

POST /channel/defaultPreviewIDs

Example responses

200 Response

[
  0
]
<?xml version="1.0" encoding="UTF-8" ?>0

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

validatePxlFolder

POST /channel/inputvalidation/channelpxlfolder

Example responses

200 Response

{
  "value": "string",
  "inputIsValid": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<ChannelPxlFolderDTO>
  <value>string</value>
  <inputIsValid>true</inputIsValid>
</ChannelPxlFolderDTO>

Responses

Status Meaning Description Schema
200 OK successful operation ChannelPxlFolderDTO

getPageLayout

GET /channel/pageLayout/{channelID}/{sectionID}

Parameters

Name In Type Required Description
channelID path integer(int32) true none
sectionID path integer(int32) true none

Example responses

200 Response

{
  "channelID": 0,
  "sectionID": 0,
  "pageLayoutID": 0,
  "inheritablePageLayoutID": 0
}
<?xml version="1.0" encoding="UTF-8" ?>
<AppliedPageLayoutDTO>
  <channelID>0</channelID>
  <sectionID>0</sectionID>
  <pageLayoutID>0</pageLayoutID>
  <inheritablePageLayoutID>0</inheritablePageLayoutID>
</AppliedPageLayoutDTO>

Responses

Status Meaning Description Schema
200 OK successful operation AppliedPageLayoutDTO

listPublishables

GET /channel/publishables/{sectionID}/{action}

Parameters

Name In Type Required Description
sectionID path integer(int32) true none
action path string true none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "pendingVersionOutputDir": "string",
    "rootSectionID": 0,
    "hasPendingVersion": true,
    "editable": true,
    "microSites": [
      {
        "id": null,
        "name": null,
        "description": null,
        "pendingVersionOutputDir": null,
        "rootSectionID": null,
        "hasPendingVersion": null,
        "editable": null,
        "microSites": null,
        "parentID": null
      }
    ],
    "parentID": 0
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<pendingVersionOutputDir>string</pendingVersionOutputDir>
<rootSectionID>0</rootSectionID>
<hasPendingVersion>true</hasPendingVersion>
<editable>true</editable>
<microSites>
  <id/>
  <name/>
  <description/>
  <pendingVersionOutputDir/>
  <rootSectionID/>
  <hasPendingVersion/>
  <editable/>
  <microSites/>
  <parentID/>
</microSites>
<parentID>0</parentID>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ChannelMetaData] false none none

getRootChannels

GET /channel/root

Example responses

200 Response

[
  {
    "id": 0,
    "description": "string",
    "name": "string",
    "parentID": 0,
    "fullName": "string"
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<description>string</description>
<name>string</name>
<parentID>0</parentID>
<fullName>string</fullName>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ChannelDTO] false none none

get

GET /channel/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "description": "string",
  "name": "string",
  "parentID": 0,
  "fullName": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<ChannelDTO>
  <id>0</id>
  <description>string</description>
  <name>string</name>
  <parentID>0</parentID>
  <fullName>string</fullName>
</ChannelDTO>

Responses

Status Meaning Description Schema
200 OK successful operation ChannelDTO

modify

PUT /channel/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

delete

DELETE /channel/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

resetChannelContent

POST /channel/{id}/content/reset

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

getResetContentsForChannel

GET /channel/{id}/content/reset/{language}

Parameters

Name In Type Required Description
id path integer(int32) true none
language path string true none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "sections": {
      "property1": "string",
      "property2": "string"
    },
    "sectionID": 0
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<sections>
  <property1>string</property1>
  <property2>string</property2>
</sections>
<sectionID>0</sectionID>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ResetChannelContent] false none none

resetSecondLevelLayouts

POST /channel/{id}/resetLayouts

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

clusterconfig

Provides core web services for managing clustering configurations within the TERMINALFOUR system.

getAllClusteredServers

GET /clusterconfig

Example responses

200 Response

[
  {
    "serverName": "string",
    "sourcePort": 0,
    "destinationPort": 0,
    "useAsScheduledServer": true,
    "useAsSearchIndexServer": true,
    "newName": "string",
    "modified": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<serverName>string</serverName>
<sourcePort>0</sourcePort>
<destinationPort>0</destinationPort>
<useAsScheduledServer>true</useAsScheduledServer>
<useAsSearchIndexServer>true</useAsSearchIndexServer>
<newName>string</newName>
<modified>true</modified>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ClusteredServerDTO] false none none

addOrModify

POST /clusterconfig

Example responses

200 Response

{
  "serverName": "string",
  "sourcePort": 0,
  "destinationPort": 0,
  "useAsScheduledServer": true,
  "useAsSearchIndexServer": true,
  "newName": "string",
  "modified": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<cluster>
  <serverName>string</serverName>
  <sourcePort>0</sourcePort>
  <destinationPort>0</destinationPort>
  <useAsScheduledServer>true</useAsScheduledServer>
  <useAsSearchIndexServer>true</useAsSearchIndexServer>
  <newName>string</newName>
  <modified>true</modified>
</cluster>

Responses

Status Meaning Description Schema
200 OK successful operation ClusteredServerDTO

get

GET /clusterconfig/cluster

Parameters

Name In Type Required Description
serverName query string false none

Example responses

200 Response

{
  "serverName": "string",
  "sourcePort": 0,
  "destinationPort": 0,
  "useAsScheduledServer": true,
  "useAsSearchIndexServer": true,
  "newName": "string",
  "modified": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<cluster>
  <serverName>string</serverName>
  <sourcePort>0</sourcePort>
  <destinationPort>0</destinationPort>
  <useAsScheduledServer>true</useAsScheduledServer>
  <useAsSearchIndexServer>true</useAsSearchIndexServer>
  <newName>string</newName>
  <modified>true</modified>
</cluster>

Responses

Status Meaning Description Schema
200 OK successful operation ClusteredServerDTO

delete

DELETE /clusterconfig/{serverName}

Parameters

Name In Type Required Description
serverName path string true none

Responses

Status Meaning Description Schema
default Default successful operation None

cmssearch

Provides the search functionality for the TERMINALFOUR system.

GET /cmssearch

Parameters

Name In Type Required Description
query query string false none
maxResults query integer(int32) false none
allLanguages query boolean false none
allVersions query boolean false none

Example responses

200 Response

[
  {
    "type": "string",
    "path": "string",
    "id": 0,
    "lang": "string",
    "lastModified": "string",
    "name": "string",
    "status": "string",
    "smName": "string",
    "version": "string",
    "sectionId": 0,
    "title": "string",
    "template": "string",
    "expired": true,
    "lastModifiedBy": "string",
    "readOnly": true,
    "content": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<type>string</type>
<path>string</path>
<id>0</id>
<lang>string</lang>
<lastModified>string</lastModified>
<name>string</name>
<status>string</status>
<smName>string</smName>
<version>string</version>
<sectionId>0</sectionId>
<title>string</title>
<template>string</template>
<expired>true</expired>
<lastModifiedBy>string</lastModifiedBy>
<readOnly>true</readOnly>
<content>true</content>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [SearchResponse] false none none

config

These web service endpoints describe the operations on configuration options within the TERMINALFOUR system.

getAll

GET /config

Example responses

200 Response

{
  "options": [
    {
      "name": "string",
      "type": "string",
      "value": {},
      "valueList": [
        null
      ],
      "valueMap": [
        null
      ]
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<ConfigurationOptions>
  <options>
    <name>string</name>
    <type>string</type>
    <value/>
    <valueList/>
    <valueMap/>
  </options>
</ConfigurationOptions>

Responses

Status Meaning Description Schema
200 OK successful operation ConfigurationOptions

addOrModify

PUT /config/{key}

Parameters

Name In Type Required Description
key path string true none

Example responses

200 Response

{
  "name": "string",
  "type": "string",
  "value": {},
  "valueList": [
    {}
  ],
  "valueMap": [
    {
      "property1": {},
      "property2": {}
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<ConfigurationOptionDTO>
  <name>string</name>
  <type>string</type>
  <value/>
  <valueList/>
  <valueMap>
    <property1/>
    <property2/>
  </valueMap>
</ConfigurationOptionDTO>

Responses

Status Meaning Description Schema
200 OK successful operation ConfigurationOptionDTO

updateChannelMapping

POST /config/updateTransferChannel/{key}

Parameters

Name In Type Required Description
key path string true none

Responses

Status Meaning Description Schema
default Default successful operation None

get

GET /config/{key}

Parameters

Name In Type Required Description
key path string true none

Example responses

200 Response

{
  "name": "string",
  "type": "string",
  "value": {},
  "valueList": [
    {}
  ],
  "valueMap": [
    {
      "property1": {},
      "property2": {}
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<ConfigurationOptionDTO>
  <name>string</name>
  <type>string</type>
  <value/>
  <valueList/>
  <valueMap>
    <property1/>
    <property2/>
  </valueMap>
</ConfigurationOptionDTO>

Responses

Status Meaning Description Schema
200 OK successful operation ConfigurationOptionDTO

getSelected

POST /config/{key}

Parameters

Name In Type Required Description
key path string true none

Example responses

200 Response

{
  "options": [
    {
      "name": "string",
      "type": "string",
      "value": {},
      "valueList": [
        null
      ],
      "valueMap": [
        null
      ]
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<ConfigurationOptions>
  <options>
    <name>string</name>
    <type>string</type>
    <value/>
    <valueList/>
    <valueMap/>
  </options>
</ConfigurationOptions>

Responses

Status Meaning Description Schema
200 OK successful operation ConfigurationOptions

content

These endpoints describe operations on content within the TERMINALFOUR system.

assign

POST /content/assign

Responses

Status Meaning Description Schema
default Default successful operation None

listInactive

GET /content/inactive/{languageCode}

Parameters

Name In Type Required Description
languageCode path string true none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "language": "string",
    "sections": [
      {
        "id": null,
        "level": null,
        "status": null,
        "printSequence": null,
        "formSection": null,
        "archived": null,
        "users": null,
        "viewUsers": null,
        "groups": null,
        "viewGroups": null,
        "contentSections": null,
        "sectionInfos": null,
        "mirrorSections": null,
        "links": null,
        "rootChannels": null,
        "appliedPageLayouts": null,
        "hierarchyMirrorAcOpt": null,
        "hierarchyMirrorMetadataOpt": null,
        "children": null,
        "contentTypeScopes": null,
        "cloneSource": null,
        "sectionPaths": null,
        "sortLock": null,
        "parent": null,
        "mirrors": null,
        "root": null,
        "shown": null,
        "nextSequence": null,
        "entityID": null,
        "childOfMirrored": null,
        "metadataOption": null,
        "workflowID": null,
        "childOfMirror": null,
        "workflowName": null,
        "workflow": null,
        "channelRoot": null,
        "languages": null,
        "channels": null,
        "pathMembers": null,
        "sectionSortMethod": null,
        "contentSortMethod": null,
        "contentsAndSequences": null,
        "parentWorkflowID": null,
        "inheritedPageLayouts": null,
        "currentOrInheritedWorkflow": null,
        "contentNextSequence": null,
        "accessControlOption": null,
        "parentID": null,
        "mirror": null,
        "allNames": null,
        "languageCount": null,
        "mirrorSource": null,
        "link": null,
        "mirrorSourceID": null
      }
    ],
    "lastModified": "string",
    "media": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<language>string</language>
<sections>
  <id/>
  <level/>
  <status/>
  <printSequence/>
  <formSection/>
  <archived/>
  <users/>
  <viewUsers/>
  <groups/>
  <viewGroups/>
  <contentSections/>
  <sectionInfos/>
  <mirrorSections/>
  <links/>
  <rootChannels/>
  <appliedPageLayouts/>
  <hierarchyMirrorAcOpt/>
  <hierarchyMirrorMetadataOpt/>
  <children/>
  <contentTypeScopes/>
  <cloneSource/>
  <sectionPaths/>
  <sortLock/>
  <parent/>
  <mirrors/>
  <root/>
  <shown/>
  <nextSequence/>
  <entityID/>
  <childOfMirrored/>
  <metadataOption/>
  <workflowID/>
  <childOfMirror/>
  <workflowName/>
  <workflow/>
  <channelRoot/>
  <languages/>
  <channels/>
  <pathMembers/>
  <sectionSortMethod/>
  <contentSortMethod/>
  <contentsAndSequences/>
  <parentWorkflowID/>
  <inheritedPageLayouts/>
  <currentOrInheritedWorkflow/>
  <contentNextSequence/>
  <accessControlOption/>
  <parentID/>
  <mirror/>
  <allNames/>
  <languageCount/>
  <mirrorSource/>
  <link/>
  <mirrorSourceID/>
</sections>
<lastModified>string</lastModified>
<media>true</media>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ContentListing] false none none
»»»»»»»» priority integer(int32) false none none
»»»»»»»» disclaimer string false none none
»»»»»»»» publishRule integer(int32) false none none
»»»»»»»» channelIDs [integer] false none none
»»»»»»»» sectionIDs [integer] false none none
»»»»»»»» languageCount integer(int32) false none none
»»»»»»» mediaTypesWithPublishRuleCategory [integer] false none none
»»»»»»» convertSpacesInSectionNameEnabled boolean false none none
»»»»»»» convertSpacesInRetainedFilenameEnabled boolean false none none
»»»»»»» channelCleanupEnabled boolean false none none
»»»»»»» personalisationEnabled boolean false none none
»»»»»»» accessControlEnabled boolean false none none
»»»»»»» fullTextDisplayPeriodValue integer(int32) false none none
»»»»»»» fullTextDisplayPeriodUnit integer(int32) false none none
»»»»»»» secondaryPublishEnabled boolean false none none
»»»»»»» overrideExtensionEnabled boolean false none none
»»»»»»» publishEmptySectionsEnabled boolean false none none
»»»»»»» convertSpacesInOutputURIEnabled boolean false none none
»»»»»»» parentID integer(int32) false none none
»»»»»»» contentIDs [integer] false none none
»»»»»»» languageCodes [string] false none none
»»»»»»» microSite boolean false none none
»»»»»»»» elementForFilename integer(int32) false none none
»»»»»»»» alias string false none none
»»»»»»»» directEditEnabled boolean false none none
»»»» deleted boolean false none none
»»»» memberCount integer(int32) false none none
»»»» language string false none none
»»»» name string false none none
»»»» owner integer(int32) false none none
»»»» id integer(int32) false none none
»»» fullLocaleCode string false none none
»»»»» value string false none none
»»»»» language string false none none
»»»»» sectionID integer(int32) false none none
»»»»» metaTagName string false none none
»»»»» metaTagID integer(int32) false none none
»»» sectionID integer(int32) false none none
»»» pageLayoutID integer(int32) false none none
»»» inheritablePageLayoutID integer(int32) false none none
»» sortLock string false none none
» lastModified string false none none
» media boolean false none none

Enumerated Values

Property Value
sortLock TOP
sortLock BOTTOM
sortLock UNLOCKED

listLinkContent

GET /content/link/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "language": "string",
    "sections": [
      {
        "id": null,
        "level": null,
        "status": null,
        "printSequence": null,
        "formSection": null,
        "archived": null,
        "users": null,
        "viewUsers": null,
        "groups": null,
        "viewGroups": null,
        "contentSections": null,
        "sectionInfos": null,
        "mirrorSections": null,
        "links": null,
        "rootChannels": null,
        "appliedPageLayouts": null,
        "hierarchyMirrorAcOpt": null,
        "hierarchyMirrorMetadataOpt": null,
        "children": null,
        "contentTypeScopes": null,
        "cloneSource": null,
        "sectionPaths": null,
        "sortLock": null,
        "parent": null,
        "mirrors": null,
        "root": null,
        "shown": null,
        "nextSequence": null,
        "entityID": null,
        "childOfMirrored": null,
        "metadataOption": null,
        "workflowID": null,
        "childOfMirror": null,
        "workflowName": null,
        "workflow": null,
        "channelRoot": null,
        "languages": null,
        "channels": null,
        "pathMembers": null,
        "sectionSortMethod": null,
        "contentSortMethod": null,
        "contentsAndSequences": null,
        "parentWorkflowID": null,
        "inheritedPageLayouts": null,
        "currentOrInheritedWorkflow": null,
        "contentNextSequence": null,
        "accessControlOption": null,
        "parentID": null,
        "mirror": null,
        "allNames": null,
        "languageCount": null,
        "mirrorSource": null,
        "link": null,
        "mirrorSourceID": null
      }
    ],
    "lastModified": "string",
    "media": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<language>string</language>
<sections>
  <id/>
  <level/>
  <status/>
  <printSequence/>
  <formSection/>
  <archived/>
  <users/>
  <viewUsers/>
  <groups/>
  <viewGroups/>
  <contentSections/>
  <sectionInfos/>
  <mirrorSections/>
  <links/>
  <rootChannels/>
  <appliedPageLayouts/>
  <hierarchyMirrorAcOpt/>
  <hierarchyMirrorMetadataOpt/>
  <children/>
  <contentTypeScopes/>
  <cloneSource/>
  <sectionPaths/>
  <sortLock/>
  <parent/>
  <mirrors/>
  <root/>
  <shown/>
  <nextSequence/>
  <entityID/>
  <childOfMirrored/>
  <metadataOption/>
  <workflowID/>
  <childOfMirror/>
  <workflowName/>
  <workflow/>
  <channelRoot/>
  <languages/>
  <channels/>
  <pathMembers/>
  <sectionSortMethod/>
  <contentSortMethod/>
  <contentsAndSequences/>
  <parentWorkflowID/>
  <inheritedPageLayouts/>
  <currentOrInheritedWorkflow/>
  <contentNextSequence/>
  <accessControlOption/>
  <parentID/>
  <mirror/>
  <allNames/>
  <languageCount/>
  <mirrorSource/>
  <link/>
  <mirrorSourceID/>
</sections>
<lastModified>string</lastModified>
<media>true</media>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ContentListing] false none none
»»»»»»»» priority integer(int32) false none none
»»»»»»»» disclaimer string false none none
»»»»»»»» publishRule integer(int32) false none none
»»»»»»»» channelIDs [integer] false none none
»»»»»»»» sectionIDs [integer] false none none
»»»»»»»» languageCount integer(int32) false none none
»»»»»»» mediaTypesWithPublishRuleCategory [integer] false none none
»»»»»»» convertSpacesInSectionNameEnabled boolean false none none
»»»»»»» convertSpacesInRetainedFilenameEnabled boolean false none none
»»»»»»» channelCleanupEnabled boolean false none none
»»»»»»» personalisationEnabled boolean false none none
»»»»»»» accessControlEnabled boolean false none none
»»»»»»» fullTextDisplayPeriodValue integer(int32) false none none
»»»»»»» fullTextDisplayPeriodUnit integer(int32) false none none
»»»»»»» secondaryPublishEnabled boolean false none none
»»»»»»» overrideExtensionEnabled boolean false none none
»»»»»»» publishEmptySectionsEnabled boolean false none none
»»»»»»» convertSpacesInOutputURIEnabled boolean false none none
»»»»»»» parentID integer(int32) false none none
»»»»»»» contentIDs [integer] false none none
»»»»»»» languageCodes [string] false none none
»»»»»»» microSite boolean false none none
»»»»»»»» elementForFilename integer(int32) false none none
»»»»»»»» alias string false none none
»»»»»»»» directEditEnabled boolean false none none
»»»» deleted boolean false none none
»»»» memberCount integer(int32) false none none
»»»» language string false none none
»»»» name string false none none
»»»» owner integer(int32) false none none
»»»» id integer(int32) false none none
»»» fullLocaleCode string false none none
»»»»» value string false none none
»»»»» language string false none none
»»»»» sectionID integer(int32) false none none
»»»»» metaTagName string false none none
»»»»» metaTagID integer(int32) false none none
»»» sectionID integer(int32) false none none
»»» pageLayoutID integer(int32) false none none
»»» inheritablePageLayoutID integer(int32) false none none
»» sortLock string false none none
» lastModified string false none none
» media boolean false none none

Enumerated Values

Property Value
sortLock TOP
sortLock BOTTOM
sortLock UNLOCKED

listOrphaned

GET /content/orphaned/{languageCode}

Parameters

Name In Type Required Description
languageCode path string true none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "language": "string",
    "sections": [
      {
        "id": null,
        "level": null,
        "status": null,
        "printSequence": null,
        "formSection": null,
        "archived": null,
        "users": null,
        "viewUsers": null,
        "groups": null,
        "viewGroups": null,
        "contentSections": null,
        "sectionInfos": null,
        "mirrorSections": null,
        "links": null,
        "rootChannels": null,
        "appliedPageLayouts": null,
        "hierarchyMirrorAcOpt": null,
        "hierarchyMirrorMetadataOpt": null,
        "children": null,
        "contentTypeScopes": null,
        "cloneSource": null,
        "sectionPaths": null,
        "sortLock": null,
        "parent": null,
        "mirrors": null,
        "root": null,
        "shown": null,
        "nextSequence": null,
        "entityID": null,
        "childOfMirrored": null,
        "metadataOption": null,
        "workflowID": null,
        "childOfMirror": null,
        "workflowName": null,
        "workflow": null,
        "channelRoot": null,
        "languages": null,
        "channels": null,
        "pathMembers": null,
        "sectionSortMethod": null,
        "contentSortMethod": null,
        "contentsAndSequences": null,
        "parentWorkflowID": null,
        "inheritedPageLayouts": null,
        "currentOrInheritedWorkflow": null,
        "contentNextSequence": null,
        "accessControlOption": null,
        "parentID": null,
        "mirror": null,
        "allNames": null,
        "languageCount": null,
        "mirrorSource": null,
        "link": null,
        "mirrorSourceID": null
      }
    ],
    "lastModified": "string",
    "media": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<language>string</language>
<sections>
  <id/>
  <level/>
  <status/>
  <printSequence/>
  <formSection/>
  <archived/>
  <users/>
  <viewUsers/>
  <groups/>
  <viewGroups/>
  <contentSections/>
  <sectionInfos/>
  <mirrorSections/>
  <links/>
  <rootChannels/>
  <appliedPageLayouts/>
  <hierarchyMirrorAcOpt/>
  <hierarchyMirrorMetadataOpt/>
  <children/>
  <contentTypeScopes/>
  <cloneSource/>
  <sectionPaths/>
  <sortLock/>
  <parent/>
  <mirrors/>
  <root/>
  <shown/>
  <nextSequence/>
  <entityID/>
  <childOfMirrored/>
  <metadataOption/>
  <workflowID/>
  <childOfMirror/>
  <workflowName/>
  <workflow/>
  <channelRoot/>
  <languages/>
  <channels/>
  <pathMembers/>
  <sectionSortMethod/>
  <contentSortMethod/>
  <contentsAndSequences/>
  <parentWorkflowID/>
  <inheritedPageLayouts/>
  <currentOrInheritedWorkflow/>
  <contentNextSequence/>
  <accessControlOption/>
  <parentID/>
  <mirror/>
  <allNames/>
  <languageCount/>
  <mirrorSource/>
  <link/>
  <mirrorSourceID/>
</sections>
<lastModified>string</lastModified>
<media>true</media>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ContentListing] false none none
»»»»»»»» priority integer(int32) false none none
»»»»»»»» disclaimer string false none none
»»»»»»»» publishRule integer(int32) false none none
»»»»»»»» channelIDs [integer] false none none
»»»»»»»» sectionIDs [integer] false none none
»»»»»»»» languageCount integer(int32) false none none
»»»»»»» mediaTypesWithPublishRuleCategory [integer] false none none
»»»»»»» convertSpacesInSectionNameEnabled boolean false none none
»»»»»»» convertSpacesInRetainedFilenameEnabled boolean false none none
»»»»»»» channelCleanupEnabled boolean false none none
»»»»»»» personalisationEnabled boolean false none none
»»»»»»» accessControlEnabled boolean false none none
»»»»»»» fullTextDisplayPeriodValue integer(int32) false none none
»»»»»»» fullTextDisplayPeriodUnit integer(int32) false none none
»»»»»»» secondaryPublishEnabled boolean false none none
»»»»»»» overrideExtensionEnabled boolean false none none
»»»»»»» publishEmptySectionsEnabled boolean false none none
»»»»»»» convertSpacesInOutputURIEnabled boolean false none none
»»»»»»» parentID integer(int32) false none none
»»»»»»» contentIDs [integer] false none none
»»»»»»» languageCodes [string] false none none
»»»»»»» microSite boolean false none none
»»»»»»»» elementForFilename integer(int32) false none none
»»»»»»»» alias string false none none
»»»»»»»» directEditEnabled boolean false none none
»»»» deleted boolean false none none
»»»» memberCount integer(int32) false none none
»»»» language string false none none
»»»» name string false none none
»»»» owner integer(int32) false none none
»»»» id integer(int32) false none none
»»» fullLocaleCode string false none none
»»»»» value string false none none
»»»»» language string false none none
»»»»» sectionID integer(int32) false none none
»»»»» metaTagName string false none none
»»»»» metaTagID integer(int32) false none none
»»» sectionID integer(int32) false none none
»»» pageLayoutID integer(int32) false none none
»»» inheritablePageLayoutID integer(int32) false none none
»» sortLock string false none none
» lastModified string false none none
» media boolean false none none

Enumerated Values

Property Value
sortLock TOP
sortLock BOTTOM
sortLock UNLOCKED

listPending

GET /content/pending/{languageCode}

Parameters

Name In Type Required Description
languageCode path string true none

Example responses

200 Response

[
  {
    "id": 0,
    "contentTypeId": 0,
    "language": "string",
    "version": "string",
    "name": "string",
    "status": 0,
    "lastModified": "2019-08-24T14:15:22Z",
    "lastModifiedBy": "string",
    "lastModifiedById": 0,
    "ownerId": 0,
    "owner": "string",
    "workflow": {
      "id": 0,
      "name": "string",
      "description": "string",
      "stepId": 0,
      "stepNumber": 0,
      "stepName": "string",
      "instanceId": 0
    },
    "previousVersion": "string",
    "sections": [
      {
        "id": null,
        "level": null,
        "status": null,
        "printSequence": null,
        "formSection": null,
        "archived": null,
        "users": null,
        "viewUsers": null,
        "groups": null,
        "viewGroups": null,
        "contentSections": null,
        "sectionInfos": null,
        "mirrorSections": null,
        "links": null,
        "rootChannels": null,
        "appliedPageLayouts": null,
        "hierarchyMirrorAcOpt": null,
        "hierarchyMirrorMetadataOpt": null,
        "children": null,
        "contentTypeScopes": null,
        "cloneSource": null,
        "sectionPaths": null,
        "sortLock": null,
        "parent": null,
        "mirrors": null,
        "root": null,
        "shown": null,
        "nextSequence": null,
        "entityID": null,
        "childOfMirrored": null,
        "metadataOption": null,
        "workflowID": null,
        "childOfMirror": null,
        "workflowName": null,
        "workflow": null,
        "channelRoot": null,
        "languages": null,
        "channels": null,
        "pathMembers": null,
        "sectionSortMethod": null,
        "contentSortMethod": null,
        "contentsAndSequences": null,
        "parentWorkflowID": null,
        "inheritedPageLayouts": null,
        "currentOrInheritedWorkflow": null,
        "contentNextSequence": null,
        "accessControlOption": null,
        "parentID": null,
        "mirror": null,
        "allNames": null,
        "languageCount": null,
        "mirrorSource": null,
        "link": null,
        "mirrorSourceID": null
      }
    ],
    "alreadyVoted": true,
    "hasAccessToContent": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<contentTypeId>0</contentTypeId>
<language>string</language>
<version>string</version>
<name>string</name>
<status>0</status>
<lastModified>2019-08-24T14:15:22Z</lastModified>
<lastModifiedBy>string</lastModifiedBy>
<lastModifiedById>0</lastModifiedById>
<ownerId>0</ownerId>
<owner>string</owner>
<workflow>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <stepId>0</stepId>
  <stepNumber>0</stepNumber>
  <stepName>string</stepName>
  <instanceId>0</instanceId>
</workflow>
<previousVersion>string</previousVersion>
<sections>
  <id/>
  <level/>
  <status/>
  <printSequence/>
  <formSection/>
  <archived/>
  <users/>
  <viewUsers/>
  <groups/>
  <viewGroups/>
  <contentSections/>
  <sectionInfos/>
  <mirrorSections/>
  <links/>
  <rootChannels/>
  <appliedPageLayouts/>
  <hierarchyMirrorAcOpt/>
  <hierarchyMirrorMetadataOpt/>
  <children/>
  <contentTypeScopes/>
  <cloneSource/>
  <sectionPaths/>
  <sortLock/>
  <parent/>
  <mirrors/>
  <root/>
  <shown/>
  <nextSequence/>
  <entityID/>
  <childOfMirrored/>
  <metadataOption/>
  <workflowID/>
  <childOfMirror/>
  <workflowName/>
  <workflow/>
  <channelRoot/>
  <languages/>
  <channels/>
  <pathMembers/>
  <sectionSortMethod/>
  <contentSortMethod/>
  <contentsAndSequences/>
  <parentWorkflowID/>
  <inheritedPageLayouts/>
  <currentOrInheritedWorkflow/>
  <contentNextSequence/>
  <accessControlOption/>
  <parentID/>
  <mirror/>
  <allNames/>
  <languageCount/>
  <mirrorSource/>
  <link/>
  <mirrorSourceID/>
</sections>
<alreadyVoted>true</alreadyVoted>
<hasAccessToContent>true</hasAccessToContent>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ApprovableContent] false none none
»»»»»»»» priority integer(int32) false none none
»»»»»»»» disclaimer string false none none
»»»»»»»» publishRule integer(int32) false none none
»»»»»»»» channelIDs [integer] false none none
»»»»»»»» sectionIDs [integer] false none none
»»»»»»»» languageCount integer(int32) false none none
»»»»»»» mediaTypesWithPublishRuleCategory [integer] false none none
»»»»»»» convertSpacesInSectionNameEnabled boolean false none none
»»»»»»» convertSpacesInRetainedFilenameEnabled boolean false none none
»»»»»»» channelCleanupEnabled boolean false none none
»»»»»»» personalisationEnabled boolean false none none
»»»»»»» accessControlEnabled boolean false none none
»»»»»»» fullTextDisplayPeriodValue integer(int32) false none none
»»»»»»» fullTextDisplayPeriodUnit integer(int32) false none none
»»»»»»» secondaryPublishEnabled boolean false none none
»»»»»»» overrideExtensionEnabled boolean false none none
»»»»»»» publishEmptySectionsEnabled boolean false none none
»»»»»»» convertSpacesInOutputURIEnabled boolean false none none
»»»»»»» parentID integer(int32) false none none
»»»»»»» contentIDs [integer] false none none
»»»»»»» languageCodes [string] false none none
»»»»»»» microSite boolean false none none
»»»»»»»» elementForFilename integer(int32) false none none
»»»»»»»» alias string false none none
»»»»»»»» directEditEnabled boolean false none none
»»»» deleted boolean false none none
»»»» memberCount integer(int32) false none none
»»»» language string false none none
»»»» name string false none none
»»»» owner integer(int32) false none none
»»»» id integer(int32) false none none
»»» fullLocaleCode string false none none
»»»»» value string false none none
»»»»» language string false none none
»»»»» sectionID integer(int32) false none none
»»»»» metaTagName string false none none
»»»»» metaTagID integer(int32) false none none
»»» sectionID integer(int32) false none none
»»» pageLayoutID integer(int32) false none none
»»» inheritablePageLayoutID integer(int32) false none none
»» sortLock string false none none
» alreadyVoted boolean false none none
» hasAccessToContent boolean false none none

Enumerated Values

Property Value
sortLock TOP
sortLock BOTTOM
sortLock UNLOCKED

purgeContent

POST /content/purge

Body parameter

{
  "languageCode": "string",
  "contentIds": [
    0
  ]
}

Parameters

Name In Type Required Description
body body PurgeRequestDTO false none

Responses

Status Meaning Description Schema
default Default successful operation None

get

GET /content/{section}/{id}/{language}

Parameters

Name In Type Required Description
section path integer(int32) true none
id path integer(int32) true none
language path string true none
prepareForEditor query boolean false none

Example responses

200 Response

{
  "id": 0,
  "contentTypeID": 0,
  "archiveSection": 0,
  "publishDate": "2019-08-24T14:15:22Z",
  "reviewDate": "2019-08-24T14:15:22Z",
  "expiryDate": "2019-08-24T14:15:22Z",
  "language": "string",
  "name": "string",
  "alternativeLanguages": [
    {
      "language": "string",
      "name": "string"
    }
  ],
  "status": 0,
  "lastModified": "2019-08-24T14:15:22Z",
  "lastModifiedBy": 0,
  "lastModifierName": "string",
  "contentTypeName": "string",
  "contentTypeAlias": "string",
  "owner": {
    "id": 0,
    "type": "USER"
  },
  "version": "string",
  "previousVersion": "string",
  "channels": [
    0
  ],
  "mirroredSectionPaths": {
    "property1": "string",
    "property2": "string"
  },
  "editable": true,
  "expired": true,
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "canPublishNow": true,
  "canSaveAndApprove": true,
  "contentTypeAccess": 0,
  "contentTypeLock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "elements": {
    "property1": {},
    "property2": {}
  },
  "contentType": {
    "id": 0,
    "name": "string",
    "description": "string",
    "type": 0,
    "editable": true,
    "primaryGroup": {
      "ownershipLevel": null,
      "group": null,
      "assetID": null,
      "groupID": null,
      "assetType": null,
      "readLevel": null,
      "groupName": null
    },
    "sharedGroups": [
      {}
    ],
    "alias": "string",
    "workflow": 0,
    "systemTemplate": true,
    "sharedGroupCount": 0,
    "contentTypeElements": [
      {}
    ],
    "metaMapped": true,
    "lock": {
      "assetID": null,
      "assetType": null,
      "lockType": null,
      "expiry": null,
      "owner": null,
      "ownerName": null,
      "currentUser": null,
      "language": null
    },
    "minAuthLevel": 0,
    "enableDirectEdit": true,
    "elementIdforFilename": 0,
    "warningMessage": "string",
    "sectionId": 0,
    "duplicate": true,
    "duplicatedFromId": 0,
    "fullyAccessible": true
  },
  "types": [
    {
      "id": 0,
      "name": "string",
      "listType": true
    }
  ],
  "insertAtIndex": 0,
  "sortLock": "TOP",
  "excludedMirrorSectionIds": [
    0
  ],
  "locked": true,
  "sectionIDs": [
    0
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<content>
  <id>0</id>
  <contentTypeID>0</contentTypeID>
  <archiveSection>0</archiveSection>
  <publishDate>2019-08-24T14:15:22Z</publishDate>
  <reviewDate>2019-08-24T14:15:22Z</reviewDate>
  <expiryDate>2019-08-24T14:15:22Z</expiryDate>
  <language>string</language>
  <name>string</name>
  <alternativeLanguages>
    <language>string</language>
    <name>string</name>
  </alternativeLanguages>
  <status>0</status>
  <lastModified>2019-08-24T14:15:22Z</lastModified>
  <lastModifiedBy>0</lastModifiedBy>
  <lastModifierName>string</lastModifierName>
  <contentTypeName>string</contentTypeName>
  <contentTypeAlias>string</contentTypeAlias>
  <owner>
    <id>0</id>
    <type>USER</type>
  </owner>
  <version>string</version>
  <previousVersion>string</previousVersion>
  <channels>0</channels>
  <mirroredSectionPaths>
    <property1>string</property1>
    <property2>string</property2>
  </mirroredSectionPaths>
  <editable>true</editable>
  <expired>true</expired>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <canPublishNow>true</canPublishNow>
  <canSaveAndApprove>true</canSaveAndApprove>
  <contentTypeAccess>0</contentTypeAccess>
  <contentTypeLock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </contentTypeLock>
  <elements>
    <property1/>
    <property2/>
  </elements>
  <contentType>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <type>0</type>
    <editable>true</editable>
    <primaryGroup>
      <ownershipLevel/>
      <group/>
      <assetID/>
      <groupID/>
      <assetType/>
      <readLevel/>
      <groupName/>
    </primaryGroup>
    <sharedGroups/>
    <alias>string</alias>
    <workflow>0</workflow>
    <systemTemplate>true</systemTemplate>
    <sharedGroupCount>0</sharedGroupCount>
    <contentTypeElements/>
    <metaMapped>true</metaMapped>
    <lock>
      <assetID/>
      <assetType/>
      <lockType/>
      <expiry/>
      <owner/>
      <ownerName/>
      <currentUser/>
      <language/>
    </lock>
    <minAuthLevel>0</minAuthLevel>
    <enableDirectEdit>true</enableDirectEdit>
    <elementIdforFilename>0</elementIdforFilename>
    <warningMessage>string</warningMessage>
    <sectionId>0</sectionId>
    <duplicate>true</duplicate>
    <duplicatedFromId>0</duplicatedFromId>
    <fullyAccessible>true</fullyAccessible>
  </contentType>
  <types>
    <id>0</id>
    <name>string</name>
    <listType>true</listType>
  </types>
  <insertAtIndex>0</insertAtIndex>
  <sortLock>TOP</sortLock>
  <excludedMirrorSectionIds>0</excludedMirrorSectionIds>
  <locked>true</locked>
  <sectionIDs>0</sectionIDs>
</content>

Responses

Status Meaning Description Schema
200 OK successful operation ContentDTO

getOwner

GET /content/{id}/{language}/owner

Parameters

Name In Type Required Description
id path integer(int32) true none
language path string true none

Example responses

200 Response

{
  "id": 0,
  "type": "USER"
}
<?xml version="1.0" encoding="UTF-8" ?>
<OwnerDTO>
  <id>0</id>
  <type>USER</type>
</OwnerDTO>

Responses

Status Meaning Description Schema
200 OK successful operation OwnerDTO

versions

GET /content/{id}/{language}/version

Parameters

Name In Type Required Description
id path integer(int32) true none
language path string true none

Example responses

200 Response

[
  {
    "id": 0,
    "contentTypeId": 0,
    "language": "string",
    "version": "string",
    "name": "string",
    "status": 0,
    "lastModified": "2019-08-24T14:15:22Z",
    "lastModifiedBy": "string",
    "lastModifiedById": 0,
    "ownerId": 0,
    "owner": "string",
    "workflow": {
      "id": 0,
      "name": "string",
      "description": "string",
      "stepId": 0,
      "stepNumber": 0,
      "stepName": "string",
      "instanceId": 0
    },
    "previousVersion": "string",
    "sections": [
      {
        "id": null,
        "level": null,
        "status": null,
        "printSequence": null,
        "formSection": null,
        "archived": null,
        "users": null,
        "viewUsers": null,
        "groups": null,
        "viewGroups": null,
        "contentSections": null,
        "sectionInfos": null,
        "mirrorSections": null,
        "links": null,
        "rootChannels": null,
        "appliedPageLayouts": null,
        "hierarchyMirrorAcOpt": null,
        "hierarchyMirrorMetadataOpt": null,
        "children": null,
        "contentTypeScopes": null,
        "cloneSource": null,
        "sectionPaths": null,
        "sortLock": null,
        "parent": null,
        "mirrors": null,
        "root": null,
        "shown": null,
        "nextSequence": null,
        "entityID": null,
        "childOfMirrored": null,
        "metadataOption": null,
        "workflowID": null,
        "childOfMirror": null,
        "workflowName": null,
        "workflow": null,
        "channelRoot": null,
        "languages": null,
        "channels": null,
        "pathMembers": null,
        "sectionSortMethod": null,
        "contentSortMethod": null,
        "contentsAndSequences": null,
        "parentWorkflowID": null,
        "inheritedPageLayouts": null,
        "currentOrInheritedWorkflow": null,
        "contentNextSequence": null,
        "accessControlOption": null,
        "parentID": null,
        "mirror": null,
        "allNames": null,
        "languageCount": null,
        "mirrorSource": null,
        "link": null,
        "mirrorSourceID": null
      }
    ],
    "alreadyVoted": true,
    "hasAccessToContent": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<contentTypeId>0</contentTypeId>
<language>string</language>
<version>string</version>
<name>string</name>
<status>0</status>
<lastModified>2019-08-24T14:15:22Z</lastModified>
<lastModifiedBy>string</lastModifiedBy>
<lastModifiedById>0</lastModifiedById>
<ownerId>0</ownerId>
<owner>string</owner>
<workflow>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <stepId>0</stepId>
  <stepNumber>0</stepNumber>
  <stepName>string</stepName>
  <instanceId>0</instanceId>
</workflow>
<previousVersion>string</previousVersion>
<sections>
  <id/>
  <level/>
  <status/>
  <printSequence/>
  <formSection/>
  <archived/>
  <users/>
  <viewUsers/>
  <groups/>
  <viewGroups/>
  <contentSections/>
  <sectionInfos/>
  <mirrorSections/>
  <links/>
  <rootChannels/>
  <appliedPageLayouts/>
  <hierarchyMirrorAcOpt/>
  <hierarchyMirrorMetadataOpt/>
  <children/>
  <contentTypeScopes/>
  <cloneSource/>
  <sectionPaths/>
  <sortLock/>
  <parent/>
  <mirrors/>
  <root/>
  <shown/>
  <nextSequence/>
  <entityID/>
  <childOfMirrored/>
  <metadataOption/>
  <workflowID/>
  <childOfMirror/>
  <workflowName/>
  <workflow/>
  <channelRoot/>
  <languages/>
  <channels/>
  <pathMembers/>
  <sectionSortMethod/>
  <contentSortMethod/>
  <contentsAndSequences/>
  <parentWorkflowID/>
  <inheritedPageLayouts/>
  <currentOrInheritedWorkflow/>
  <contentNextSequence/>
  <accessControlOption/>
  <parentID/>
  <mirror/>
  <allNames/>
  <languageCount/>
  <mirrorSource/>
  <link/>
  <mirrorSourceID/>
</sections>
<alreadyVoted>true</alreadyVoted>
<hasAccessToContent>true</hasAccessToContent>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ApprovableContent] false none none
»»»»»»»» priority integer(int32) false none none
»»»»»»»» disclaimer string false none none
»»»»»»»» publishRule integer(int32) false none none
»»»»»»»» channelIDs [integer] false none none
»»»»»»»» sectionIDs [integer] false none none
»»»»»»»» languageCount integer(int32) false none none
»»»»»»» mediaTypesWithPublishRuleCategory [integer] false none none
»»»»»»» convertSpacesInSectionNameEnabled boolean false none none
»»»»»»» convertSpacesInRetainedFilenameEnabled boolean false none none
»»»»»»» channelCleanupEnabled boolean false none none
»»»»»»» personalisationEnabled boolean false none none
»»»»»»» accessControlEnabled boolean false none none
»»»»»»» fullTextDisplayPeriodValue integer(int32) false none none
»»»»»»» fullTextDisplayPeriodUnit integer(int32) false none none
»»»»»»» secondaryPublishEnabled boolean false none none
»»»»»»» overrideExtensionEnabled boolean false none none
»»»»»»» publishEmptySectionsEnabled boolean false none none
»»»»»»» convertSpacesInOutputURIEnabled boolean false none none
»»»»»»» parentID integer(int32) false none none
»»»»»»» contentIDs [integer] false none none
»»»»»»» languageCodes [string] false none none
»»»»»»» microSite boolean false none none
»»»»»»»» elementForFilename integer(int32) false none none
»»»»»»»» alias string false none none
»»»»»»»» directEditEnabled boolean false none none
»»»» deleted boolean false none none
»»»» memberCount integer(int32) false none none
»»»» language string false none none
»»»» name string false none none
»»»» owner integer(int32) false none none
»»»» id integer(int32) false none none
»»» fullLocaleCode string false none none
»»»»» value string false none none
»»»»» language string false none none
»»»»» sectionID integer(int32) false none none
»»»»» metaTagName string false none none
»»»»» metaTagID integer(int32) false none none
»»» sectionID integer(int32) false none none
»»» pageLayoutID integer(int32) false none none
»»» inheritablePageLayoutID integer(int32) false none none
»» sortLock string false none none
» alreadyVoted boolean false none none
» hasAccessToContent boolean false none none

Enumerated Values

Property Value
sortLock TOP
sortLock BOTTOM
sortLock UNLOCKED

getWithoutSection

GET /content/{id}/{language}/version/{version}

Parameters

Name In Type Required Description
id path integer(int32) true none
language path string true none
version path string true none

Example responses

200 Response

{
  "id": 0,
  "contentTypeID": 0,
  "archiveSection": 0,
  "publishDate": "2019-08-24T14:15:22Z",
  "reviewDate": "2019-08-24T14:15:22Z",
  "expiryDate": "2019-08-24T14:15:22Z",
  "language": "string",
  "name": "string",
  "alternativeLanguages": [
    {
      "language": "string",
      "name": "string"
    }
  ],
  "status": 0,
  "lastModified": "2019-08-24T14:15:22Z",
  "lastModifiedBy": 0,
  "lastModifierName": "string",
  "contentTypeName": "string",
  "contentTypeAlias": "string",
  "owner": {
    "id": 0,
    "type": "USER"
  },
  "version": "string",
  "previousVersion": "string",
  "channels": [
    0
  ],
  "mirroredSectionPaths": {
    "property1": "string",
    "property2": "string"
  },
  "editable": true,
  "expired": true,
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "canPublishNow": true,
  "canSaveAndApprove": true,
  "contentTypeAccess": 0,
  "contentTypeLock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "elements": {
    "property1": {},
    "property2": {}
  },
  "contentType": {
    "id": 0,
    "name": "string",
    "description": "string",
    "type": 0,
    "editable": true,
    "primaryGroup": {
      "ownershipLevel": null,
      "group": null,
      "assetID": null,
      "groupID": null,
      "assetType": null,
      "readLevel": null,
      "groupName": null
    },
    "sharedGroups": [
      {}
    ],
    "alias": "string",
    "workflow": 0,
    "systemTemplate": true,
    "sharedGroupCount": 0,
    "contentTypeElements": [
      {}
    ],
    "metaMapped": true,
    "lock": {
      "assetID": null,
      "assetType": null,
      "lockType": null,
      "expiry": null,
      "owner": null,
      "ownerName": null,
      "currentUser": null,
      "language": null
    },
    "minAuthLevel": 0,
    "enableDirectEdit": true,
    "elementIdforFilename": 0,
    "warningMessage": "string",
    "sectionId": 0,
    "duplicate": true,
    "duplicatedFromId": 0,
    "fullyAccessible": true
  },
  "types": [
    {
      "id": 0,
      "name": "string",
      "listType": true
    }
  ],
  "insertAtIndex": 0,
  "sortLock": "TOP",
  "excludedMirrorSectionIds": [
    0
  ],
  "locked": true,
  "sectionIDs": [
    0
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<content>
  <id>0</id>
  <contentTypeID>0</contentTypeID>
  <archiveSection>0</archiveSection>
  <publishDate>2019-08-24T14:15:22Z</publishDate>
  <reviewDate>2019-08-24T14:15:22Z</reviewDate>
  <expiryDate>2019-08-24T14:15:22Z</expiryDate>
  <language>string</language>
  <name>string</name>
  <alternativeLanguages>
    <language>string</language>
    <name>string</name>
  </alternativeLanguages>
  <status>0</status>
  <lastModified>2019-08-24T14:15:22Z</lastModified>
  <lastModifiedBy>0</lastModifiedBy>
  <lastModifierName>string</lastModifierName>
  <contentTypeName>string</contentTypeName>
  <contentTypeAlias>string</contentTypeAlias>
  <owner>
    <id>0</id>
    <type>USER</type>
  </owner>
  <version>string</version>
  <previousVersion>string</previousVersion>
  <channels>0</channels>
  <mirroredSectionPaths>
    <property1>string</property1>
    <property2>string</property2>
  </mirroredSectionPaths>
  <editable>true</editable>
  <expired>true</expired>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <canPublishNow>true</canPublishNow>
  <canSaveAndApprove>true</canSaveAndApprove>
  <contentTypeAccess>0</contentTypeAccess>
  <contentTypeLock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </contentTypeLock>
  <elements>
    <property1/>
    <property2/>
  </elements>
  <contentType>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <type>0</type>
    <editable>true</editable>
    <primaryGroup>
      <ownershipLevel/>
      <group/>
      <assetID/>
      <groupID/>
      <assetType/>
      <readLevel/>
      <groupName/>
    </primaryGroup>
    <sharedGroups/>
    <alias>string</alias>
    <workflow>0</workflow>
    <systemTemplate>true</systemTemplate>
    <sharedGroupCount>0</sharedGroupCount>
    <contentTypeElements/>
    <metaMapped>true</metaMapped>
    <lock>
      <assetID/>
      <assetType/>
      <lockType/>
      <expiry/>
      <owner/>
      <ownerName/>
      <currentUser/>
      <language/>
    </lock>
    <minAuthLevel>0</minAuthLevel>
    <enableDirectEdit>true</enableDirectEdit>
    <elementIdforFilename>0</elementIdforFilename>
    <warningMessage>string</warningMessage>
    <sectionId>0</sectionId>
    <duplicate>true</duplicate>
    <duplicatedFromId>0</duplicatedFromId>
    <fullyAccessible>true</fullyAccessible>
  </contentType>
  <types>
    <id>0</id>
    <name>string</name>
    <listType>true</listType>
  </types>
  <insertAtIndex>0</insertAtIndex>
  <sortLock>TOP</sortLock>
  <excludedMirrorSectionIds>0</excludedMirrorSectionIds>
  <locked>true</locked>
  <sectionIDs>0</sectionIDs>
</content>

Responses

Status Meaning Description Schema
200 OK successful operation ContentDTO

bulkDelete

DELETE /content/{language}

Parameters

Name In Type Required Description
language path string true none
force query boolean false none

Responses

Status Meaning Description Schema
default Default successful operation None

getInAllLanguages

POST /content/{language}/getInAllLang

Parameters

Name In Type Required Description
language path string true none

Example responses

200 Response

[
  {
    "id": 0,
    "language": "string",
    "name": "string"
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<language>string</language>
<name>string</name>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ContentDuplicateDTO] false none none

modify

POST /content/{section}/{id}/{language}

Parameters

Name In Type Required Description
section path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "contentTypeID": 0,
  "archiveSection": 0,
  "publishDate": "2019-08-24T14:15:22Z",
  "reviewDate": "2019-08-24T14:15:22Z",
  "expiryDate": "2019-08-24T14:15:22Z",
  "language": "string",
  "name": "string",
  "alternativeLanguages": [
    {
      "language": "string",
      "name": "string"
    }
  ],
  "status": 0,
  "lastModified": "2019-08-24T14:15:22Z",
  "lastModifiedBy": 0,
  "lastModifierName": "string",
  "contentTypeName": "string",
  "contentTypeAlias": "string",
  "owner": {
    "id": 0,
    "type": "USER"
  },
  "version": "string",
  "previousVersion": "string",
  "channels": [
    0
  ],
  "mirroredSectionPaths": {
    "property1": "string",
    "property2": "string"
  },
  "editable": true,
  "expired": true,
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "canPublishNow": true,
  "canSaveAndApprove": true,
  "contentTypeAccess": 0,
  "contentTypeLock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "elements": {
    "property1": {},
    "property2": {}
  },
  "contentType": {
    "id": 0,
    "name": "string",
    "description": "string",
    "type": 0,
    "editable": true,
    "primaryGroup": {
      "ownershipLevel": null,
      "group": null,
      "assetID": null,
      "groupID": null,
      "assetType": null,
      "readLevel": null,
      "groupName": null
    },
    "sharedGroups": [
      {}
    ],
    "alias": "string",
    "workflow": 0,
    "systemTemplate": true,
    "sharedGroupCount": 0,
    "contentTypeElements": [
      {}
    ],
    "metaMapped": true,
    "lock": {
      "assetID": null,
      "assetType": null,
      "lockType": null,
      "expiry": null,
      "owner": null,
      "ownerName": null,
      "currentUser": null,
      "language": null
    },
    "minAuthLevel": 0,
    "enableDirectEdit": true,
    "elementIdforFilename": 0,
    "warningMessage": "string",
    "sectionId": 0,
    "duplicate": true,
    "duplicatedFromId": 0,
    "fullyAccessible": true
  },
  "types": [
    {
      "id": 0,
      "name": "string",
      "listType": true
    }
  ],
  "insertAtIndex": 0,
  "sortLock": "TOP",
  "excludedMirrorSectionIds": [
    0
  ],
  "locked": true,
  "sectionIDs": [
    0
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<content>
  <id>0</id>
  <contentTypeID>0</contentTypeID>
  <archiveSection>0</archiveSection>
  <publishDate>2019-08-24T14:15:22Z</publishDate>
  <reviewDate>2019-08-24T14:15:22Z</reviewDate>
  <expiryDate>2019-08-24T14:15:22Z</expiryDate>
  <language>string</language>
  <name>string</name>
  <alternativeLanguages>
    <language>string</language>
    <name>string</name>
  </alternativeLanguages>
  <status>0</status>
  <lastModified>2019-08-24T14:15:22Z</lastModified>
  <lastModifiedBy>0</lastModifiedBy>
  <lastModifierName>string</lastModifierName>
  <contentTypeName>string</contentTypeName>
  <contentTypeAlias>string</contentTypeAlias>
  <owner>
    <id>0</id>
    <type>USER</type>
  </owner>
  <version>string</version>
  <previousVersion>string</previousVersion>
  <channels>0</channels>
  <mirroredSectionPaths>
    <property1>string</property1>
    <property2>string</property2>
  </mirroredSectionPaths>
  <editable>true</editable>
  <expired>true</expired>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <canPublishNow>true</canPublishNow>
  <canSaveAndApprove>true</canSaveAndApprove>
  <contentTypeAccess>0</contentTypeAccess>
  <contentTypeLock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </contentTypeLock>
  <elements>
    <property1/>
    <property2/>
  </elements>
  <contentType>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <type>0</type>
    <editable>true</editable>
    <primaryGroup>
      <ownershipLevel/>
      <group/>
      <assetID/>
      <groupID/>
      <assetType/>
      <readLevel/>
      <groupName/>
    </primaryGroup>
    <sharedGroups/>
    <alias>string</alias>
    <workflow>0</workflow>
    <systemTemplate>true</systemTemplate>
    <sharedGroupCount>0</sharedGroupCount>
    <contentTypeElements/>
    <metaMapped>true</metaMapped>
    <lock>
      <assetID/>
      <assetType/>
      <lockType/>
      <expiry/>
      <owner/>
      <ownerName/>
      <currentUser/>
      <language/>
    </lock>
    <minAuthLevel>0</minAuthLevel>
    <enableDirectEdit>true</enableDirectEdit>
    <elementIdforFilename>0</elementIdforFilename>
    <warningMessage>string</warningMessage>
    <sectionId>0</sectionId>
    <duplicate>true</duplicate>
    <duplicatedFromId>0</duplicatedFromId>
    <fullyAccessible>true</fullyAccessible>
  </contentType>
  <types>
    <id>0</id>
    <name>string</name>
    <listType>true</listType>
  </types>
  <insertAtIndex>0</insertAtIndex>
  <sortLock>TOP</sortLock>
  <excludedMirrorSectionIds>0</excludedMirrorSectionIds>
  <locked>true</locked>
  <sectionIDs>0</sectionIDs>
</content>

Responses

Status Meaning Description Schema
200 OK successful operation ContentDTO

delete

DELETE /content/{section}/{id}/{language}

Parameters

Name In Type Required Description
id path integer(int32) true none
language path string true none
force query boolean false none

Responses

Status Meaning Description Schema
default Default successful operation None

previewExisting

POST /content/{section}/{id}/{language}/preview

Parameters

Name In Type Required Description
section path integer(int32) true none

Example responses

200 Response

0

Responses

Status Meaning Description Schema
200 OK successful operation integer

getWithSection

GET /content/{section}/{id}/{language}/{version}

Parameters

Name In Type Required Description
id path integer(int32) true none
language path string true none
version path string true none

Example responses

200 Response

{
  "id": 0,
  "contentTypeID": 0,
  "archiveSection": 0,
  "publishDate": "2019-08-24T14:15:22Z",
  "reviewDate": "2019-08-24T14:15:22Z",
  "expiryDate": "2019-08-24T14:15:22Z",
  "language": "string",
  "name": "string",
  "alternativeLanguages": [
    {
      "language": "string",
      "name": "string"
    }
  ],
  "status": 0,
  "lastModified": "2019-08-24T14:15:22Z",
  "lastModifiedBy": 0,
  "lastModifierName": "string",
  "contentTypeName": "string",
  "contentTypeAlias": "string",
  "owner": {
    "id": 0,
    "type": "USER"
  },
  "version": "string",
  "previousVersion": "string",
  "channels": [
    0
  ],
  "mirroredSectionPaths": {
    "property1": "string",
    "property2": "string"
  },
  "editable": true,
  "expired": true,
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "canPublishNow": true,
  "canSaveAndApprove": true,
  "contentTypeAccess": 0,
  "contentTypeLock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "elements": {
    "property1": {},
    "property2": {}
  },
  "contentType": {
    "id": 0,
    "name": "string",
    "description": "string",
    "type": 0,
    "editable": true,
    "primaryGroup": {
      "ownershipLevel": null,
      "group": null,
      "assetID": null,
      "groupID": null,
      "assetType": null,
      "readLevel": null,
      "groupName": null
    },
    "sharedGroups": [
      {}
    ],
    "alias": "string",
    "workflow": 0,
    "systemTemplate": true,
    "sharedGroupCount": 0,
    "contentTypeElements": [
      {}
    ],
    "metaMapped": true,
    "lock": {
      "assetID": null,
      "assetType": null,
      "lockType": null,
      "expiry": null,
      "owner": null,
      "ownerName": null,
      "currentUser": null,
      "language": null
    },
    "minAuthLevel": 0,
    "enableDirectEdit": true,
    "elementIdforFilename": 0,
    "warningMessage": "string",
    "sectionId": 0,
    "duplicate": true,
    "duplicatedFromId": 0,
    "fullyAccessible": true
  },
  "types": [
    {
      "id": 0,
      "name": "string",
      "listType": true
    }
  ],
  "insertAtIndex": 0,
  "sortLock": "TOP",
  "excludedMirrorSectionIds": [
    0
  ],
  "locked": true,
  "sectionIDs": [
    0
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<content>
  <id>0</id>
  <contentTypeID>0</contentTypeID>
  <archiveSection>0</archiveSection>
  <publishDate>2019-08-24T14:15:22Z</publishDate>
  <reviewDate>2019-08-24T14:15:22Z</reviewDate>
  <expiryDate>2019-08-24T14:15:22Z</expiryDate>
  <language>string</language>
  <name>string</name>
  <alternativeLanguages>
    <language>string</language>
    <name>string</name>
  </alternativeLanguages>
  <status>0</status>
  <lastModified>2019-08-24T14:15:22Z</lastModified>
  <lastModifiedBy>0</lastModifiedBy>
  <lastModifierName>string</lastModifierName>
  <contentTypeName>string</contentTypeName>
  <contentTypeAlias>string</contentTypeAlias>
  <owner>
    <id>0</id>
    <type>USER</type>
  </owner>
  <version>string</version>
  <previousVersion>string</previousVersion>
  <channels>0</channels>
  <mirroredSectionPaths>
    <property1>string</property1>
    <property2>string</property2>
  </mirroredSectionPaths>
  <editable>true</editable>
  <expired>true</expired>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <canPublishNow>true</canPublishNow>
  <canSaveAndApprove>true</canSaveAndApprove>
  <contentTypeAccess>0</contentTypeAccess>
  <contentTypeLock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </contentTypeLock>
  <elements>
    <property1/>
    <property2/>
  </elements>
  <contentType>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <type>0</type>
    <editable>true</editable>
    <primaryGroup>
      <ownershipLevel/>
      <group/>
      <assetID/>
      <groupID/>
      <assetType/>
      <readLevel/>
      <groupName/>
    </primaryGroup>
    <sharedGroups/>
    <alias>string</alias>
    <workflow>0</workflow>
    <systemTemplate>true</systemTemplate>
    <sharedGroupCount>0</sharedGroupCount>
    <contentTypeElements/>
    <metaMapped>true</metaMapped>
    <lock>
      <assetID/>
      <assetType/>
      <lockType/>
      <expiry/>
      <owner/>
      <ownerName/>
      <currentUser/>
      <language/>
    </lock>
    <minAuthLevel>0</minAuthLevel>
    <enableDirectEdit>true</enableDirectEdit>
    <elementIdforFilename>0</elementIdforFilename>
    <warningMessage>string</warningMessage>
    <sectionId>0</sectionId>
    <duplicate>true</duplicate>
    <duplicatedFromId>0</duplicatedFromId>
    <fullyAccessible>true</fullyAccessible>
  </contentType>
  <types>
    <id>0</id>
    <name>string</name>
    <listType>true</listType>
  </types>
  <insertAtIndex>0</insertAtIndex>
  <sortLock>TOP</sortLock>
  <excludedMirrorSectionIds>0</excludedMirrorSectionIds>
  <locked>true</locked>
  <sectionIDs>0</sectionIDs>
</content>

Responses

Status Meaning Description Schema
200 OK successful operation ContentDTO

add

POST /content/{section}/{language}

Parameters

Name In Type Required Description
section path integer(int32) true none
language path string true none

Example responses

200 Response

{
  "id": 0,
  "contentTypeID": 0,
  "archiveSection": 0,
  "publishDate": "2019-08-24T14:15:22Z",
  "reviewDate": "2019-08-24T14:15:22Z",
  "expiryDate": "2019-08-24T14:15:22Z",
  "language": "string",
  "name": "string",
  "alternativeLanguages": [
    {
      "language": "string",
      "name": "string"
    }
  ],
  "status": 0,
  "lastModified": "2019-08-24T14:15:22Z",
  "lastModifiedBy": 0,
  "lastModifierName": "string",
  "contentTypeName": "string",
  "contentTypeAlias": "string",
  "owner": {
    "id": 0,
    "type": "USER"
  },
  "version": "string",
  "previousVersion": "string",
  "channels": [
    0
  ],
  "mirroredSectionPaths": {
    "property1": "string",
    "property2": "string"
  },
  "editable": true,
  "expired": true,
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "canPublishNow": true,
  "canSaveAndApprove": true,
  "contentTypeAccess": 0,
  "contentTypeLock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "elements": {
    "property1": {},
    "property2": {}
  },
  "contentType": {
    "id": 0,
    "name": "string",
    "description": "string",
    "type": 0,
    "editable": true,
    "primaryGroup": {
      "ownershipLevel": null,
      "group": null,
      "assetID": null,
      "groupID": null,
      "assetType": null,
      "readLevel": null,
      "groupName": null
    },
    "sharedGroups": [
      {}
    ],
    "alias": "string",
    "workflow": 0,
    "systemTemplate": true,
    "sharedGroupCount": 0,
    "contentTypeElements": [
      {}
    ],
    "metaMapped": true,
    "lock": {
      "assetID": null,
      "assetType": null,
      "lockType": null,
      "expiry": null,
      "owner": null,
      "ownerName": null,
      "currentUser": null,
      "language": null
    },
    "minAuthLevel": 0,
    "enableDirectEdit": true,
    "elementIdforFilename": 0,
    "warningMessage": "string",
    "sectionId": 0,
    "duplicate": true,
    "duplicatedFromId": 0,
    "fullyAccessible": true
  },
  "types": [
    {
      "id": 0,
      "name": "string",
      "listType": true
    }
  ],
  "insertAtIndex": 0,
  "sortLock": "TOP",
  "excludedMirrorSectionIds": [
    0
  ],
  "locked": true,
  "sectionIDs": [
    0
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<content>
  <id>0</id>
  <contentTypeID>0</contentTypeID>
  <archiveSection>0</archiveSection>
  <publishDate>2019-08-24T14:15:22Z</publishDate>
  <reviewDate>2019-08-24T14:15:22Z</reviewDate>
  <expiryDate>2019-08-24T14:15:22Z</expiryDate>
  <language>string</language>
  <name>string</name>
  <alternativeLanguages>
    <language>string</language>
    <name>string</name>
  </alternativeLanguages>
  <status>0</status>
  <lastModified>2019-08-24T14:15:22Z</lastModified>
  <lastModifiedBy>0</lastModifiedBy>
  <lastModifierName>string</lastModifierName>
  <contentTypeName>string</contentTypeName>
  <contentTypeAlias>string</contentTypeAlias>
  <owner>
    <id>0</id>
    <type>USER</type>
  </owner>
  <version>string</version>
  <previousVersion>string</previousVersion>
  <channels>0</channels>
  <mirroredSectionPaths>
    <property1>string</property1>
    <property2>string</property2>
  </mirroredSectionPaths>
  <editable>true</editable>
  <expired>true</expired>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <canPublishNow>true</canPublishNow>
  <canSaveAndApprove>true</canSaveAndApprove>
  <contentTypeAccess>0</contentTypeAccess>
  <contentTypeLock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </contentTypeLock>
  <elements>
    <property1/>
    <property2/>
  </elements>
  <contentType>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <type>0</type>
    <editable>true</editable>
    <primaryGroup>
      <ownershipLevel/>
      <group/>
      <assetID/>
      <groupID/>
      <assetType/>
      <readLevel/>
      <groupName/>
    </primaryGroup>
    <sharedGroups/>
    <alias>string</alias>
    <workflow>0</workflow>
    <systemTemplate>true</systemTemplate>
    <sharedGroupCount>0</sharedGroupCount>
    <contentTypeElements/>
    <metaMapped>true</metaMapped>
    <lock>
      <assetID/>
      <assetType/>
      <lockType/>
      <expiry/>
      <owner/>
      <ownerName/>
      <currentUser/>
      <language/>
    </lock>
    <minAuthLevel>0</minAuthLevel>
    <enableDirectEdit>true</enableDirectEdit>
    <elementIdforFilename>0</elementIdforFilename>
    <warningMessage>string</warningMessage>
    <sectionId>0</sectionId>
    <duplicate>true</duplicate>
    <duplicatedFromId>0</duplicatedFromId>
    <fullyAccessible>true</fullyAccessible>
  </contentType>
  <types>
    <id>0</id>
    <name>string</name>
    <listType>true</listType>
  </types>
  <insertAtIndex>0</insertAtIndex>
  <sortLock>TOP</sortLock>
  <excludedMirrorSectionIds>0</excludedMirrorSectionIds>
  <locked>true</locked>
  <sectionIDs>0</sectionIDs>
</content>

Responses

Status Meaning Description Schema
200 OK successful operation ContentDTO

previewNew

POST /content/{section}/{language}/preview

Parameters

Name In Type Required Description
section path integer(int32) true none

Example responses

200 Response

0

Responses

Status Meaning Description Schema
200 OK successful operation integer

contentHierarchy

These endpoints describe operations relating to calculating the section paths for a section a piece of content exists in.

getAllSectionPaths

POST /contentHierarchy/paths

Body parameter

[
  {
    "property1": {},
    "property2": {}
  }
]

Parameters

Name In Type Required Description
body body array[object] false none

Example responses

200 Response

{
  "property1": [
    "string"
  ],
  "property2": [
    "string"
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<property1>string</property1>
<property2>string</property2>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
» additionalProperties [string] false none none

getSectionPaths

GET /contentHierarchy/paths/{section}/{id}/{language}

Parameters

Name In Type Required Description
section path integer(int32) true none
id path integer(int32) true none
language path string true none

Example responses

200 Response

{
  "property1": "string",
  "property2": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<property1>string</property1>
<property2>string</property2>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
» additionalProperties string false none none

contenttype

These endpoints describe operations around Content Types within the TERMINALFOUR system.

list

GET /contenttype/type/{type}

Parameters

Name In Type Required Description
type path integer(int32) true none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "type": 0,
    "editable": true,
    "primaryGroup": {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    },
    "sharedGroups": [
      {
        "ownershipLevel": null,
        "group": null,
        "assetID": null,
        "groupID": null,
        "assetType": null,
        "readLevel": null,
        "groupName": null
      }
    ],
    "alias": "string",
    "workflow": 0,
    "systemTemplate": true,
    "sharedGroupCount": 0,
    "contentTypeElements": [
      {
        "id": null,
        "contentTypeID": null,
        "name": null,
        "description": null,
        "type": null,
        "maxSize": null,
        "compulsory": null,
        "input_method": null,
        "listId": null,
        "sequence": null,
        "alias": null,
        "contentTypeMetaInformation": null,
        "binary": null
      }
    ],
    "metaMapped": true,
    "lock": {
      "assetID": 0,
      "assetType": 0,
      "lockType": 0,
      "expiry": "2019-08-24T14:15:22Z",
      "owner": 0,
      "ownerName": "string",
      "currentUser": true,
      "language": "string"
    },
    "fullyAccessible": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<type>0</type>
<editable>true</editable>
<primaryGroup>
  <ownershipLevel>0</ownershipLevel>
  <group/>
  <assetID>0</assetID>
  <groupID>0</groupID>
  <assetType>0</assetType>
  <readLevel>0</readLevel>
  <groupName>string</groupName>
</primaryGroup>
<sharedGroups>
  <ownershipLevel/>
  <group/>
  <assetID/>
  <groupID/>
  <assetType/>
  <readLevel/>
  <groupName/>
</sharedGroups>
<alias>string</alias>
<workflow>0</workflow>
<systemTemplate>true</systemTemplate>
<sharedGroupCount>0</sharedGroupCount>
<contentTypeElements>
  <id/>
  <contentTypeID/>
  <name/>
  <description/>
  <type/>
  <maxSize/>
  <compulsory/>
  <input_method/>
  <listId/>
  <sequence/>
  <alias/>
  <contentTypeMetaInformation/>
  <binary/>
</contentTypeElements>
<metaMapped>true</metaMapped>
<lock>
  <assetID>0</assetID>
  <assetType>0</assetType>
  <lockType>0</lockType>
  <expiry>2019-08-24T14:15:22Z</expiry>
  <owner>0</owner>
  <ownerName>string</ownerName>
  <currentUser>true</currentUser>
  <language>string</language>
</lock>
<fullyAccessible>true</fullyAccessible>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ContentTypeMetaDataDTO] false none none
» sharedGroups [AssetSharingInformation] false none none
» metaMapped boolean false none none

add

POST /contenttype

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "type": 0,
  "editable": true,
  "primaryGroup": {
    "ownershipLevel": 0,
    "group": {
      "id": null,
      "name": null,
      "description": null,
      "emailAddress": null,
      "createDate": null,
      "enabled": null,
      "ldap": null,
      "defaultChannel": null,
      "deleted": null
    },
    "assetID": 0,
    "groupID": 0,
    "assetType": 0,
    "readLevel": 0,
    "groupName": "string"
  },
  "sharedGroups": [
    {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    }
  ],
  "alias": "string",
  "workflow": 0,
  "systemTemplate": true,
  "sharedGroupCount": 0,
  "contentTypeElements": [
    {
      "id": 0,
      "contentTypeID": 0,
      "name": "string",
      "description": "string",
      "type": 0,
      "maxSize": 0,
      "compulsory": true,
      "input_method": 0,
      "listId": 0,
      "sequence": 0,
      "alias": "string",
      "contentTypeMetaInformation": {},
      "binary": true
    }
  ],
  "metaMapped": true,
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "minAuthLevel": 0,
  "enableDirectEdit": true,
  "elementIdforFilename": 0,
  "warningMessage": "string",
  "sectionId": 0,
  "duplicate": true,
  "duplicatedFromId": 0,
  "fullyAccessible": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<contentType>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <type>0</type>
  <editable>true</editable>
  <primaryGroup>
    <ownershipLevel>0</ownershipLevel>
    <group>
      <id/>
      <name/>
      <description/>
      <emailAddress/>
      <createDate/>
      <enabled/>
      <ldap/>
      <defaultChannel/>
      <deleted/>
    </group>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </primaryGroup>
  <sharedGroups>
    <ownershipLevel>0</ownershipLevel>
    <group/>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </sharedGroups>
  <alias>string</alias>
  <workflow>0</workflow>
  <systemTemplate>true</systemTemplate>
  <sharedGroupCount>0</sharedGroupCount>
  <contentTypeElements>
    <id>0</id>
    <contentTypeID>0</contentTypeID>
    <name>string</name>
    <description>string</description>
    <type>0</type>
    <maxSize>0</maxSize>
    <compulsory>true</compulsory>
    <input_method>0</input_method>
    <listId>0</listId>
    <sequence>0</sequence>
    <alias>string</alias>
    <contentTypeMetaInformation/>
    <binary>true</binary>
  </contentTypeElements>
  <metaMapped>true</metaMapped>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <minAuthLevel>0</minAuthLevel>
  <enableDirectEdit>true</enableDirectEdit>
  <elementIdforFilename>0</elementIdforFilename>
  <warningMessage>string</warningMessage>
  <sectionId>0</sectionId>
  <duplicate>true</duplicate>
  <duplicatedFromId>0</duplicatedFromId>
  <fullyAccessible>true</fullyAccessible>
</contentType>

Responses

Status Meaning Description Schema
200 OK successful operation ContentTypeDTO

getSearchMetaData

GET /contenttype/report

Example responses

200 Response

[
  {
    "id": 0,
    "alias": "string"
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<alias>string</alias>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ContentTypeReportMetaDataDTO] false none none

listRestricted

GET /contenttype/restricted

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "type": 0,
    "editable": true,
    "primaryGroup": {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    },
    "sharedGroups": [
      {
        "ownershipLevel": null,
        "group": null,
        "assetID": null,
        "groupID": null,
        "assetType": null,
        "readLevel": null,
        "groupName": null
      }
    ],
    "alias": "string",
    "workflow": 0,
    "systemTemplate": true,
    "sharedGroupCount": 0,
    "contentTypeElements": [
      {
        "id": null,
        "contentTypeID": null,
        "name": null,
        "description": null,
        "type": null,
        "maxSize": null,
        "compulsory": null,
        "input_method": null,
        "listId": null,
        "sequence": null,
        "alias": null,
        "contentTypeMetaInformation": null,
        "binary": null
      }
    ],
    "metaMapped": true,
    "lock": {
      "assetID": 0,
      "assetType": 0,
      "lockType": 0,
      "expiry": "2019-08-24T14:15:22Z",
      "owner": 0,
      "ownerName": "string",
      "currentUser": true,
      "language": "string"
    },
    "fullyAccessible": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<type>0</type>
<editable>true</editable>
<primaryGroup>
  <ownershipLevel>0</ownershipLevel>
  <group/>
  <assetID>0</assetID>
  <groupID>0</groupID>
  <assetType>0</assetType>
  <readLevel>0</readLevel>
  <groupName>string</groupName>
</primaryGroup>
<sharedGroups>
  <ownershipLevel/>
  <group/>
  <assetID/>
  <groupID/>
  <assetType/>
  <readLevel/>
  <groupName/>
</sharedGroups>
<alias>string</alias>
<workflow>0</workflow>
<systemTemplate>true</systemTemplate>
<sharedGroupCount>0</sharedGroupCount>
<contentTypeElements>
  <id/>
  <contentTypeID/>
  <name/>
  <description/>
  <type/>
  <maxSize/>
  <compulsory/>
  <input_method/>
  <listId/>
  <sequence/>
  <alias/>
  <contentTypeMetaInformation/>
  <binary/>
</contentTypeElements>
<metaMapped>true</metaMapped>
<lock>
  <assetID>0</assetID>
  <assetType>0</assetType>
  <lockType>0</lockType>
  <expiry>2019-08-24T14:15:22Z</expiry>
  <owner>0</owner>
  <ownerName>string</ownerName>
  <currentUser>true</currentUser>
  <language>string</language>
</lock>
<fullyAccessible>true</fullyAccessible>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [ContentTypeMetaDataDTO] false none none
» sharedGroups [AssetSharingInformation] false none none
» metaMapped boolean false none none

get

GET /contenttype/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "type": 0,
  "editable": true,
  "primaryGroup": {
    "ownershipLevel": 0,
    "group": {
      "id": null,
      "name": null,
      "description": null,
      "emailAddress": null,
      "createDate": null,
      "enabled": null,
      "ldap": null,
      "defaultChannel": null,
      "deleted": null
    },
    "assetID": 0,
    "groupID": 0,
    "assetType": 0,
    "readLevel": 0,
    "groupName": "string"
  },
  "sharedGroups": [
    {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    }
  ],
  "alias": "string",
  "workflow": 0,
  "systemTemplate": true,
  "sharedGroupCount": 0,
  "contentTypeElements": [
    {
      "id": 0,
      "contentTypeID": 0,
      "name": "string",
      "description": "string",
      "type": 0,
      "maxSize": 0,
      "compulsory": true,
      "input_method": 0,
      "listId": 0,
      "sequence": 0,
      "alias": "string",
      "contentTypeMetaInformation": {},
      "binary": true
    }
  ],
  "metaMapped": true,
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "minAuthLevel": 0,
  "enableDirectEdit": true,
  "elementIdforFilename": 0,
  "warningMessage": "string",
  "sectionId": 0,
  "duplicate": true,
  "duplicatedFromId": 0,
  "fullyAccessible": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<contentType>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <type>0</type>
  <editable>true</editable>
  <primaryGroup>
    <ownershipLevel>0</ownershipLevel>
    <group>
      <id/>
      <name/>
      <description/>
      <emailAddress/>
      <createDate/>
      <enabled/>
      <ldap/>
      <defaultChannel/>
      <deleted/>
    </group>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </primaryGroup>
  <sharedGroups>
    <ownershipLevel>0</ownershipLevel>
    <group/>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </sharedGroups>
  <alias>string</alias>
  <workflow>0</workflow>
  <systemTemplate>true</systemTemplate>
  <sharedGroupCount>0</sharedGroupCount>
  <contentTypeElements>
    <id>0</id>
    <contentTypeID>0</contentTypeID>
    <name>string</name>
    <description>string</description>
    <type>0</type>
    <maxSize>0</maxSize>
    <compulsory>true</compulsory>
    <input_method>0</input_method>
    <listId>0</listId>
    <sequence>0</sequence>
    <alias>string</alias>
    <contentTypeMetaInformation/>
    <binary>true</binary>
  </contentTypeElements>
  <metaMapped>true</metaMapped>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <minAuthLevel>0</minAuthLevel>
  <enableDirectEdit>true</enableDirectEdit>
  <elementIdforFilename>0</elementIdforFilename>
  <warningMessage>string</warningMessage>
  <sectionId>0</sectionId>
  <duplicate>true</duplicate>
  <duplicatedFromId>0</duplicatedFromId>
  <fullyAccessible>true</fullyAccessible>
</contentType>

Responses

Status Meaning Description Schema
200 OK successful operation ContentTypeDTO

modify

PUT /contenttype/{id}

Responses

Status Meaning Description Schema
default Default successful operation None

delete

DELETE /contenttype/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

getSharingInformation

GET /contenttype/{id}/share

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "primaryGroup": {
    "ownershipLevel": 0,
    "group": {
      "id": null,
      "name": null,
      "description": null,
      "emailAddress": null,
      "createDate": null,
      "enabled": null,
      "ldap": null,
      "defaultChannel": null,
      "deleted": null
    },
    "assetID": 0,
    "groupID": 0,
    "assetType": 0,
    "readLevel": 0,
    "groupName": "string"
  },
  "sharedGroups": [
    {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<IGroupedAssetSharingInformation>
  <id>0</id>
  <primaryGroup>
    <ownershipLevel>0</ownershipLevel>
    <group>
      <id/>
      <name/>
      <description/>
      <emailAddress/>
      <createDate/>
      <enabled/>
      <ldap/>
      <defaultChannel/>
      <deleted/>
    </group>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </primaryGroup>
  <sharedGroups>
    <ownershipLevel>0</ownershipLevel>
    <group/>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </sharedGroups>
</IGroupedAssetSharingInformation>

Responses

Status Meaning Description Schema
200 OK successful operation IGroupedAssetSharingInformation

modifySharingInformation

PUT /contenttype/{id}/share

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "primaryGroup": {
    "ownershipLevel": 0,
    "group": {
      "id": null,
      "name": null,
      "description": null,
      "emailAddress": null,
      "createDate": null,
      "enabled": null,
      "ldap": null,
      "defaultChannel": null,
      "deleted": null
    },
    "assetID": 0,
    "groupID": 0,
    "assetType": 0,
    "readLevel": 0,
    "groupName": "string"
  },
  "sharedGroups": [
    {
      "ownershipLevel": 0,
      "group": {},
      "assetID": 0,
      "groupID": 0,
      "assetType": 0,
      "readLevel": 0,
      "groupName": "string"
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<IGroupedAssetSharingInformation>
  <id>0</id>
  <primaryGroup>
    <ownershipLevel>0</ownershipLevel>
    <group>
      <id/>
      <name/>
      <description/>
      <emailAddress/>
      <createDate/>
      <enabled/>
      <ldap/>
      <defaultChannel/>
      <deleted/>
    </group>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </primaryGroup>
  <sharedGroups>
    <ownershipLevel>0</ownershipLevel>
    <group/>
    <assetID>0</assetID>
    <groupID>0</groupID>
    <assetType>0</assetType>
    <readLevel>0</readLevel>
    <groupName>string</groupName>
  </sharedGroups>
</IGroupedAssetSharingInformation>

Responses

Status Meaning Description Schema
200 OK successful operation IGroupedAssetSharingInformation

contentTypeReport

These endpoints describe web service operations on the ContentType search report.

createReport

POST /contentTypeReport

Example responses

200 Response

{
  "id": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<ReportID>
  <id>string</id>
</ReportID>

Responses

Status Meaning Description Schema
200 OK successful operation ReportID

downloadReport

GET /contentTypeReport/download/{id}

Parameters

Name In Type Required Description
id path string true none
searchString query string false none
currentPage query integer(int32) false none
pageSize query integer(int32) false none
sortField query string false none
sortOrder query string false none

Enumerated Values

Parameter Value
sortOrder ASC
sortOrder DESC

Example responses

200 Response

{
  "url": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<ReportUrl>
  <url>string</url>
</ReportUrl>

Responses

Status Meaning Description Schema
200 OK successful operation ReportUrl

get

GET /contentTypeReport/{key}

Parameters

Name In Type Required Description
key path string true none
searchString query string false none
currentPage query integer(int32) false none
pageSize query integer(int32) false none
sortField query string false none
sortOrder query string false none

Enumerated Values

Parameter Value
sortOrder ASC
sortOrder DESC

Example responses

200 Response

{
  "rows": [
    {}
  ],
  "pagingInfo": {
    "searchString": "string",
    "currentPage": 0,
    "pageSize": 0,
    "sortField": "string",
    "sortOrder": "ASC",
    "totalPages": 0,
    "totalRows": 0,
    "firstElementIndex": 0,
    "lastElementIndex": 0,
    "totalRowsInReport": 0
  },
  "details": {},
  "totalPages": 0,
  "sortOrder": "ASC",
  "pageSize": 0,
  "currentPage": 0,
  "searchString": "string",
  "sortField": "string",
  "firstElementIndex": 0,
  "totalRowsInReport": 0,
  "lastElementIndex": 0
}
<?xml version="1.0" encoding="UTF-8" ?>
<ResultSetPage>
  <rows/>
  <pagingInfo>
    <searchString>string</searchString>
    <currentPage>0</currentPage>
    <pageSize>0</pageSize>
    <sortField>string</sortField>
    <sortOrder>ASC</sortOrder>
    <totalPages>0</totalPages>
    <totalRows>0</totalRows>
    <firstElementIndex>0</firstElementIndex>
    <lastElementIndex>0</lastElementIndex>
    <totalRowsInReport>0</totalRowsInReport>
  </pagingInfo>
  <details/>
  <totalPages>0</totalPages>
  <sortOrder>ASC</sortOrder>
  <pageSize>0</pageSize>
  <currentPage>0</currentPage>
  <searchString>string</searchString>
  <sortField>string</sortField>
  <firstElementIndex>0</firstElementIndex>
  <totalRowsInReport>0</totalRowsInReport>
  <lastElementIndex>0</lastElementIndex>
</ResultSetPage>

Responses

Status Meaning Description Schema
200 OK successful operation ResultSetPage

dataobject

These endpoints describe operations around the data object broker in the TEMRINALFOUR system.

listDataObjects

GET /dataobject

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "username": "string",
    "password": "string",
    "contentTypes": "string"
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<username>string</username>
<password>string</password>
<contentTypes>string</contentTypes>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [DataObject] false none none

add

POST /dataobject

Responses

Status Meaning Description Schema
default Default successful operation None

getDataObject

GET /dataobject/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "username": "string",
  "password": "string",
  "contentTypes": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<DataObject>
  <id>0</id>
  <name>string</name>
  <username>string</username>
  <password>string</password>
  <contentTypes>string</contentTypes>
</DataObject>

Responses

Status Meaning Description Schema
200 OK successful operation DataObject

modify

PUT /dataobject/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

delete

DELETE /dataobject/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

datasource

These endpoints describe operations on external data sources within the TERMINALFOUR system.

listDataSources

GET /datasource

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "username": "string",
    "password": "string",
    "url": "string",
    "driver": "string"
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<username>string</username>
<password>string</password>
<url>string</url>
<driver>string</driver>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [DataSourceDTO] false none none

add

POST /datasource

Responses

Status Meaning Description Schema
default Default successful operation None

getDataSource

GET /datasource/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "username": "string",
  "password": "string",
  "url": "string",
  "driver": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<DataSourceDTO>
  <id>0</id>
  <name>string</name>
  <username>string</username>
  <password>string</password>
  <url>string</url>
  <driver>string</driver>
</DataSourceDTO>

Responses

Status Meaning Description Schema
200 OK successful operation DataSourceDTO

modify

PUT /datasource/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

delete

DELETE /datasource/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

getDataSourceMetaData

GET /datasource/{id}/metadata

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "dataSourceName": "string",
  "tablesMetaData": [
    {
      "name": "string",
      "required": true,
      "primaryKey": [
        null
      ],
      "columnCount": 0,
      "columns": [
        null
      ]
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<DataSourceMetaData>
  <dataSourceName>string</dataSourceName>
  <tablesMetaData>
    <name>string</name>
    <required>true</required>
    <primaryKey/>
    <columnCount>0</columnCount>
    <columns/>
  </tablesMetaData>
</DataSourceMetaData>

Responses

Status Meaning Description Schema
200 OK successful operation DataSourceMetaData

test

GET /datasource/{id}/test

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "success": true,
  "message": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<DataSourceTestResult>
  <success>true</success>
  <message>string</message>
</DataSourceTestResult>

Responses

Status Meaning Description Schema
200 OK successful operation DataSourceTestResult

datastore

These endpoints describe operations on data stores within the TERMINALFOUR system.

list

GET /datastore

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "databaseName": "string",
    "template": 0,
    "rootSection": 0,
    "archiveSection": 0,
    "contentStatus": 0,
    "tableName": "string",
    "query": "string",
    "channel": {
      "id": 0,
      "name": "string",
      "description": "string",
      "type": "string",
      "defaultLanguage": "string",
      "rootSectionID": 0,
      "fileOutputPath": "string",
      "indexFileName": "string",
      "baseHref": "string",
      "siteRoot": "string",
      "pathCaseModifier": 0,
      "fullTextType": "string",
      "fullTextExtension": "string",
      "secondaryPublishLanguage": "string",
      "channelPublishURL": "string",
      "parent": {},
      "favIconID": 0,
      "pollIconID": 0,
      "accessControlConfigurationID": 0,
      "personalisationConfigurationID": 0,
      "publishReportLevel": 0,
      "pendingVersionOutputPath": "string",
      "pendingVersionBaseHref": "string",
      "pendingVersionSiteRoot": "string",
      "prePublishProcessorID": 0,
      "allowScriptsInDirectEdit": 0,
      "pxlFolder": "string",
      "languages": [
        null
      ],
      "microSites": [
        null
      ],
      "permittedFileExtensions": [
        null
      ],
      "translationDisclaimers": [
        null
      ],
      "mediaPublishRules": [
        null
      ],
      "channelFullTextDisplayPeriod": {},
      "channelUsers": [
        null
      ],
      "channelContents": [
        null
      ],
      "mediaTypesWithPublishRuleCategory": [
        null
      ],
      "convertSpacesInSectionNameEnabled": true,
      "convertSpacesInRetainedFilenameEnabled": true,
      "channelCleanupEnabled": true,
      "personalisationEnabled": true,
      "accessControlEnabled": true,
      "fullTextDisplayPeriodValue": 0,
      "fullTextDisplayPeriodUnit": 0,
      "secondaryPublishEnabled": true,
      "overrideExtensionEnabled": true,
      "publishEmptySectionsEnabled": true,
      "convertSpacesInOutputURIEnabled": true,
      "parentID": 0,
      "contentIDs": [
        null
      ],
      "languageCodes": [
        null
      ],
      "microSite": true
    },
    "language": {
      "code": "string",
      "name": "string",
      "charset": "string",
      "disclaimer": "string",
      "channels": [
        null
      ]
    },
    "dataStoreMappings": [
      {
        "id": null,
        "columnName": null,
        "link": null
      }
    ],
    "dataStoreContents": [
      {
        "id": null,
        "hash": null,
        "linkValue": null,
        "dataStore": null,
        "contentID": null
      }
    ],
    "dataSource": {
      "id": 0,
      "name": "string",
      "username": "string",
      "password": "string",
      "url": "string",
      "driver": "string",
      "dataStores": [
        null
      ]
    },
    "siteStructure": {
      "id": 0,
      "name": "string",
      "plugin": "string"
    },
    "endPointProperties": "string",
    "individualSections": true,
    "individualEvents": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<databaseName>string</databaseName>
<template>0</template>
<rootSection>0</rootSection>
<archiveSection>0</archiveSection>
<contentStatus>0</contentStatus>
<tableName>string</tableName>
<query>string</query>
<channel>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <type>string</type>
  <defaultLanguage>string</defaultLanguage>
  <rootSectionID>0</rootSectionID>
  <fileOutputPath>string</fileOutputPath>
  <indexFileName>string</indexFileName>
  <baseHref>string</baseHref>
  <siteRoot>string</siteRoot>
  <pathCaseModifier>0</pathCaseModifier>
  <fullTextType>string</fullTextType>
  <fullTextExtension>string</fullTextExtension>
  <secondaryPublishLanguage>string</secondaryPublishLanguage>
  <channelPublishURL>string</channelPublishURL>
  <parent/>
  <favIconID>0</favIconID>
  <pollIconID>0</pollIconID>
  <accessControlConfigurationID>0</accessControlConfigurationID>
  <personalisationConfigurationID>0</personalisationConfigurationID>
  <publishReportLevel>0</publishReportLevel>
  <pendingVersionOutputPath>string</pendingVersionOutputPath>
  <pendingVersionBaseHref>string</pendingVersionBaseHref>
  <pendingVersionSiteRoot>string</pendingVersionSiteRoot>
  <prePublishProcessorID>0</prePublishProcessorID>
  <allowScriptsInDirectEdit>0</allowScriptsInDirectEdit>
  <pxlFolder>string</pxlFolder>
  <languages/>
  <microSites/>
  <permittedFileExtensions/>
  <translationDisclaimers/>
  <mediaPublishRules/>
  <channelFullTextDisplayPeriod/>
  <channelUsers/>
  <channelContents/>
  <mediaTypesWithPublishRuleCategory/>
  <convertSpacesInSectionNameEnabled>true</convertSpacesInSectionNameEnabled>
  <convertSpacesInRetainedFilenameEnabled>true</convertSpacesInRetainedFilenameEnabled>
  <channelCleanupEnabled>true</channelCleanupEnabled>
  <personalisationEnabled>true</personalisationEnabled>
  <accessControlEnabled>true</accessControlEnabled>
  <fullTextDisplayPeriodValue>0</fullTextDisplayPeriodValue>
  <fullTextDisplayPeriodUnit>0</fullTextDisplayPeriodUnit>
  <secondaryPublishEnabled>true</secondaryPublishEnabled>
  <overrideExtensionEnabled>true</overrideExtensionEnabled>
  <publishEmptySectionsEnabled>true</publishEmptySectionsEnabled>
  <convertSpacesInOutputURIEnabled>true</convertSpacesInOutputURIEnabled>
  <parentID>0</parentID>
  <contentIDs/>
  <languageCodes/>
  <microSite>true</microSite>
</channel>
<language>
  <code>string</code>
  <name>string</name>
  <charset>string</charset>
  <disclaimer>string</disclaimer>
  <channels/>
</language>
<dataStoreMappings>
  <id/>
  <columnName/>
  <link/>
</dataStoreMappings>
<dataStoreContents>
  <id/>
  <hash/>
  <linkValue/>
  <dataStore/>
  <contentID/>
</dataStoreContents>
<dataSource>
  <id>0</id>
  <name>string</name>
  <username>string</username>
  <password>string</password>
  <url>string</url>
  <driver>string</driver>
  <dataStores/>
</dataSource>
<siteStructure>
  <id>0</id>
  <name>string</name>
  <plugin>string</plugin>
</siteStructure>
<endPointProperties>string</endPointProperties>
<individualSections>true</individualSections>
<individualEvents>true</individualEvents>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [DataStore] false none none
»»» priority integer(int32) false none none
»»» disclaimer string false none none
»»» publishRule integer(int32) false none none
»»»»»»» languageCount integer(int32) false none none
»»»»»» printSequence integer(int32) false none none
»»»»»» sortLock string false none none
»»»»»» sectionID integer(int32) false none none
»»»»»» entityID integer(int32) false none none
»»»»»» contentID integer(int32) false none none
»»»»»»»» value string false none none
»»»»»»»» language string false none none
»»»»»»»» sectionID integer(int32) false none none
»»»»»»»» metaTagName string false none none
»»»»»»»» metaTagID integer(int32) false none none
»»»»»» sectionID integer(int32) false none none
»»»»»» pageLayoutID integer(int32) false none none
»»»»»» inheritablePageLayoutID integer(int32) false none none
»»»»»»» elementForFilename integer(int32) false none none
»»»»»»» alias string false none none
»»»»»»» directEditEnabled boolean false none none
»»»»»»»»» sequence integer(int32) false none none
»»»»»»»» restricted boolean false none none
»»»»»»» duplicate boolean false none none
»»»»»»» type integer(int32) false none none
»»»»»»» sectionID integer(int32) false none none
»»»»»»» minAuthLevel integer(int32) false none none
»»»»»» scope integer(int32) false none none
»»»»»» contentTypeID integer(int32) false none none
»»»»» sortLock string false none none
»»»» language string false none none
»»»» name string false none none
»»»» owner integer(int32) false none none
»»»» id integer(int32) false none none
»»» fullLocaleCode string false none none
»» columnName string false none none
»» link string false none none

Enumerated Values

Property Value
sortLock TOP
sortLock BOTTOM
sortLock UNLOCKED
sortLock TOP
sortLock BOTTOM
sortLock UNLOCKED

add

POST /datastore

Responses

Status Meaning Description Schema
default Default successful operation None

getRestServiceMetaData

POST /datastore/webservice/metadata

Example responses

200 Response

[
  {
    "property1": {},
    "property2": {}
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<property1/>
<property2/>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
» additionalProperties object false none none

get

GET /datastore/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "template": 0,
  "rootSection": 0,
  "dataSourceID": 0,
  "siteStructureID": 0,
  "individualSections": true,
  "archiveSection": 0,
  "contentStatus": 0,
  "tableName": "string",
  "query": "string",
  "individualEvents": true,
  "channelID": 0,
  "languageCode": "string",
  "dataStoreMappings": [
    {
      "dataStoreID": 0,
      "elementName": "string",
      "columnName": "string",
      "link": "string"
    }
  ],
  "endPointProperties": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<DataStoreDTO>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <template>0</template>
  <rootSection>0</rootSection>
  <dataSourceID>0</dataSourceID>
  <siteStructureID>0</siteStructureID>
  <individualSections>true</individualSections>
  <archiveSection>0</archiveSection>
  <contentStatus>0</contentStatus>
  <tableName>string</tableName>
  <query>string</query>
  <individualEvents>true</individualEvents>
  <channelID>0</channelID>
  <languageCode>string</languageCode>
  <dataStoreMappings>
    <dataStoreID>0</dataStoreID>
    <elementName>string</elementName>
    <columnName>string</columnName>
    <link>string</link>
  </dataStoreMappings>
  <endPointProperties>string</endPointProperties>
</DataStoreDTO>

Responses

Status Meaning Description Schema
200 OK successful operation DataStoreDTO

modify

PUT /datastore/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

delete

DELETE /datastore/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

directedit

These endpoints describe web service operations for the TERMINALFOUR Direct Edit service.

analytics

POST /directedit/analytics

Example responses

200 Response

{
  "totalUnique": [
    {
      "date": "2019-08-24T14:15:22Z",
      "total": 0,
      "unique": 0,
      "dateString": "string"
    }
  ],
  "pageViewsThisMonth": 0,
  "bounceRateThisMonth": 0,
  "averageTimeThisMonth": 0,
  "mostVisitsFromCountryThisMonth": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<DirectEditAnalyticsDTO>
  <totalUnique>
    <date>2019-08-24T14:15:22Z</date>
    <total>0</total>
    <unique>0</unique>
    <dateString>string</dateString>
  </totalUnique>
  <pageViewsThisMonth>0</pageViewsThisMonth>
  <bounceRateThisMonth>0</bounceRateThisMonth>
  <averageTimeThisMonth>0</averageTimeThisMonth>
  <mostVisitsFromCountryThisMonth>string</mostVisitsFromCountryThisMonth>
</DirectEditAnalyticsDTO>

Responses

Status Meaning Description Schema
200 OK successful operation DirectEditAnalyticsDTO

checkPublishURLAvailability

POST /directedit/checkurl

Example responses

200 Response

{
  "publishUrl": "string",
  "publishUrlExists": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<DirectEditPublishUrlAvailability>
  <publishUrl>string</publishUrl>
  <publishUrlExists>true</publishUrlExists>
</DirectEditPublishUrlAvailability>

Responses

Status Meaning Description Schema
200 OK successful operation DirectEditPublishUrlAvailability

directEditPage

GET /directedit/{channel}/{language}/{section}

Parameters

Name In Type Required Description
channel path integer(int32) true none
language path string true none
section path integer(int32) true none

Example responses

200 Response

{
  "channel": 0,
  "id": 0,
  "language": "string",
  "header": "string",
  "content": [
    {
      "id": 0,
      "name": "string",
      "contentTypeID": 0,
      "language": "string",
      "content": "string",
      "layout": "string",
      "version": "string",
      "status": 0,
      "sortOrder": 0,
      "directEditEnabled": true,
      "sortLock": "[",
      "lock": {},
      "future": true,
      "editable": true
    }
  ],
  "footer": "string",
  "paths": [
    "string"
  ],
  "editable": true,
  "publishUrl": "string",
  "userScriptsAllowed": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<DirectEditPagePreviewDTO>
  <channel>0</channel>
  <id>0</id>
  <language>string</language>
  <header>string</header>
  <content>
    <id>0</id>
    <name>string</name>
    <contentTypeID>0</contentTypeID>
    <language>string</language>
    <content>string</content>
    <layout>string</layout>
    <version>string</version>
    <status>0</status>
    <sortOrder>0</sortOrder>
    <directEditEnabled>true</directEditEnabled>
    <sortLock>[</sortLock>
    <lock/>
    <future>true</future>
    <editable>true</editable>
  </content>
  <footer>string</footer>
  <paths>string</paths>
  <editable>true</editable>
  <publishUrl>string</publishUrl>
  <userScriptsAllowed>true</userScriptsAllowed>
</DirectEditPagePreviewDTO>

Responses

Status Meaning Description Schema
200 OK successful operation DirectEditPagePreviewDTO

directEditMedia

GET /directedit/{channel}/{language}/{section}/media/{content}/{layout}

Parameters

Name In Type Required Description
channel path integer(int32) true none
section path integer(int32) true none
language path string true none
content path integer(int32) true none
layout path string true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "contentTypeID": 0,
  "language": "string",
  "content": "string",
  "layout": "string",
  "version": "string",
  "status": 0,
  "sortOrder": 0,
  "directEditEnabled": true,
  "sortLock": "TOP",
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "future": true,
  "editable": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<ContentPreviewDTO>
  <id>0</id>
  <name>string</name>
  <contentTypeID>0</contentTypeID>
  <language>string</language>
  <content>string</content>
  <layout>string</layout>
  <version>string</version>
  <status>0</status>
  <sortOrder>0</sortOrder>
  <directEditEnabled>true</directEditEnabled>
  <sortLock>TOP</sortLock>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <future>true</future>
  <editable>true</editable>
</ContentPreviewDTO>

Responses

Status Meaning Description Schema
200 OK successful operation ContentPreviewDTO

directEditContent

GET /directedit/{channel}/{language}/{section}/partial/{content}

Parameters

Name In Type Required Description
channel path integer(int32) true none
section path integer(int32) true none
language path string true none
content path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "contentTypeID": 0,
  "language": "string",
  "content": "string",
  "layout": "string",
  "version": "string",
  "status": 0,
  "sortOrder": 0,
  "directEditEnabled": true,
  "sortLock": "TOP",
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "future": true,
  "editable": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<ContentPreviewDTO>
  <id>0</id>
  <name>string</name>
  <contentTypeID>0</contentTypeID>
  <language>string</language>
  <content>string</content>
  <layout>string</layout>
  <version>string</version>
  <status>0</status>
  <sortOrder>0</sortOrder>
  <directEditEnabled>true</directEditEnabled>
  <sortLock>TOP</sortLock>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <future>true</future>
  <editable>true</editable>
</ContentPreviewDTO>

Responses

Status Meaning Description Schema
200 OK successful operation ContentPreviewDTO

directEditFullPageContent

GET /directedit/{channel}/{language}/{section}/partial/{content}/{layout}

Parameters

Name In Type Required Description
channel path integer(int32) true none
section path integer(int32) true none
language path string true none
content path integer(int32) true none
layout path string true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "contentTypeID": 0,
  "language": "string",
  "content": "string",
  "layout": "string",
  "version": "string",
  "status": 0,
  "sortOrder": 0,
  "directEditEnabled": true,
  "sortLock": "TOP",
  "lock": {
    "assetID": 0,
    "assetType": 0,
    "lockType": 0,
    "expiry": "2019-08-24T14:15:22Z",
    "owner": 0,
    "ownerName": "string",
    "currentUser": true,
    "language": "string"
  },
  "future": true,
  "editable": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<ContentPreviewDTO>
  <id>0</id>
  <name>string</name>
  <contentTypeID>0</contentTypeID>
  <language>string</language>
  <content>string</content>
  <layout>string</layout>
  <version>string</version>
  <status>0</status>
  <sortOrder>0</sortOrder>
  <directEditEnabled>true</directEditEnabled>
  <sortLock>TOP</sortLock>
  <lock>
    <assetID>0</assetID>
    <assetType>0</assetType>
    <lockType>0</lockType>
    <expiry>2019-08-24T14:15:22Z</expiry>
    <owner>0</owner>
    <ownerName>string</ownerName>
    <currentUser>true</currentUser>
    <language>string</language>
  </lock>
  <future>true</future>
  <editable>true</editable>
</ContentPreviewDTO>

Responses

Status Meaning Description Schema
200 OK successful operation ContentPreviewDTO

directEditFulltextPage

GET /directedit/{channel}/{language}/{section}/{content}/{layout}

Parameters

Name In Type Required Description
channel path integer(int32) true none
language path string true none
section path integer(int32) true none
content path integer(int32) true none
layout path string true none

Example responses

200 Response

{
  "channel": 0,
  "id": 0,
  "language": "string",
  "header": "string",
  "content": [
    {
      "id": 0,
      "name": "string",
      "contentTypeID": 0,
      "language": "string",
      "content": "string",
      "layout": "string",
      "version": "string",
      "status": 0,
      "sortOrder": 0,
      "directEditEnabled": true,
      "sortLock": "[",
      "lock": {},
      "future": true,
      "editable": true
    }
  ],
  "footer": "string",
  "paths": [
    "string"
  ],
  "editable": true,
  "publishUrl": "string",
  "userScriptsAllowed": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<DirectEditPagePreviewDTO>
  <channel>0</channel>
  <id>0</id>
  <language>string</language>
  <header>string</header>
  <content>
    <id>0</id>
    <name>string</name>
    <contentTypeID>0</contentTypeID>
    <language>string</language>
    <content>string</content>
    <layout>string</layout>
    <version>string</version>
    <status>0</status>
    <sortOrder>0</sortOrder>
    <directEditEnabled>true</directEditEnabled>
    <sortLock>[</sortLock>
    <lock/>
    <future>true</future>
    <editable>true</editable>
  </content>
  <footer>string</footer>
  <paths>string</paths>
  <editable>true</editable>
  <publishUrl>string</publishUrl>
  <userScriptsAllowed>true</userScriptsAllowed>
</DirectEditPagePreviewDTO>

Responses

Status Meaning Description Schema
200 OK successful operation DirectEditPagePreviewDTO

download

These endpoints describe operations on the TERMINALFOUR download service.

getFileFromElement

GET /download/{contentID}/{language}/{element}

Parameters

Name In Type Required Description
contentID path integer(int32) true none
language path string true none
element path string true none

Example responses

200 Response

{
  "filename": "string",
  "file": "string",
  "mimeType": "string",
  "fileLocation": "string",
  "code": "string",
  "cleanUp": true,
  "contentID": 0,
  "language": "string",
  "version": {
    "version": "string",
    "subMinor": 0,
    "major": 0,
    "minor": 0
  },
  "element": "string"
}

Responses

Status Meaning Description Schema
200 OK successful operation FileDownload

getFileFromElementVersion

GET /download/{contentID}/{language}/{version}/{element}

Parameters

Name In Type Required Description
contentID path integer(int32) true none
language path string true none
version path string true none
element path string true none

Example responses

200 Response

{
  "filename": "string",
  "file": "string",
  "mimeType": "string",
  "fileLocation": "string",
  "code": "string",
  "cleanUp": true,
  "contentID": 0,
  "language": "string",
  "version": {
    "version": "string",
    "subMinor": 0,
    "major": 0,
    "minor": 0
  },
  "element": "string"
}

Responses

Status Meaning Description Schema
200 OK successful operation FileDownload

error

This endpoint describes operations relating to the error logs within the TERMINALFOUR system.

list

GET /error

Example responses

200 Response

[
  {
    "key": 0,
    "eventLabel": "string",
    "primaryGroup": {
      "id": 0,
      "name": "string"
    }
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<key>0</key>
<eventLabel>string</eventLabel>
<primaryGroup>
  <id>0</id>
  <name>string</name>
</primaryGroup>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [EventLogDto] false none none

extranet

These endpoints describe getting the extranet connection parameters to allow a user to connect to the TERMINALFOUR Community site.

getExtranetConnectionParams

GET /extranet/connectionParams

Example responses

200 Response

{
  "id": 0,
  "username": "string",
  "userType": 0,
  "emailAddress": "string",
  "firstName": "string",
  "lastName": "string",
  "licenseKeyHash": "string",
  "licenseOverContentLimit": "string",
  "localSmUrl": "string",
  "extranetAccess": "string",
  "mySupport": 0,
  "authToken": "string",
  "osArch": "string",
  "osName": "string",
  "osVersion": "string",
  "jvmVendor": "string",
  "jvmVersion": "string",
  "servletContainerName": "string",
  "servletSpecVersion": "string",
  "dbProductName": "string",
  "dbProductVersion": "string",
  "dbDriverName": "string",
  "dbDriverVersion": "string",
  "smVersion": "string",
  "documentCount": "string",
  "workflowCount": "string",
  "channelCount": "string",
  "templateCount": "string",
  "userCount": "string",
  "languageCount": "string",
  "language": "string",
  "hash": "string",
  "extranetConsent": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<extranetConnectionParams>
  <id>0</id>
  <username>string</username>
  <userType>0</userType>
  <emailAddress>string</emailAddress>
  <firstName>string</firstName>
  <lastName>string</lastName>
  <licenseKeyHash>string</licenseKeyHash>
  <licenseOverContentLimit>string</licenseOverContentLimit>
  <localSmUrl>string</localSmUrl>
  <extranetAccess>string</extranetAccess>
  <mySupport>0</mySupport>
  <authToken>string</authToken>
  <osArch>string</osArch>
  <osName>string</osName>
  <osVersion>string</osVersion>
  <jvmVendor>string</jvmVendor>
  <jvmVersion>string</jvmVersion>
  <servletContainerName>string</servletContainerName>
  <servletSpecVersion>string</servletSpecVersion>
  <dbProductName>string</dbProductName>
  <dbProductVersion>string</dbProductVersion>
  <dbDriverName>string</dbDriverName>
  <dbDriverVersion>string</dbDriverVersion>
  <smVersion>string</smVersion>
  <documentCount>string</documentCount>
  <workflowCount>string</workflowCount>
  <channelCount>string</channelCount>
  <templateCount>string</templateCount>
  <userCount>string</userCount>
  <languageCount>string</languageCount>
  <language>string</language>
  <hash>string</hash>
  <extranetConsent>true</extranetConsent>
</extranetConnectionParams>

Responses

Status Meaning Description Schema
200 OK successful operation ExtranetConnectionParams

fieldmappings

These end points describe web service operations on the mappings of Formbuilder fields.

setMappings

PUT /fieldmappings/{formID}

Parameters

Name In Type Required Description
formID path integer(int32) true none

Example responses

200 Response

[
  {
    "id": 0,
    "formId": 0,
    "contentTypeId": 0,
    "formFieldId": 0,
    "elementName": "string",
    "contentElementID": 0,
    "strict": true,
    "alias": "string"
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<formId>0</formId>
<contentTypeId>0</contentTypeId>
<formFieldId>0</formFieldId>
<elementName>string</elementName>
<contentElementID>0</contentElementID>
<strict>true</strict>
<alias>string</alias>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [FormMapping] false none none

getMappings

GET /fieldmappings/{formID}

Parameters

Name In Type Required Description
formID path integer(int32) true none

Example responses

200 Response

[
  {
    "id": 0,
    "formId": 0,
    "contentTypeId": 0,
    "formFieldId": 0,
    "elementName": "string",
    "contentElementID": 0,
    "strict": true,
    "alias": "string"
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<formId>0</formId>
<contentTypeId>0</contentTypeId>
<formFieldId>0</formFieldId>
<elementName>string</elementName>
<contentElementID>0</contentElementID>
<strict>true</strict>
<alias>string</alias>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [FormMapping] false none none

fileExtension

These web service endpoints describe operations on the permitted file extensions in the TERMINALFOUR system.

list

GET /fileExtension

Example responses

200 Response

[
  {
    "name": "string",
    "description": "string",
    "extension": "string",
    "channelFileExtensions": [
      {
        "id": null,
        "priority": null
      }
    ]
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<name>string</name>
<description>string</description>
<extension>string</extension>
<channelFileExtensions>
  <id/>
  <priority/>
</channelFileExtensions>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [FileExtension] false none none
»»»»» disclaimer string false none none
»»»»» publishRule integer(int32) false none none
»»»»»»»»» languageCount integer(int32) false none none
»»»»»»»» printSequence integer(int32) false none none
»»»»»»»» sortLock string false none none
»»»»»»»» sectionID integer(int32) false none none
»»»»»»»» entityID integer(int32) false none none
»»»»»»»» contentID integer(int32) false none none
»»»»»»»»»» value string false none none
»»»»»»»»»» language string false none none
»»»»»»»»»» sectionID integer(int32) false none none
»»»»»»»»»» metaTagName string false none none
»»»»»»»»»» metaTagID integer(int32) false none none
»»»»»»»» sectionID integer(int32) false none none
»»»»»»»» pageLayoutID integer(int32) false none none
»»»»»»»» inheritablePageLayoutID integer(int32) false none none
»»»»»»»»» elementForFilename integer(int32) false none none
»»»»»»»»» alias string false none none
»»»»»»»»» directEditEnabled boolean false none none
»»»»»»»»»»» sequence integer(int32) false none none
»»»»»»»»»» restricted boolean false none none
»»»»»»»»» duplicate boolean false none none
»»»»»»»»» type integer(int32) false none none
»»»»»»»»» sectionID integer(int32) false none none
»»»»»»»»» minAuthLevel integer(int32) false none none
»»»»»»»» scope integer(int32) false none none
»»»»»»»» contentTypeID integer(int32) false none none
»»»»»»» sortLock string false none none
»»»»»» language string false none none
»»»»»» name string false none none
»»»»»» owner integer(int32) false none none
»»»»»» id integer(int32) false none none
»»»»» fullLocaleCode string false none none
»» priority integer(int32) false none none

Enumerated Values

Property Value
sortLock TOP
sortLock BOTTOM
sortLock UNLOCKED
sortLock TOP
sortLock BOTTOM
sortLock UNLOCKED

get

GET /fileExtension/{name}

Parameters

Name In Type Required Description
name path string true none

Example responses

200 Response

{
  "name": "string",
  "description": "string",
  "extension": "string",
  "channelFileExtensions": [
    {
      "id": {},
      "priority": 0
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<fileExtension>
  <name>string</name>
  <description>string</description>
  <extension>string</extension>
  <channelFileExtensions>
    <id/>
    <priority>0</priority>
  </channelFileExtensions>
</fileExtension>

Responses

Status Meaning Description Schema
200 OK successful operation FileExtension

add

PUT /fileExtension/{name}

Parameters

Name In Type Required Description
name path string true none

Example responses

200 Response

{
  "name": "string",
  "description": "string",
  "extension": "string",
  "channelFileExtensions": [
    {
      "id": {},
      "priority": 0
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<fileExtension>
  <name>string</name>
  <description>string</description>
  <extension>string</extension>
  <channelFileExtensions>
    <id/>
    <priority>0</priority>
  </channelFileExtensions>
</fileExtension>

Responses

Status Meaning Description Schema
200 OK successful operation FileExtension

delete

DELETE /fileExtension/{name}

Parameters

Name In Type Required Description
name path string true none

Responses

Status Meaning Description Schema
default Default successful operation None

formbuilder

These endpoints describe the functionality for the Formbuilder in the TERMINALFOUR system.

getRecaptchaConfig

GET /formbuilder/config

Example responses

200 Response

{
  "id": 0,
  "siteKey": "string",
  "secretKey": "string",
  "enabled": true,
  "enforced": true,
  "customerId": 0
}
<?xml version="1.0" encoding="UTF-8" ?>
<RecaptchaConfig>
  <id>0</id>
  <siteKey>string</siteKey>
  <secretKey>string</secretKey>
  <enabled>true</enabled>
  <enforced>true</enforced>
  <customerId>0</customerId>
</RecaptchaConfig>

Responses

Status Meaning Description Schema
200 OK successful operation RecaptchaConfig

saveRecaptchaConfig

POST /formbuilder/config

Responses

Status Meaning Description Schema
default Default successful operation None

updateRecaptchaConfig

PUT /formbuilder/config

Responses

Status Meaning Description Schema
default Default successful operation None

getConnectionStatus

GET /formbuilder/connect

Example responses

200 Response

{
  "formBuilderURI": "string",
  "connected": true,
  "licenseHash": "string",
  "publicKey": "string",
  "customerName": "string",
  "customerId": 0,
  "hostname": "string",
  "connectionStatus": "NOT_CONNECTED"
}
<?xml version="1.0" encoding="UTF-8" ?>
<FormBuilderConfigurationResponse>
  <formBuilderURI>string</formBuilderURI>
  <connected>true</connected>
  <licenseHash>string</licenseHash>
  <publicKey>string</publicKey>
  <customerName>string</customerName>
  <customerId>0</customerId>
  <hostname>string</hostname>
  <connectionStatus>NOT_CONNECTED</connectionStatus>
</FormBuilderConfigurationResponse>

Responses

Status Meaning Description Schema
200 OK successful operation FormBuilderConfigurationResponse

connect

POST /formbuilder/connect

Example responses

200 Response

{
  "formBuilderURI": "string",
  "connected": true,
  "licenseHash": "string",
  "publicKey": "string",
  "customerName": "string",
  "customerId": 0,
  "hostname": "string",
  "connectionStatus": "NOT_CONNECTED"
}
<?xml version="1.0" encoding="UTF-8" ?>
<FormBuilderConfigurationResponse>
  <formBuilderURI>string</formBuilderURI>
  <connected>true</connected>
  <licenseHash>string</licenseHash>
  <publicKey>string</publicKey>
  <customerName>string</customerName>
  <customerId>0</customerId>
  <hostname>string</hostname>
  <connectionStatus>NOT_CONNECTED</connectionStatus>
</FormBuilderConfigurationResponse>

Responses

Status Meaning Description Schema
200 OK successful operation FormBuilderConfigurationResponse

deleteConnectionStatus

DELETE /formbuilder/connect

Example responses

200 Response

{
  "formBuilderURI": "string",
  "connected": true,
  "licenseHash": "string",
  "publicKey": "string",
  "customerName": "string",
  "customerId": 0,
  "hostname": "string",
  "connectionStatus": "NOT_CONNECTED"
}
<?xml version="1.0" encoding="UTF-8" ?>
<FormBuilderConfigurationResponse>
  <formBuilderURI>string</formBuilderURI>
  <connected>true</connected>
  <licenseHash>string</licenseHash>
  <publicKey>string</publicKey>
  <customerName>string</customerName>
  <customerId>0</customerId>
  <hostname>string</hostname>
  <connectionStatus>NOT_CONNECTED</connectionStatus>
</FormBuilderConfigurationResponse>

Responses

Status Meaning Description Schema
200 OK successful operation FormBuilderConfigurationResponse

contentTypesForForms

GET /formbuilder/contenttypes

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "alias": "string",
    "contentTypeElements": [
      {
        "id": null,
        "name": null,
        "alias": null,
        "type": null,
        "listId": null
      }
    ]
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<alias>string</alias>
<contentTypeElements>
  <id/>
  <name/>
  <alias/>
  <type/>
  <listId/>
</contentTypeElements>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [FormContentType] false none none

listsForForms

GET /formbuilder/lists/{language}

Parameters

Name In Type Required Description
language path string true none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "language": "string"
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<language>string</language>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [FormList] false none none

getRecaptchaConfiguration

GET /formbuilder/recaptchaStatus

Example responses

200 Response

{
  "enabled": true,
  "enforced": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<RecaptchaDTO>
  <enabled>true</enabled>
  <enforced>true</enforced>
</RecaptchaDTO>

Responses

Status Meaning Description Schema
200 OK successful operation RecaptchaDTO

list

POST /formbuilder/{language}

Parameters

Name In Type Required Description
language path string true none

Example responses

200 Response

{
  "draw": 0,
  "recordsTotal": 0,
  "recordsFiltered": 0,
  "data": [
    {
      "id": 0,
      "name": "string",
      "description": "string",
      "lastModified": "2019-08-24T14:15:22Z",
      "submissionSectionId": 0,
      "restricted": true,
      "incompleteMappings": true,
      "usage": [
        null
      ]
    }
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<FormDefinitions>
  <draw>0</draw>
  <recordsTotal>0</recordsTotal>
  <recordsFiltered>0</recordsFiltered>
  <data>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <lastModified>2019-08-24T14:15:22Z</lastModified>
    <submissionSectionId>0</submissionSectionId>
    <restricted>true</restricted>
    <incompleteMappings>true</incompleteMappings>
    <usage/>
  </data>
</FormDefinitions>

Responses

Status Meaning Description Schema
200 OK successful operation FormDefinitions

get

GET /formbuilder/{language}/{id}

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "lastModified": "2019-08-24T14:15:22Z",
  "showName": true,
  "showDescription": true,
  "includeCss": true,
  "usage": [
    {
      "formId": 0,
      "assetId": 0,
      "language": "string",
      "element": "string",
      "type": "string",
      "sectionId": 0,
      "name": "string"
    }
  ],
  "hasSubmissions": true,
  "embedUrl": "string",
  "shareUrl": "string",
  "formbankDomain": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<FormDefinition>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <lastModified>2019-08-24T14:15:22Z</lastModified>
  <showName>true</showName>
  <showDescription>true</showDescription>
  <includeCss>true</includeCss>
  <usage>
    <formId>0</formId>
    <assetId>0</assetId>
    <language>string</language>
    <element>string</element>
    <type>string</type>
    <sectionId>0</sectionId>
    <name>string</name>
  </usage>
  <hasSubmissions>true</hasSubmissions>
  <embedUrl>string</embedUrl>
  <shareUrl>string</shareUrl>
  <formbankDomain>string</formbankDomain>
</FormDefinition>

Responses

Status Meaning Description Schema
200 OK successful operation FormDefinition

modify

PUT /formbuilder/{language}/{id}

Parameters

Name In Type Required Description
language path string true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "lastModified": "2019-08-24T14:15:22Z",
  "showName": true,
  "showDescription": true,
  "includeCss": true,
  "usage": [
    {
      "formId": 0,
      "assetId": 0,
      "language": "string",
      "element": "string",
      "type": "string",
      "sectionId": 0,
      "name": "string"
    }
  ],
  "hasSubmissions": true,
  "embedUrl": "string",
  "shareUrl": "string",
  "formbankDomain": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<FormDefinition>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <lastModified>2019-08-24T14:15:22Z</lastModified>
  <showName>true</showName>
  <showDescription>true</showDescription>
  <includeCss>true</includeCss>
  <usage>
    <formId>0</formId>
    <assetId>0</assetId>
    <language>string</language>
    <element>string</element>
    <type>string</type>
    <sectionId>0</sectionId>
    <name>string</name>
  </usage>
  <hasSubmissions>true</hasSubmissions>
  <embedUrl>string</embedUrl>
  <shareUrl>string</shareUrl>
  <formbankDomain>string</formbankDomain>
</FormDefinition>

Responses

Status Meaning Description Schema
200 OK successful operation FormDefinition

delete

DELETE /formbuilder/{language}/{id}

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

listDependencies

GET /formbuilder/{language}/{id}/dependencies

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Example responses

200 Response

[
  {
    "id": 0,
    "index": 0,
    "formId": 0,
    "parentId": 0,
    "actionFieldId": 0,
    "actionType": "string",
    "actionValue": 0,
    "logicalOperator": "string",
    "conditions": [
      {
        "id": null,
        "formDependencyId": null,
        "formFieldId": null,
        "operator": null,
        "value": null,
        "logicalOperator": null
      }
    ]
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<index>0</index>
<formId>0</formId>
<parentId>0</parentId>
<actionFieldId>0</actionFieldId>
<actionType>string</actionType>
<actionValue>0</actionValue>
<logicalOperator>string</logicalOperator>
<conditions>
  <id/>
  <formDependencyId/>
  <formFieldId/>
  <operator/>
  <value/>
  <logicalOperator/>
</conditions>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [FormDependency] false none none

updateDependencies

PUT /formbuilder/{language}/{id}/dependencies

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

listFields

GET /formbuilder/{language}/{id}/fields

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Example responses

200 Response

[
  {
    "property1": {},
    "property2": {}
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<property1/>
<property2/>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
» additionalProperties object false none none

updateFields

POST /formbuilder/{language}/{id}/fields

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Example responses

200 Response

[
  {
    "property1": {},
    "property2": {}
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<property1/>
<property2/>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
» additionalProperties object false none none

addFields

PUT /formbuilder/{language}/{id}/fields

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Example responses

200 Response

[
  {
    "property1": {},
    "property2": {}
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<property1/>
<property2/>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
» additionalProperties object false none none

submissionSettings

GET /formbuilder/{language}/{id}/submissionSettings

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Example responses

200 Response

{
  "property1": {},
  "property2": {}
}
<?xml version="1.0" encoding="UTF-8" ?>
<property1/>
<property2/>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
» additionalProperties object false none none

addSubmissionSettings

POST /formbuilder/{language}/{id}/submissionSettings

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

updateSubmissionSettings

PUT /formbuilder/{language}/{id}/submissionSettings

Parameters

Name In Type Required Description
language path string true none
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

formsubmissionreport

These endpoints describe the web service operations around the Form submission reports.

deleteSubmissionContent

DELETE /formsubmissionreport/{language}

Parameters

Name In Type Required Description
language path string true none

Responses

Status Meaning Description Schema
default Default successful operation None

rebuildSubmissionIndex

GET /formsubmissionreport/{language}/rebuild

Parameters

Name In Type Required Description
language path string true none

Responses

Status Meaning Description Schema
default Default successful operation None

buildReport

GET /formsubmissionreport/{language}/{formID}/{start}/{end}

Parameters

Name In Type Required Description
formID path integer(int32) true none
start path string true none
end path string true none
language path string true none

Example responses

200 Response

{
  "id": 0,
  "draw": 0,
  "recordsTotal": 0,
  "recordsFiltered": 0,
  "formName": "string",
  "sectionID": 0,
  "graphLabels": [
    "string"
  ],
  "graphData": [
    0
  ],
  "columns": [
    {
      "id": 0,
      "type": "string",
      "label": "string"
    }
  ],
  "formReportData": [
    [
      {
        "data": null,
        "columnID": null,
        "columnType": null
      }
    ]
  ],
  "data": [
    [
      "string"
    ]
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<FormSubmissionReport>
  <id>0</id>
  <draw>0</draw>
  <recordsTotal>0</recordsTotal>
  <recordsFiltered>0</recordsFiltered>
  <formName>string</formName>
  <sectionID>0</sectionID>
  <graphLabels>string</graphLabels>
  <graphData>0</graphData>
  <columns>
    <id>0</id>
    <type>string</type>
    <label>string</label>
  </columns>
  <formReportData>
    <data/>
    <columnID/>
    <columnType/>
  </formReportData>
  <data>string</data>
</FormSubmissionReport>

Responses

Status Meaning Description Schema
200 OK successful operation FormSubmissionReport

buildReportDataForTable

POST /formsubmissionreport/{language}/{formID}/{start}/{end}

Parameters

Name In Type Required Description
formID path integer(int32) true none
start path string true none
end path string true none
language path string true none

Example responses

200 Response

{
  "id": 0,
  "draw": 0,
  "recordsTotal": 0,
  "recordsFiltered": 0,
  "formName": "string",
  "sectionID": 0,
  "graphLabels": [
    "string"
  ],
  "graphData": [
    0
  ],
  "columns": [
    {
      "id": 0,
      "type": "string",
      "label": "string"
    }
  ],
  "formReportData": [
    [
      {
        "data": null,
        "columnID": null,
        "columnType": null
      }
    ]
  ],
  "data": [
    [
      "string"
    ]
  ]
}
<?xml version="1.0" encoding="UTF-8" ?>
<FormSubmissionReport>
  <id>0</id>
  <draw>0</draw>
  <recordsTotal>0</recordsTotal>
  <recordsFiltered>0</recordsFiltered>
  <formName>string</formName>
  <sectionID>0</sectionID>
  <graphLabels>string</graphLabels>
  <graphData>0</graphData>
  <columns>
    <id>0</id>
    <type>string</type>
    <label>string</label>
  </columns>
  <formReportData>
    <data/>
    <columnID/>
    <columnType/>
  </formReportData>
  <data>string</data>
</FormSubmissionReport>

Responses

Status Meaning Description Schema
200 OK successful operation FormSubmissionReport

downloadCSV

GET /formsubmissionreport/{language}/{formID}/{start}/{end}/csv

Parameters

Name In Type Required Description
formID path integer(int32) true none
start path string true none
end path string true none
language path string true none

Example responses

200 Response

{
  "filename": "string",
  "file": "string",
  "mimeType": "string",
  "fileLocation": "string",
  "code": "string",
  "cleanUp": true,
  "contentID": 0,
  "language": "string",
  "version": {
    "version": "string",
    "subMinor": 0,
    "major": 0,
    "minor": 0
  },
  "element": "string"
}
<?xml version="1.0" encoding="UTF-8" ?>
<fileDownload>
  <filename>string</filename>
  <file>string</file>
  <mimeType>string</mimeType>
  <fileLocation>string</fileLocation>
  <code>string</code>
  <cleanUp>true</cleanUp>
  <contentID>0</contentID>
  <language>string</language>
  <version>
    <version>string</version>
    <subMinor>0</subMinor>
    <major>0</major>
    <minor>0</minor>
  </version>
  <element>string</element>
</fileDownload>

Responses

Status Meaning Description Schema
200 OK successful operation FileDownload

group

These endpoints describe operations around the Groups functionality in the TERMINALFOUR system.

list

GET /group

Parameters

Name In Type Required Description
pageNumber query integer(int32) false none
pageSize query integer(int32) false none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "membersCount": 0,
    "groupSections": [
      {
        "id": null,
        "path": null
      }
    ],
    "members": [
      {
        "id": null,
        "username": null,
        "firstName": null,
        "lastName": null,
        "authLevel": null,
        "emailAddress": null
      }
    ],
    "defaultPreviewChannel": 0,
    "emailAddress": "string",
    "children": [
      0
    ],
    "groupChildren": [
      {
        "id": null,
        "name": null,
        "description": null,
        "membersCount": null,
        "groupSections": null,
        "members": null,
        "defaultPreviewChannel": null,
        "emailAddress": null,
        "children": null,
        "groupChildren": null,
        "ldap": null,
        "groupEnabled": null
      }
    ],
    "ldap": true,
    "groupEnabled": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<membersCount>0</membersCount>
<groupSections>
  <id/>
  <path/>
</groupSections>
<members>
  <id/>
  <username/>
  <firstName/>
  <lastName/>
  <authLevel/>
  <emailAddress/>
</members>
<defaultPreviewChannel>0</defaultPreviewChannel>
<emailAddress>string</emailAddress>
<children>0</children>
<groupChildren>
  <id/>
  <name/>
  <description/>
  <membersCount/>
  <groupSections/>
  <members/>
  <defaultPreviewChannel/>
  <emailAddress/>
  <children/>
  <groupChildren/>
  <ldap/>
  <groupEnabled/>
</groupChildren>
<ldap>true</ldap>
<groupEnabled>true</groupEnabled>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [GroupMetaDataDTO] false none none

add

POST /group

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "membersCount": 0,
  "groupSections": [
    {
      "id": 0,
      "path": "string"
    }
  ],
  "members": [
    {
      "id": 0,
      "username": "string",
      "firstName": "string",
      "lastName": "string",
      "authLevel": 0,
      "emailAddress": "string"
    }
  ],
  "defaultPreviewChannel": 0,
  "emailAddress": "string",
  "children": [
    0
  ],
  "groupChildren": [
    {
      "id": 0,
      "name": "string",
      "description": "string",
      "membersCount": 0,
      "groupSections": [
        null
      ],
      "members": [
        null
      ],
      "defaultPreviewChannel": 0,
      "emailAddress": "string",
      "children": [
        null
      ],
      "groupChildren": [
        null
      ],
      "ldap": true,
      "groupEnabled": true
    }
  ],
  "ldap": true,
  "groupEnabled": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<GroupMetaDataDTO>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <membersCount>0</membersCount>
  <groupSections>
    <id>0</id>
    <path>string</path>
  </groupSections>
  <members>
    <id>0</id>
    <username>string</username>
    <firstName>string</firstName>
    <lastName>string</lastName>
    <authLevel>0</authLevel>
    <emailAddress>string</emailAddress>
  </members>
  <defaultPreviewChannel>0</defaultPreviewChannel>
  <emailAddress>string</emailAddress>
  <children>0</children>
  <groupChildren>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <membersCount>0</membersCount>
    <groupSections/>
    <members/>
    <defaultPreviewChannel>0</defaultPreviewChannel>
    <emailAddress>string</emailAddress>
    <children/>
    <groupChildren/>
    <ldap>true</ldap>
    <groupEnabled>true</groupEnabled>
  </groupChildren>
  <ldap>true</ldap>
  <groupEnabled>true</groupEnabled>
</GroupMetaDataDTO>

Responses

Status Meaning Description Schema
200 OK successful operation GroupMetaDataDTO

accessRights

GET /group/accessRights/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "membersCount": 0,
  "groupSections": [
    {
      "id": 0,
      "path": "string"
    }
  ],
  "members": [
    {
      "id": 0,
      "username": "string",
      "firstName": "string",
      "lastName": "string",
      "authLevel": 0,
      "emailAddress": "string"
    }
  ],
  "defaultPreviewChannel": 0,
  "emailAddress": "string",
  "children": [
    0
  ],
  "groupChildren": [
    {
      "id": 0,
      "name": "string",
      "description": "string",
      "membersCount": 0,
      "groupSections": [
        null
      ],
      "members": [
        null
      ],
      "defaultPreviewChannel": 0,
      "emailAddress": "string",
      "children": [
        null
      ],
      "groupChildren": [
        null
      ],
      "ldap": true,
      "groupEnabled": true
    }
  ],
  "ldap": true,
  "groupEnabled": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<GroupMetaDataDTO>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <membersCount>0</membersCount>
  <groupSections>
    <id>0</id>
    <path>string</path>
  </groupSections>
  <members>
    <id>0</id>
    <username>string</username>
    <firstName>string</firstName>
    <lastName>string</lastName>
    <authLevel>0</authLevel>
    <emailAddress>string</emailAddress>
  </members>
  <defaultPreviewChannel>0</defaultPreviewChannel>
  <emailAddress>string</emailAddress>
  <children>0</children>
  <groupChildren>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <membersCount>0</membersCount>
    <groupSections/>
    <members/>
    <defaultPreviewChannel>0</defaultPreviewChannel>
    <emailAddress>string</emailAddress>
    <children/>
    <groupChildren/>
    <ldap>true</ldap>
    <groupEnabled>true</groupEnabled>
  </groupChildren>
  <ldap>true</ldap>
  <groupEnabled>true</groupEnabled>
</GroupMetaDataDTO>

Responses

Status Meaning Description Schema
200 OK successful operation GroupMetaDataDTO

listAllGroups

GET /group/allGroups

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "membersCount": 0,
    "groupSections": [
      {
        "id": null,
        "path": null
      }
    ],
    "members": [
      {
        "id": null,
        "username": null,
        "firstName": null,
        "lastName": null,
        "authLevel": null,
        "emailAddress": null
      }
    ],
    "defaultPreviewChannel": 0,
    "emailAddress": "string",
    "children": [
      0
    ],
    "groupChildren": [
      {
        "id": null,
        "name": null,
        "description": null,
        "membersCount": null,
        "groupSections": null,
        "members": null,
        "defaultPreviewChannel": null,
        "emailAddress": null,
        "children": null,
        "groupChildren": null,
        "ldap": null,
        "groupEnabled": null
      }
    ],
    "ldap": true,
    "groupEnabled": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<membersCount>0</membersCount>
<groupSections>
  <id/>
  <path/>
</groupSections>
<members>
  <id/>
  <username/>
  <firstName/>
  <lastName/>
  <authLevel/>
  <emailAddress/>
</members>
<defaultPreviewChannel>0</defaultPreviewChannel>
<emailAddress>string</emailAddress>
<children>0</children>
<groupChildren>
  <id/>
  <name/>
  <description/>
  <membersCount/>
  <groupSections/>
  <members/>
  <defaultPreviewChannel/>
  <emailAddress/>
  <children/>
  <groupChildren/>
  <ldap/>
  <groupEnabled/>
</groupChildren>
<ldap>true</ldap>
<groupEnabled>true</groupEnabled>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [GroupMetaDataDTO] false none none

getGroupName

GET /group/groupName/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "membersCount": 0,
  "groupSections": [
    {
      "id": 0,
      "path": "string"
    }
  ],
  "members": [
    {
      "id": 0,
      "username": "string",
      "firstName": "string",
      "lastName": "string",
      "authLevel": 0,
      "emailAddress": "string"
    }
  ],
  "defaultPreviewChannel": 0,
  "emailAddress": "string",
  "children": [
    0
  ],
  "groupChildren": [
    {
      "id": 0,
      "name": "string",
      "description": "string",
      "membersCount": 0,
      "groupSections": [
        null
      ],
      "members": [
        null
      ],
      "defaultPreviewChannel": 0,
      "emailAddress": "string",
      "children": [
        null
      ],
      "groupChildren": [
        null
      ],
      "ldap": true,
      "groupEnabled": true
    }
  ],
  "ldap": true,
  "groupEnabled": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<GroupMetaDataDTO>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <membersCount>0</membersCount>
  <groupSections>
    <id>0</id>
    <path>string</path>
  </groupSections>
  <members>
    <id>0</id>
    <username>string</username>
    <firstName>string</firstName>
    <lastName>string</lastName>
    <authLevel>0</authLevel>
    <emailAddress>string</emailAddress>
  </members>
  <defaultPreviewChannel>0</defaultPreviewChannel>
  <emailAddress>string</emailAddress>
  <children>0</children>
  <groupChildren>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <membersCount>0</membersCount>
    <groupSections/>
    <members/>
    <defaultPreviewChannel>0</defaultPreviewChannel>
    <emailAddress>string</emailAddress>
    <children/>
    <groupChildren/>
    <ldap>true</ldap>
    <groupEnabled>true</groupEnabled>
  </groupChildren>
  <ldap>true</ldap>
  <groupEnabled>true</groupEnabled>
</GroupMetaDataDTO>

Responses

Status Meaning Description Schema
200 OK successful operation GroupMetaDataDTO

getTopLevelGroups

GET /group/topLevelGroups

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "membersCount": 0,
    "groupSections": [
      {
        "id": null,
        "path": null
      }
    ],
    "members": [
      {
        "id": null,
        "username": null,
        "firstName": null,
        "lastName": null,
        "authLevel": null,
        "emailAddress": null
      }
    ],
    "defaultPreviewChannel": 0,
    "emailAddress": "string",
    "children": [
      0
    ],
    "groupChildren": [
      {
        "id": null,
        "name": null,
        "description": null,
        "membersCount": null,
        "groupSections": null,
        "members": null,
        "defaultPreviewChannel": null,
        "emailAddress": null,
        "children": null,
        "groupChildren": null,
        "ldap": null,
        "groupEnabled": null
      }
    ],
    "ldap": true,
    "groupEnabled": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<membersCount>0</membersCount>
<groupSections>
  <id/>
  <path/>
</groupSections>
<members>
  <id/>
  <username/>
  <firstName/>
  <lastName/>
  <authLevel/>
  <emailAddress/>
</members>
<defaultPreviewChannel>0</defaultPreviewChannel>
<emailAddress>string</emailAddress>
<children>0</children>
<groupChildren>
  <id/>
  <name/>
  <description/>
  <membersCount/>
  <groupSections/>
  <members/>
  <defaultPreviewChannel/>
  <emailAddress/>
  <children/>
  <groupChildren/>
  <ldap/>
  <groupEnabled/>
</groupChildren>
<ldap>true</ldap>
<groupEnabled>true</groupEnabled>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [GroupMetaDataDTO] false none none

getUserGroups

GET /group/user/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

[
  {
    "id": 0,
    "name": "string",
    "description": "string",
    "emailAddress": "string",
    "createDate": "2019-08-24T14:15:22Z",
    "enabled": true,
    "ldap": true,
    "defaultChannel": 0,
    "deleted": true
  }
]
<?xml version="1.0" encoding="UTF-8" ?>
<id>0</id>
<name>string</name>
<description>string</description>
<emailAddress>string</emailAddress>
<createDate>2019-08-24T14:15:22Z</createDate>
<enabled>true</enabled>
<ldap>true</ldap>
<defaultChannel>0</defaultChannel>
<deleted>true</deleted>

Responses

Status Meaning Description Schema
200 OK successful operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [GroupMetaData] false none none

get

GET /group/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Example responses

200 Response

{
  "id": 0,
  "name": "string",
  "description": "string",
  "membersCount": 0,
  "groupSections": [
    {
      "id": 0,
      "path": "string"
    }
  ],
  "members": [
    {
      "id": 0,
      "username": "string",
      "firstName": "string",
      "lastName": "string",
      "authLevel": 0,
      "emailAddress": "string"
    }
  ],
  "defaultPreviewChannel": 0,
  "emailAddress": "string",
  "children": [
    0
  ],
  "groupChildren": [
    {
      "id": 0,
      "name": "string",
      "description": "string",
      "membersCount": 0,
      "groupSections": [
        null
      ],
      "members": [
        null
      ],
      "defaultPreviewChannel": 0,
      "emailAddress": "string",
      "children": [
        null
      ],
      "groupChildren": [
        null
      ],
      "ldap": true,
      "groupEnabled": true
    }
  ],
  "ldap": true,
  "groupEnabled": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<GroupMetaDataDTO>
  <id>0</id>
  <name>string</name>
  <description>string</description>
  <membersCount>0</membersCount>
  <groupSections>
    <id>0</id>
    <path>string</path>
  </groupSections>
  <members>
    <id>0</id>
    <username>string</username>
    <firstName>string</firstName>
    <lastName>string</lastName>
    <authLevel>0</authLevel>
    <emailAddress>string</emailAddress>
  </members>
  <defaultPreviewChannel>0</defaultPreviewChannel>
  <emailAddress>string</emailAddress>
  <children>0</children>
  <groupChildren>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <membersCount>0</membersCount>
    <groupSections/>
    <members/>
    <defaultPreviewChannel>0</defaultPreviewChannel>
    <emailAddress>string</emailAddress>
    <children/>
    <groupChildren/>
    <ldap>true</ldap>
    <groupEnabled>true</groupEnabled>
  </groupChildren>
  <ldap>true</ldap>
  <groupEnabled>true</groupEnabled>
</GroupMetaDataDTO>

Responses

Status Meaning Description Schema
200 OK successful operation GroupMetaDataDTO

update

PUT /group/{id}

Responses

Status Meaning Description Schema
default Default successful operation None

delete

DELETE /group/{id}

Parameters

Name In Type Required Description
id path integer(int32) true none

Responses

Status Meaning Description Schema
default Default successful operation None

groupSearch

These endpoints describe the operation of retrieving the group rights of the currently logged in user.

getCredentials

GET /groupSearch

Example responses

200 Response

{
  "groupsAllowed": [
    {
      "id": 0,
      "name": "string",
      "description": "string",
      "membersCount": 0,
      "groupSections": [
        null
      ],
      "members": [
        null
      ],
      "defaultPreviewChannel": 0,
      "emailAddress": "string",
      "children": [
        null
      ],
      "groupChildren": [
        null
      ],
      "ldap": true,
      "groupEnabled": true
    }
  ],
  "defaultPreviewChannels": [
    {
      "id": 0,
      "description": "string",
      "name": "string",
      "parentID": 0,
      "fullName": "string"
    }
  ],
  "canDeleteGroupEnabled": true,
  "editSectionEnabled": true,
  "createNewGroupEnabled": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<GroupSearchCredentialsDTO>
  <groupsAllowed>
    <id>0</id>
    <name>string</name>
    <description>string</description>
    <membersCount>0</membersCount>
    <groupSections/>
    <members/>
    <defaultPreviewChannel>0</defaultPreviewChannel>
    <emailAddress>string</emailAddress>
    <children/>
    <groupChildren/>
    <ldap>true</ldap>
    <groupEnabled>true</groupEnabled>
  </groupsAllowed>
  <defaultPreviewChannels>
    <id>0</id>
    <description>string</description>
    <name>string</name>
    <parentID>0</parentID>
    <fullName>string</fullName>
  </defaultPreviewChannels>
  <canDeleteGroupEnabled>true</canDeleteGroupEnabled>
  <editSectionEnabled>true</editSectionEnabled>
  <createNewGroupEnabled>true</createNewGroupEnabled>
</GroupSearchCredentialsDTO>

Responses

Status Meaning Description Schema
200 OK successful operation GroupSearchCredentialsDTO

hierarchy

These endpoints provide the functionality for the site structure hierarchy in the TERMINALFOUR system.

getChildByName

GET /hierarchy/child/{parent}/{name}/{language}

Parameters

Name In Type Required Description
parent path integer(int32) true none
name path string true none
language path string true none

Example responses

200 Response

{
  "id": 0,
  "parent": 0,
  "name": "string",
  "description": "string",
  "outputUrl": "string",
  "outputFilename": "string",
  "accessKey": "string",
  "keyPhrase": "string",
  "status": 0,
  "workflow": 0,
  "parentWorkflowName": "string",
  "show": true,
  "iseForm": true,
  "archive": true,
  "lastModified": "2019-08-24T14:15:22Z",
  "printSequence": 0,
  "contentSortMethod": 0,
  "sectionSortMethod": 0,
  "path": "string",
  "mirrorOf": 0,
  "sourceOfMirror": true,
  "link": true,
  "channels": [
    {
      "id": 0,
      "pageLayout": 0,
      "inheritedPageLayout": 0,
      "valid": true
    }
  ],
  "userIDs": [
    0
  ],
  "inheritedUserIDs": [
    0
  ],
  "groupIDs": [
    0
  ],
  "inheritedGroupIDs": [
    0
  ],
  "viewUserIDs": [
    0
  ],
  "viewGroupIDs": [
    0
  ],
  "contentTypeScopes": [
    {
      "id": 0,
      "scope": 0,
      "inherited": true
    }
  ],
  "metaDatas": [
    {
      "id": 0,
      "value": "string",
      "lang": "string"
    }
  ],
  "linkInfo": {
    "type": 0,
    "section": 0,
    "url": "string",
    "language": "string",
    "target": "string",
    "accessControl": 0,
    "override": true,
    "overridden": true
  },
  "excludedMirrorSections": [
    0
  ],
  "workflowName": "string",
  "parentWorkflowID": 0,
  "accessControl": {
    "id": 0,
    "type": 0,
    "enabled": true,
    "active": true
  },
  "metaData": {
    "id": 0,
    "type": 0,
    "enabled": true,
    "active": true
  },
  "pathMembers": [
    0
  ],
  "sortLock": "TOP",
  "editable": true,
  "inheritedLinkSection": true,
  "accessControlEnabled": true,
  "accessControlType": 0,
  "metaDataType": 0,
  "accessControlInherited": true,
  "allowedGroups": [
    0
  ],
  "mirrorOfPath": "string",
  "inheritedPageLayouts": {
    "property1": 0,
    "property2": 0
  },
  "outputUriEnabled": true,
  "publishEnabled": true,
  "outputFilenameEnabled": true,
  "spellCheckEnabled": true,
  "pathAsOutputUriEnabled": true
}
<?xml version="1.0" encoding="UTF-8" ?>
<SectionDTO>
  <id>0</id>
  <parent>0</parent>
  <name>string</name>
  <description>string</description>
  <outputUrl>string</outputUrl>
  <outputFilename>string</outputFilename>
  <accessKey>string</accessKey>
  <keyPhrase>string</keyPhrase>
  <status>0</status>
  <workflow>0</workflow>
  <parentWorkflowName>string</parentWorkflowName>
  <show>true</show>
  <iseForm>true</iseForm>
  <archive>true</archive>
  <lastModified>2019-08-24T14:15:22Z</lastModified>
  <printSequence>0</printSequence>
  <contentSortMethod>0</contentSortMethod>
  <sectionSortMethod>0</sectionSortMethod>
  <path>string</path>
  <mirrorOf>0</mirrorOf>
  <sourceOfMirror>true</sourceOfMirror>
  <link>true</link>
  <channels>
    <id>0</id>
    <pageLayout>0</pageLayout>
    <inheritedPageLayout>0</inheritedPageLayout>
    <valid>true</valid>
  </channels>
  <userIDs>0</userIDs>
  <inheritedUserIDs>0</inheritedUserIDs>
  <groupIDs>0</groupIDs>
  <inheritedGroupIDs>0</inheritedGroupIDs>
  <viewUserIDs>0</viewUserIDs>
  <viewGroupIDs>0</viewGroupIDs>
  <contentTypeScopes>
    <id>0</id>
    <scope>0</scope>
    <inherited>true</inherited>
  </contentTypeScopes>
  <metaDatas>
    <id>0</id>
    <value>string</value>
    <lang>string</lang>
  </metaDatas>
  <linkInfo>
    <type>0</type>
    <section>0</section>
    <url>string</url>
    <language>string</language>
    <target>string</target>
    <accessControl>0</accessControl>
    <override>true</override>
    <overridden>true</overridden>
  </linkInfo>
  <excludedMirrorSections>0</excludedMirrorSections>
  <workflowName>string</workflowName>
  <parentWorkflowID>0</parentWorkflowID>
  <accessControl>
    <id>0</id>
    <type>0</type>
    <enabled>true</enabled>
    <active>true</active>
  </accessControl>
  <metaData>
    <id>0</id>
    <type>0</type>
    <enabled>true</enabled>
    <active>true</active>
  </metaData>
  <pathMembers>0</pathMembers>
  <sortLock>TOP</sortLock>
  <editable>true</editable>
  <inheritedLinkSection>true</inheritedLinkSection>
  <accessControlEnabled>true</accessControlEnabled>
  <accessControlType>0</accessControlType>
  <metaDataType>0</metaDataType>
  <accessControlInherited>true</accessControlInherited>
  <allowedGroups>0</allowedGroups>
  <mirrorOfPath>string</mirrorOfPath>
  <inheritedPageLayouts>
    <property1>0</property1>
    <property2>0</property2>
  </inheritedPageLayouts>
  <outputUriEnabled>true</outputUriEnabled>
  <publishEnabled>true</publishEnabled>
  <outputFilenameEnabled>true</outp