Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

These endpoints allow users to manage roles on a network.

Base URL for these endpoints:  https://api.bsn.cloud/2022/06/REST/Roles

_________________________________________________________________________

GET /

Returns a list of roles on a network

...

bsn.api.main.roles.retrieve

______________________________________________________________

Query String Parameters

marker string optional

A value specifying which page to retrieve. This value is useful if the isTruncated entry in the response body of the previous GET call indicates that the number of role instances exceeds the pageSize.

This parameter is only required if you need more elements in the paged list than the pageSize (100).

pageSize int optional

The maximum number of role instances that can be contained in the response body. This defaults to the maximum allowed page size (100).

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
GET /2022/06/REST/Roles/?marker=4kfak45jfk0915NVe&pageSize=1 HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Success Response Body

200: Returns a paged list of Role Entity instances on a network. This will return not more than 100 entities along with the information necessary to return any other remaining pages.

...

Code Block
languagejson
{
  "items": [
    {
      "id": 12345,
      "isCustom": true,
      "name": "Custom Role 20231115",
      "description": "",
      "creationDate": "2023-11-15T19:14:10.087Z",
      "userCount": 0,
      "users": null,
      "permissions": [
        {
          "entityId": null,
          "operationUID": "d430853f-c05f-61b4-d137-0237a6984032",
          "principal": {
            "name": "Custom Role 20231115",
            "isCustom": true,
            "type": "Role",
            "id": 12345
          },
          "isFixed": false,
          "isInherited": false,
          "isAllowed": false,
          "creationDate": "2023-11-15T19:14:10.097Z"
        }
      ]
    }
  ],
  "totalItemCount": 8,
  "matchingItemCount": 8,
  "pageSize": 1,
  "nextMarker": "Cu20afjksdUN78q932",
  "isTruncated": true,
  "sortExpression": "[Role].[Name] ASC",
  "filterExpression": ""
}

Failure Response

300: The requested representation could not be returned because it is ambiguous (there are multiple requested representations)

400: The request is malformed and therefore invalid

401: The access token is invalid or not specified

403: The supplied access token, though valid, doesn't provide access to this method 

406: The server cannot return the data representation that you requested (as specified in the "Accept" header)

5XX: Any 500 code is an internal server error

...

bsn.api.main.roles.create

______________________________________________________________

Request Body

The Role Entity

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
languagejson
{
   "id": 0,
   "isCustom": true,
   "name": "Custom Role 20231115",
   "description": "",
   "creationDate": "0001-01-01T00:00:00",
   "userCount": 0,
   "users": null,
   "permissions": []
}

______________________________________________________________

Success Response Body

201: Returns the Role Entity created and referenced by the Uri (given by the Location header field) in the response. 

...

bsn.api.main.roles.retrieve

______________________________________________________________

Segment

id int

A unique identifier for a role

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to 12345

Code Block
GET /2022/06/REST/Roles/12345/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Success Response with Body

...

bsn.api.main.roles.update

______________________________________________________________

Segment

id int 

A unique identifier for a role 

______________________________________________________________

Request Body

The Role Entity

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
languagejson
{
   "id": 0,
   "isCustom": true,
   "name": "Custom Role 20231115",
   "description": "",
   "creationDate": "0001-01-01T00:00:00",
   "userCount": 0,
   "users": null,
   "permissions": [
    {
      "entityId": null,
      "operationUID": "3a67ae65-aa94-477b-acab-5291347cef2c",
      "principal": {
        "name": "Custom Role 20231115",
        "isCustom": true,
        "type": "Role",
        "id": 12345
      },
      "isFixed": false,
      "isInherited": false,
      "isAllowed": false,
      "creationDate": "0001-01-01T00:00:00"
    }
  ]
}

______________________________________________________________

Success Response

204: The role was successfully updated.

...

bsn.api.main.roles.delete

______________________________________________________________

Segment

id int

A unique identifier for a custom role

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
DELETE /2022/06/REST/Roles/12345/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Success Response

204: The specified role has been removed

...

bsn.api.main.roles.retrieve

______________________________________________________________

Segment

name string 

The name of the role

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • name is set to Custom Role 20231115

Code Block
GET /2022/06/REST/Roles/Custom Role 20231115/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Success Response with Body

...

bsn.api.main.roles.update

______________________________________________________________

Segment

name string 

The name of the role

______________________________________________________________

Request Body

The Role Entity

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
languagejson
{
   "id": 0,
   "isCustom": true,
   "name": "Custom Role 20231115",
   "description": "",
   "creationDate": "0001-01-01T00:00:00",
   "userCount": 0,
   "users": null,
   "permissions": [
    {
      "entityId": null,
      "operationUID": "3a67ae65-aa94-477b-acab-5291347cef2c",
      "principal": {
        "name": "Custom Role 20231115",
        "isCustom": true,
        "type": "Role",
        "id": 12345
      },
      "isFixed": false,
      "isInherited": false,
      "isAllowed": false,
      "creationDate": "0001-01-01T00:00:00"
    }
  ]
}

______________________________________________________________

Success Response

204: The role was successfully updated.

...

bsn.api.main.roles.delete

______________________________________________________________

Segment

name string 

The name of the custom role

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
DELETE /2022/06/REST/Roles/Custom Role 20231116/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Success Response

204: The specified role has been removed

...

bsn.api.main.operations.retrieve

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

Code Block
GET /2022/06/REST/Roles/Operations/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Success Response Body

200: Returns theBusiness Operations Entity

...

bsn.api.main.roles.retrieve

______________________________________________________________

Segment

id int

A unique identifier for a role

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • id is set to 12345

Code Block
GET /2022/06/REST/Roles/12345/Permissions/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Success Response Body

200: Returns an array of Permission entities granted to a given role

...

bsn.api.main.roles.update

______________________________________________________________

Segment

id int 

A unique identifier for a role

______________________________________________________________

Request Body

An array of Permission entities

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
languagejson
{
  "entityId": null,
  "operationUID": "b41ac545-d505-7014-edde-51bc4c0d21a0",
  "principal": {
    "name": "Creators",
    "isCustom": false,
    "type": "Role",
    "id": 12345
  },
  "isFixed": false,
  "isInherited": false,
  "isAllowed": false,
  "creationDate": "0001-01-01T00:00:00"
}

______________________________________________________________

Success Response

204: The permissions were successfully added to the specified role

...

bsn.api.main.roles.delete

______________________________________________________________

Segment

id int

A unique identifier for a role

______________________________________________________________

Request Body

An array of Permission entities

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
languagejson
{
  "entityId": null,
  "operationUID": "b41ac545-d505-7014-edde-51bc4c0d21a0",
  "principal": {
    "name": "Creators",
    "isCustom": false,
    "type": "Role",
    "id": 12345
  },
  "isFixed": false,
  "isInherited": false,
  "isAllowed": false,
  "creationDate": "0001-01-01T00:00:00"
}

______________________________________________________________

Success Response

204: The specified permissions have been removed from the role

...

bsn.api.main.roles.retrieve

______________________________________________________________

Segment

name string

The name of the role

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

  • name is set to Creators

Code Block
GET /2022/06/REST/Roles/Creators/Permissions/ HTTP/1.1
Host: api.bsn.cloud
Connection: Keep-Alive
Authorization: Bearer {{UserAccessToken}}
Accept: application/json, application/vnd.bsn.error+json
Accept-Encoding: gzip,deflate

______________________________________________________________

Success Response Body

200: Returns an array of Permission entities granted to a given role

...

bsn.api.main.roles.update

______________________________________________________________

Segment

name  string

The name of the role

______________________________________________________________

Request Body

An array of Permission entities

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
languagejson
{
  "entityId": null,
  "operationUID": "b41ac545-d505-7014-edde-51bc4c0d21a0",
  "principal": {
    "name": "Creators",
    "isCustom": false,
    "type": "Role",
    "id": 12345
  },
  "isFixed": false,
  "isInherited": false,
  "isAllowed": false,
  "creationDate": "0001-01-01T00:00:00"
}

______________________________________________________________

Success Response

204: The permissions were successfully added to the specified role

...

bsn.api.main.roles.delete

______________________________________________________________

Segment

name string

The name of the role

______________________________________________________________

Request Body

An array of Permission entities

______________________________________________________________

Request Example

The example request parameters and headers are set as follows:

...

Code Block
languagejson
{
  "entityId": null,
  "operationUID": "b41ac545-d505-7014-edde-51bc4c0d21a0",
  "principal": {
    "name": "Creators",
    "isCustom": false,
    "type": "Role",
    "id": 12345
  },
  "isFixed": false,
  "isInherited": false,
  "isAllowed": false,
  "creationDate": "0001-01-01T00:00:00"
}

______________________________________________________________

Success Response

204: The specified permissions have been removed from the role

...