Set the Model - Content REST API - Current - Current - Ready - Hyland Experience - external

Hyland Experience Content REST API

Platform
Hyland Experience
Product
Content REST API
Release
Current
License

Sets the content model for the repository.

Base Request

PUT /api/repository/model

Query Parameters

Parameter Description Type Required Notes
validateOnly True/false indicator of only validating model changes without applying them. Boolean Optional Default is false.

Headers

Header Name Description Required Values
Authorization The access token Required Bearer [access_token]

where [access_token] is a string generated when you complete authentication (see Getting Started)

User-Agent Identity of the client making the request to the server Required [product]/[version]

where [product] is the name of the software you are using to make the request and [version] is the numbered version of the software (for example, MyCompanyProduct/1.0).

For information on other types of values commonly included in user-agent request headers, see the User-Agent HTTP header reference section on the Mozilla developer documentation website.

HXCS-REPOSITORY The repository ID Optional Any contributed repository name. Default is default.
Accept The format of the data to be returned Optional application/vnd.hxcs.v1+json
Content-Type The format of the data to be posted Optional application/json

Request Body

See Model for request body details. The request body follows the same structure as the response body.

Sample Request

PUT /api/repository/model?validateOnly=true

Authorization: Bearer [access_token]
User-Agent: MyCompanyProduct/1.0
HXCS-REPOSITORY: default
Accept: application/vnd.hxcs.v1+json
Content-Type: application/json

{
  "mixinTypes": {
    "SysFolderish": {
      "noPerDocumentQuery": true,
      "projectId": "HxP001"
    }
  },
  "primaryTypes": {
    "SysContent": {},
    "SysFile": {
      "extends": "SysContent",
      "mixins": [
        "SysFilish",
        "SysVersionable"
      ],
      "schemas": [
        "testschema1",
        "file",
        "sysfiles",
        "identifier",
        "address"
      ]
    },
    "Folder": {
      "extends": "SysContent",
      "mixins": [
        "SysFolderish"
      ],
      "schemas": [
        "identifier"
      ],
      "subtypes": [
        "SysFile"
      ]
    }
  },
  "schemas": {
    "identifier": {
      "fields": {
        "nm_firstname": {
          "type": "string"
        },
        "nm_lastname": {
          "type": "string"
        }
      },
      "prefix": "nm"
    },
    "address": {
      "fields": {
        "adr_home": {
          "type": "string"
        },
        "adr_office": {
          "type": "string"
        }
      },
      "prefix": "adr"
    }
  },
  "types": {
    "blob": {
      "fields": {
        "digest": {
          "type": "string"
        },
        "encoding": {
          "type": "string"
        },
        "filename": {
          "type": "string"
        },
        "key": {
          "type": "binary"
        },
        "length": {
          "type": "long"
        },
        "mimeType": {
          "type": "string"
        }
      }
    }
  }
}

Response

See Model for response body details and a sample response.

Status Codes and Errors

The following table lists the returned status codes.

Code Description Notes
200 OK Sets and returns the model for the repository.
204 No Content The provided content model is valid and can be applied.
401 Not Authorized Authentication has failed or was not provided.
403 Not Allowed Access permissions are invalid or missing.
404 Not Found The repository could not be found.
422 Unprocessable Entity Updates to the content model have failed due to a validation error.