A management permission group defines which agents can create, update, archive, and publish articles. It consists of a set of privileges, each of which is mapped to a user segment. Agents receive whichever privileges are associated with the user segments they belong to.

The types of privileges a permission group can define depends on your Guide plan:

  • Guide Enterprise supports the edit and publish privileges
  • Guide Professional supports the publish privilege
  • Guide Lite does not allow creating or updating permission groups. However the publish privilege is still honored on any permission groups that exist when switching to Lite

Permission groups are defined at the account level, not the brand level. If you use a brand as the subdomain of a request, the API redirects the request to the account's primary subdomain.

You can use this API to define or change a permission group. However, you must use the Articles API to apply management permission groups to articles. You can change the definition of user segments using the User Segments API.

JSON format

Management permission groups have the following attributes:

NameTypeRead-onlyMandatoryComment
idintegeryesnoAutomatically assigned when the permission group is created
namestringnonoPermission group name
editarraynonoThe ids of user segments that have edit privileges
publisharraynonoThe ids of user segments that have publish privileges
created_attimestampyesnoWhen the permission group was created
updated_attimestampyesnoWhen the permission group was last updated
built_inbooleanyesnoWhether the permission group is built-in. Built-in permission groups cannot be modified

Example

{  "permission_group": {    "id":         42,    "name":       "Printer Experts",    "built_in":   false,    "publish":    [123456],    "edit":       [],    "created_at": "2018-08-23 12:42:18 +0000",    "updated_at": "2018-08-23 12:42:18 +0000"  }}

List Permission Groups

GET /api/v2/guide/permission_groups.json

Allowed for

  • Help Center managers

Using curl

curl https://{subdomain}.zendesk.com/api/v2/guide/permission_groups.json \  -v -u {email_address}:{password}

Example Response

Status: 200 OK
{  "permission_groups": [    {      "id":         42,      "name":       "Printer Experts",      "built_in":   false,      "publish":    [123456],      "edit":       [],      "created_at": "2018-08-23 12:42:18 +0000",      "updated_at": "2018-08-23 12:42:18 +0000"    },    {      "id": 	    75,      "name":       "Managers",      "built_in":   true,      "publish":    [],      "edit":       [],      "created_at": "2018-03-16 08:29:27 +0000",      "updated_at": "2018-03-16 08:29:27 +0000"    },    ...  ]}

Show Permission Group

GET /api/v2/guide/permission_groups/{id}.json

Allowed for

  • Help Center managers

Using curl

curl https://{subdomain}.zendesk.com/api/v2/guide/permission_groups/{id}.json \  -v -u {email_address}:{password}

Example Response

Status: 200 OK
{  "permission_group": {    "id":         42,    "name":       "Printer Experts",    "built_in":   false,    "publish":    [12],    "edit":       [34],    "created_at": "2018-08-23 12:42:18 +0000",    "updated_at": "2018-08-23 12:42:18 +0000"  }}

Create Permission Group

POST /api/v2/guide/permission_groups.json

Allowed for

  • Help Center managers

Using curl

curl https://{subdomain}.zendesk.com/api/v2/guide/permission_groups.json \  -d '{ \    "permission_group": { \      "name": "Printer Experts", \      "edit": [12, ...], \      "publish": [34, ...] \    } \  }' \  -v -u {email_address}:{password} -X POST -H "Content-Type: application/json"

Example Response

Status: 201 Created
{  "permission_group": {    "id":         42,    "name":       "Printer Experts",    "built_in":   false,    "publish":    [34, ...],    "edit":       [12, ...],    "created_at": "2018-08-23 12:42:18 +0000",    "updated_at": "2018-08-23 12:42:18 +0000"  }}

Update Permission Group

PUT /api/v2/guide/permission_groups/{id}.json

Allowed for

  • Help Center managers

Using curl

curl https://{subdomain}.zendesk.com/api/v2/guide/permission_groups/{id}.json \  -d '{ \    "user_segment": { \      "name": "Super Printer Experts", \      "edit": [], \      "publish": [42, ...], \    } \  }' \  -v -u {email_address}:{password} -X PUT -H "Content-Type: application/json"

Example Response

Status: 200 OK
{  "permission_group": {    "id":         42,    "name":       "Super Printer Experts",    "built_in":   false,    "publish":    [42, ...],    "edit":       [],    "created_at": "2018-08-23 12:42:18 +0000",    "updated_at": "2018-08-24 00:42:15 +0000"  }}

Delete Permission Group

DELETE /api/v2/guide/permission_groups/{id}.json

Allowed for

  • Help Center managers

Using curl

curl https://{subdomain}.zendesk.com/api/v2/guide/permission_groups/{id}.json \  -v -u {email_address}:{password} -X DELETE

Example Response

Status: 204 No Content