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. |