Access Control List
- Last UpdatedJan 10, 2025
- 16 minute read
Get Quantity Access Control List
Gets the ACL of the specified quantity
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | AccessControlList | Returns the AccessControlList |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (AccessControlList)
{
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
Update Quantity Access Control List
Updates the ACL of the specified quantity
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | AccessControlList was successfully updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Patch Quantity Access Control List
Updates the ACL for the specified quantity using an RFC 6902 compliant JSON Patch document. This allows the ACL to be modified without submitting the entire Access Control List.
Request
PATCH /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifier
Request Headers
| Header | Type | Required | Description |
|---|---|---|---|
| If-Match | string | false | The entity tag header from a previous read of the Access Control List (ACL). If provided, the ACL will not be patched unless the current ETag of the ACL, on the server, matches the value passed into the If-Match header. |
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | AccessControlList | Returns the AccessControlList |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 412 | ErrorResponseBody | Precondition Failed |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (AccessControlList)
{
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
Get Quantity Owner
Gets the Owner of the specified quantity
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | Trustee | Returns the Trustee |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (Trustee)
{
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
}
Update Quantity Owner
Updates the Owner of the specified quantity
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | Trustee was successfully updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
List Quantity Access Rights
Gets the Access Rights associated with the specified quantity for the requesting identity
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/AccessRights
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | CommonAccessRights[] | Returns a list of CommonAccessRights |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response
HTTP/1.1 200
Content-Type: application/json
["Read", "Write"]
400 Response (ErrorResponseBody)
{
"OperationId": "string",
"Error": "string",
"Reason": "string",
"Resolution": "string",
"Parameters": {
"property1": "string",
"property2": "string"
}
}
Get Quantity Unit of Measure Access Control List
Gets the ACL of the specified unit of measure
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/Units/{uomId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifierstring uomId
The unit of measure identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | AccessControlList | Returns the AccessControlList |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (AccessControlList)
{
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
Update Quantity Unit of Measure Access Control List
Updates the ACL of the specified unit of measure
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/Units/{uomId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifierstring uomId
The unit of measure identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | AccessControlList was successfully updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Patch Quantity Unit of Measure Access Control List
Updates the ACL for the specified unit of measure using an RFC 6902 compliant JSON Patch document. This allows the ACL to be modified without submitting the entire Access Control List.
Request
PATCH /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/Units/{uomId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifierstring uomId
The unit of measure identifier
Request Headers
| Header | Type | Required | Description |
|---|---|---|---|
| If-Match | string | false | The entity tag header from a previous read of the Access Control List (ACL). If provided, the ACL will not be patched unless the current ETag of the ACL, on the server, matches the value passed into the If-Match header. |
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | Returns the AccessControlList |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 412 | ErrorResponseBody | Precondition Failed |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Get Quantity Unit of Measure Owner
Gets the Owner of the specified unit of measure
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/Units/{uomId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifierstring uomId
The unit of measure identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | Trustee | Returns the Trustee |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (Trustee)
{
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
}
Update Quantity Unit of Measure Owner
Updates the Owner of the specified unit of measure
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/Units/{uomId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifierstring uomId
The unit of measure identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | Returns the Trustee |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
List Quantity Unit of Measure Access Rights
Gets the Access Rights associated with the specified unit of measure for the requesting identity
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Quantities/{quantityId}/Units/{uomId}/AccessRights
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string quantityId
The quantity identifierstring uomId
The unit of measure identifier
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | CommonAccessRights[] | Returns a list of CommonAccessRights |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response
HTTP/1.1 200
Content-Type: application/json
["Read", "Write"]
400 Response (ErrorResponseBody)
{
"OperationId": "string",
"Error": "string",
"Reason": "string",
"Resolution": "string",
"Parameters": {
"property1": "string",
"property2": "string"
}
}
Access Control List
Get Stream Access Control List
Returns the ACL of the specified stream.
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Streams/{streamId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamId
Stream identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | AccessControlList | Returns the AccessControlList |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (AccessControlList)
{
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
Update Stream Access Control List
Updates the ACL of the specified stream.
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Streams/{streamId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamId
Stream identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | AccessControlList was successfully updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Patch Stream Access Control List
Updates the ACL of the specified stream using an RFC 6902 compliant JSON Patch document. This allows the ACL to be modified without submitting the entire Access Control List.
Request
PATCH /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Streams/{streamId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamId
Stream identifier.
Request Headers
| Header | Type | Required | Description |
|---|---|---|---|
| If-Match | string | false | The entity tag header from a previous read of the Access Control List (ACL). If provided, the ACL will not be patched unless the current ETag of the ACL, on the server, matches the value passed into the If-Match header. |
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | AccessControlList was successfully updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 412 | ErrorResponseBody | Precondition Failed |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Get Stream Access Control List Bulk
Returns the ACL information associated with provided streams. The list of stream identifiers needing ACL information should be supplied as a list of stream IDs in the request body. HTTP 207 is returned regardless of partial or complete success of stream resolution. Any stream where ACL information cannot be fetched will be included in the Errors property of the BulkResults<T>.
Request
POST /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Bulk/Streams/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 207 | BulkResultsOfObjectAcl | BulkResults<T> was successfully retrieved |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
207 Response (BulkResultsOfObjectAcl)
{
"Results": [
{
"Id": "string",
"AccessControlList": {
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
}
],
"Errors": [
{
"Id": "string",
"OperationStatus": 0,
"Error": {
"property1": null,
"property2": null
}
}
]
}
Get Stream Owner
Returns the Owner of the specified stream.
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Streams/{streamId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamId
Stream identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | Trustee | Returns the Trustee |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (Trustee)
{
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
}
Update Stream Owner
Updates the Owner of the specified stream.
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Streams/{streamId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamId
Stream identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | Trustee was successfully returned |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Get Stream Owner Bulk
Returns the owner information associated with provided streams. The list of stream identifiers needing owner information should be supplied as a list of stream IDs in the request body. HTTP 207 is returned regardless of partial or complete success of stream resolution. Any stream where owner information cannot be fetched will be included in the Errors property of the BulkResults<T>.
Request
POST /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Bulk/Streams/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 207 | BulkResultsOfObjectOwner | BulkResults<T> was successfully retrieved |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
207 Response (BulkResultsOfObjectOwner)
{
"Results": [
{
"Id": "string",
"Owner": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
}
}
],
"Errors": [
{
"Id": "string",
"OperationStatus": 0,
"Error": {
"property1": null,
"property2": null
}
}
]
}
List Stream Access Rights
Returns the access rights associated with the specified stream for the requesting identity.
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Streams/{streamId}/AccessRights
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamId
Stream identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | CommonAccessRights[] | Returns a list of CommonAccessRights |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response
HTTP/1.1 200
Content-Type: application/json
["Read", "Write"]
400 Response (ErrorResponseBody)
{
"OperationId": "string",
"Error": "string",
"Reason": "string",
"Resolution": "string",
"Parameters": {
"property1": "string",
"property2": "string"
}
}
Access Control List
Get Type Access Control List
Gets the ACL of the specified type
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Types/{typeId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string typeId
Type identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | AccessControlList | Returns the AccessControlList |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (AccessControlList)
{
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
Update Type Access Control List
Updates the ACL of the specified type
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Types/{typeId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string typeId
Type identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | The SdsType's ACL was successfully updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Patch Type Access Control List
Updates the ACL for the specified type using an RFC 6902 compliant JSON Patch document. This allows the ACL to be modified without submitting the entire Access Control List.
Request
PATCH /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Types/{typeId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string typeId
Type identifier.
Request Headers
| Header | Type | Required | Description |
|---|---|---|---|
| If-Match | string | false | The entity tag header from a previous read of the Access Control List (ACL). If provided, the ACL will not be patched unless the current ETag of the ACL, on the server, matches the value passed into the If-Match header. |
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | The SdsType's ACL was successfully updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Get Type Owner
Gets the Owner of the specified type
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Types/{typeId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string typeId
Type identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | Trustee | Returns the Trustee |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (Trustee)
{
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
}
Update Type Owner
Updates the Owner of the specified type
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Types/{typeId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string typeId
Type identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | The SdsType's owner was updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
List Type Access Rights
Gets the Access Rights associated with the specified type for the requesting identity
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/Types/{typeId}/AccessRights
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string typeId
Type identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | CommonAccessRights[] | Returns a list of CommonAccessRights |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response
HTTP/1.1 200
Content-Type: application/json
["Read", "Write"]
400 Response (ErrorResponseBody)
{
"OperationId": "string",
"Error": "string",
"Reason": "string",
"Resolution": "string",
"Parameters": {
"property1": "string",
"property2": "string"
}
}
Access Control List
Get Stream View Access Control List
Gets the ACL of the specified stream view
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/StreamViews/{streamViewId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamViewId
Stream view identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | AccessControlList | Returns the AccessControlList |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (AccessControlList)
{
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
Update Stream View Access Control List
Updates the ACL of the specified stream view
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/StreamViews/{streamViewId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamViewId
Stream view identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | AccessControlList was successfully updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Patch Stream View Access Control List
Updates the ACL of the specified stream view using an RFC 6902 compliant JSON Patch document. This allows the ACL to be modified without submitting the entire Access Control List.
Request
PATCH /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/StreamViews/{streamViewId}/AccessControl
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamViewId
Stream view identifier.
Request Headers
| Header | Type | Required | Description |
|---|---|---|---|
| If-Match | string | false | The entity tag header from a previous read of the Access Control List (ACL). If provided, the ACL will not be patched unless the current ETag of the ACL, on the server, matches the value passed into the If-Match header. |
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | AccessControlList was successfully updated |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 412 | ErrorResponseBody | Precondition Failed |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Get Stream View Owner
Gets the Owner of the specified stream view
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/StreamViews/{streamViewId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamViewId
Stream view identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | Trustee | Returns the Trustee |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response (Trustee)
{
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
}
Update Stream View Owner
Updates the Owner of the specified stream view
Request
PUT /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/StreamViews/{streamViewId}/Owner
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamViewId
Stream view identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 204 | None | Trustee was successfully returned |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 409 | ErrorResponseBody | Conflict |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
List Stream View Access Rights
Gets the Access Rights associated with the specified stream view for the requesting identity
Request
GET /api/v1/Tenants/{tenantId}/Namespaces/{namespaceId}/StreamViews/{streamViewId}/AccessRights
Parameters
string tenantId
Tenant identifier.string namespaceId
Namespace identifier.string streamViewId
Stream view identifier.
Response
| Status Code | Body Type | Description |
|---|---|---|
| 200 | CommonAccessRights[] | Returns a list of CommonAccessRights |
| 400 | ErrorResponseBody | Missing or invalid inputs |
| 401 | ErrorResponseBody | Unauthorized |
| 403 | ErrorResponseBody | Forbidden |
| 404 | ErrorResponseBody | One of the resources specified was not found |
| 500 | ErrorResponseBody | An error occurred while processing the request |
| 503 | ErrorResponseBody | Service Unavailable |
Example response body
200 Response
HTTP/1.1 200
Content-Type: application/json
["Read", "Write"]
400 Response (ErrorResponseBody)
{
"OperationId": "string",
"Error": "string",
"Reason": "string",
"Resolution": "string",
"Parameters": {
"property1": "string",
"property2": "string"
}
}
Definitions
AccessControlList
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| RoleTrusteeAccessControlEntries | [AccessControlEntry] | false | true | None |
{
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
AccessControlEntry
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Trustee | Trustee | false | true | None |
| AccessType | AccessType | false | false | None |
| AccessRights | int64 | false | false | None |
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
Trustee
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Type | TrusteeType | false | false | None |
| ObjectId | string | false | true | None |
| TenantId | string | false | true | None |
{
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
}
TrusteeType
Enumerated Values
| Property | Value |
|---|---|
| User | 1 |
| Client | 2 |
| Role | 3 |
AccessType
Enumerated Values
| Property | Value |
|---|---|
| Allowed | 0 |
| Denied | 1 |
ErrorResponseBody
The error response contains standard details on the cause and resolution of the error.
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| OperationId | string | false | true | Operation unique identifier of action that caused the error |
| Error | string | false | true | Error description |
| Reason | string | false | true | Reason for the error |
| Resolution | string | false | true | Resolution to resolve the error |
| Parameters | object | false | true | IDs or values that are creating or are affected by the error |
{
"OperationId": "string",
"Error": "string",
"Reason": "string",
"Resolution": "string",
"Parameters": {
"property1": "string",
"property2": "string"
}
}
CommonAccessRights
Enumerated Values
| Property | Value |
|---|---|
| None | 0 |
| Read | 1 |
| Write | 2 |
| Delete | 4 |
| ManageAccessControl | 8 |
| Share | 16 |
| All | 31 |
BulkResultsOfObjectAcl
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Results | [ObjectAcl] | false | true | None |
| Errors | [ObjectError] | false | true | None |
{
"Results": [
{
"Id": "string",
"AccessControlList": {
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
}
],
"Errors": [
{
"Id": "string",
"OperationStatus": 0,
"Error": {
"property1": null,
"property2": null
}
}
]
}
ObjectAcl
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Id | string | false | true | None |
| AccessControlList | AccessControlList | false | true | None |
{
"Id": "string",
"AccessControlList": {
"RoleTrusteeAccessControlEntries": [
{
"Trustee": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
},
"AccessType": 0,
"AccessRights": 0
}
]
}
}
ObjectError
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Id | string | false | true | None |
| OperationStatus | int32 | false | false | None |
| Error | object | false | true | None |
{
"Id": "string",
"OperationStatus": 0,
"Error": {
"property1": null,
"property2": null
}
}
BulkResultsOfObjectOwner
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Results | [ObjectOwner] | false | true | None |
| Errors | [ObjectError] | false | true | None |
{
"Results": [
{
"Id": "string",
"Owner": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
}
}
],
"Errors": [
{
"Id": "string",
"OperationStatus": 0,
"Error": {
"property1": null,
"property2": null
}
}
]
}
ObjectOwner
Properties
| Property Name | Data Type | Required | Nullable | Description |
|---|---|---|---|---|
| Id | string | false | true | None |
| Owner | Trustee | false | true | None |
{
"Id": "string",
"Owner": {
"Type": 1,
"ObjectId": "string",
"TenantId": "string"
}
}