Replace the Users, Applications or Groups in the Approvers List
/sites/management/api/v1/policies/{id}/approvers
Allows the approvers list to be replaced with a single call. An invalid user, client application or group error response will be returned if any user, client application or group name does not match a user, client application or group. Note that this operation only allows a maximum of 50 users and/or groups to be set per request. Note that this operation only allows a maximum of 50 users and/or groups to be added or removed per request.
Introduced in release 19.3.3.
Authorization
The approval list can be replaced by site administrators.
Enabling the Approvers List
The approvers list is only used if the approvalType
of the associated policy is set to named approval. If the approval type type is set to automatic
or admin
the members of the approvers list are ignored. However, it is valid to alter the approvers list when the policy is not set to named
.
For more information, see Update the Fields of a Policy.
Successful Response Examples
This operation responds with the following success (2xx) responses. For a full list of response HTTP status codes and example bodies, consult the Response section of this operation.
200OK - Replace Members with Users
Multiple users can be added in the same request. A user is identified using the user:username
syntax.
Request
PUT https://api.example.com/sites/management/api/v1/policies/{id}/approvers
Request Body
{ "members": [ "user:jsmith", "user:jdoe" ] }
200OK - Replace Members with Groups
Multiple groups can be added in the same request. A group is identified using the group:username
syntax.
Request
PUT https://api.example.com/sites/management/api/v1/policies/{id}/approvers
Request Body
{ "members": [ "group:marketing", "group:engineering" ] }
200OK - Replace Members with Users and Groups
Users, client applications and groups can be added in the same request. A group is identified using the group:groupname
syntax. A user is identified using the user:username
syntax. A client application is identified using the user:applicationname
syntax.
Request
PUT https://api.example.com/sites/management/api/v1/policies/{id}/approvers
Request Body
{ "members": [ "user:jsmith", "group:marketing" ] }
Client Error Response Examples
This operation responds with following client error (4xx) responses with exception details in the response body. For a full list of response HTTP status codes and example bodies, consult the Response section of this operation.
400Bad Request - Invalid User or Application
A user or client application identified cannot be found.
Error Code
OCE-IDS-001004
Resolution - Check User Exists
Check that the user name is valid.
Resolution - Check Client Application Exists
Check that the client application name is valid.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
user | User or application that does not exist. |
For detailed information about this exception detail type, consult the InvalidIdentityExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Invalid User or Application", "status": "400", "detail": "User or client application does not exist.", "o:errorCode": "OCE-IDS-001004", "user": { "id": "1234" } }
Introduced in release 19.3.1.
400Bad Request - Invalid Group
A group identified with an identifier such as the group name cannot be found.
Error Code
OCE-IDS-001007
Resolution - Check Group Exists
Check that the group identifier or group name is valid.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
group | Group that does not exist. |
For detailed information about this exception detail type, consult the InvalidGroupExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Invalid Group", "status": "400", "detail": "Group does not exist.", "o:errorCode": "OCE-IDS-001007", "group": { "id": "1234" } }
Introduced in release 19.3.1.
400Bad Request - Too Many Members
When adding, removing or replacing users, applications or groups in a members list the server may enforce a maximum number of elements that can be processed in a single call. This is to ensure that a single synchronous request does not have an unbounded processing time.
Error Code
OCE-IDS-001028
Resolution - Reduce the Number of Members
Reduce the number of users and groups to be equal or less than the maximum number specified.
Resolution - Add Members Individually
Use the POST on the collection resource to add members individually.
Resolution - Remove Members Individually
Use the member resource to remove members individually.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
maximum | Maximum number of elements. |
actual | Number of elements provided. |
For detailed information about this exception detail type, consult the TooManyMembersExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Too Many Members", "status": "400", "detail": "A single request cannot process more than '{maximum}' users and groups. The number of users and groups provided was '{actual}'.", "o:errorCode": "OCE-IDS-001028", "maximum": 1234, "actual": 1234 }
Introduced in release 19.3.1.
400Bad Request - Unsupported Policy Field
Indicates that a field in the policy should not be provided. For example, a repository should not be specified in a policy for a standard template.
Error Code
OCE-SITEMGMT-009036
Resolution - Remove Localization Policy Allowed
Remove the policy localizationPolicyAllowed
field if the associated template is a standard template.
Resolution - Remove Site Prefix Allowed
Remove the policy sitePrefixAllowed
field if the associated template is a standard template.
Resolution - Remove Repository
Remove the policy repository
field if the associated template is a standard template.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
field | Field name that is incompatible with the type of site. |
For detailed information about this exception detail type, consult the UnsupportedPolicyFieldExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Unsupported Policy Field", "status": "400", "detail": "Field '{field}' should not be provided for this policy.", "o:errorCode": "OCE-SITEMGMT-009036", "field": "repository" }
404Not Found - Policy Not Found
The policy does not exist or has been deleted, or the authenticated user or client application does not have access to the policy.
Error Code
OCE-SITEMGMT-009022
Resolution - Check Identifier
Check that the policy identifier is valid.
Resolution - Check Role
Check that the authenticated user is a site administrator.
Resolution - Check Access
If the user is not a site administrator then check the policy 'accessType' includes the authenticated user.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
policy | Policy that does not exist or is not visible to the authenticated user. |
For detailed information about this exception detail type, consult the PolicyNotFoundExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Policy Not Found", "status": "404", "detail": "Policy does not exist or has been deleted, or the authenticated user or client application does not have access to the policy.", "o:errorCode": "OCE-SITEMGMT-009022", "policy": { "id": "721af08b-32db-4eee-b6af-0c38d3ba4681" } }
409Conflict - Policy Read Only
The policy is read only and cannot be modified. Only policies associated with a template or site can be edited. Policies associated with a request are read only.
Error Code
OCE-SITEMGMT-009032
Resolution - Edit Template Policy
If the intention was to change the policy associated with a template, use the policy identifier from the template policy resource.
Resolution - Edit Copy Site Policy
If the intention was to change the policy associated with the copy site operation, use the policy identifier from the copy operation policy resource.
Resolution - Edit Extend Site Expiration Policy
If the intention was to change the policy associated with the copy site operation, use the policy identifier from the extend site expiration operation policy resource.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
policy | Policy that is read only. |
For detailed information about this exception detail type, consult the PolicyReadOnlyExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Policy Read Only", "status": "409", "detail": "The policy is read-only and cannot be modified.", "o:errorCode": "OCE-SITEMGMT-009032", "policy": { "id": "721af08b-32db-4eee-b6af-0c38d3ba4681" } }
Request
- application/json
-
id: string
Globally unique identifier for a policy.
List of one or more approvers.
object
-
members(optional):
array members
Members.
Introduced in release 19.3.1.
{
"members":[
"user:jsmith",
"group:marketing"
]
}
Response
200 Response
-
ETag: string
Opaque identifier assigned by the origin server to a specific version of a resource.
400 Response
-
allOf
InvalidIdentityExceptionDetail
Introduced in release 19.3.1.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
InvalidIdentityExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
user(optional):
string
User or application that does not exist.
Introduced in release 19.3.1.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Invalid User or Application",
"status":"400",
"detail":"User or client application does not exist.",
"o:errorCode":"OCE-IDS-001004",
"user":{
"id":"1234"
}
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Invalid Group",
"status":"400",
"detail":"Group does not exist.",
"o:errorCode":"OCE-IDS-001007",
"group":{
"id":"1234"
}
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Too Many Members",
"status":"400",
"detail":"A single request cannot process more than '{maximum}' users and groups. The number of users and groups provided was '{actual}'.",
"o:errorCode":"OCE-IDS-001028",
"maximum":1234,
"actual":1234
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Unsupported Policy Field",
"status":"400",
"detail":"Field '{field}' should not be provided for this policy.",
"o:errorCode":"OCE-SITEMGMT-009036",
"field":"repository"
}
401 Response
403 Response
404 Response
-
Cache-Control: string
Directives for caching mechanisms.
-
Content-Length: string
Size of the response body.
-
Content-Type: string
Content type of the response.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
PolicyNotFoundExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
policy(optional):
string
Policy that does not exist or is not visible to the authenticated user.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Policy Not Found",
"status":"404",
"detail":"Policy does not exist or has been deleted, or the authenticated user or client application does not have access to the policy.",
"o:errorCode":"OCE-SITEMGMT-009022",
"policy":{
"id":"721af08b-32db-4eee-b6af-0c38d3ba4681"
}
}
409 Response
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
PolicyReadOnlyExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
policy(optional):
string
Policy that is read only.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Policy Read Only",
"status":"409",
"detail":"The policy is read-only and cannot be modified.",
"o:errorCode":"OCE-SITEMGMT-009032",
"policy":{
"id":"721af08b-32db-4eee-b6af-0c38d3ba4681"
}
}