Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

CONNECT data services developer documentation

Bulk Access

  • Last UpdatedJul 18, 2022
  • 6 minute read

Defines the public API endpoints for bulk access jobs.

List Bulk Access Job Summaries

Retrieves all bulk access job summaries for a namespace.

Request

GET /api/v1-preview/tenants/{tenantId}/namespaces/{namespaceId}/bulk/accesscontrol/jobs

Parameters

string tenantId
Tenant identifier.

string namespaceId
Namespace identifier.

Response

Status Code Body Type Description
200 BulkAccessJobSummary[] Success.
401 ErrorResponse Unauthorized.
403 ErrorResponse Forbidden.
408 ErrorResponse Operation timed out.
500 ErrorResponse Internal server error.

Example response body

200 Response (BulkAccessJobSummary[])

[
  {
    "Id": "string",
    "Name": "string",
    "Description": "string",
    "OperationId": "string",
    "StartTime": "2019-08-24T14:15:22Z",
    "EndTime": "2019-08-24T14:15:22Z",
    "Status": 0,
    "Requester": {
      "Type": 1,
      "ObjectId": "string",
      "TenantId": "string"
    },
    "StepsSucceeded": 0,
    "StepsFailed": 0,
    "StepsProcessed": 0,
    "TotalSteps": 0
  }
]

Authorization

Allowed for these roles:

  • Tenant Member

Create Bulk Access Job

Creates a bulk access job for updating multiple access control lists.

Request

POST /api/v1-preview/tenants/{tenantId}/namespaces/{namespaceId}/bulk/accesscontrol/jobs

Parameters

string tenantId
Tenant identifier.

string namespaceId
Namespace identifier.

Request Body

Input containing information for the access control list update operation.

{
  "AccessControlList": {
    "RoleTrusteeAccessControlEntries": [
      {
        "Trustee": {
          "Type": 1,
          "ObjectId": "string",
          "TenantId": "string"
        },
        "AccessType": 0,
        "AccessRights": 0
      }
    ]
  },
  "Operation": 0,
  "Scope": 0,
  "ResourceIds": [
    "string"
  ],
  "RoleIds": [
    "string"
  ],
  "ResourceType": 0,
  "Description": "string"
}

Response

Status Code Body Type Description
200 BulkAccessJobSummary Success.
400 ErrorResponseBody Missing or invalid inputs.
401 ErrorResponseBody Unauthorized.
403 ErrorResponseBody Forbidden.
408 ErrorResponseBody Operation timed out.
500 ErrorResponseBody Internal server error.

Example response body

200 Response (BulkAccessJobSummary)

{
  "Id": "string",
  "Name": "string",
  "Description": "string",
  "OperationId": "string",
  "StartTime": "2019-08-24T14:15:22Z",
  "EndTime": "2019-08-24T14:15:22Z",
  "Status": 0,
  "Requester": {
    "Type": 1,
    "ObjectId": "string",
    "TenantId": "string"
  },
  "StepsSucceeded": 0,
  "StepsFailed": 0,
  "StepsProcessed": 0,
  "TotalSteps": 0
}

Authorization

Allowed for these roles:

  • Tenant Member

Get Bulk Access Job Summary

Retrieves the summary of a bulk access job.

Request

GET /api/v1-preview/tenants/{tenantId}/namespaces/{namespaceId}/bulk/accesscontrol/jobs/{jobId}

Parameters

string tenantId
Tenant identifier.

string namespaceId
Namespace identifier.

string jobId
Job identifier.

Response

Status Code Body Type Description
200 BulkAccessJobSummary Success.
401 ErrorResponse Unauthorized.
403 ErrorResponse Forbidden.
408 ErrorResponse Operation timed out.
500 ErrorResponse Internal server error.

Example response body

200 Response (BulkAccessJobSummary)

{
  "Id": "string",
  "Name": "string",
  "Description": "string",
  "OperationId": "string",
  "StartTime": "2019-08-24T14:15:22Z",
  "EndTime": "2019-08-24T14:15:22Z",
  "Status": 0,
  "Requester": {
    "Type": 1,
    "ObjectId": "string",
    "TenantId": "string"
  },
  "StepsSucceeded": 0,
  "StepsFailed": 0,
  "StepsProcessed": 0,
  "TotalSteps": 0
}

Authorization

Allowed for these roles:

  • Tenant Member

List Bulk Access Job Steps

Retrieves the job steps of a completed bulk access job. No steps are returned if the job has not completed.

Request

GET /api/v1-preview/tenants/{tenantId}/namespaces/{namespaceId}/bulk/accesscontrol/jobs/{jobId}/jobsteps
?filterBy={filterBy}&skip={skip}&count={count}

Parameters

string tenantId
Tenant identifier.

string namespaceId
Namespace identifier.

string jobId
Job identifier.

[optional] any filterBy
Filter to specify if successful, failed, or all job steps are returned.

[optional] integer skip
Parameter representing the zero-based offset of the first object to retrieve. If unspecified, a default value of 0 is used.

[optional] integer count
Parameter representing the maximum number of objects to retrieve. If unspecified, a default value of 100 is used.

Response

Status Code Body Type Description
200 BulkAccessJobStep[] Success.
401 ErrorResponse Unauthorized.
403 ErrorResponse Forbidden.
408 ErrorResponse Operation timed out.
500 ErrorResponse Internal server error.

Example response body

200 Response (BulkAccessJobStep[])

[
  {
    "Id": "string",
    "Name": "string",
    "Description": "string",
    "StartTime": "2019-08-24T14:15:22Z",
    "EndTime": "2019-08-24T14:15:22Z",
    "Status": 0,
    "Errors": [
      {
        "OperationId": "string",
        "Error": "string",
        "Reason": "string",
        "Resolution": "string"
      }
    ],
    "ResourceId": "string"
  }
]

Authorization

Allowed for these roles:

  • Tenant Member

Definitions

BulkAccessJobSummary

Provides summary information for the job.

Properties

Property Name Data Type Required Nullable Description
Id string false true Identifier of the job.
Name string false true Name of the job.
Description string false true Description of the job.
OperationId string false true Operation identifier of the job.
StartTime date-time false true Start time of the job.
EndTime date-time false true End time of the job.
Status Status false false Status of the job.
Requester Trustee false true Requester of the job.
StepsSucceeded int32 false false Number of succeeded steps of the job.
StepsFailed int32 false false Number of failed steps of the job.
StepsProcessed int32 false false Number of steps of the job that have finished, regardless of status.
TotalSteps int32 false false Total count of steps of the job.
{
  "Id": "string",
  "Name": "string",
  "Description": "string",
  "OperationId": "string",
  "StartTime": "2019-08-24T14:15:22Z",
  "EndTime": "2019-08-24T14:15:22Z",
  "Status": 0,
  "Requester": {
    "Type": 1,
    "ObjectId": "string",
    "TenantId": "string"
  },
  "StepsSucceeded": 0,
  "StepsFailed": 0,
  "StepsProcessed": 0,
  "TotalSteps": 0
}


Status

Enumerated Values

Property Value Description
Invalid 0
NotStarted 1
InProgress 2
Succeeded 3
Cancelled 4
Failed 5
PartiallySucceeded 6

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

ErrorResponseBody

{}


BulkAccessUpdateInput

Specifies the behavior of a bulk access job.

Properties

Property Name Data Type Required Nullable Description
AccessControlList AccessControlList false true The access control list to be applied to the specified resources. If Operation is UpdateAll, this access control list will replace the entire access control list of each resource. If Operation is UpdateRoleAccess, it will replace only the access control entries within the access control list whose trustees match those provided in RoleIds.
Operation Operation false false Operation type of the bulk access job.
Scope Scope false false Scope of the bulk access job.
ResourceIds string[] false true Identifiers of resources to update. Only required when Scope is Resource.
RoleIds string[] false true Role identifiers of trustee whose access control entries are being updated. Only required when Operation is UpdateRoleAccess.
ResourceType ResourceType false false Type of resource to update.
Description string false true Optional description of the bulk access job.
{
  "AccessControlList": {
    "RoleTrusteeAccessControlEntries": [
      {
        "Trustee": {
          "Type": 1,
          "ObjectId": "string",
          "TenantId": "string"
        },
        "AccessType": 0,
        "AccessRights": 0
      }
    ]
  },
  "Operation": 0,
  "Scope": 0,
  "ResourceIds": [
    "string"
  ],
  "RoleIds": [
    "string"
  ],
  "ResourceType": 0,
  "Description": "string"
}


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
}


AccessType

Enumerated Values

Property Value
Allowed 0
Denied 1

Operation

Operation being performed during a bulk access job.

Enumerated Values

Property Value Description
UpdateRoleAccess 0 Operation being performed during a bulk access job.
UpdateAll 1 Operation being performed during a bulk access job.

Scope

Scope of a bulk access job.

Enumerated Values

Property Value Description
Namespace 0 Scope of a bulk access job.
Resource 1 Scope of a bulk access job.

ResourceType

Type of resource whose access is being bulk updated.

Enumerated Values

Property Value Description
Stream 0 Type of resource whose access is being bulk updated.

ErrorResponse

Properties

Property Name Data Type Required Nullable Description
OperationId string true false None
Error string true false None
Reason string true false None
Resolution string true false None
DynamicProperties object false true None
{
  "OperationId": "string",
  "Error": "string",
  "Reason": "string",
  "Resolution": "string",
  "DynamicProperties": {
    "property1": null,
    "property2": null
  },
  "property1": null,
  "property2": null
}


BulkAccessJobStep

Job step of a bulk access job. Each job step corresponds to a resource being updated during the job.

Properties

Property Name Data Type Required Nullable Description
Id string false true None
Name string false true None
Description string false true None
StartTime date-time false true None
EndTime date-time false true None
Status Status false false None
Errors [ErrorResponse2] false true None
ResourceId string false true Identifier of resource being updated.
{
  "Id": "string",
  "Name": "string",
  "Description": "string",
  "StartTime": "2019-08-24T14:15:22Z",
  "EndTime": "2019-08-24T14:15:22Z",
  "Status": 0,
  "Errors": [
    {
      "OperationId": "string",
      "Error": "string",
      "Reason": "string",
      "Resolution": "string"
    }
  ],
  "ResourceId": "string"
}


ErrorResponse2

Properties

Property Name Data Type Required Nullable Description
OperationId string false true None
Error string false true None
Reason string false true None
Resolution string false true None
{
  "OperationId": "string",
  "Error": "string",
  "Reason": "string",
  "Resolution": "string"
}


JobStepFilter

Filter to be applied to bulk access job steps.

Enumerated Values

Property Value Description
Success 0 Returns job steps with status of success.
Failure 1 Returns job steps with status of failed.
All 2 Returns all job steps.

In This Topic
Related Links
TitleResults for “How to create a CRG?”Also Available in